Stripe | Financial Infrastructure to Grow Your Revenue

Stripe | Financial Infrastructure to Grow Your Revenue

4466 articles

Issuing lifecycle controls


Issuing lifecycle controls

Learn how to use Issuing to control automatic usage-based cancellation of cards.

You can use lifecycle controls to automatically cancel a virtual card after a specified number of payments. This provides support for single-use or n -use cards. To enable this functionality, set the lifecycle_controls parameter when creating a virtual card.

How it works

Set lifecycle_controls.cancel_after.payment_count to specify the number of payments after which you want the virtual card automatically canceled. After the card reaches this payment count, its status automatically updates to canceled, and all future authorizations are declined.

What counts as a payment

The following events count towards the payment_count:

  1. Approved authorizations >1 USD : Standard card transactions that are approved
  2. Captured authorizations ≤1 USD : Small transactions (≤1 USD) that are actually captured and result in a transaction
  3. Force posts : When a business captures funds without an authorization

Special handling for ≤1 USD authorizations

Many businesses use ≤1 USD authorizations to test if a card is valid, but don’t capture these authorizations to transfer funds. To prevent premature card cancellation:

  • Uncaptured ≤1 USD authorizations don’t count towards payment _ count
  • Only up to payment _ count uncaptured ≤1 USD authorizations are allowed

Examples

The following scenarios demonstrate how lifecycle controls work for a single-use card ( payment_count: 1):

Create the single-use card:

Command Line

Select a language

cURL

Stripe CLI

Ruby

Python

PHP

Java

Node.js

Go

.NET

No results

Scenario 1: Standard transaction

Scenario 2: With uncaptured ≤1 USD test authorization

Scenario 3: Captured ≤1 USD authorization

Scenario 4: Force post

Scenario 5: Force post after cancellation

Last verified 2026-09-24

Is this helpful?