如何使用 Stripe API 接受银行帐户付款进行 ACH 付款

问题描述 投票:0回答:1

我正在开发的应用程序正在通过卡接受付款。要求是通过银行账户接受付款(ACH付款)

我尝试使用付款方式选项作为us_bank_account,但这里的参数似乎不正确

Stripe::PaymentIntent.create(
  {
    amount: 1099,
    currency: 'usd',
    setup_future_usage: 'off_session',
    payment_method_types: ['us_bank_account'],
    payment_method_options: {
      us_bank_account: {
        routing_number: 110000000,
        account_number: 123456789,
        account_holder_type:'individual',
      },
    },
  },
)

我得到的错误是

Stripe::InvalidRequestError: Received unknown parameters: account_holder_type, account_number, routing_number
from /home/admin1/.rvm/gems/ruby-2.6.7/gems/stripe-5.33.0/lib/stripe/stripe_client.rb:650:in `handle_error_response'```

我不确定这里需要哪些API和参数。另外,我可以使用 Transfer API 代替 PaymentIntent 吗?我避免使用 Charge API,因为它已经贬值了。

我的目标是使用 mt 沙盒帐户 (acct_testXXXXXXXXXX) 测试 API,并使用不同的帐户和路由号码进行付款

测试账户和路由号码

ruby-on-rails ruby stripe-payments
1个回答
1
投票

account_holder_type
account_number
routing_number
参数的值应作为
payment_method_data.us_bank_account
的一部分发送:https://stripe.com/docs/api/ payment_intents/create#create_ payment_intent- payment_method_data-us_bank_account

payment_method_data
字典还需要
type
,美国银行账户需要账户持有人姓名。您的创建请求应如下所示:

Stripe::PaymentIntent.create(
  {
    amount: 1099,
    currency: 'usd',
    setup_future_usage: 'off_session',
    payment_method_types: ['us_bank_account'],
    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'
      }
    }
  }
)

上面将创建一个 PaymentIntent,但该 PaymentIntent 仍需要确认。确认 PaymentIntent 需要您的客户接受授权。我建议您在测试时遵循本指南,因为您最终会让客户在前端共享银行帐户信息:https://stripe.com/docs/ payments/ach-debit/accept-a- payment?platform=网络&ui=API

© www.soinside.com 2019 - 2024. All rights reserved.