# Adds under review status events for outbound payments and transfers ## What’s new You can now subscribe to the [outbound_payment.under_review](https://docs.stripe.com/api/v2/money-management/outbound-payments/event-types.md?api-version=2026-06-24.preview#v2_outbound_payments_event_types-v2.money_management.outbound_payment.under_review) and [outbound_transfer.under_review](https://docs.stripe.com/api/v2/money-management/outbound-transfers/event-types.md?api-version=2026-06-24.preview#v2_outbound_transfers_event_types-v2.money_management.outbound_transfer.under_review) events on the [OutboundPayment](https://docs.stripe.com/api/v2/money-management/outbound-payments/object.md?api-version=2026-06-24.preview) and [OutboundTransfer](https://docs.stripe.com/api/v2/money-management/outbound-transfers/object.md?api-version=2026-06-24.preview) resources. These events are triggered when we place an outbound payment or transfer on hold for internal review. You can also identify the held state through the new `under_review` reason in the [processing](https://docs.stripe.com/api/v2/money-management/outbound-payments/object.md?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-processing) status detail on both resources when reading the object directly. Two new failure [reason](https://docs.stripe.com/api/v2/money-management/outbound-payments/object.md?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-reason) enum values, `fx_rate_drift_exceeded_after_review` and `review_rejected`, indicate why a payment or transfer failed after the review period concluded. ## Why is this a breaking change? Previously, there was no way to determine why an outbound payment or transfer was taking longer than expected in the `processing` status. ## Impact You can now determine why an outbound payment or transfer is taking longer than expected in the `processing` status. `status_details.processing` provides context, such as the `under_review` reason, when an outbound payment or transfer is held for review. Handle the new `outbound_payment.under_review` and `outbound_transfer.under_review` events to be notified immediately when an outbound payment or transfer is placed on hold for review. Update any code that evaluates failure reasons to handle the new `fx_rate_drift_exceeded_after_review` and `review_rejected` enum values to avoid unexpected behavior when a payment or transfer fails after review. ## Changes #### REST API | Parameter | Change | Resources or endpoints | | --- | --- | --- | | `processing` | Added | [V2.MoneyManagement.OutboundPayment.status_details](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2.MoneyManagement.OutboundTransfer.status_details](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | Values | Change | Enums | | --- | --- | --- | | `fx_rate_drift_exceeded_after_review`, `review_rejected` | Added | [V2.MoneyManagement.OutboundPayment.status_details.failed.reason](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-reason), [V2.MoneyManagement.OutboundTransfer.status_details.failed.reason](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details-failed-reason) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundTransfer` | #### Ruby | Parameter | Change | Resources or methods | | --- | --- | --- | | `processing` | Added | [V2::MoneyManagement::OutboundPayment::StatusDetail](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2::MoneyManagement::OutboundTransfer::StatusDetail](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2::MoneyManagement::OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2::MoneyManagement::OutboundTransfer` | #### Python | Parameter | Change | Resources or methods | | --- | --- | --- | | `processing` | Added | [V2.MoneyManagement.OutboundPayment.StatusDetail](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2.MoneyManagement.OutboundTransfer.StatusDetail](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | Values | Change | Enums | | --- | --- | --- | | `fx_rate_drift_exceeded_after_review`, `review_rejected` | Added | [V2.MoneyManagement.OutboundPayment.StatusDetail.Failed.reason](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-reason), [V2.MoneyManagement.OutboundTransfer.StatusDetail.Failed.reason](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details-failed-reason) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `v2.money_management.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `v2.money_management.OutboundTransfer` | #### PHP | Parameter | Change | Resources or methods | | --- | --- | --- | | `processing` | Added | [V2.MoneyManagement.OutboundPayment.status_details](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2.MoneyManagement.OutboundTransfer.status_details](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | Values | Change | Enums | | --- | --- | --- | | `fx_rate_drift_exceeded_after_review`, `review_rejected` | Added | [V2.MoneyManagement.OutboundPayment.status_details.failed.reason](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-reason), [V2.MoneyManagement.OutboundTransfer.status_details.failed.reason](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details-failed-reason) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundTransfer` | #### Java | Parameter | Change | Resources or methods | | --- | --- | --- | | `processing` | Added | [v2.moneymanagement.OutboundPayment.status_details](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [v2.moneymanagement.OutboundTransfer.status_details](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `v2.moneymanagement.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `v2.moneymanagement.OutboundTransfer` | #### Node.js | Parameter | Change | Resources or methods | | --- | --- | --- | | `processing` | Added | [V2.MoneyManagement.OutboundPayment.status_details](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2.MoneyManagement.OutboundTransfer.status_details](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | Values | Change | Enums | | --- | --- | --- | | `fx_rate_drift_exceeded_after_review`, `review_rejected` | Added | [V2.MoneyManagement.OutboundPayment.status_details.failed.reason](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-reason), [V2.MoneyManagement.OutboundTransfer.status_details.failed.reason](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details-failed-reason) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundTransfer` | #### Go | Parameter | Change | Resources or methods | | --- | --- | --- | | `Processing` | Added | [V2MoneyManagementOutboundPaymentStatusDetails](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2MoneyManagementOutboundTransferStatusDetails](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | Values | Change | Enums | | --- | --- | --- | | `fx_rate_drift_exceeded_after_review`, `review_rejected` | Added | [V2MoneyManagementOutboundPaymentStatusDetailsFailed.Reason](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details-failed-Reason), [V2MoneyManagementOutboundTransferStatusDetailsFailed.Reason](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details-failed-Reason) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2MoneyManagementOutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2MoneyManagementOutboundTransfer` | #### .NET | Parameter | Change | Resources or methods | | --- | --- | --- | | `Processing` | Added | [V2.MoneyManagement.OutboundPayment.StatusDetails](/api/v2/money-management/outbound-payments/object?api-version=2026-06-24.preview#v2_outbound_payment_object-status_details), [V2.MoneyManagement.OutboundTransfer.StatusDetails](/api/v2/money-management/outbound-transfers/object?api-version=2026-06-24.preview#v2_outbound_transfer_object-status_details) | | | Change | Event types | | --- | --- | --- | | `V2MoneyManagementOutboundPaymentUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundPayment` | | `V2MoneyManagementOutboundTransferUnderReviewEvent` | Added | `V2.MoneyManagement.OutboundTransfer` | ## Upgrade #### REST API 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. 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](https://docs.stripe.com/api/versioning.md) to include `Stripe-Version: 2026-06-24.preview` 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### Ruby 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your Ruby SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### Python 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your Python SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### PHP 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your PHP SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### Java 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your Java SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### Node.js 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your Node SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### Go 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your Go SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). #### .NET 1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench. 2. Upgrade your .NET SDK to the latest version. 3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 4. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours. Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md). ## Related changes - [Adds error codes for Financial Account capability errors](https://docs.stripe.com/changelog/dahlia/2026-06-24/adds-error-codes-for-financial-account-capability-errors.md)