Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
Build an advanced integration
Build an in-app integration
Payment methods
Add payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Elements
Payment scenarios
Custom payment flows
    Overview
    Payments for existing customers
    Authorize and capture a payment separately
    Build a two-step confirmation experience
    Collect payment details before creating an Intent
    Finalize payments on the server
    Take mail orders and telephone orders (MOTO)
    US and Canadian cards
    Forward card details to third-party API endpoints
    Payments line items
Flexible acquiring
Orchestration
In-person payments
Terminal
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsCustom payment flows

Mail order telephone order (MOTO)

​​Learn how to collect mail order and telephone order (MOTO) payments, adhering to SCA rules.

Copy page

In the context of Strong Customer Authentication regulation, MOTO transactions are out-of-scope. Your integration must correctly flag transactions as MOTO. Similar to other exemptions, the cardholder’s bank makes the final decision to accept or reject the transaction. If their bank does not support claiming the MOTO exemption, the customer must complete the payment on your website.

The Payment Intents and Setup Intents APIs let you flag card payments as moto with a parameter.

Note

Before you can enable MOTO transactions, Stripe must verify that you’re PCI compliant. Contact Stripe support for more information.

Integration options

You can collect MOTO payments in two ways, depending on your business needs:

  1. Mark a single payment as MOTO
  2. Collect a card with MOTO for future payments

Mark a single payment as MOTO

Create and confirm a PaymentIntent with a card collected through MOTO in one API call. When creating the PaymentIntent, set payment_method_options[card][moto] to true and set confirm to true.

Optionally, if you intend to make future off-session payments with this PaymentIntent’s payment method, set the setup_future_usage parameter to off_session and attach the payment method to a new or existing customer during the payment flow.

If the payment fails, ask the customer for new card information and confirm the same PaymentIntent. You can find the ID of the PaymentIntent from the error by looking at the error’s payment_intent property.

To initiate a MOTO payment on an existing saved card, supply the ID of the payment method as the payment_method parameter, instead ​​of providing raw card details.

Collect a card for future payments

Create and confirm a SetupIntent with a card collected through MOTO in one API call. When creating the SetupIntent, set payment_method_options[card][moto] to true and set confirm to true.

The SetupIntent should succeed immediately. After success, you can attach the payment method to a new or existing customer.

If the setup fails, ask the customer for new card information and confirm the same SetupIntent. You can find the ID of the SetupIntent from the error by looking at the setup_intent property of the error.

After the payment method has been successfully set up, for subsequent payments, set the ID of the payment method as the payment_method parameter and set payment_method_options[card][moto] to true.

Don’t pass off_session = true for subsequent MOTO payments.

Testing

To test the behavior where MOTO transactions are not exempted from SCA by the cardholder’s bank, use the pm_card_authenticationRequired test card.

To test the behavior where the MOTO exemption is supported by the cardholder’s bank, use one of the other regulatory test cards.

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access program.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc