2015-01-26 74 views
1

我遵循本指南(https://mikesabat.wordpress.com/2013/12/15/making-users-pay-building-a-site-with-strip-and-devise/),除了將條紋庫更改爲v2而不是v1以外,無需任何修改。條紋用戶令牌問題

基本上,我的問題是,stripe_card_token領域節省開始tok_BLAHBLAHBLAH的值,而在條紋儀表盤,每個客戶都有類似cus_BLAHBLAHBLAH令牌。

我的javascript返回條紋令牌和填充到一個隱藏字段:

handleStripeResponse: (status, response) -> 
if status == 200 
    console.log(response); 
    $('#user_stripe_card_token').val(response.id) 
    $('#new_user')[0].submit() 
else 
    $('#stripe_error').text(response.error.message) 
    $('#stripe_error').show() 
    $('input[type=submit]').attr('disabled', false) 

回答

3

這些標記實際上是兩個不同的東西 - tok_XXX值是一次性使用的卡令牌,和cus_XXX值是客戶ID。

在用戶將自己的信用卡信息輸入到表單中後,Stripe通過JavaScript返回卡標記,然後將該標記提交給服務器端代碼。

一旦您的服務器端代碼收到卡令牌,您將從服務器(而不是從Javascript)向Stripe提交Stripe API「創建客戶」調用。此API調用將卡標記作爲輸入,並返回一個永久客戶ID作爲響應(等等)。

客戶ID是您保存在數據庫中的值,當您需要向客戶的信用卡收費時,您會將其發送到Stripe。

查看Create Customer API call瞭解更多信息。