Configuring the Webhook integration
Goal
Automatically send every document generated by POP (XML or PDF) to an external tool: Zapier, Make (Integromat), a CRM, Google Drive, or a custom endpoint.
Prerequisites
- On WordPress: no minimum plan, webhook delivery is available on every plan (including Free), using credits. On Shopify, the Basic plan or higher is required instead.
- An HTTP endpoint listening (the destination webhook URL).
Steps
- On
popapi.io, go to My Account > Integrations > POP to Webhook > Connect. - Configure:
- an identifying name
- the destination webhook URL
- the data format: JSON or XML
- the activation switch
- On WordPress: in the POP plugin go to Advanced > Webhook, enter the webhook ID created in the previous step, enable it, and — if you want background sending instead of synchronous — also enable automatic sending via CRON.
- On Shopify: enter the webhook ID in the app settings; an icon will appear in the invoices list to send the data.
Formats
- JSON — designed for no-code platforms (Zapier, Make): the data is automatically flattened into a structure that’s easy to map.
- XML — suited to archiving or systems that require the FatturaPA standard; it can also be sent as an attachment.
You can configure multiple webhooks with different URLs and formats at the same time.
Common errors
- Invalid webhook URL — verify the URL is publicly reachable and responds successfully (it’s not enough for it to be syntactically correct).
- Unsupported data format — only use
JSONorXML; other formats are rejected. - The webhook receives nothing in sandbox — an expected limitation: webhook delivery isn’t available in the sandbox environment (see use-sandbox-environment).
Related configuration
For the specific case of forwarding to n8n with a dedicated connector (e.g. Zoho), see api/connectors and n8n.