Skip to content
WeZend

Account & insights

Integrations & inbound sources

Connect CRMs and shops, import audiences in the background, test webhook wiring, and stream events in from any system.

The CDP is only as good as what flows into it. The integrations module manages the pipes.

Creating an integration

Settings → Integrations → New, or:

curl -X POST https://api.wezend.com/v1/integrations \
  -H "X-API-Key: $WEZEND_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "type": "shopify", "name": "Main store", "config": { "shop_domain": "acme.myshopify.com", "access_token": "shpat_…" } }'

An integration defines what connects (CRM, shop, custom system), which events flow, and how contacts map to profiles. Credentials are encrypted at rest.

Shopify: the app instead of a token

Pasting an access token still works, and for a private app it is the shortest path. For a normal store the Shopify app is fewer moving parts: send the merchant to /v1/integrations/shopify/install?shop=acme.myshopify.com&customer_id=<your account id>, they approve on Shopify's own OAuth screen, and the callback exchanges the code for a token and registers the webhooks — so orders, customers and products start flowing without anyone copying a secret between two dashboards. The scopes requested are read_orders, write_orders, read_customers, read_products and write_script_tags; GET /v1/integrations/shopify/webhooks/:integrationId lists what was registered, scoped to your own account.

WooCommerce comes from the store's side instead: point its webhooks at POST /v1/integrations/woocommerce/webhook. Both receivers verify the store's own signature, so neither needs an API key.

Importing an existing audience

POST /v1/integrations/:id/import-audience starts a background job that pulls the connected system's contacts (with consent state where the source provides it), deduplicates against existing profiles and reports progress — poll GET /v1/integrations/import-jobs/:jobId or watch the progress bar in the dashboard. Big audiences import without blocking anything else.

Testing the wiring

Before trusting an integration, click Send test event (POST /v1/integrations/:id/test). A synthetic event runs the full pipeline and shows you exactly what arrived and how it mapped — debugging with a flashlight instead of guessing in the dark.

Custom systems: the events firehose

Anything that can send an HTTP request is an integration. Stream behavioural events from your backend or site to POST /v1/events (see Tracking events), and expose the inbound webhook to receive replies in your own tools. Between those two and the reverse-ETL activation out to ad platforms, WeZend sits in the middle of the stack rather than at the end of it.

One platform. Every customer interaction.

Replace your patchwork of messaging APIs, CDP and automation tools with a single engagement platform built for scale.

No credit card required · EU data residency · 99.99% uptime SLA