Glossary

Stripe Statement Descriptor

A Stripe statement descriptor is the short line of text, between 5 and 22 Latin characters, that identifies your business on a customer's card or bank statement. A separate descriptor can label a payout on your own bank statement.

Also called: statement descriptor, Stripe descriptor, dynamic statement descriptor, statement descriptor suffix, payout statement descriptor

14-day free trial · card required · cancel anytime

Definition

Every charge a customer pays through Stripe shows up on their card or bank statement with a few words next to the amount. Those words are the statement descriptor. Stripe describes descriptors as the text that explains "charges or payments on bank statements," and says banks and card networks require them to carry certain information so customers understand what they paid for.

You set a default for the account in the Stripe Dashboard, and you can change it for individual payments, products and invoices. Stripe also notes that while most banks display the descriptor consistently, "some might display it incorrectly or not at all."

The same idea exists on the other side of the money flow. When you create a payout through Stripe's API, you can give it its own statement_descriptor, which Stripe describes as a string that displays on the recipient's bank statement. That is the text that can appear on the payout line in your own bank account, and so in your QuickBooks bank feed.

Key points

  • +A complete descriptor must contain between 5 and 22 Latin characters, including at least one letter.
  • +For card payments, a static prefix of 2 to 10 characters can be combined with a dynamic suffix per charge.
  • +Card payments can set only the suffix, not the full descriptor.
  • +On a subscription payment, a descriptor on the invoice beats one on the product, which beats the account default.
  • +calculated_statement_descriptor on a card charge shows the combined text Stripe passed to the card networks.
  • +A payout created through the API can carry its own descriptor of up to 22 characters, cut to 10 for US ACH payouts.
  • +Unrecognized is one of Stripe's dispute categories, which is why the customer-facing descriptor is a bookkeeping concern.

Static, prefix and suffix

Stripe distinguishes three pieces. The static descriptor is the account default, set in the Dashboard under business details. Stripe says it "appears on all customer statements for non-card charges or payments."

For card payments there is also a shortened descriptor, or prefix, of between 2 and 10 characters. Each charge can add a dynamic suffix, and Stripe joins them with an asterisk and a space. Stripe's own example is a prefix of RUNCLUB and a suffix of OCT MARATHON, which produces RUNCLUB* OCT MARATHON. The whole result, separator included, must fit in 22 characters. If you set a static descriptor but no prefix, Stripe uses the static descriptor as the prefix for card payments and truncates it to 10 characters if it is longer.

The rules on the full text are strict. Stripe requires Latin characters only, at least one letter, none of the characters < > \ ' " or *, a reflection of your doing-business-as name, and more than a single common term or a bare website address unless that address clearly describes the transaction.

Which descriptor wins on an invoice or subscription

One-time payments are simple. For a non-card payment you can override the static descriptor on the PaymentIntent. For a card payment you cannot set the full descriptor at all: Stripe says you can only set the suffix.

Subscriptions are different, because Stripe creates those charges itself and you never touch the PaymentIntent. Stripe picks the descriptor in a fixed order. First, one set on the invoice. Second, one set on the product, and where a subscription has several items, Stripe uses the first item in the subscription's own item list that has a custom descriptor, not the first line on the invoice. Third, the account default for the charge type.

That order matters when a customer asks why a renewal looks different from their first payment. Changing the default in the Dashboard will not change a renewal whose product carries its own descriptor. Stripe also notes that finalized subscription invoices normally cannot be edited, so adding a descriptor to one means switching the subscription to send the invoice rather than charge automatically.

Why the customer-facing descriptor reaches your books

A descriptor the customer does not recognize is a dispute waiting to happen. Unrecognized is one of the dispute categories Stripe lists, covering cardholders who do not recognize a transaction. A dispute does not stay on the Stripe side: it takes money and a fee out of your balance, and the original sale in QuickBooks has to be corrected.

