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
Start an integration
Products
Global Payouts
Capital
Issuing cards
    Overview
    How Issuing works
    Global availability
    Manage fraud
    Cards
    Choose your card type
    Virtual cards
    Issue virtual cards
    Physical cards
    Manage cards
    Digital wallets
    Replacement cards
    Card programs
    Program management
    Customize your card program
    Add funds to your card program
    Credit Consumer Issuing
    Controls
    Spending controls
    Advanced fraud tools
    3DS
    Fraud challenges
    Real-time authorizations
    PIN management
    Issuing Elements
    Token Management
    Funding
    Balance
    Postfund your integration with Stripe
    Postfund your integration with Dynamic Reserves
    Purchases
    Authorizations
    Transactions
    Disputes
    Testing
    Merchant categories
    ATM Usage
    Issuing with Connect
    Set up an Issuing and Connect integration
    Update terms of service acceptance
    Connect funding
    Connected accounts, cardholders, and cards
    Embed card management UI
    Credit
    Overview
    Set up connected accounts
    Manage credit terms
    Report other credit decisions and manage AANs
    Report required regulatory data for credit decisions
    Manage account obligations
    Test credit integration
    Additional information
    Choose a cardholder type
    Customer support for Issuing and Treasury
    Issuing watchlist
    Marketing guidance (Europe/UK)
    Product and marketing compliance guidance (US)
Treasury
Manage money
HomeMoney managementIssuing cards

Issuing spending controls

Learn how to use Issuing to set rules on cards and cardholders to control spending.

Copy page

You can use spending controls to block merchant categories (for example, bakeries), countries, or merchant IDs, and to set spending limits such as 100 USD per authorization or 3000 USD per month. You can apply them to both Cards and Cardholders either by setting their spending_controls fields when you create them or by updating them later.

The spending_controls object has the following structure:

Field TypeDescription
allowed_categories arrayList of categories of authorizations to allow. All other categories will be blocked.
blocked_categories arrayList of categories of authorizations to decline. All other categories will be allowed.
spending_limits arrayList of objects that specify amount-based rules.
allowed_merchant_countries arrayList of merchant countries to allow authorizations from. Authorizations from all other countries are blocked.
blocked_merchant_countries arrayList of merchant countries to block authorizations from. Authorizations from all other countries are allowed.

Spending controls run before real-time authorizations and can decline a purchase before the issuing_authorization.request is sent, resulting in a declined issuing_authorization.created event.

Note

Merchant ID spend controls are currently limited to beta users. You must be an Issuing customer to join the beta. To request access to the beta, Contact Stripe for more information.

Spending limits

Spending limit rules limit the total amount of spending for categories over intervals of time.

The spending_limits field within spending_controls is a list of objects that have the following structure:

FieldTypeDescription
amountintegerMaximum spend, in the currency of the card. Amounts in other currencies are converted to the card’s currency when evaluating this control. This amount is in the card’s currency and in the smallest currency unit.
intervalenumTime interval that the amount applies to. See the Card spending_controls for the possible values. All date-based intervals start at midnight UTC.
categoriesarray (optional)List of categories this limit applies to. Omitting this field will apply the limit to all categories.

Note

If you don’t set spending_limits, a default spending limit is applied to the newly created card in the amount of 500 USD per day. Contact Support to disable this behavior.

Note

In addition to the spending_limits configured on card, a default spending limit in the amount of 10000 USD is also applied to each authorization. This isn’t configurable. Contact Support to disable this behavior.

Note

Spending aggregation is done on a best-effort basis. You might notice a delay of up to 30 seconds between spend occurrence and spend aggregation.

A card’s spending limits apply across any cards it replaces (that is, its replacement_for card and that card’s replacement_for card, up the chain). A cardholder’s spending limits apply across all of their cards.

Each spending limit only applies to its own categories. Spending limits alone do not block categories and should be used with either allowed_categories or blocked_categories to restrict spending to specific business types.

If a cardholder has overlapping spending limits (for example, 100 USD per authorization and 50 USD per authorization for their card), the most restrictive spending control applies.

Additional tips and fees can be posted at a later time, causing a spending limit to be exceeded.

Examples

The following examples demonstrate different uses of spending controls for cards and cardholders.

Limit a cardholder's monthly spend across all of their cards

Limit the spend and allowed categories for a single card

Limit a cardholder's weekly spend for specific categories

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