Releases: polettoespana/carttrigger-holded-sync
Release list
v1.6.7
Fix: Holded→WooCommerce price pull could drift by 1 cent on tax-inclusive setups. Holded's price field is truncated to 2 decimals; when tax-inclusive pricing is enabled, the plugin now uses Holded's own precomputed gross (total field) instead of recomputing it from the truncated net, falling back to the previous behavior if total is not present.
v1.6.2
Compatibility fixes for Holded API v2.
Fixed
- Variations sharing the parent's SKU (placeholder variations generated by WooCommerce "generate all variations") are now skipped. They were all being linked to the same Holded product
- tax field replaced with
taxes[](array of Holded tax ID strings): the v2 API silently ignores the old numeric field; IDs are fetched automatically fromGET /api/v2/taxesand matched by rate - price field now sent as a decimal string (e.g. "132.23") as required by the v2 API
- Stale _cthls_product_id (product deleted in Holded) no longer causes a silent failure on update: the meta is cleared and the product is automatically recreated or re-linked by SKU
Changed
- Settings page now shows a notice that Holded API v2 (June 2026) with
all:all.fullpermissions is required
v1.5.1
Add new notes area to invoice document (see README.md for details)
1.4.9
v1.4.8
Release 1.4.8: log limit, export and missing translations
- Configurable log entries limit (cthls_log_limit, default 50, range 10–500)
- Export log (JSON) button in system log section
- Translations (es_ES, it_IT): Single SKU sync card, event reference entries
(push_start, push_complete, pull_price_check, pull_name_skipped), - Grouping changes in previous tags
v1.4.3
Some fix for products with variants syncing.
(See Changelog for details)
v1.4.0
- Feature: Orders → Holded documents — on payment confirmation (
woocommerce_payment_complete), the plugin automatically finds or creates the Holded contact (matched by NIF/CIF then email) and creates an invoice or sales order with all line items, shipping and tax. - Feature: Document type setting — choose between Invoice (factura, reduces Holded stock) and Sales order (pedido de venta, does not affect stock).
- Feature: Avoid stock duplication — after creating an invoice, re-pushes WC stock to Holded to correct the stock reduction caused by the invoice. Allows keeping WC→Holded stock push active alongside invoice creation.
- Feature: Variation name format — new "Dash" option (
Benaco – Magnum (1,5 litros)) to avoid nested parentheses when attribute values already contain parentheses. - Enhancement: Holded contact ID stored in order meta (
_cthls_contact_id) and WP user meta for reuse across orders. - Enhancement: new admin settings — NIF/CIF meta key (default
_billing_nif), email meta key (optional override). - Translations (ES, IT) updated for all new strings.
v1.2.3
v.1.1.5
- Fix: removed deprecated
load_plugin_textdomain()call. - Fix: sanitize
_cost_pricePOST input beforewc_format_decimal(). - Enhancement: image sync option (WC → Holded) — sends the product featured image URL to Holded.
- Enhancement: image overwrite control — by default the image is sent only on first sync; enable "Overwrite existing image" to force resend on every sync.
v.1.1.4
v.1.1.4
(v.1.1.3 was a temporary fix and wasn't published)
Fix: unschedule now uses both Action Scheduler and WooCommerce queue API to ensure stale jobs are reliably removed when pull sync is disabled.