Product documentation

Pro changelog

Pro 1.4.3

1.4.3 2026-09-27

Fixed

  • Restored reliable access to every settings tab when AI product enrichment is enabled.
  • Moved AI product settings and research into a normal plugin tab, removed the separate admin submenu, and kept research submissions separate from settings saves.
  • Recognized the MAIDOT Free package when deactivating Lite during Pro activation.

1.4.2 2026-09-27

Added

  • Added Pro-only AI product enrichment by SKU or barcode, with live web research, source-backed CSV export, selected-field product updates, status filtering, and opt-in validated image import.
  • Added automatic one-product-at-a-time enrichment with a durable catalog cursor, daily request cap, refresh interval, scheduled worker, and server-cron support.
  • Added a locked AI product enrichment preview to the Lite feature catalog.

1.4.1 2026-09-23

Changed

  • Changed the plugin publisher and update metadata to MAIDOT and the support contact to suporte@maidot.pt.

Fixed

  • Refresh due licenses on ordinary site traffic as a fallback when WP-Cron is delayed, preventing quiet/demo sites from crossing the seven-day offline grace period without a validation attempt.
  • Preserve a stable installation identity across local credential resets so reactivation does not consume or create another logical site seat.
  • Show the next verification time and the last safe validation error code on the license screen for actionable diagnosis.

1.4.0 2026-09-22

Added

  • Added tenant-safe Company Accounts with buyer roles, invitations, company switching, cost centres, and shared purchasing data.
  • Added Contract Price Books with company assignments, quantity breaks, precedence controls, and customer SKU aliases.
  • Added Purchase Approvals with immutable line snapshots, versioned state transitions, authorization chains, and audit events.
  • Added Quotes and Negotiation with immutable revisions, customer/internal messages, expiry, private documents, quote PDFs, and idempotent order conversion.
  • Added Trade Credit with company limits, payment terms, short-lived checkout reservations, immutable exposure ledgers, and durable order reconciliation.
  • Added Sales Representatives with assigned-company access, attributed on-behalf purchasing, idempotent commission records, and a bounded company-scoped commission cockpit with per-currency net summaries.
  • Added Smart Replenishment with saved purchasing templates, schedules, bounded dispatch, and materialized reorder suggestions.
  • Added Available-to-Promise Inventory with multi-source balances, inbound supply, safety stock, promises, atomic reservations, and order/refund/cancellation reconciliation.
  • Added ERP/PIM/CRM integration foundations with external identifiers, versioned messages, signed webhooks, leases, retries, and tenant-scoped REST resources under hpb2b/v1.
  • Added PunchOut and EDI foundations with trading-partner credentials, one-use cXML sessions, allowlisted cart return, canonical procurement documents, and bounded CSV/X12 adapters.
  • Added AI PO Autopilot for pasted orders and validated TXT/CSV uploads, plus safe local DOCX extraction and optional-parser PDF extraction; drafts are processed asynchronously and always require customer review before cart or approval submission.
  • Added provider adapters for OpenAI, Anthropic Claude, Google Gemini, DeepSeek, and xAI Grok, with per-provider encrypted credentials, fixed HTTPS endpoints, strict canonical output validation, and no silent provider failover.
  • Added tests/run-pro-smoke.ps1, a fail-collecting sequential runner for all 21 Pro smoke suites, including default-off enterprise bootstrap and lifecycle-recovery coverage.

Security

  • Enforced company-scoped authorization, nonces, optimistic concurrency, idempotency keys, immutable audit records, and bounded indexed queries throughout the enterprise workflows.
  • Restricted contract-pricing administration, trade-credit configuration, sales-representative administration, and ATP inventory writes to store managers while allowing tenant administrators to manage only their company’s integration connections.
  • Authorized approval replays before returning idempotent results, and bound on-behalf trade-credit processing to the live representative, selected company, customer, order, and current permissions.
  • Added atomic AI admission budgets at user, company, and provider scope; anonymous-client denial; fail-closed invalid-provider handling; context-bound secret encryption; strict pre-parser, upload, MIME, content, response, and retained-storage limits; immutable draft company context; recoverable leases; race-safe tombstones; and feature-gated approval conversion.
  • Added HMAC webhook verification, replay rejection, exact HTTPS origin allowlists, SSRF-resistant outbound delivery, hashed bearer tokens, XXE-safe bounded cXML parsing, and fail-closed integration rate limits.
  • Preserved queued PO, integration, inventory, credit, and lifecycle recovery work across feature pauses and temporary entitlement outages without silently creating orders or consuming AI attempts.

