Event Types This page lists all webhook events available to merchant endpoints. Each event follows the {entity}.{action} naming convention.
For setup instructions, signature verification, and retry behavior, see the Webhooks guide .
Event Description payment.createdA new payment has been created. payment.processingThe payment has been sent to the provider for processing. payment.succeededThe payment completed successfully. If 3DS was performed, data.threeDSResult contains the authentication outcome. payment.failedThe payment was declined by the provider. If 3DS was performed, data.threeDSResult contains the authentication outcome. payment.canceledThe payment was voided before completion. payment.requires_actionCustomer action is needed (e.g. 3DS authentication). data.action contains the action details, including redirect URL and method. payment.requires_captureThe payment has been authorized and is awaiting capture. payment.capturedA previously authorized payment has been captured. payment.refundedThe payment has been fully refunded. payment.partially_refundedA partial refund has been applied to the payment. data includes refundedAmount and remainingAmount.
Event Description refund.createdA refund has been initiated. refund.succeededThe refund completed successfully. refund.failedThe refund failed.
Event Description checkout.session.createdA new checkout session has been created. checkout.session.completedThe checkout session completed (payment succeeded). checkout.session.expiredThe checkout session expired before completion.
Event Description dispute.createdA dispute (chargeback) has been opened. dispute.updatedA dispute has been updated with new information. dispute.wonThe dispute was resolved in your favor. dispute.lostThe dispute was resolved against you.
Event Description payout.createdA payout to a third-party recipient has been initiated. payout.succeededThe payout completed successfully. payout.failedThe payout failed.
Event Description settlement.finalizedSettlement finalized and financial statement ready for download.
Event Description withdrawal.createdA withdrawal request has been created. withdrawal.approvedThe withdrawal has been approved by the operator. withdrawal.rejectedThe withdrawal has been rejected by the operator. data includes rejectionReason. withdrawal.canceledThe withdrawal has been canceled by the entity that created it. withdrawal.succeededThe withdrawal completed successfully. withdrawal.failedThe withdrawal failed during execution at the provider.
Event Description balance.availableFunds have transitioned from pending to available after the T+N holding period. data includes amount, currency, and entityType. balance.threshold_reachedYour balance has reached a configured threshold (low balance alert).
The event.data field contains the resource object that triggered the event, scoped to your access level. For example, a payment.succeeded event includes the Payment object, and a refund.created event includes the Refund object.
Merchant endpoints receive a limited view: amount, currency, status, and total merchantFee. Fee decomposition (provider fee, tenant fee, platform fee, partner commission) and provider-level details (raw provider status, terminal ID, routing details) are not included in merchant webhook payloads. Tenant and platform endpoints receive progressively more detail.
When creating or updating a webhook endpoint, you specify which events to receive using the events array. You can use:
Exact event names: ["payment.succeeded", "refund.created"]
Wildcards by category: ["payment.*", "refund.*"] — receive all events in those categories.
All events: ["*"] — receive every event type listed on this page.
curl -X POST https://api.miracle.com/v1/webhooks/endpoints \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/webhooks/miracle",
"events": ["payment.*", "refund.*", "dispute.*"]
}'
You can also browse the available event types via the API:
curl https://api.miracle.com/v1/webhooks/event-types \
-H "Authorization: Bearer sk_test_..."