Real-Time Reconciliation events for Stripe v2
- Last updated
-
-
Save as PDF
The following table lists Zuora's actions on Stripe events when the Real-Time Gateway Reconciliation feature is enabled.
Stripe event type |
Stripe object |
Stripe event |
Zuora's action |
Payment |
Payment Intent |
amount_capturable_updated |
N/A |
canceled |
- Zuora updates the Gateway State to "FailedToSettle" on the payment transaction.
- Zuora updates the gateway reconciliation status of the payment to “canceled”.
- Zuora updates the gateway reconciliation reason of the payment with the corresponding failure code and message.
- Zuora creates an external refund with the reason code set to "Payment Rejection" if the code is active in the Reason Codes list. Otherwise, Zuora creates an external refund with the reason code set to the default reason code in the list.
- If the Support refunding payments from the credit balance with Gateway Reconciliation setting is enabled, a credit balance refund will be created. See Refund payments with credit balance in gateway reconciliation for more information.
|
created |
N/A |
payment_failed |
- Zuora updates the Gateway State to "FailedToSettle" on the payment transaction.
- Zuora updates the gateway reconciliation status of the payment to “payment_failed”.
- Zuora updates the gateway reconciliation reason of the payment with the corresponding failure code and message.
- Zuora creates an external refund with the reason code set to "Payment Rejection" if the code is active in the Reason Codes list. Otherwise, Zuora creates an external refund with the reason code set to the default reason code in the list.
- If the Support refunding payments from the credit balance with Gateway Reconciliation setting is enabled, a credit balance refund will be created. See Refund payments with credit balance in gateway reconciliation for more information.
|
processing |
N/A |
requires_action |
N/A |
succeeded |
- Zuora updates the Gateway State to "Settled" on the Payment transaction.
- Zuora updates the gateway reconciliation status of the payment to “succeeded”.
|
Payout |
created |
The payment payout is mapped to the corresponding Payout ID. |
Dispute |
closed (status = lost)
|
- Zuora updates the Gateway State to "Settled" on the payment transaction.
- By default, Zuora creates an external refund. If "Payment Reversal" is active in the Reason Codes list, the reason code is set to "Payment Reversal". Otherwise, the reason code is set to the default reason code in the list.
If you want to opt out of this default behavior and disable the generation of external refunds for dispute events, submit a request at Zuora Global Support.
- Zuora updates the gateway reconciliation status of the payment to “charge.dispute.closed.lost”.
- Zuora updates the gateway reconciliation reason of the payment with the corresponding message.
|
Refund |
Charge |
refunds.data.status = failed |
Zuora updates the Gateway State to "Reject" on the refund transaction. |
refunds.data.status = canceled |
Zuora updates the Gateway State to "FailedToSettle" on the refund transaction and reverses the refund according to the global setting configured in the Gateway Reconciliation Configuration page in Zuora Payments Settings. |
refunds.data.status = pending |
N/A |
refunds.data.status = succeeded |
Zuora updates the Gateway State to "Settle" on the refund transaction. |
Payout |
created |
The refund payout is mapped to the corresponding Payout ID. |
Mandate
Only mandate update events of Credit Card and Credit Card Reference Transaction payment methods are supported.
|
Mandate |
updated ( status = active) |
- Zuora updates the payment method status to “Active”.
- Zuora updates the mandate status of the payment method to "active". The mandate reason is empty.
|
updated ( status = inactive) |
- Zuora updates the payment method status to “Closed”.
- Zuora updates the mandate status of the payment method to "inactive". The mandate reason is empty.
|
updated ( status = pending) |
Zuora updates the mandate status of the payment method to "Closed". The mandate reason is empty. |