Quick answer

This guide teaches you how to use the Mundpay Generic Webhook to connect your sales in real time to any external tool, such as CRMs, course platforms (LMS), WhatsApp automation systems, spreadsheets or your own APIs, ensuring complete post-sale automation.

How to Integrate Any Platform via Generic Webhook

This guide teaches you how to use the Mundpay Generic Webhook to connect your sales in real time to any external tool, such as CRMs, course platforms (LMS), WhatsApp automation systems, spreadsheets or your own APIs, ensuring complete post-sale automation.

1. What is the Mundpay Webhook and why should I use it?

The Webhook is a tool for instant notification. Whenever an event occurs in your checkout, such as an approved sale, a Pix generated or a refund, Mundpay automatically sends a "data package" (JSON payload) to a URL you registered.

Why use it? It eliminates the need to check the dashboard manually and allows you to:

  • Automatically grant access to member areas and courses.
  • Send immediate messages on WhatsApp, such as welcome, billing or recovery messages.
  • Update data on platforms like Zapier, Make, n8n or CRMs.

1.1. Step by Step: How to Configure the Webhook in the Mundpay Dashboard

  1. Access the Dashboard: In the Mundpay side menu, navigate to the Integrations section.
  2. Add the Integration: Go to "Generic Webhook".
  3. Click on "Connect Integration"
  4. Name your integration
  5. Select the products from which you will receive the events
  6. Set the Destination URL: Paste the address of the receiving platform, such as the Webhook link generated by Zapier, Make, n8n or your own server.
  7. Select the Events: Choose which stages of the sale you want to monitor. We recommend selecting all to track the entire customer lifecycle.
  8. Save: Click on Save to activate automatic sending.

2. What is the destination URL (Endpoint) that I should register?

The destination URL is the address of your server's system or the platform that will receive Mundpay notifications, such as [https://seu-sistema.com/webhook-vendas](https://seu-sistema.com/webhook-vendas) or the link generated by your flow in Make or Zapier.

Understand the meaning of each status sent in the data package to configure your automations efficiently:

Status

What does it mean?

Recommended Action in Post-Sale

incomplete

Abandoned Cart: The customer started registration but did not complete it.

Send an email or WhatsApp cart recovery message.

awaiting_payment

Awaiting Payment: Boleto or Pix (Brazilian instant payment system) generated, pending settlement.

Send a reminder with the Pix copy and paste key or barcode.

paid

Approved Sale: Payment confirmed successfully!

Grant access to the product or service and send a welcome message.

refused

Refused: The transaction was denied by the card issuer or anti-fraud system.

Offer another payment method or contact the customer for support.

refunded

Refunded: The sale amount was refunded to the customer.

Block access to the product or service and cancel subscriptions.

chargedback

Chargeback: A dispute or purchase contestation opened by the buyer.

Suspend access and activate the chargeback defense team.

canceled

Canceled: Order canceled due to payment failure or error.

Record the reason for conversion analysis.

4. How to integrate with no-code platforms, such as Zapier, Make or n8n?

If you are not a developer, you can connect systems without writing a single line of code:

  1. In the no-code tool, such as Make or Zapier: Create a new scenario or zap and set the initial trigger to Webhooks, such as Custom Webhook or Catch Hook.
  2. Copy the URL: The platform will generate an exclusive webhook link, such as [https://hook.us1.make.com/](https://hook.us1.make.com/)....
  3. Paste into Mundpay: Insert this URL in the Mundpay dashboard following the step-by-step guide in Section 2.
  4. Send a Test: Make a test sale in checkout, or generate a Pix or Boleto so Mundpay sends the data in real time and the external tool recognizes the structure of the variables.

If your integration is already live, use this part to check what usually slips through: duplicate event delivery and signature verification. That is where almost every silent failure lives.

Wellington CostaGlobal Payments Specialist

5. Technical Structure of the Data, JSON Payload

For developers who will directly consume the API in the backend, requests are sent via the POST method with the Content-Type: application/json header.

Example of the Payload sent:

JSON

{
"event": "paid",
"data": {
"transaction_id": "tx_987654321",
"status": "paid",
"amount": 19700,
"currency": "BRL",
"payment_method": "credit_card",
"customer": {
"name": "João da Silva",
"email": "joao@email.com",
"document": "12345678900",
"phone": "+5511999999999"
},
"product": {
"id": "prod_12345",
"name": "Curso Avançado de Tráfego"
},
"tracking": {
"utm_source": "google",
"utm_campaign": "campanha_natal",
"src": "afiliado_01"
},
"created_at": "2026-08-12T14:00:00Z"
}
}

Attention (Financial Values): The amount field is always sent in cents. In the example above, 19700 represents R$ 197.00.

6. How to test my integration before going to production?

To validate the operation without affecting your official system:

  1. Access the free website Webhook.site.
  2. Copy the Unique URL generated on the page.
  3. Register this temporary URL in Mundpay.
  4. Generate a Pix or complete a test in your checkout.
  5. See the data arriving in real time on Webhook.site to inspect the headers and the body of the request.

7. Security Validation and Best Practices, Level 2 Support

  • Security Signature, HMAC SHA-256: To ensure that the requests were indeed sent by Mundpay and prevent spoofing attacks, we send the signature in the X-Mundpay-Signature header. Validate this hash in your API using your secret key.
  • Fast Response, Status 200: Your server should respond to Mundpay with an HTTP 200 code within 10 seconds. We recommend receiving the notification, responding 200 OK immediately and processing heavier flows, such as sending emails or consuming third-party APIs, asynchronously.
  • Idempotency: Always use the transaction_id field as a unique key in your database to avoid reprocessing or access duplication in case of automatic webhook resend attempts.

Questions or advanced schema queries? Access ourOfficial Developer Documentation.

Updated on: 12/08/2026