2017-01-16 46 views
1

我在我的JavaScript應用程序中使用Stripe.js時遇到了一個問題。我成功撥打cart.createToken,例如explained here in the doc,我無法找到將metadata信息發送給Stripe的方法。將元數據信息傳遞給條帶createToken調用

這裏是我傳遞的數據:

const data = { 
    number: $form.find('[data-stripe=number]').val(), 
    exp_month: $form.find('[data-stripe=exp_month]').val(), 
    exp_year: $form.find('[data-stripe=exp_year]').val(), 
    cvc: $form.find('[data-stripe=cvc]').val(), 
    name: $form.find('[data-stripe=name]').val(), 
    address_line1: $form.find('[data-stripe=address_line1]').val(), 
    address_city: $form.find('[data-stripe=address_city]').val(), 
    address_state: $form.find('[data-stripe=address_state]').val(), 
    address_zip: $form.find('[data-stripe=address_zip]').val(), 
    address_country: $form.find('[data-stripe=address_country]').val(), 
    metadata: { 
     vat_number: $form.find('[data-stripe=vat_number]').val() 
    } 
    }; 

    stripe.card.createToken(data, (status, response) => { ... }) 

我成功我的Chrome網絡檢查員看到vat_number信息給予條紋

key=pk_test_foobar&payment_user_agent=stripe.js%2F81eca10&card[number]=4242+4242+4242+4242&card[exp_month]=12&card[exp_year]=19&card[cvc]=234&card[name]=GDG&card[address_line1]=20&card[address_city]=P&card[address_zip]=75004&card[address_country]=F&card[metadata][vat_number]=FR309483094830948 

但不幸的是,在條紋的答案, metadata字段仍然是空的對象{}。我在代碼中的響應中非常需要它,我怎麼能確定Stripe成功了。

感謝您的幫助

回答

2

Metadata只能添加到更新的對象。由於tokens不可更新,因此創建令牌時無法提供元數據。

根據您要提供的元數據類型,您應該在帶有卡令牌的creating a chargecustomer時通過metadata參數。

+0

好的,不知道。感謝你的回答。 – guillaumepotier