PaymentIntent ステータス: Ruby on Rails での Stripe ACH 実装の require_source_action
概要
ACH 実装のテスト PaymentIntent を完了しようとしています。 以下を使用して PaymentIntent を作成できました。
Stripe::PaymentIntent.create(
{
amount: 1099,
currency: 'usd',
setup_future_usage: 'off_session',
confirm: true,
payment_method_types: ['us_bank_account'],
on_behalf_of: 'acct_XXXXXXXXXXXX',
mandate_data: {
customer_acceptance: {
type: 'offline'
},
},
payment_method_data: {
type: 'us_bank_account',
billing_details: {
name: 'Test Name'
},
us_bank_account: {
routing_number: '110000000',
account_number: '000123456789',
account_holder_type: 'individual'
}
}
}
)
これに続いて、Paymentconfirm API を実行しました。
Stripe::PaymentIntent.confirm(
'pi_3MosEfLYIdOgExxxxxxxxxx',
{payment_method: 'pm_1MosEfLYIdOgE1Qxxxxxx'},
)
確認はサンドボックス ダッシュボードに反映されていますが、支払いステータスはまだ不完全です。PaymentIntent ステータスは次のとおりです:requires_source_action
前もって感謝します
解決策
今回の API アップグレードでは、古い API バージョンを使用している可能性があります。requires_source_action ステータスが require_action になりました。ここで、Payment Intent で現在考えられるステータスを確認することもできます。
このエラーが発生する理由については、ACH ダイレクト デビットの仕組みを確認してください。 ACH ダイレクト デビットでは、委任状を受け取る必要があり、かつ銀行口座が認証される必要があります。私の疑いは、支払い方法がまだ検証されておらず、スクリーンショットで指定されている next_action を確認できることです。存在する場合、または存在する場合は、次にどのようなアクションを実行する必要があるかを示します。
ACH 口座振替による支払いを受け入れるには、このガイドに従うことを強くお勧めします。