Automatic collection

    Learn about Stripe Billing’s automatic collection features and how to configure them.

    Stripe provides a number of automated recovery features to help collect payments that may have otherwise not been successful. This includes automatically updating your users’ saved cards, sending emails when a failed payment occurs, and retrying cards at strategic times.

    Smarter saved cards

    Saved card details can continue to work even if the physical card has been replaced by the issuing bank. Stripe works with card networks and automatically attempts to update saved card details whenever a customer receives a new card. Automatic card updates requires card issuers to participate with the network and provide this information. It’s widely supported in the United States, allowing Stripe to automatically update most American Express, Visa, Mastercard, and Discover cards issued there. International support varies from country to country. It’s not possible to identify which cards can be automatically updated.

    Failed payment emails

    Stripe’s failed payment emails allow you to send an email to your user when a card payment for an invoice has failed. You can customize the colors and logo on these emails to fit with the design and branding of your business.

    Smart Retries

    Using machine learning, Smart Retries chooses optimal times to retry failed payment attempts, so as to increase the chance of successfully paying an invoice. The machine learning system behind Smart Retries uses hundreds of time-dependent, dynamic signals, such as:

    • The number of different devices that have presented a given payment method in the last N hours
    • Payments made for debit cards in certain countries might be slightly more successful at 12:01 am in local time zones

    Stripe then uses this information to intelligently assess when to retry payments, based on a combination of these factors. Unlike more common, rules-based, approaches to card and payment retry logic, Stripe’s system is flexible, responsive, and continuously learning from new purchaser behaviors and transaction features. Any invoice with auto_advance set to true will go through the Smart Retries flow (if enabled), regardless of the selected payment method.

    The Smart Retries feature attempts to retry the customer’s charge up to four times within a customizable period and works for cards, SEPA debit, ACH debit, and any other pull-based payment methods.

    Configuring automatic collection settings

    You can configure Stripe Billing’s automatic collection behavior on the Manage automatic collection settings page in the Dashboard.

    Prevent failed payments

    Upcoming renewal reminder emails

    When enabled, Stripe will send an email in advance of a customer’s subscription renewal. The number of days in advance is determined from the selected Upcoming renewal events day-value. This email can be customized to link back to your website so your customer can update billing details.

    A second email can be enabled to email your customers about an expiring card. This email will be sent 1 month before a customer’s card on file expires. This email can be customized to link back to your website so your customer can update billing details.

    Upcoming renewal reminder webhook

    Configure Stripe Billing to send invoice.upcoming webhook event at a predetermined number of days ahead of a customer subscription renewal.

    A common use for this webhook event is to notify a customer in your application and prompt them to ensure they have valid payment details stored on file. This is particularly useful for plans with longer billing cycles, such as annual plans.

    Managing failed payments

    Retry schedule

    The Smart Retries feature attempts to retry the customer’s charge up to four times within a customizable timeframe. You can override this behavior by disabling Smart Retries and defining your own custom retry rules. When dunning is enabled, the next_payment_attempt attribute on the invoice.payment_failed webhook indicates when the next collection attempt will occur.

    Emails

    When enabled, Stripe will email your customer to notify them of a failed payment attempt, including the amount and card used.

    This email can be customized to link back to your website so your customer can update billing details.

    Updating the subscription status for failed automatic collections

    You can configure what happens to an invoice’s subscription after all retry attempts have been exhausted. The transition action (e.g. cancel the subscription or mark the subscription as unpaid) will only apply to invoices with an associated subscription. Invoices generated without a subscription (but with subscription line items) will not be affected.

    Payments that require 3D Secure

    Emails

    When your 3D Secure settings are configured to enable the Send a Stripe-hosted link for cardholders to authenticate when required option, emails will be sent to your customers when charging their card on file requires them to complete 3D Secure authentication. This will only apply when payment is attempted when the customer is not present (payments made after the first billing period). It will link to a Stripe-hosted page where they can confirm the payment.

    3D Secure provides a layer of protection against fraudulent payments that is supported by most card issuers. Unlike regular card payments, 3D Secure requires cardholders to complete an additional verification step with the issuer. Typically, this involves showing the customer an authentication page on their bank’s website, where they are prompted to enter a password associated with the card or a verification code sent to their phone. This process is familiar to customers through the card networks’ brand names, such as Visa Secure and Mastercard Identity Check.

    You can also enable reminder emails, along with a schedule of your choosing, by enabling the Send reminders if 3D Secure isn’t completed option. When enabled this will notify your customer of an incomplete 3D Secure payment, prompting them to confirm their payment on a Stripe-hosted page.

    Updating the subscription status for failed automatic collections

    You can configure what happens to the invoice’s subscription, if one exists, after all 3D Secure reminder attempts have been exhausted. This transition action (e.g. cancel the subscription or mark the subscription as unpaid) will only apply to invoices with an associated subscription. Invoices generated without a subscription (but with subscription line items) will not be affected.

    Invoices sent to customer

    These settings only affect invoices where the collection_method is set to send_invoice.

    Emails

    When sending invoices to your customers, Stripe can also send your customers payment reminders on a pre-defined schedule. Reminders include payment instructions and a copy of the original invoice.

    Updating the subscription status for failed automatic collections

    You can configure what happens to the invoice’s subscription, if one exists, as the invoice ages past a maximum number of days after its due date. This transition action (e.g. cancel the subscription or mark the subscription as unpaid) will only apply to invoices with an associated subscription. Invoices generated without a subscription (but with subscription line items) will not be affected.

    Accepting partially paid invoices

    When the Automatically reconcile partial payments that meet a minimum option is enabled you can instruct Stripe to mark an invoice as paid if it is partially paid within the set amount. For example, if the payment received from your customer is within $20 or less of the total (or at whatever amount you configure), then this setting will apply a credit to the invoice for the outstanding amount and mark the invoice as paid.

    Questions?

    We're always happy to help with code or other questions you might have. Search our documentation, contact support, or connect with our sales team. You can also chat live with other developers in #stripe on freenode.

    Cette page vous a-t-elle été utile ? Yes No

    Send

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page