Skip to main content
Sent when a payment attempt fails, for example a declined card. This is not final: the checkout stays open, and the customer can try again or choose another payment method. Bachs sends this event once per payment, for the first failure. Don’t cancel the order on it; use checkout.expired to learn that a checkout was never paid.

Event fields

string
The event’s unique identifier, prefixed evt_.
string
Always collection.failed.
string
When the event occurred, in UTC.
string
Your account’s ID.
string
Charge ID for support and reconciliation workflows.
string | null
Checkout that originated the charge, when available.
string | null
Checkout reference, when available.
string
The uppercase terminal state. FAILED: the payment was attempted and did not succeed. EXPIRED: nobody paid before the charge closed. The payment object returns these states in lowercase, so do not compare the values directly.
string
Original charge amount in data.currency.
string
Customer payment currency code.
string
What would have been credited to you had the charge succeeded, worked out when the charge was created. A failed charge credits nothing, so do not read this as money you hold.
string
Settlement currency.
string | null
A human-readable reason for the failure, when available.
array | null
Products the customer was buying, when a checkout created the charge. Each item contains product_id, quantity, and amount (present only for custom-priced products).
object
The customer. id is always present and can be null, for a guest or for a charge no checkout created. email and name are included only when a checkout collected them.
string | null
Bachs processing fee in data.processing_fee_currency. null while the final settlement figure is still open.
string | null
Currency of data.processing_fee. null when processing_fee is null.
string
Who absorbs the processing fee, customer or merchant.
object | null
How the money moved. null here: no attempt collected anything, so there is no payer to name. See collection.succeeded for the shape it takes when a payment does succeed.
object
Public metadata stored with the charge.