Omnipay 代币计费不适用于条带

Posted

技术标签:

【中文标题】Omnipay 代币计费不适用于条带【英文标题】:Omnipay token billing not working with stripe 【发布时间】:2016-08-03 01:31:26 【问题描述】:

我在 laravel 中使用 ignited/laravel-omnipay 包进行全支付。 我正在尝试使用条带实现令牌计费,如此处所示https://github.com/thephpleague/omnipay#token-billing。 客户在条带上成功创建,但我无法使用返回的客户 ID 付款。

这是我的代码

    $token = Input::get('stripetoken');
    $gateway = Omnipay::create('Stripe');
    $gateway->setApiKey('My Key');
    $gateway->setTestMode(true);
    $cardresponse = $gateway->createCard(array('token' =>$token))->send();
    if ($cardresponse->isSuccessful()) 
      $card_id = $cardresponse->getCardReference();
      $data = $cardresponse->getData();
      $customerid = $data['id'];
      $cardid = $data['default_source'];
    
    $paymentresponse = $gateway->purchase(array('amount' => '10.00','currency'  => 'USD', 'cardReference' => $card_id))->send();
    echo $paymentresponse->getMessage();

我收到以下回复。

No such token: cus_8FwPaLNKdWcfRW

当我检查我的条纹仪表板时,具有此 ID 的客户存在并分配了一张卡。 感谢您的帮助。

【问题讨论】:

【参考方案1】:

由于您正在创建客户对象,因此您需要更新您的 charge creation request 以在 customer 参数中而不是在 source 参数中传递客户 ID(这会导致您看到的错误)。

我不熟悉 Omnipay,但我认为这应该可行:

$paymentresponse = $gateway->purchase(array('amount' => '10.00','currency'  => 'USD', 'customerReference' => $card_id))->send();

【讨论】:

感谢工作。 Omnipay 应该真正处理那里的文档。它太混乱了。再次感谢。

以上是关于Omnipay 代币计费不适用于条带的主要内容,如果未能解决你的问题,请参考以下文章

以太坊ERC20代币开发

,让你了解ERC-1155 多代币标准协议

Pancakeswap liqidty 不适用于分叉令牌

分布式存储项目Filecoin公布代币经济模型细节

myetherwallet怎么接收ico代币

ERC20 代币转移到智能合约