首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用支付系统(条带)

使用支付系统(条带)
EN

Stack Overflow用户
提问于 2015-04-22 11:07:50
回答 1查看 210关注 0票数 0

我希望做到以下几点:

  • 使用生成的令牌创建客户帐户
  • 确认客户是否有足够的帐户余额。
  • 记录帐户余额
  • 收费客户

到目前为止,这就是我所取得的成就:

  • 生成令牌
  • 收费客户

重要的是,我能够检查是否客户有足够的余额之前,他们收费,因为这是糟糕的用户体验,如果我必须回到他们,并再次要求他们的cc信息,因为我无法确认他们是否有足够的资金事先。

因此,我也想核实一下,客户在生成令牌之前是否有足够的资金,例如,如果金额为5k,而客户只有3k而没有帐户,那么就会出现一个错误,以便客户能够输入适当的信息:

代码语言:javascript
复制
function handleCall(token) { 
   var $form = $('#payment-form');
    if (!appendedStripeToken) { 
        // Insert the token into the form so it gets submitted to the server
$form.append($('<input type="hidden" id="courseToken" name="stripeToken" />').val(token));
        appendedStripeToken = true; 
        phpCall(); 

    } 
}

function onSubmit() {
    var $form = $('#payment-form'); // TODO: give your html-form-tag an "id" attribute and type this id in this line. IMPORTANT: Don't replace the '#'!

    // Disable the submit button to prevent repeated clicks
  // TODO: give your html-submit-input-tag an "id" attribute

    Stripe.card.createToken($form, stripeResponseHandler);
}

我是如何产生标记的;

代码语言:javascript
复制
$stripChargeValid = true;
try {
 $charge = \Stripe\Charge::create(array(
      'customer' => $customer->id,
      'amount'   => $amount,
      'currency' => 'cad',
      'description'=>  $courseTitle

  ));
} catch(\Stripe\Error\Card $e) {
  // The card has been declined
  $stripChargeValid = false;
  echo "failed";

}

重要的是,只有当客户有足够的资金时,我才会尝试收费

EN

回答 1

Stack Overflow用户

发布于 2015-04-22 12:53:59

Stripe.js不验证银行提供的卡的有效性。它只需确保字段是正确的(有意义的过期日期、传递Luhn算法的卡号等)。

在您的情况下,最好的解决方案是在服务器上创建电荷并检查它是否成功。如果失败,您将向您的客户返回一个错误,就像您现在所做的那样。

不幸的是,在创建卡片令牌时无法事先知道。即使是条形检查也只能通过运行$0/1授权来确保卡是有效的,而不是授权全部金额。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29795606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档