Stripe payments 在激活的条带帐户中进行测试交易
我有一个条带独立帐户,该帐户已激活,正在接受实时交易,并连接到平台条带帐户。我在下面给出了我用来接受实时付款的代码Stripe payments 在激活的条带帐户中进行测试交易,stripe-payments,stripe-connect,stripe.net,Stripe Payments,Stripe Connect,Stripe.net,我有一个条带独立帐户,该帐户已激活,正在接受实时交易,并连接到平台条带帐户。我在下面给出了我用来接受实时付款的代码 \Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY"); $strtok = \Stripe\Token::create( array( "card" => array( "number" => $cardnumber,
\Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY");
$strtok = \Stripe\Token::create(
array(
"card" => array(
"number" => $cardnumber,
"exp_month" => $cardexpmonth,
"exp_year" => $cardexpyear,
"cvc" => $creditcardcvv
)
),
array('stripe_account' => "live_account_header")
);
$strtoken = $strtok->id;
$charge = \Stripe\Charge::create(array(
'amount' => $amts,
'currency' => 'usd',
'application_fee' => $appfee,
'source' => $strtoken
), array('stripe_account' => "live_account_header"));
我想在我的代码中设置一个调试模式,该模式将使用条带测试密钥来接受测试事务,即使条带独立帐户和平台帐户都已激活并且处于实时模式。我希望在调试时使用条带调用,而不是进行实时事务。我的意思是,当我突然想要进行测试事务而不是实时事务时,即使平台和独立帐户都已激活并处于实时状态,我该如何更改上述代码并使用测试密钥?事务是在测试模式还是实时模式下处理完全取决于您使用的API密钥集。如果使用测试API密钥,则事务将在测试模式下处理。如果使用live API密钥,事务将在live模式下处理 所以你需要做的是根据你能触发的条件来决定你要使用哪一组键 基本上,您需要替换这个:
\Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY");
比如说:
if ($test_condition) {
\Stripe\Stripe::setApiKey("TEST_PLATFORM_API_KEY");
} else {
\Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY");
}
请记住,您还需要在前端代码中使用测试可发布密钥(用于使用或创建令牌)——如果令牌是使用活动密钥创建的,则尝试在测试模式下创建费用将无效
在您提供的示例代码中,您正在从后端代码创建令牌(通过
\Stripe\token::create(…)
)。这意味着您的服务器直接提供卡数据。这在测试时很好,但在实时模式下,令牌应该始终通过签出或元素在前端创建。否则,您将不再符合PCI合规性要求,并且需要对您的解决方案进行PCI合规性审核。事务是在测试模式还是实时模式下处理完全取决于您使用的API密钥集。如果使用测试API密钥,则事务将在测试模式下处理。如果使用live API密钥,事务将在live模式下处理
所以你需要做的是根据你能触发的条件来决定你要使用哪一组键
基本上,您需要替换这个:
\Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY");
比如说:
if ($test_condition) {
\Stripe\Stripe::setApiKey("TEST_PLATFORM_API_KEY");
} else {
\Stripe\Stripe::setApiKey("LIVE_PLATFORM_API_KEY");
}
请记住,您还需要在前端代码中使用测试可发布密钥(用于使用或创建令牌)——如果令牌是使用活动密钥创建的,则尝试在测试模式下创建费用将无效
在您提供的示例代码中,您正在从后端代码创建令牌(通过
\Stripe\token::create(…)
)。这意味着您的服务器直接提供卡数据。这在测试时很好,但在实时模式下,令牌应该始终通过签出或元素在前端创建。否则,您将不再符合PCI合规性要求,并且需要对您的解决方案进行PCI合规性审核。帐户标题如何?我可以使用相同的live帐户标题吗?我的意思是,在我的条带调用中,我是否必须以某种方式获取一个测试帐户头,并用数组('stripe\u account'=>“live\u account\u header”)替换数组('stripe\u account'=>“test\u account\u header”)。不,你可以对一个live account发出测试请求,这样你就可以在这两种情况下使用相同的帐户ID。帐户头呢?我可以使用相同的live帐户标题吗?我的意思是,在我的条带调用中,我是否必须以某种方式获取测试帐户头,并用数组('stripe\u account'=>“live\u account\u header”)替换数组('stripe\u account'=>“test\u account\u header”)。不,您可以对live account发出测试请求,因此在这两种情况下都可以使用相同的帐户ID。