首页 文章

使用条纹格子创建ACH电荷 - 没有这样的标记;实时模式中存在类似的对象

提问于
浏览
1

我以前从来没有使用条纹进行ACH充电,而且我确实处于开发模式 . https://stripe.com/docs/ach#integrating-plaid

js

var linkHandler = Plaid.create({
env: 'tartan',
clientName: 'Stripe / Plaid Test',
key: '[Plaid key]',
product: 'auth',
selectAccount: true,
onSuccess: function(public_token, metadata) {
 // Token & Account ID - I use this for subsequent cURL requuest
 console.log('public_token: ' + public_token);
 console.log('account ID: ' + metadata.account_id);
 },
});

// Trigger the Link UI
 document.getElementById('linkButton').onclick = function() {
 linkHandler.open();
};

回复有效 . 我使用上面的public_token和帐户ID:

$data = array(
            'client_id' => 'MY_CLIENT_ID',
            'secret' => 'MY_SECRET',
            'public_token' => 'MY_PUBLIC_TOKEN_FROM_ABOVE',
            'account_id' => 'MY_ACCOUNT_ID_FROM_ABOVE'
     );


    $string = http_build_query($data);

    //initialize session
    $ch=curl_init("https://tartan.plaid.com/exchange_token");

    //set options
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    //execute session
    $keys = curl_exec($ch);
    $keys = json_decode($keys);
    //close session
    curl_close($ch);

这也会产生一个有效的响应对象:

{
 access_token: 'MY_ACCESS_TOKEN',
 account_id: 'MY_ACCOUNT_ID',
 stripe_bank_account_token: 'MY_STRIPE_BANK_ACCOUNT'
}

我想这就是我混淆的地方 . 文档说:响应将包含经过验证的Stripe银行帐户令牌ID . 您可以将此令牌附加到Stripe Customer对象,或直接在其上创建费用 .

但是,当我在银行帐户令牌上创建费用时,如下所示:

\Stripe\Stripe::setApiKey("sk_test_MY_TEST_KEY");

    $charge = \Stripe\Charge::create(array(
      "amount" => 2100,
      "currency" => "usd",
      "source" => $keys->stripe_bank_account_token, //(btok_MY_TOKEN_FROM_ABOVE)
      "description" => "my description"
    ));

    var_dump( $charge );

我得到的错误是:致命错误:未捕获异常'Stripe \ Error \ InvalidRequest',消息'没有这样的令牌:btoken_MY_BANK_TOKEN;在实时模式中存在类似的对象,但是使用测试模式密钥来发出此请求 .

1 回答

  • 0

    这意味着您创建了一个实时银行帐户令牌 .

    如果要测试集成,则需要使用以下凭据生成Plaid标记:

    • 用户名: test_plaid

    • 密码: test_good

    • 代码: 1234

    这将返回一个测试银行帐户令牌,您可以在使用Stripe测试密钥API密钥( sk_test_... )发送的API请求中使用该令牌 .

    如果您要处理实时费用,则需要使用Plaid链接中的真实凭据来获取真实的银行帐户令牌,然后在使用Stripe live secret API密钥( sk_live_... )发送的API请求中使用银行帐户令牌 .

相关问题