question和答案表明,有可能让Stripe验证CVC和邮政编码(如果这些是作为单独的元素收集的),但我无法使其正常工作。

我目前正在传递数据,如下所示。我以其他形式收集其他详细信息。

stripe.createPaymentMethod({
type: 'card',
card: cardNumber,
billing_details: {
    name: this.form.first_name + ' ' + this.form.last_name,
    address: {
    city: this.form.city,
    country: this.form.country,
    line1: this.form.address1,
    line2: this.form.address2,
    postal_code: this.form.zip,
    state: this.form.county
    },
    email:  this.form.email,
},
})


我收到一个有效的paymentMethod响应(因此它可以正常工作),但是所有支票(如下所示)都返回为空

checks:
address_line1_check: null
address_postal_code_check: null
cvc_check: null


我已经将CVC和Expiry元素称为cardExpiry和cardCvc(试图遵循使用stripNumber的条纹文档中给出的约定),但是我看不到如何传递这些字段以进行检查的任何详细信息。

根据文档,我有以下div(CVC示例)。这正在渲染,如果出现错误,则会返回一条消息。

<div id="card-cvc" class="MyCardCvc">
    <!-- Elements will create input elements here -->
</div>


先前给出的答案表明Stripe.js应该在后台进行此操作,但是我想知道是否需要某种命名约定才能自动提取字段?

提前致谢。

最佳答案

以防万一其他人偶然发现......

(在irc上与条带交谈后),在首次提交卡详细信息期间似乎未执行这些“检查”。 Stripe确实对卡号和有效期进行了某种意义上的检查,但以下内容仅在尝试完成付款时进行了验证

checks:
address_line1_check: null
address_postal_code_check: null
cvc_check: null

08-03 14:42