Changed

  • Kept every new enterprise module opt-in for new and upgraded stores; enabling a dependent module also enables Company Accounts, and PunchOut/EDI also requires the Integrations foundation.
  • Added a default-off enterprise bootstrap fast path and a permanent non-autoloaded lifecycle marker so untouched storefront requests avoid enterprise runtime loading while previously used modules retain recovery hooks.
  • Extended classic and Blocks checkout with company snapshots and sales-representative attribution; Blocks trade credit no longer exposes exact credit limits or remaining capacity.
  • Made inventory authority exclusive per product: authoritative ATP records cannot coexist with WooCommerce native stock or HPB2B supplier-stock authority, preventing double counting and overselling.
  • Moved high-volume enterprise state to verified InnoDB schemas, bounded workers, leases, deterministic pagination, and Store API bulk payloads suitable for large catalogs.

Fixed

  • Preserved the newly inserted inbound-shipment identity across the subsequent ATP availability rebuild so integration imports return and audit the correct record.
  • Made stateful procurement and integration regression suites repeat-safe and locale-independent.
  • Made the documented consolidated smoke runner resolve its default WordPress root reliably on Windows PowerShell.

1.3.1 2026-09-14

Security

  • Updated the bundled Dompdf dependency from 2.0.3 to the verified official 3.1.6 release, closing known upstream file-read, chroot-bypass, file-existence, and resource-exhaustion advisories.
  • Disabled PHP QR Code filesystem caches/logs, removed generated artifacts, blocked direct execution of every bundled PHP entry point, and excluded unused demos, bindings, and build tools from release archives.
  • Made AI drafting, gift-card redemption, and gift-card PDF request budgets atomic, ownership-token-bound, and fail-closed under concurrent requests without retaining plaintext IP addresses.
  • Rejected query-bearing license service and package URLs and removed the unused anonymous favorites mutation route.
  • Prevented variations belonging to password-protected products from appearing in bulk-order search.

Changed

  • Restricted Dompdf to local embedded assets with remote loading and remote hosts disabled.
  • Extended security regression coverage for dependency state, atomic rate limits, protected bulk products, and signed-update URL validation.

1.3.0 2026-09-13

Added

  • Added a Pro bulk-order workspace with fast catalog, SKU/GTIN, category, stock, and variation search; an editable draft; and validated multi-line cart insertion.
  • Added per-role bulk-order access, a configurable My Account endpoint, and the [hpb2b_bulk_order] shortcode.
  • Added an HPOS-compatible "Most purchased" product filter based on WooCommerce order lookup tables.
  • Added optional AI-assisted text-order parsing through the OpenAI Responses API with Structured Outputs, encrypted API-key storage, request throttling, and explicit review of matched and unresolved lines.

Changed

  • Updated the plugin developer identity and contact details.
  • Completed and regenerated the European Portuguese translation catalog for all current plugin strings.

1.2.3 2026-09-08

Added

  • Added a bounded Lite-to-Pro bridge for legacy settings, B2B roles, applicant metadata, and fixed/bulk product pricing.

Changed

  • Preserved Lite configuration in Pro’s canonical option and quantity-pricing schemas so upgrading does not require reconfiguration.

1.2.2 2026-09-08

Fixed

  • Automatically provisioned verification-document storage in the closest secure hosting path, while preserving existing private storage and removing the confusing technical activation notice.

1.2.1 2026-09-05

Added

  • Declared tested compatibility with WooCommerce High-Performance Order Storage and Cart/Checkout Blocks.
  • Added a read-only license-service identity test that compares the live server algorithm and public-key fingerprint with the immutable key bundled in Pro.

Changed

  • Replaced offset/meta-query birthday and affiliate maintenance scans with bounded, primary-key cursor batches.
  • Made database upgrades schema-aware and idempotent, including explicit verification of every required custom table and index.
  • Delayed the main plugin bootstrap until init so translated defaults and notices are not requested before WordPress is ready.

Fixed

  • Fixed the WooCommerce incompatible-feature warning caused by missing compatibility declarations.
  • Fixed Pro activation failures when a customer build was pinned to an obsolete signing algorithm/key by rebuilding against the production RSA-SHA256 identity.
  • Fixed duplicate-index and already-existing-table errors during upgrades from earlier releases.
  • Fixed a large-store birthday worker path that could time out inside WP_User_Query.

