首页 > 解决方案 > STPCustomerContext 不再声明 selectDefaultCustomerSource

问题描述

将我的 Stripe SDK 升级到最新版本 Stripe 19.4.0(原为 15.0.1)后,STP Customer Context 似乎不再声明函数“selectDefaultCustomerSource”。

不幸的是,我无法回到以前的版本,因为 xcode 11.4 对以前的条带版本进行了重大更改。

所以我的问题是如何使用新 SDK 选择默认客户来源?

标签: iosobjective-cstripe-payments

解决方案


自 v16.0.0 起,Stripe 的 iOS SDK 已默认使用其预构建组件(如 STPCustomerContext)来利用 PaymentMethods,这是对现在遗留的令牌/卡/源的令牌的现代抽象。

PaymentMethods 不再有“默认”的概念,您可以将多个 PaymentMethods 附加到客户,但它们没有指定默认值。STPCustomerContext 支持将 PaymentMethod 附加到客户。

有一种方法可以指定“仅发票和订阅的默认值”(不适用于一次性付款),这是更新客户对象的服务器端请求invoice_settings.default_payment_methodhttps ://stripe.com/docs/api/customers /create#create_customer-invoice_settings-default_payment_method,所以你会在你的后端提出这个请求(iOS SDK目前不支持这个)


推荐阅读