WooCommerce setup

Connect a WooCommerce store, test the complete delivery cycle, then let successful preset deliveries complete paid orders automatically.

Before you start

You’ll need:

  • WordPress 6.7 or newer, WooCommerce 9.9 or newer, PHP 7.4 or newer, and an HTTPS store URL.
  • A Preset Bridge account with validated Cortex Cloud credentials and an active API token.
  • A stable SKU on every WooCommerce product that should trigger delivery.
  • The Cortex Cloud resource ID for each preset or capture you sell.
  • Enough Preset Bridge credits for a test share. New accounts include three test deliveries.
Need help with the first store? Email contact@presetbridge.com. Include the store URL and the number of products you need to map. Never send passwords or webhook secrets by email.

1. Create the Preset Bridge integration

  1. Sign in to Preset Bridge and open API tokens. Create an active token for the store if you don’t already have one.
  2. Open Integrations → Store integrations, then select Add integration.
  3. Set the provider to woocommerce and select the store’s API token.
  4. Leave Username field key as ndsp_username.
  5. Set Accepted order statuses to processing, completed.
  6. Keep the integration active and add an item mapping for every product you sell.

Map WooCommerce products

SKU matching is the safest choice because a SKU remains clear when products or variations are moved between environments.

Preset Bridge field Value
External ref The exact WooCommerce product or variation SKU
Match type sku
Resource type preset or capture
Resource ID The Cortex Cloud ID of the asset to share
Variation products: map the variation SKU when each variation delivers a different asset. The plugin falls back to the parent SKU when a variation has no SKU of its own.

Find a preset resource ID

Use the active API token to list presets held by the connected Cortex Cloud account. Preset listing is free.

List your presets
curl https://presetbridge.com/api/presets/list \
  -H "x-api-key: ndsp_live_xxxxxxxxxxxxxxxx"

Match the returned preset name, then copy its id into the mapping’s Resource ID field. For a capture, use its Cortex Cloud capture ID. Email contact@presetbridge.com if you need help confirming an asset ID.

Create the integration, then copy its Webhook URL and Webhook secret. The full secret is shown once.

2. Install the WooCommerce plugin

  1. Download Preset Bridge for WooCommerce 1.2.0.
  2. In WordPress, open Plugins → Add New Plugin → Upload Plugin.
  3. Upload the ZIP, select Install Now, then activate the plugin.
  4. Open WooCommerce → Settings → Integrations → Preset Bridge.

Don’t create another webhook under WooCommerce → Settings → Advanced → Webhooks. The plugin sends and signs the order itself.

3. Send paid orders to Preset Bridge

  1. Paste the Preset Bridge Webhook URL and Signing secret into the plugin settings.
  2. Select Processing and Completed under Send on order status.
  3. Leave Require a Cortex Cloud username for eligible products enabled.
  4. If the store sells other products, add each preset product SKU under Eligible product SKUs. Leave this blank only when every order should be sent.
  5. Leave the integration disabled for now, then save the settings.

The checkout field appears only when the cart contains an eligible product. It works with classic checkout and Checkout Blocks.

4. Send delivery results back to WooCommerce

  1. Copy the Resolution webhook URL shown in the WordPress plugin settings. It ends with /wp-json/preset-bridge/v1/delivery-events.
  2. In Preset Bridge, open Integrations → Outbound webhooks and select Add subscription.
  3. Give the subscription a store-specific name and paste the Resolution webhook URL into Target URL.
  4. Use these enabled events: delivery.completed, delivery.action_required, delivery.retry_scheduled, delivery.failed, delivery.ignored, delivery.invalidated, delivery.reopened.
  5. Paste the WooCommerce integration ID into Integration IDs. It’s the final value in the integration Webhook URL, after /woocommerce/. This prevents another store’s events from reaching this WordPress site.
  6. Create the subscription and copy its secret. The full secret is shown once.
  7. Return to the WordPress plugin settings and paste it into Resolution webhook secret.
  8. Leave Mark paid orders Completed after Preset Bridge confirms delivery enabled.
  9. Enable the integration and save the settings.
