=== Vyntic Metal Sync - Live Metal Rates for WooCommerce ===
Contributors: vynatics, corsyslimited
Tags: woocommerce, metal prices, dynamic pricing, gold, silver
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
Requires Plugins: woocommerce
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Keep WooCommerce precious-metal product prices aligned with Gold, Silver, Platinum and Palladium rates using a managed live-rate service or manual fallback rates.

== Description ==

Vyntic Metal Sync provides WooCommerce precious-metal pricing for Gold, Silver, Platinum and Palladium.

The plugin can retrieve current metal rates from the Metal Sync Live Server, store manual fallback rates, refresh rates on a configurable schedule, manage custom currency codes, and calculate enabled WooCommerce products from material weight, purity, making charges and markup.

All functionality included in this WordPress.org package is available without a license key, activation code, trial period, quota or payment gate.

Key features include:

* Gold, Silver, Platinum and Palladium rate support.
* Metal Sync Live Server rate retrieval.
* Manual fallback metal rates.
* Configurable automatic rate-refresh schedules.
* Built-in and custom currency management.
* Gram, kilogram, troy-ounce and tola units.
* WooCommerce product and variation metal-pricing fields.
* Weight, purity, fixed making charge and fixed markup calculations.
* Optional material-details display on eligible WooCommerce products.
* Live cart/checkout price protection and front-end price refresh controls.
* Admin activity, rate status and settings controls.
* Uninstall cleanup option controlled by the site administrator.

== Installation ==

1. Install and activate WooCommerce.
2. Upload the `vyntic-metal-sync` plugin directory to `/wp-content/plugins/`, or install the ZIP from Plugins > Add New > Upload Plugin.
3. Activate Vyntic Metal Sync.
4. Open Metal Sync > Metal Rates and select your currency, unit and refresh schedule.
5. Refresh live rates or enter manual fallback values.
6. Configure eligible WooCommerce products from the Metal Sync product-pricing controls.

== External services ==

= Metal Sync Live Server =

Vyntic Metal Sync connects to the Metal Sync Live Server hosted at `https://vynatics.corsysltd.com/server` to retrieve current and historical precious-metal rate data. This external processing is required for the live-rate and historical-rate features. Manual fallback pricing remains available if the service cannot be reached.

For rate requests, the plugin sends:

* The site's canonical home URL.
* An MD5 hash derived from that canonical home URL.
* The plugin slug and plugin version.
* The installed WordPress version.
* A client-mode identifier (`core`).
* The requested pricing currency and weight unit.
* The requested service name.
* For historical requests, the requested date range and range identifier.

The request is sent when an administrator manually refreshes rates, when a configured scheduled refresh runs, when a currency change requires a fresh rate set, or when an administrator requests historical chart data.

Service terms: https://vynatics.corsysltd.com/wp-metal-sync/terms.html
Privacy policy: https://vynatics.corsysltd.com/wp-metal-sync/privacy.html

== Development and source code ==

The JavaScript and CSS under `assets/js/` and `assets/css/` are shipped in human-readable form and are used directly at runtime. No transpilation, bundling, obfuscation or minification step is required for this WordPress.org package.

Matching development mirrors are included under `src/js/` and `src/css/`. They are byte-for-byte equivalent to the runtime files.

No remote executable code is downloaded or executed by this plugin. The Metal Sync Live Server returns rate data only.

== Frequently Asked Questions ==

= Does the plugin require a license key? =

No. This WordPress.org package does not use a license key or activation code to enable local functionality.

= What happens if the live-rate server is unavailable? =

You can store and apply manual fallback metal rates from the Metal Rates screen.

= Does the plugin send my WooCommerce customer or order data to the Metal Sync Live Server? =

The rate-service client in this plugin sends the site and request metadata documented in the External services section. It does not send WooCommerce customer or order data to the Metal Sync Live Server for metal-rate requests.

== Changelog ==

= 2.13.7 =
* Migrated live and historical metal market data to XAUS.com through the Metal Sync central server.

= 2.12.3 =
* Sanitized and validated nested admin/AJAX input before it reaches product, pricing, category, settings and currency handlers.
* Reworked dynamic SQL to use `$wpdb->prepare()` with `%i` identifier placeholders for plugin and WordPress tables.
* Removed database-query suppressions that masked genuine prepared-SQL findings.
* Hardened WooCommerce product and variation request handling and preserved safe HTML only where explicitly intended.
* Updated uninstall cleanup queries to use prepared table identifiers.
* Re-tested directory metadata against WordPress 7.1.

= 2.12.2 =
* Completed a full-package WordPress.org review remediation pass.
* Prepared the directory build for WordPress.org review compliance.
* Removed local feature locking and license-based feature checks.
* Made custom currency management and automatic rate-refresh schedules directly available.
* Added nonce and capability protections across privileged request handlers.
* Improved output escaping and direct-file-access protection.
* Moved admin presentation to WordPress enqueue APIs and removed remote font loading.
* Added complete Metal Sync Live Server disclosure.
* Added human-readable JavaScript source files.
* Updated the plugin name, text domain and WordPress compatibility metadata.

= 2.11.2 =
* Previous submitted build.
