=== My Easy Monogram ===
Contributors: myeasymonogram
Tags: personalization, monogram, live preview, product customization, order fulfillment
Requires at least: 5.8
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Connects your WooCommerce store to My Easy Monogram for product personalization & live preview, shipping, production and product & order management.

== Description ==

**My Easy Monogram** seamlessly integrates your WooCommerce store with the [My Easy Monogram](https://app.myeasymonogram.com) platform, enabling product personalization live preview, automated order forwarding, and shipment tracking.

= Key Features =

* **One-Click Connection** — Connect your store to My Easy Monogram directly from the WooCommerce admin. No API keys to copy-paste; the setup is handled automatically via OAuth.
* **Live Preview Widget** — Let your customers personalize products (monograms, text, images) with a real-time visual preview directly on your product pages. Supports both modal and inline embed modes.
* **Customizable Button** — Full control over the Personalize button appearance: text, colors, font size, button style (fill, outline, text).
* **Automated Order Forwarding** — WooCommerce webhooks automatically send new and updated orders to My Easy Monogram for fulfillment.
* **Shipment Tracking** — Fulfillment details (carrier, tracking number, tracking URL) are displayed on admin order screens and the customer-facing "My Account > View Order" page.
* **Store Sync** — Automatically keeps your store details (site name, timezone, currency, country) in sync with My Easy Monogram.
* **HPOS Compatible** — Fully compatible with WooCommerce High-Performance Order Storage (HPOS) and Cart/Checkout Blocks.

= How It Works =

1. Install and activate the plugin.
2. Go to **WooCommerce > My Easy Monogram** in your WordPress admin.
3. Click "Connect to My Easy Monogram" to sign up or log in.
4. Connect your WooCommerce store from the My Easy Monogram dashboard.
5. Come back to the plugin page — the connection is verified automatically.
6. Configure the Live Preview settings to customize the personalization experience.

= Requirements =

* WordPress 5.8 or higher
* WooCommerce 7.0 or higher
* PHP 7.4 or higher
* An active [My Easy Monogram](https://app.myeasymonogram.com) account

== External services ==

This plugin connects to the My Easy Monogram platform (operated by My Easy Monogram) to provide its core functionality. Connecting your WooCommerce store to My Easy Monogram is required for the plugin to work. Two external services are used:

= 1. My Easy Monogram Platform API (app.myeasymonogram.com) =

This is used to connect your store, keep store details in sync, forward orders for fulfillment, and disconnect your store.

What data is sent and when:

* **When you open the plugin settings page** — your store URL is sent to verify whether the store is connected.
* **After connecting, and whenever the related settings change** — your store details (site name, timezone, currency, country code, plugin version, WooCommerce version, and PHP version) are sent so My Easy Monogram can keep your store profile up to date.
* **When an order is created or updated** — order data is delivered to My Easy Monogram via WooCommerce webhooks so the order can be produced and fulfilled.
* **When you disconnect the store, or delete (uninstall) the plugin** — your store URL is sent (signed with your store secret) to revoke the connection.

Requests that modify your connection are signed using an HMAC-SHA256 signature derived from a store secret issued during connection.

This service is provided by My Easy Monogram. Please review their policies:

* Terms of Service: https://my-easy-monogram.myshopify.com/policies/terms-of-service
* Privacy Policy: https://my-easy-monogram.myshopify.com/policies/privacy-policy

= 2. My Easy Monogram Preview Image Service (42939t6nbh.execute-api.us-east-2.amazonaws.com) =

This service (hosted on Amazon Web Services and operated by My Easy Monogram) powers the on-page Live Preview widget. It renders and stores the personalization preview images so customers can see their customization in real time. As part of this, the Live Preview widget also loads and processes images from the following My Easy Monogram hosts:

* `images.myeasymonogram.com` — serves product and personalization preview images.
* `imgprocessing.myeasymonogram.com` — processes/transforms images for the live preview.

What data is sent and when:

* **When a customer personalizes a product using the Live Preview widget** — the personalization design data (such as entered text, selected options, and the generated preview image) is sent so the preview can be generated, displayed, and saved with the order. Product and preview images are loaded and processed from the hosts listed above while the widget is open.

This service is provided by My Easy Monogram. Please review their policies:

* Terms of Service: https://my-easy-monogram.myshopify.com/policies/terms-of-service
* Privacy Policy: https://my-easy-monogram.myshopify.com/policies/privacy-policy

== Installation ==

= Automatic Installation =

1. Go to **Plugins > Add New** in your WordPress admin.
2. Search for "My Easy Monogram".
3. Click **Install Now**, then **Activate**.

= Manual Installation =

1. Download the plugin ZIP file.
2. Go to **Plugins > Add New > Upload Plugin** in your WordPress admin.
3. Upload the ZIP file and click **Install Now**.
4. Activate the plugin.

= Setup =

After activation, go to **WooCommerce > My Easy Monogram** and follow the on-screen instructions to connect your store.

== Frequently Asked Questions ==

= Do I need a My Easy Monogram account? =

Yes. You can create a free account at [app.myeasymonogram.com](https://app.myeasymonogram.com).

= Does this plugin work with WooCommerce HPOS? =

Yes. The plugin declares full compatibility with WooCommerce High-Performance Order Storage (Custom Order Tables) and Cart/Checkout Blocks.

= What happens when I deactivate the plugin? =

Deactivation is reversible. Your store remains connected to My Easy Monogram, and you can reactivate at any time without reconnecting. A full disconnect only happens when you delete (uninstall) the plugin.

= Can I customize the Personalize button? =

Yes. Go to **WooCommerce > My Easy Monogram > Live Preview** tab to configure the button text, colors, font size, style (fill, outline, or text-only), and widget type (modal or embed).

= How does order tracking work? =

When My Easy Monogram ships an order, the fulfillment details (carrier, tracking number, tracking URL) are automatically pushed to WooCommerce. They appear in the admin order edit screen and on the customer's My Account > View Order page.

== Screenshots ==

1. Connection setup page with step-by-step instructions.
2. Connected store status with webhook and version info.
3. Live preview customization settings available in the plugin.
4. Live preview in product detail page.
5. My Easy Monogram dashboard showing connected store overview and key metrics.
6. Order management page displaying forwarded WooCommerce orders within My Easy Monogram.
7. Product list page showing products available for personalization in My Easy Monogram.

== Changelog ==

= 1.0.2 =
* The live preview service endpoint can now be configured per site.

= 1.0.1 =
* Updated the live preview image service endpoint.
* Updated the connection step image.

= 1.0.0 =
* Initial release.
* Store connection via My Easy Monogram dashboard.
* Live Preview widget with modal and embed modes.
* Customizable Personalize button appearance.
* Automated order forwarding via WooCommerce webhooks.
* Shipment tracking on admin and customer-facing order pages.
* Store details sync (site name, timezone, currency, country).
* HPOS and Cart/Checkout Blocks compatibility.

== Upgrade Notice ==

= 1.0.2 =
Allows the live preview service endpoint to be configured per site. Optional update.

= 1.0.1 =
Updates the live preview service endpoint. Recommended for all users.

= 1.0.0 =
Initial release.