The two secrets are different. The integration secret signs orders sent from WooCommerce. The outbound subscription secret signs delivery results sent back to WordPress.

If an order cannot be fulfilled, open its Preset Bridge delivery and select Mark invalid. This stops retries and records the reason in both systems. Reopen the delivery if the order becomes valid later.

5. Run a test order

Use a low-value or private product mapped to a real preset. Enter a Cortex Cloud username you can access during the test.

  1. Place and pay for the order. Confirm the WooCommerce order reaches Processing.
  2. Open Deliveries in Preset Bridge. The order should appear as Queued or Running.
  3. Check the customer’s Cortex Cloud account for the follow request and follow the store account back.
  4. Wait for the next scheduled attempt, or use Retry delivery in Preset Bridge after the follow-back is visible.
  5. Confirm the preset or capture appears in the customer’s Cortex Cloud account.
  6. Confirm the Preset Bridge delivery is Completed.
  7. Refresh the WooCommerce order. It should contain a Preset Bridge order note and reach Completed.

If the customer already follows the store account, Preset Bridge can share the asset during the first processing attempt.

What each result does in WooCommerce

Preset Bridge result WooCommerce behaviour
retry_scheduled Stores the current result while Preset Bridge waits and tries again. The order stays Processing.
action_required Adds an order note with the problem. Correct the username, credentials, credits or mapping, then retry.
failed_permanent Adds an order note. The WooCommerce order status is not changed automatically.
ignored Adds an order note, usually because Preset Bridge did not accept the order status.
completed Marks a paid order Completed when automatic completion is enabled.

Preset Bridge never completes an unpaid, cancelled, refunded or failed order. Duplicate callbacks are acknowledged without applying the same result twice, and an older callback cannot overwrite a newer result.

Fix an order that needs attention

Username is missing or not recognised

Search Cortex Cloud for the exact public username. In Preset Bridge, open the delivery, update the username and retry it. You can also edit the username on the WooCommerce order, choose Retry Preset Bridge delivery under Order actions, then update the order.

Waiting for follow-back

The follow request has been sent, but Cortex Cloud only allows sharing between mutual followers. Ask the customer to follow the store account back. Preset Bridge will retry on schedule.

No item mapping

Compare the SKU recorded on the WooCommerce order with the mapping’s External ref. They must match. Save the corrected mapping, then retry the delivery.

Order stays Processing after delivery

Open Integrations → Outbound webhooks in Preset Bridge and inspect the subscription’s recent attempts. An HTTP 401 means the Resolution webhook secret in WordPress doesn’t match the outbound subscription secret. An HTTP 404 usually means the target URL is wrong or the plugin isn’t active.

Order never reaches Preset Bridge

Open WooCommerce → Status → Scheduled Actions and search for the preset-bridge group. Check that the plugin is enabled, the order reached a selected status and at least one purchased SKU is eligible.

Security and order data

The plugin sends the order ID, order key, order status, billing email address, Cortex Cloud username and the SKU, product ID, variation ID, name and quantity for each line item. It doesn’t send billing addresses, payment details, prices or order totals.

Preset Bridge sends the order ID, stable event ID, delivery status and delivery message back to WooCommerce. Both directions use HMAC-SHA256 signatures. Secrets aren’t written to WooCommerce logs or order notes.

Go-live checklist

  • The test order appeared in Preset Bridge once.
  • The customer received the correct preset or capture.
  • The completed delivery changed the paid WooCommerce order to Completed.
  • Every sellable SKU has a matching Preset Bridge item mapping.
  • The outbound subscription is limited to this store’s integration ID.
  • The Preset Bridge credit balance can cover live orders.
  • Store staff know where to find deliveries that need attention.