Connecting through Zapier or Make
How to push every order to the generic connection without writing code, with the field mapping and the consent-as-text trap.
If your platform has an app on Zapier or on Make (formerly Integromat) — PrestaShop, Squarespace, Shopify, Stripe, Ecwid and hundreds more — you can push every order to the Orders API without touching code. The contract is the same; only who makes the request changes.
Your URL is in the app, under «Ajustes → Integraciones → Conexión genérica» (settings → integrations → generic connection).
Zapier
- Create a Zap with your platform’s trigger: New Order (or equivalent).
- Add the Webhooks by Zapier action → POST event.
- In URL, paste the address of your generic connection.
- In Payload Type, choose json.
- Map the order’s fields following the table below. The names go in Data; for the
customerobject use the double-underscore notation:customer__phone,customer__name. - If your checkout has a consent checkbox, map
consent— and make sure it arrives as a real boolean. - Test the Zap: the response should be
{"ok":true,…}. The sale will appear under «Ajustes → Integraciones → Catálogo» (settings → integrations → catalogue) and, if the phone number is recognisable, on the contact.
Make
Make’s HTTP module plays the same role as Webhooks by Zapier.
- Create a scenario with your platform’s trigger (Watch Orders or equivalent).
- Add the HTTP module → Make a request.
- URL: the address of your generic connection. Method:
POST. - Body type:
Raw· Content type:JSON (application/json). - In Request content, build the JSON with the order’s fields following the table below.
- If you send
consent, write it without quotes in the JSON (true/false). With quotes the request is rejected withbad_consent. - Run it once: the response should be
{"ok":true,…}.
Example Request content in Make, with the trigger’s variables in braces:
{
"order_ref": "{{1.order_number}}",
"total": {{1.total}},
"currency": "{{1.currency}}",
"customer": {
"phone": "{{1.billing.phone}}",
"name": "{{1.billing.name}}"
},
"consent": {{1.marketing_opt_in}}
}
Field mapping
| Field to send | Where to find it in your trigger |
|---|---|
order_ref | Your platform’s order ID or order number. It has to be stable: it is the deduplication key. |
total | The total amount of the order. |
currency | The order’s currency, 3 letters. |
customer.phone | The billing or shipping phone number. |
customer.name | The customer’s name. |
items | The order’s line items (id/SKU, name, quantity, line total). |
consent | The checkout’s consent checkbox, if there is one. Send it as a real boolean, not as text. |
The full contract — every field, the responses and the error catalogue — is in Orders API.
Which contact level each payload creates
| What you send | Resulting opt-in | What they can receive |
|---|---|---|
consent: true | «Marketing» | Campaigns, waves, proactive automations and 1 templates. Lifts a previous opt-out. |
consent absent | «No» | Only replies when the person writes. The order.paid automation is NOT sent. |
consent: false | Unchanged | The sale is only recorded if the phone number was already a registered contact. |
Full detail in Orders API → Consent.
Read next
- Orders API (generic connection)
- Stores and payment gateways — concrete per-platform recipes.
- The marketing opt-in and «Añadir a marketing»
Still stuck? Contact support