The cheapest fix is upstream. Make the descriptor match the name customers know you by, and use the suffix to say what was bought when you sell more than one thing. To check what a customer actually saw on a card payment, look at calculated_statement_descriptor on the charge. Stripe describes it as the full descriptor passed to card networks after the static and dynamic parts are combined.

The payout descriptor and your QuickBooks bank feed

Payouts are where the descriptor meets your own reconciliation. Stripe's API lets a payout you create carry a statement_descriptor of up to 22 characters, and anything longer returns an error. Stripe is candid about what happens next: "Most banks truncate this information and display it inconsistently. Some banks might not display it at all." For US ACH payouts, the descriptor maps to the ACH Company Entry Description field, which the NACHA standard limits to 10 characters, so Stripe truncates anything longer.

That has a practical consequence for QuickBooks. A bank rule can match only on Description, Bank text or Amount, so any rule written for Stripe payouts depends on whatever text your bank chose to show. With 10 characters at most on a US ACH payout, and some banks showing nothing, the descriptor is a weak thing to build a rule on. The payout amount and date are more reliable when you match a bank line to the payout record already in your books.

A descriptor you can control is still worth setting on payouts you create yourself. Something short and recognizable within the first 10 characters is the version that survives.

The payout record Acodei creates for the bank line to match

Acodei's documentation describes recording each paid Stripe payout in QuickBooks so the books match the bank, and the shape depends on your holding account. With an asset holding account, each payout becomes a single QuickBooks Transfer from the holding account to the mapped deposit bank account, for the payout's net amount. With Undeposited Funds as the holding account, each payout becomes a QuickBooks Deposit that itemizes the underlying charges, refunds and fees out of Undeposited Funds into the bank account.

Either way, the payout line in your bank feed has a record in QuickBooks to be matched to. The documentation does not describe any descriptor or memo text on that record, so match on the amount and date rather than on the words your bank shows.

Want to see this on your own Stripe data?

Start a free trial

14-day free trial · card required · cancel anytime

Frequently asked questions

What is a statement descriptor in Stripe?

It is the text that identifies your business on a customer's card or bank statement for a Stripe payment. It must be 5 to 22 Latin characters and reflect your doing-business-as name. You set a default in the Dashboard and can override it per payment, product or invoice, within Stripe's rules.

What is the difference between a static descriptor and a dynamic suffix?

The static descriptor is the account default and applies to non-card payments. For card payments, Stripe combines a short prefix of 2 to 10 characters with a dynamic suffix set on each payment, joined by an asterisk and a space, and the result must fit in 22 characters.

Why does a subscription renewal show a different descriptor from the account default?

Because Stripe picks a subscription payment's descriptor in order: one set on the invoice first, then one set on the product, then the account default. A product with its own descriptor overrides the default on every renewal of that subscription.

Can I set a statement descriptor on a Stripe payout?

Yes, on a payout you create through Stripe's API, up to 22 characters. Stripe warns that most banks truncate or display it inconsistently and some do not show it at all, and for US ACH payouts Stripe truncates it to 10 characters.

Should I build a QuickBooks bank rule on the Stripe payout description?

Be careful. A QuickBooks bank rule matches on description, bank text or amount, and the text on a Stripe payout depends on your bank, which may truncate or drop it. Matching the bank line to the payout record already in QuickBooks by amount and date is more reliable.

What customers say about running Stripe through Acodei

Stripe Verified Partner BadgeIntuit QuickBooks
★★★★★
“If you're testing out all the different Stripe/QuickBooks integration apps right now, let me save you some time. This one is the best one by far.”
RyanOwner at Indie Music Academy
★★★★★
“Works well and is really helpful for massive transactions. The support is really fast and helpful. 100% recommended.”
AndresCo-founder and CEO at Kanguro Collections and Reinsurance

Related reading

More glossary terms

See the full glossary

Ready to try Acodei?

Connect Stripe to QuickBooks Online in minutes and let the fees, refunds, and payouts land where your accountant expects them.

14-day free trial · card required · cancel anytime