1.2.0 2026-09-04

Security

  • Replaced dynamic virtual-meta SQL with an exact table/column allow-list and prepared identifiers.
  • Protected gift-card PDFs with random bearer tokens, purchaser/redeemer/capability checks, bounded rendering, and local-only assets; matching an unverified account email no longer grants access.
  • Moved business-registration documents to validated private storage outside WordPress and the server document root, with MIME, size, authorization, and fail-closed readiness checks.
  • Added capability and nonce enforcement to administrative, AJAX, profile, promotion, and gift-card mutations.
  • Added an atomic InnoDB ledger for wallet and points balances, reservations, reversals, expiry, and idempotent order events.
  • Hardened affiliate attribution, gift-card issuance/redemption/recovery, CSV output, deterministic birthday jobs, registration upload quotas, and REST replacement operations.
  • Added transactional supplier/native-stock reservations with failure-safe partial-refund and cancellation restoration.
  • Added whole-unit storefront license caps (100 per line), 20-key idempotent issuance batches, bounded recovery for legacy/programmatic lines through 1,000 units, and fail-visible handling for invalid quantities.
  • Made compiled promotion data read-only and generation-checked, with immediate fail-closed invalidation after relevant catalog mutations.
  • Removed public plugin logging and direct wp-config.php mutation.

Added

  • Signed commercial license activation and update client with mandatory production key pinning, encrypted bearer-token storage, offline grace, strict response schemas, POST-body one-use downloads, and SHA-256 package verification.
  • Private license manager with encrypted/HMAC-protected credentials, atomic activation and rate-limit state, trusted-proxy-aware client resolution, immutable checkout term snapshots, and serialized refund/revocation handling.
  • Store-local, daylight-saving-safe cron scheduling and cleanup.
  • Durable bounded financial, gift-card, and birthday recovery workers, including query-failure retry and scheduler self-healing.
  • Regression smoke tests for licensing and critical commerce/security paths, including injected crash/database-race cases and 101-unit license issuance/refund reconciliation.

Changed

  • Refactored bootstrap timing and dependency checks for current WordPress and WooCommerce releases.
  • Made destructive legacy catalog automations opt-in for new installations and surfaced a migration review flag.
  • Improved composable role/quantity/promotion pricing, Store API compatibility, admin settings validation, accessibility, and cache/lookup invalidation.
  • Moved the product, documentation, commercial update, and license API destinations to wchighperformanceb2b.com.

Fixed

  • Fixed duplicate system-product creation, variable/parent synchronization, stale sale metadata, birthday pagination, and multiple undefined-option paths.
  • Fixed wallet top-up quantity abuse, repeated order processing, supplier-stock reservation/refund races, partial native-stock reconciliation, invalid-registration quota consumption, and promotion cleanup overwriting merchant sales.
  • Fixed interrupted gift-card creation/email/reversal work so the same durable record is recovered without duplicate value.

1.1.4 2026-03-12

Changed

  • Promotions now allow to select specific products or to exclude specific products

1.1.3 2026-02-16

Fixed

  • Incorrect functions positioning was breaking wp-cron in Points

1.1.2 2026-02-01

Fixed

  • Bugs in user profile in backend, not properly hidding extra HPB2B fields

1.1.1 2026-01-27

Added

  • Options to hide Privacy Policy link and Language Selector in login page

Fixed

  • Digital Wallet with minor bugs

1.1.0 2026-01-24

Added

  • First-run Setup Wizard (step-based onboarding) to configure core features quickly.
  • “Help & Information” tab with video/tutorial links and admin menu visibility selector.

Changed

  • Polished admin UI patterns across settings (cards, tabs, repeaters, modern layout).

Fixed

  • Minor UI alignment and copy tweaks in options page.

1.0.0 2026-01-19

