【问题标题】:Stripe integration with iOS: Saving and referencing saved cardsStripe 与 iOS 的集成:保存和引用已保存的卡片
【发布时间】:2020-10-19 17:19:39
【问题描述】:

我正在尝试制作一个销售服务的应用,用户根据他们使用该服务的时间来支付费用,因此我没有实际的送货地址。

我希望能够让我的用户保存并在以后的交易中引用保存的卡。我知道 Stripe 跟踪特定客户的方式是通过 customer_id,但我不确定如何将卡片附加到特定的 customer_id,然后在将来引用它。

另外,我对ephemeral_keys 的使用有点困惑。有些 Stripe 教程谈到在服务器端需要这些,有些根本没有提到它们,这让我很困惑。

这个在创建paymentIntent时谈论ephemeral_keyshttps://stripe.com/docs/mobile/ios/basic#

而这个没有:https://stripe.com/docs/payments/integration-builder

任何帮助将不胜感激!如果您需要我提供更多信息,请告诉我。

PS:如果您还可以向我指出 Stripe 用于保存新卡片和显示已保存卡片的一些相关视图控制器,我将不胜感激!

【问题讨论】:

    标签: swift xcode stripe-payments payment-gateway swift5


    【解决方案1】:

    https://stripe.com/docs/mobile/ios/basic 上的流程包括您的付款上下文的客户,这将导致创建的 PaymentMethod 附加到该客户。您可以在初始付款后通过使用您的密钥在后端检索 PaymentMethod 并检查其customer 字段 [0] 来验证这一点。

    如果您有一个 PaymentMethod 并希望将其附加到客户,您将使用后端上的 API [1]。

    您也可以通过后端的 API [2] 检索客户现有 PaymentMethods 的列表(同样,使用您的密钥)。然后,您可以将他们的 ID 列表和一些识别特征(例如最后 4 位)传递给您的应用,以便显示并让客户选择他们想要使用的。然后您获取该 PaymentMethod 的“id”并使用它来创建新的付款。

    临时密钥通常仅与 iOS(或 Android)SDK 一起使用,因此当您使用集成的后端(即在某处的服务器上运行且未随应用分发的部分)时,您通常不会不用担心他们。

    [0]https://stripe.com/docs/api/payment_methods/retrieve

    [1]https://stripe.com/docs/api/payment_methods/attach

    [2]https://stripe.com/docs/api/payment_methods/list

    【讨论】:

      猜你喜欢
      • 2021-03-03
      • 2018-12-22
      • 1970-01-01
      • 2021-01-30
      • 2014-02-05
      • 2020-05-21
      • 2015-01-05
      • 2021-09-02
      • 2020-04-18
      相关资源
      最近更新 更多