plugin-icon

CatCode Order Sync with KeyCRM for WooCommerce

Automatic export of WooCommerce orders to KeyCRM: order is created in the CRM right after checkout, with retries and an event log.
Évaluations
Version
0.1.3
Mis à jour récemment
Jul 20, 2026
CatCode Order Sync with KeyCRM for WooCommerce

The plugin connects WooCommerce to KeyCRM via its Open API (openapi.keycrm.app). Every new store order is automatically created in KeyCRM with the buyer, products, shipping and payment.

KeyCRM is a third-party product; this plugin is an independent integration and is not affiliated with or endorsed by KeyCRM.

Features

  • Send the order right after checkout (classic checkout and Checkout Blocks) or when it enters one of the selected statuses
  • Deduplication: source_uuid = wc-{id} plus the KeyCRM ID stored in order meta — no duplicates
  • Payment status pass-through: a paid order is created with a « paid » payment record (optional)
  • Automatic retries on failure: 3 attempts with 5 min / 30 min / 2 h delays (WP-Cron)
  • Metabox on the order screen: sync status, KeyCRM ID, « Resend » button (already-sent orders are partially updated via PUT)
  • « Test connection » button on the settings page
  • Log of recent sync events (« Journal » tab)
  • API key is encrypted in the database (libsodium with an HMAC fallback)
  • Buyer phone normalization to E.164 (+380…)
  • Order source: explicit Source ID or a source name (KeyCRM creates it automatically)
  • HPOS compatible (custom order tables), works exclusively through WC_Order CRUD
  • catcode_keycrm_order_payload filter and catcode_keycrm_order_sent action for third-party integrations

Requirements

  • WooCommerce 7.0 or newer
  • PHP 7.4+
  • KeyCRM API key (KeyCRM cabinet Settings API)

How it works

  1. A customer places an order in your store
  2. The plugin builds the payload (buyer, products, shipping, payment) and sends POST /order to KeyCRM
  3. KeyCRM returns the order ID, which is stored in the _catcode_keycrm_order_id meta
  4. If KeyCRM is unavailable, the attempt is retried automatically (up to 3 times)
  5. The manager sees the status and ID in the order metabox and in the journal

The plugin interface is fully translated into Ukrainian. / Інтерфейс плагіна повністю перекладено українською.

External services

This plugin connects to the KeyCRM Open API (https://openapi.keycrm.app/v1), a third-party CRM service. The connection is the whole purpose of the plugin: it creates and updates your WooCommerce orders inside your own KeyCRM account.

What is sent and when:

  • POST /order — when a customer places an order, or when the order enters one of the statuses you selected as a trigger. Retried up to 3 times if KeyCRM is unavailable.
  • PUT /order/{id} — when you press « Resend » in the order metabox for an order that already exists in KeyCRM.
  • GET /order?limit=1 — only when you press « Test connection » on the settings page.

Every request carries your KeyCRM API key in the Authorization header. The order data sent is: the WooCommerce order ID (as source_uuid, e.g. wc-123), the order source name, the customer note, the line items (name, SKU, price, quantity), the shipping method, shipping cost, delivery city and address, the payment method title, the order total and whether it is paid, and the buyer’s full name, email address and phone number as entered at checkout.

No data is sent to any other service, and nothing about your visitors, site or administrators is sent beyond the order data listed above. Nothing is sent until you enter your KeyCRM API key: without a key the plugin makes no external requests.

This service is provided by KeyCRM: terms of use, privacy policy.

Gratuitsur les plans payants
En procédant à l’installation, vous acceptez les Conditions d’utilisation de WordPress.com ainsi que les Conditions de l’extension tierce.
Testé jusqu’à version
WordPress 7.0.2
Cette extension est disponible en téléchargement pour votre site .