Exposes ACH return codes on OutboundPayments, OutboundTransfers, and InboundTransfers in v1 Treasury
What’s new
v1 OutboundPayments, v1 OutboundTransfers, and v1 InboundTransfers now include raw ACH return codes and return reasons when an ACH transfer fails or is returned. When available, the ACH return code and reason appear under returned_details.network_details.ach for returned v1 OutboundPayments and v1 OutboundTransfers, and failure_details.network_details.ach for failed or returned v1 InboundTransfers.
Impact
You can use the raw ACH return codes for workflows that require rail-specific information, including fraud investigations, compliance operations, and customer support. Stripe’s existing normalized failure and return codes remain available under returned_details.code for v1 OutboundPayments and OutboundTransfers, and under failure_details.code for v1 InboundTransfers. Integrations that don’t need raw ACH details require no changes.
Upgrade
- View your current API version in Workbench.
- If you use an SDK, upgrade to the corresponding SDK version for this API version.
- If you don’t use an SDK, update your API requests to include
Stripe-Version: 2026-09-30.endive
- If you don’t use an SDK, update your API requests to include
- Upgrade the API version used for webhook endpoints.
- Test your integration against the new version.
- If you use Connect, test your Connect integration.
Learn more about Stripe API upgrades.