Statement descriptors
Learn how statement descriptors work.
Statement descriptors explain charges or payments on bank statements. Using clear and accurate statement descriptors can reduce chargebacks and disputes. Banks and card networks require the inclusion of certain types of information that help customers understand their statements, and statement descriptors provide this information.
When you set up your Stripe account, you can set a single statement descriptor (static statement descriptor) that appears on all customer statements. For card charges, you can also create a statement descriptor that contains a static prefix associated with your account but with a dynamic suffix associated with each charge. This enables you to specify details about the product, service, or payment on bank or card statements.
Most banks display this information consistently, but some might display it incorrectly or not at all.
Statement descriptor requirements
A complete statement descriptor—either a single static descriptor or the combination of a prefix and suffix—must meet the following requirements:
- Contains only Latin characters.
- Contains between 5 and 22 characters, inclusive.
- Contains at least one letter (if using a prefix and a suffix, both require at least one letter).
- Doesn’t contain any of the following special characters: < , > , \ , ' " * .
- Reflects your Doing Business As (DBA) name.
- Contains more than a single common term or common website URL. A website URL only is acceptable if it provides a clear and accurate description of a transaction on a customer’s statement.
A static prefix, also called a shortened descriptor in the Dashboard, must contain between 2 and 10 characters, inclusive. The remaining characters are reserved for the dynamic suffix.
Set the static statement descriptor or prefix
You set a static statement descriptor or the shortened descriptor (prefix) in the Dashboard. This value appears on all customer statements for non-card charges or payments.
A static statement descriptor is sufficient if:
- Your business provides only a single product or service.
- Your customers understand a static value for any transaction with your business.
- You prefer to provide the same statement descriptor for all transactions.
For card charges, consider a static prefix with dynamic suffix if:
- You provide multiple products or services.
- Your customers might not understand a single value for all their transactions with your business.
- You prefer to provide transaction-specific details on the statement descriptor.
You can set both the statement descriptor for non-card charges and the shortened statement descriptor prefix for card charges.
If you set the static statement descriptor but don’t set a prefix, then Stripe uses the static statement descriptor as the prefix for card payments. If it’s longer than 10 characters, we truncate it to fit the character limit.
Set a dynamic suffix
Dynamic suffixes are supported only for card payments. Use the suffix to specify details about the transaction so your customer can understand it clearly on their statement. The suffix is concatenated with the prefix, the * symbol, and a space to form the complete statement descriptor that your customer sees.
Make sure that the total length of the concatenated descriptor is no more than 22 characters, including the * symbol and the space. If the prefix is the related setting (7 characters), the dynamic suffix can contain up to 13 characters—for example, 9-22-19 10K (11 characters) or OCT the related setting (12 characters). The computed statement descriptor is the related setting* 9-22-19 10K or the related setting* OCT the related setting.
Specify the suffix in the PaymentIntent ’s statement_descriptor_suffix parameter:
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
If you use Checkout, specify the suffix in the CheckoutSession ’s payment_intent_data.statement_descriptor_suffix parameter.
Override the default statement descriptor
One-time payments
You can override the static statement descriptor for a non-card payment by specifying a value for statement_descriptor when you create the PaymentIntent.
For card payments, you can’t specify the statement_descriptor. You can only specify the statement_descriptor_suffix.
Subscriptions and invoices
Because Stripe creates subscription charges automatically, you can’t set the statement_descriptor or statement_descriptor_suffix on the associated PaymentIntent. To override the default statement descriptor for a subscription or invoice payment, you can do one of the following:
- Update the Invoice to specify the statement_descriptor .
- Specify the statement _ descriptor when you create or update a Product .
Updating invoices
Normally, you can’t edit finalized subscription invoices. If you want to add a custom statement descriptor to a subscription invoice, set the Subscription ’s collection_method to send_invoice. You might also need to set the Invoice ’s auto_advance to false.
When creating a subscription payment, Stripe selects the statement descriptor in the following order of precedence:
- Defined on the Invoice .
- Defined on the Product , including a Product associated with a Plan or Price included in the invoice. If a Subscription contains multiple items, then Stripe uses the first one in its items.data array (not the Invoice ’s lines. data array) that has a custom statement descriptor.
- The default statement descriptor for the charge type.
Set Japanese statement descriptors
Japanese businesses can set kanji and kana statement descriptors. Providing clear and easy to understand statement descriptors is important to reduce confusion and chargebacks. We recommend setting statement descriptors in all three supported scripts (kanji, kana, and Latin characters).
You can change your account’s static kanji and kana statement descriptors and shortened descriptors (prefix) in the Dashboard.
For card charges, you can set dynamic suffixes in kanji and kana on PaymentIntents and CheckoutSessions. We compute the full descriptor that cardholders see by concatenating the shortened prefix and separators, in the same way as statement_descriptor_suffix.
The following example shows how to set kanji and kana suffixes on a PaymentIntent.
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
Requirements
While Japanese statement descriptors share some requirements with English requirements, the following table shows additional requirements for kanji and kana descriptors.
| Kanji | Kana | |
|---|---|---|
| Maximum total length | 17 | 22 |
| Minimum prefix length | 1 | 2 |
| Maximum prefix length | 10 | 10 |
| Supported character type | Kanji, kana, and Latin | Kana |
| Validation rule | < > \ ' " * * aren’t allowed | Only kana, spaces, dashes, and dots are allowed |
Note
Total length is the length of either the static descriptor or the concatenated descriptor (prefix + separator + suffix). Descriptors exceeding the maximum length are truncated.
Issuer behavior
Japanese statement descriptors are available only when both of the following are true:
- The card is a Visa or Mastercard issued in Japan.
- The charge is processed by a Japanese business or on behalf of a Japanese business.
For applicable charges, most issuers use a Japanese statement descriptor rather than a Latin one. However, it’s ultimately up to the issuer to decide whether to show kanji, kana, or Latin characters on the cardholder’s statement.
The calculated_statement_descriptor in API responses is always the Latin statement descriptor, but that doesn’t prevent the issuer from using a Japanese statement descriptor.
Statement descriptor display timing
Kanji and kana statement descriptors are sent to issuers at time of payment capture. As a result, they usually take a few days to appear on cardholder statements. In the meantime a temporary descriptor might be visible to cardholders:
- Visa, Mastercard: The English-language statement descriptor.
- JCB, Diners Club, and Discover: The account’s default statement descriptor.
