Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Revenus
Plateformes et places de marché
Gestion de fonds
Outils de développement
Aperçu
À propos des paiements Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
PrésentationTrouver votre cas d'usageManaged Payments
Utiliser Payment Links
Créer une page de paiement
Développer une intégration avancée
Développer une intégration dans l'application
Moyens de paiement
Ajouter des moyens de paiement
Gérer les moyens de paiement
Paiement accéléré avec Link
Interfaces de paiement
Payment Links
Checkout
Web Elements
Elements intégrés à l'application
Scénarios de paiement
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration
Paiements par TPE
Terminal
    Présentation
    Accepter les paiements par TPE
    Conception d'intégration
    Choisir votre lecteur
    Concevoir une intégration
    Démarrage rapide
    Exemples d'applications
    Tests
    Configuration de Terminal
    Configurer votre intégration
    Se connecter à un lecteur
    Acceptation d'un paiement
    Encaisser des paiements par carte
    Autres moyens de paiement
    Accepter les paiements hors ligne
    Paiement des commande par courrier/par téléphone
      Traiter les paiements de commandes par courrier ou par téléphone
      Enregistrer des cartes dans le cadre des paiements par courrier ou par téléphone
    Spécificités régionales
    Lors du règlement
    Collecter des pourboires
    Collecter et enregistrer des informations de paiement pour une utilisation ultérieure
    Autorisations flexibles
    Après le paiement
    Rembourser des transactions
    Fournir des reçus
    Personnalisez Checkout
    Affichage du panier
    Collecter les données saisies à l'écran
    Collecter les données des lectures de la piste magnétique
    Collecter les données des paiements NFC sans contact
    Applications sur des appareils
    Gérer les lecteurs
    Commander, renvoyer ou remplacer des lecteurs
    Enregistrer des lecteurs
    Gérer les emplacements et les zones
    Configurer des lecteurs
    Suivre les lecteurs
    Chiffrement
    Références
    Documentation de l'API
    Lecteurs mobiles
    Lecteurs intelligents
    Guide de migration du SDK
    Liste de contrôle pour le déploiement
    Fiches produit du lecteur Stripe Terminal
Autres produits Stripe
Financial Connections
Cryptomonnaies
Climate
AccueilPaiementsTerminalMail order and telephone order payments

Remarque

Cette page n'est pas encore disponible dans cette langue. Nous faisons tout notre possible pour proposer notre documentation dans davantage de langues et nous vous fournirons la version traduite dès qu'elle sera disponible.

Save cards using MOTO

Save mail order and telephone order (MOTO) card details for future payment.

Copier la page

Remarque

MOTO payments are a gated feature. To request access, contact Stripe support. After we enable the feature, you must activate it by disconnecting from and reconnecting to your readers.

MOTO SetupIntents allow you to enter the card information on the reader and save the payment details without charging the card.

To do this with the iOS SDK, you must:

  1. Create or retrieve a Customer.
  2. Create a SetupIntent.
  3. Collect a PaymentMethod.
  4. Confirm and use the PaymentMethod.
MOTO saving card screenshots

Saving a card with MOTO flow

Create or retrieve a Customer

To charge a card saved with Stripe, you must attach it to a Customer.

When you include a customer in your SetupIntent before confirming, Stripe automatically attaches the generated card payment method to the provided Customer object that you create/retrieve.

Include the following code on your server to create a new Customer object:

Command Line
curl
curl https://api.stripe.com/v1/customers \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -X "POST"

Create a SetupIntent

A SetupIntent is an object that represents your intent to set up a customer’s payment method for future payments. The SetupIntent tracks the steps of this setup process. For Terminal, this includes collecting and recording cardholder consent.

The payment_method_types must include card.

PaymentViewController.swift
Swift
let params = try SetupIntentParametersBuilder() .setCustomer("{{CUSTOMER_ID}}") .setOnBehalfOf("{{ON_BEHALF_OF}}") .setDescription("Customer A's Card") .setPaymentMethodTypes([.card]) .build() Terminal.shared.createSetupIntent(params) { (createdSetupIntent, createError) in if let error = createError { print("createSetupIntent failed: \(error)") } else if let setupIntent = createdSetupIntent { print("createSetupIntent succeeded") // ... } }

Collect a PaymentMethod

After you create a SetupIntent, the next step is to collect a PaymentMethod with the SDK and collect customer consent. If the customer provides consent, set the customerConsentCollected Boolean to true.

To collect a PaymentMethod, you must connect your app to a reader. In the SetupIntentConfiguration, set moto to true. The connected reader prompts you to enter the customer’s card number, CVC, expiration date, and postal code after your app calls collectSetupIntentPaymentMethod.

PaymentViewController.swift
Swift
let config = try SetupIntentConfigurationBuilder() .setMoto(true) .build() let cancelable = Terminal.shared.collectSetupIntentPaymentMethod( setupIntent, customerConsentCollected: customerConsentCollected, config: config ) { result in switch result { case .success(let setupIntent): print("collectSetupIntentPaymentMethod succeeded") // Placeholder for handling successful operation case .failure(let error): print("collectSetupIntentPaymentMethod failed: \(error)") // Placeholder for handling error } }

Confirm and use the PaymentMethod

You can follow the usual procedure to confirm the PaymentMethod. You can now charge the saved PaymentMethod associated with the Customer using a PaymentIntent.

Compliance

You’re responsible for your compliance with all applicable laws, regulations, and network rules when saving a customer’s payment details. For example, the European Data Protection Board has issued guidance regarding saving payment details. These requirements generally apply if you want to save your customer’s payment method for future use, such as presenting a customer’s payment method to them in the checkout flow for a future purchase or charging them when they’re not actively using your website or app.

Add terms to your website or app that state how you plan to save payment method details and allow customers to opt in. If you plan to charge the customer while they’re offline, then at a minimum, make sure that your terms also cover the following:

  • The customer’s agreement to your initiating a payment or a series of payments on their behalf for specified transactions.
  • The anticipated timing and frequency of payments (for instance, whether charges are for scheduled installment or subscription payments, or for unscheduled top-ups).
  • How the payment amount is determined.
  • Your cancellation policy, if you’re setting up the payment method for a subscription service.

Make sure you keep a record of your customer’s written agreement to these terms.

When you save a payment method, it can only be used for the specific usage that you included in your terms. If you want to charge customers when they’re offline and also save the customer’s payment method to present to them as a saved payment method for future purchases, you must explicitly collect consent from the customer. One way to do so is with a “Save my payment method for future use” checkbox.

Cette page vous a-t-elle été utile ?
OuiNon
Besoin d'aide ? Contactez le service Support.
Rejoignez notre programme d'accès anticipé.
Consultez notre log des modifications.
Des questions ? Contactez l'équipe commerciale.
LLM ? Lire llms.txt.
Propulsé par Markdoc