4 votes

Comment ajouter une nouvelle carte / source au compte client stripe ?

J'utilise stpaddcardviewcontroller Élément d'interface utilisateur pour demander au client d'entrer les nouvelles informations de la carte.

let addCardViewController = STPAddCardViewController()
addCardViewController.delegate = self
present(navigationController, animated: true)

Le code ci-dessus affichera le UI mais après avoir appuyé sur le bouton "Terminé", je dois obtenir le jeton (généré à partir des informations de la carte ajoutée) pour ajouter une nouvelle carte/source au client existant.

J'utilise la méthode déléguée suivante pour obtenir le jeton à partir de stpaddcardviewcontroller UI

extension viewController : STPAddCardViewControllerDelegate {

func addCardViewControllerDidCancel(_ addCardViewController: STPAddCardViewController) {
    dismiss(animated: true)
}

func addCardViewController(_ addCardViewController: STPAddCardViewController, didCreatePaymentMethod paymentMethod: STPPaymentMethod, completion: @escaping STPErrorBlock) {
    dismiss(animated: true)
}

Comment puis-je recevoir le jeton de carte dans les méthodes déléguées ? Pour que je puisse passer à Ajouter une carte API ?

0voto

hmunoz Points 1475

Vous obtenez le jeton PaymentMethod dans votre fichier didCreatePaymentMethod délégué.

Stripe-iOS (utilisant votre clé publiable) ne peut pas mettre à jour les clients par lui-même. Il y a deux possibilités :

1) Envoyez le jeton vers un point de terminaison du serveur dorsal où vous utiliserez une bibliothèque API Stripe (avec votre clé secrète Stripe) et attacherez le PaymentMethod à un client Stripe : https://stripe.com/docs/api/payment_methods/attach

2) Si vous utilisez des clés éphémères sur votre application iOS, cela vous permet d'attacher un PaymentMethod à un client Stripe. Le SDK s'en charge pour vous. Stripe-iOS offre en fait une interface utilisateur préconstruite pour gérer cela également, comme le STPPaymentOptionsViewController. Vous devez vous référer au guide "intégration standard" qui utilise STPCustomerContext : https://stripe.com/docs/mobile/ios/standard

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X