条纹:没有这样的令牌。测试模式中存在类似的对象,但使用了实时模式密钥来发出此请求

2022-08-30 13:26:01

在实时模式下使用 Stripe 时,我收到此 PHP 错误:

没有这样的令牌tok_fgfhn..测试模式中存在类似的对象,但使用了实时模式密钥来发出此请求

在 Stripe 测试模式下一切正常,并且我已经切换到实时 API 密钥。

我创建了一个这样的新客户:

$token  = $_POST['stripeToken'];
    $email  = $_POST['email'];

$customer = \Stripe\Customer::create(array(
      'email' => $email,
      'card'  => $token
    ));

    //charge for user ads
    $charge = \Stripe\Charge::create(array(
      'customer' => $customer->id,
      'amount'   => $amount,
      'currency' => 'eur'
    ));

我已经测试了很多小时,但我仍然收到这个错误。我该如何修复它?


答案 1

这听起来像是您试图向测试帐户中存在的客户收费,而不是在您的真实帐户上。确保使用实时密钥创建新客户,并使用其令牌创建费用。


答案 2

查看使用测试公共 API 密钥来检索令牌的 javascript。将其更改为实时公共 API 密钥。

它应该是这样的东西

Stripe.setPublishableKey('pk_test_axEdfdasdfasfsadfsad');

推荐