Butterpayments · AsyncAPI Specification
Butterpayments Webhooks
Version
View Spec
View on GitHub
CompanyPaymentsPayment RecoverySubscriptionsDunningInvoluntary ChurnDispute PreventionChargebacksCard VaultFintechMachine LearningAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-07-18'
method: searched
source: https://docs.services.butterpayments.com/api-reference
type: Webhooks
spec_type: none
summary: >-
Butter Recover and Dispute deliver events to merchant-provided endpoints via HTTP POST.
Butter publishes no AsyncAPI document; this is the documented webhook catalog. All Butter-sent
webhooks are signed with HMAC-SHA256 (X-Butter-Webhook-Signature + X-Butter-Webhook-Expiration).
authentication:
scheme: HMAC-SHA256
signature_header: X-Butter-Webhook-Signature
expiration_header: X-Butter-Webhook-Expiration
verification_docs: https://docs.services.butterpayments.com/webhook-signature-verification
webhooks:
- name: RetryResults
direction: butter-to-merchant
method: POST
delivered_to: merchant-provided endpoint
description: >-
Real-time outcome of each payment retry attempt (success true/false), enabling merchants to
reconcile payments in their subscription management system.
payload_fields: [timestamp, butter_id, customer_id, subscription_id, invoice_id, transaction_id, original_psp_transaction_id, psp_transactions, original_amount, amount_collected, currency, success, dunning_complete, custom]
ack_response: {detail: "Event delivered successfully"}
docs: https://docs.services.butterpayments.com/retry-results
- name: EndOfDunning
direction: butter-to-merchant
method: POST
delivered_to: merchant-provided endpoint
description: >-
Sent when the dunning process for an invoice completes and no further retries will be attempted;
signals the merchant to take end-of-dunning subscription actions.
payload_fields: [timestamp, invoice_id, recovered, custom]
ack_response: {detail: "Event delivered successfully"}
docs: https://docs.services.butterpayments.com/end-of-dunning
- name: DisputesWebhook
direction: butter-to-merchant
method: POST
delivered_to: merchant-provided endpoint
description: >-
Dispute events from Butter's Verifi-powered dispute prevention service; onboarded by providing a
valid endpoint URL and validating the Butter-issued signing key.
docs: https://docs.services.butterpayments.com/disputes-webhooks
- name: VerifiRDRWebhookEvent
direction: butter-to-merchant
method: POST
delivered_to: merchant-provided endpoint
description: >-
Verifi Rapid Dispute Resolution (RDR) event with header spec, JSON payload, and signature
verification for streamlined dispute resolution.
docs: https://docs.services.butterpayments.com/verifi-rdr-webhook-event
merchant_callbacks:
- name: RetryStatus
direction: butter-to-merchant
method: POST
path: /retry/{invoice_id}
description: >-
Final eligibility check Recover calls before submitting a retry (e.g. cancel if the user churned).
Returns retry (bool), reason, amount, metadata, and payment_methods.
docs: https://docs.services.butterpayments.com/api-reference