Added

  • Modernized HPB2B Options UI with tabbed navigation (Features, Users, Pricing, Recommendations, Marketing, Crons, Login, Shortcodes, Help).
  • First-run Setup Wizard foundation with system checks and “Quick Fixes” actions (rewrite flush, Woo pages checks, endpoint refresh).
  • Favorites system upgrade:
  • ↳ Lightweight SVG icon set (no Font Awesome dependency).
  • ↳ AJAX toggle + instant UI update (icon state + counts).
  • ↳ Automatic overlay placement on product thumbnails, single product page, and WooCommerce Blocks (render_block injection).
  • ↳ Favorites endpoint/page behavior without requiring a manually created WP page.
  • Recommendations upgrades:
  • ↳ “Customers also bought” with modes (manual/auto/hybrid/category fallback), cart injection (classic + blocks), and My Account dashboard placement.
  • ↳ “Products for you” (viewed/purchased history) with cart injection (classic + blocks), product page placement, shortcode, and My Account dashboard placement.
  • ↳ Global recommendation dedupe to prevent repeated products across blocks.
  • Promotions badges:
  • ↳ Badge display modes: “Sale!”, “% discount”, “amount discount”.
  • ↳ Per-product overrides over global badge settings.
  • ↳ Option to show/hide badges on the single product page.
  • Buy Now improvements:
  • ↳ Variable product compatibility.
  • ↳ Redirect directly to Checkout to reduce user clicks.
  • Promotions engine enhancements:
  • ↳ Added support for product_brand taxonomy in discount constraint logic (alongside categories and attributes).
  • ↳ Improved processing safeguards to avoid duplicate processing and reduce unnecessary writes.
  • Cron controls in options:
  • ↳ Products to draft if missing thumbnail/price, update product prices, quantity price table generation, promotions processing, points expiry cleanup.

Changed

  • Refactored several frontend injections for full compatibility with WooCommerce Blocks (cart/loop contexts).
  • Improved options defaults strategy to ensure a consistent first install experience (pre-populated settings).
  • Improved internal helpers for sanitization/validation on settings and AJAX endpoints.

Fixed

  • Fixed inconsistent behavior when toggling favorites where the UI did not update immediately.
  • Fixed edge cases where recommendations could render multiple times in Cart Block contexts.
  • Fixed variable product “Buy Now” flows that incorrectly asked for variation selection despite being selected.

0.9.0 2025-10-28

Added

  • Promotions feature (Marketing > Promotions):
  • ↳ Condition-based promotions by categories, attributes, roles, and suppliers.
  • ↳ Admin meta box UI and manual “Run Process” button via AJAX.
  • Sale date display feature for legal compliance (show start/end sale dates on single product page).
  • Improved admin Options layout foundations (cards/fields helpers).

Changed

  • Promotion application logic refactored into reusable functions (apply + constraints).
  • Improved performance by querying only IDs where possible.

Fixed

  • Fixed promotion cleanup logic to avoid leaving stale role restrictions and sale meta on products.

0.8.0 2025-06-14

Added

  • Favorites system (core):
  • ↳ User favorites stored in user meta with retro-compat support for old serialized storage.
  • ↳ Shortcodes for favorites icon and add-to-favorites button.
  • ↳ Favorites page template (initial version).
  • Gift Cards foundation:
  • ↳ Gift card product support and PDF generation flow (initial implementation).
  • Login page customization settings (background image/color, opacity, blur, button color, box width).

Changed

  • Introduced feature flags system to enable/disable modules independently.

Fixed

  • Fixed notices when optional feature modules were disabled.

0.7.0 2025-03-03

Added

  • Quantity table pricing module:
  • ↳ UI fields for simple products and variations.
  • ↳ Dynamic add/remove sets in admin UI via JS repeaters.
  • Shop Stock module:
  • ↳ Multi-store stock lines per product and per variation.
  • Supplier module:
  • ↳ Supplier pricing/stock fields (simple + variation) with repeater UI.

Changed

  • Improved admin UI repeaters for readability and easier management.

Fixed

  • Fixed indexing issues in repeater cloning logic for variable products in some WooCommerce versions.

0.6.0 2024-11-21

Added

  • Points system foundation (earn, convert rules, validity days).
  • Wallet foundation (minimum purchase rules and internal product linkage).
  • Affiliate system foundation and levels model (registration + first purchase points scaffolding).
  • User roles module:
  • ↳ Custom roles creation + global discount and VAT visibility capability.

Changed

  • Centralized default option handling for first install.

Fixed

  • Prevented role duplication and improved sanitization in role updates.

0.5.0 2024-06-08

Added

  • “Buy Now” button (first version) and quantity +/- UX controls.
  • Cart item tax display (initial) with improved cart/mini-cart behavior.

Changed

  • Improved integration with WooCommerce cart flows for better theme compatibility.

Fixed

  • Fixed tax display inconsistencies when cart quantities were updated.

0.1.0 2023-11-23

Added

  • Initial internal prototype.
  • Core plugin structure and WooCommerce integration baseline.

Documentation source: High Performance B2B 1.4.3 / Lite 1.5.6.