---
title: "Entrega um evento JSON ao endpoint HTTPS do lojista"
method: POST
path: "merchantEvent"
---

# Entrega um evento JSON ao endpoint HTTPS do lojista

`POST merchantEvent` (webhook)

POST com Content-Type application/json e envelope {id, type, data}.
MuPag-Signature e o alias X-Gateway-Signature trazem t=<epoch>,v1=<hmac>.
Também envia X-Gateway-Event-Id e X-Gateway-Timestamp. Sucesso é 200-299.
Não há User-Agent e redirecionamento não é seguido. Alvo bloqueado por SSRF
produz status interno 0, que não é resposta HTTP, e a entrega é abandonada.

## Headers

- `MuPag-Signature` string, required
- `X-Gateway-Signature` string, required
- `X-Gateway-Event-Id` string, required
- `X-Gateway-Timestamp` string, required

## Payload

- MerchantEventDelivery: Envelope entregue ao lojista. data só inclui campos da allowlist presentes na origem. O ping webhook.test acrescenta data.ping.
  - `id` string, required
  - `type` string, required
  - `data` object, required
    - `aggregate_id` unknown
    - `api_key_id` unknown
    - `grace_until` unknown
    - `days_before` unknown
    - `amount_cents` unknown
    - `attempt_number` unknown
    - `cancelled_at` unknown
    - `charge_id` unknown
    - `checkout_session_id` unknown
    - `coupon_id` unknown
    - `currency` unknown
    - `customer_id` unknown
    - `discount_applied_cents` unknown
    - `environment` unknown
    - `fee_cents` unknown
    - `from_status` unknown
    - `invoice_id` unknown
    - `invoice_sequence` unknown
    - `merchant_id` unknown
    - `net_amount_cents` unknown
    - `next_billing_date` unknown
    - `occurred_at` unknown
    - `paid_at` unknown
    - `paused_at` unknown
    - `payment_link_id` unknown
    - `payment_method` unknown
    - `ping` boolean
    - `payout_id` unknown
    - `payout_state` unknown
    - `plan_id` unknown
    - `product_id` unknown
    - `reactivated_at` unknown
    - `recorded_at` unknown
    - `requested_amount_cents` unknown
    - `resumed_at` unknown
    - `status` unknown
    - `subscription_id` unknown
    - `to_status` unknown

## Acknowledgement `2XX`

Qualquer status 200-299 encerra a entrega.

## Other responses

- `408`: Status retentável.
- `425`: Status retentável.
- `429`: Status retentável.
- `3XX`: Redirecionamento não é seguido e a entrega é abandonada.
- `4XX`: Os demais status 4xx abandonam a entrega.
- `5XX`: Status 500-599, inclusive 599 de falha de transporte, é retentável.

---

[API](https://skmtc.dev/mupag/apis/mupag-public-merchant-api.md) · [All operations](https://skmtc.dev/mupag/apis/mupag-public-merchant-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mupag/apis/mupag-public-merchant-api/revisions/677904516d2d?raw)
