Afficher les messages de paiement différéVersion bêta publique
Expliquez automatiquement les options de paiement différé.
Pour afficher des messages promotionnels sur les options de paiement différé, utilisez le composant Payment Method Messaging Element.
Configurer StripeCôté serveurCôté client
Pour commencer, vous devez créer un compte Stripe. Inscrivez-vous maintenant.
Le SDK iOS de Stripe est disponible en open source et fait l’objet d’une documentation complète. Il est également compatible avec les applications prenant en charge iOS 13 et les versions ultérieures.
Remarque
Pour obtenir de plus amples informations sur la version la plus récente du SDK et ses versions antérieures, consultez la page des versions sur GitHub. Pour recevoir une notification lors de la publication d’une nouvelle version, surveillez les versions à partir du référentiel.
Configurez le SDK avec votre clé publiable Stripe au démarrage de votre application. Cela lui permet d’envoyer des requêtes à l’API Stripe.
Remarque
Utilisez vos clés de test lors de vos activités de test et de développement et vos clés du mode production pour la publication de votre application.
Initialiser le composant Element Payment Method Messaging
Appelez create pour instancier le composant Element Payment Method Messaging avec un PaymentMethodMessagingElement.. L’objet Configuration contient les détails de l’achat potentiel et la manière dont ces informations doivent être affichées. Une fois PaymentMethodMessagingElement initialisé, insérez sa vue dans votre interface utilisateur.
@_spi(PaymentMethodMessagingElementPreview) import StripePaymentSheet class MyViewController: UIViewController { private var amount = 1000 // $10.00 private var currency = "USD" private var paymentMethodMessagingElementView: UIView? func addPaymentMethodMessagingElement() { Task { @MainActor in // Create configuration object let configuration = PaymentMethodMessagingElement.Configuration( amount: amount, currency: currency, ) // Create PaymentMethodMessagingElement switch await PaymentMethodMessagingElement.create(configuration: configuration) { case .success(let element): let elementView = element.view self.view.addSubview(elementView) self.paymentMethodMessagingElementView = elementView // Set up constraints for elementView NSLayoutConstraint.activate([( // .. )]) case .noContent: // No element is available to display with this configuration // You may want to adapt your UI accordingly // ... case .failed(let error): // An unrecoverable error has occurred while attempting to load the element // You may want to log the error or take other action // ... } } } override func viewDidLoad() { super.viewDidLoad() // Set up the remainder of your page // ... addPaymentMethodMessagingElement() } }
FacultatifMettre à jour le composant Element
Si le client effectue une action modifiant la configuration (par exemple, en sélectionnant une autre variante du produit), initialisez une nouvelle instance PaymentMethodMessagingElement pour refléter ces nouvelles informations.
class MyViewController: UIViewController { // ... func updatePaymentMethodMessagingElement() { paymentMethodMessagingElementView?.removeFromSuperview() addPaymentMethodMessagingElement() } }
FacultatifPersonnaliser l’élément
Des options de personnalisation sont disponibles via les objets PaymentMethodMessagingElement. et PaymentMethodMessagingElement..
// Configure appearance let appearance = PaymentMethodMessagingElement.Appearance( style: .flat, font: .boldSystemFont(ofSize: 12), textColor: .black, infoIconColor: .blue ) // Create configuration object let configuration = PaymentMethodMessagingElement.Configuration( amount: 1000, // $10.00 currency: "USD", locale: "en_GB", // Defaults to device locale but can be explicitly set countryCode: "US", // Defaults to customer IP address but can be explicitly set paymentMethodTypes: [.affirm, .klarna], // Defaults to dynamic payment methods from the Dashboard, but can be explicitly set appearance: appearance )