Sign in
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
Security
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Overview
Customers
Products and Prices
Tax Rates
Customer portal
Quotes
Start with a use case
Subscriptions with Checkout
Fixed-price subscriptions with Elements
Metered billing with Elements
Per-seat billing with Elements
Manage subscriptions
How subscriptions work
Subscription webhooks
Change subscriptions
Strong Customer Authentication (SCA)
Improved tax support
Invoices API updates
Migrating to Prices
Additional features
Testing
Add payment methods
Bacs Direct Debit in the UK
BECS Direct Debit in Australia
SEPA Direct Debit in the EU
Invoice customers
How invoices work
Create an invoice
Customize invoices
Hosted invoice page
Additional features
Revenue recognition
Overview
Reports
Methodology
Examples
Overrides
Testing
Subscriptions and invoices
Customize invoices
billing
·
HomePaymentsSubscriptions and invoices

Customize invoices

Customize the content and branding of your invoices

Compliance

Because you know more about your customers and your business than Stripe does, check that your invoices include all required information, are accurate, charge the appropriate tax, and comply with all applicable laws and regulations in your region.

You can customize an invoice’s content and language to meet the needs of your business:

  • Custom fields
  • Memo field
  • Footer field
  • Invoice numbering schemes
  • Customer preferred language

Custom fields

Add custom fields to enhance your invoice PDF documents and help you comply with your business practice and tax reporting obligations. Custom fields allow you to provide up to four key-value pairs, which are displayed in the invoice header.

Custom fields

Custom fields render at the top right of your invoice and receipt PDFs.

Common example uses for custom fields are:

  • Purchase Order (PO) numbers
  • Contractor numbers
  • Tax compliance

You can set up to four custom field key-value pairs in the Invoice editor or with the Invoice API.

Custom field inheritance

Custom fields inheritance

You can also set custom invoice fields on the Customer object.

Any custom fields set at the customer level apply to all draft invoices generated for that customer. You can modify these inherited custom fields while the invoice is still a draft.

You can’t update the custom fields after an invoice has been finalized.

Memo field

The memo is included in invoice PDFs, invoice emails, and the Hosted Invoice Page.

Memos are commonly used as a notes section, thanking the invoiced customer for their business, or giving more context around the invoice such as a note from the salesperson who might have talked to the customer.

Memo field inheritance

Memo inheritance

You can set the memo field for your whole account, on the subscription, and on the invoice in the Dashboard and the API.

  • Default memo—You can set the memo’s default value on the Billing Settings page. This value will be used for any newly created invoices which do not override the memo.
  • Subscription memo override—You can set the subscription memo field in the Dashboard when creating a subscription. It automatically applies to all new invoices generated by that subscription and supersedes any memo set at the account level.
  • Invoice memo override—You can set a memo on a per-invoice basis. This will override the memo values set at the account settings and subscription level. You can set the invoice-level memo via the API or the dashboard when creating or updating a draft invoice.

Footer field

Invoice PDFs can optionally include a footer text block, often used for contractual or legally required text.

A common use case is displaying legally required company registration information, such as a UK Companies House registration number.

Footer field inheritance

Footer inheritance

Similar to memo settings, you can set the footer’s default value on the Billing Settings page. This value will be used for any newly created invoices that do not override the footer.

You can also set a footer on a per-invoice basis through the dashboard or API. This will override the default footer value.

You can’t update the footer fields after an invoice has been finalized.

Invoice numbering schemes

Stripe automatically generates invoice numbers to help track and reconcile invoices. Invoice numbers have a prefix and suffix, such as 586A2E-0139 or MYSHOP-1203.

Two invoice numbering schemes are supported:

  • Account-level: The same prefix is used for every customer and invoices are numbered sequentially across your entire account.
  • Customer-level: Each customer has a unique prefix and invoices for a given customer are numbered sequentially.

The full invoice number is guaranteed to be unique across your account in both schemes.

Stripe chooses a default behavior based on the country your Stripe account is based in. In European Union member countries and the United Kingdom, account level sequencing is typically required. All other countries default to customer level sequencing as it does not expose the total number of invoices.

When switching between schemes or updating prefixes, only future invoices use the new settings. Existing invoices aren’t impacted.

Invoice requirements vary by jurisdiction. Consult with a professional for guidance on your specific use case. You are responsible for verifying that the invoices you issue meet local tax requirements.

Using customer level prefixes

When configured to use customer-level numbering, each invoice number begins with the customer’s unique invoice prefix.

For example, if one of your customers is a business named Typographic, you might set the prefix to TYPGRA. The first invoice number for Typographic would be TYPGRA-0001, the second would be TYPGRA-0002 and so on.

Prefixes can be overridden to make it easier to trace invoices back to your customers. You can set prefixes on the Customer Detail page in the Stripe Dashboard or with the API using the invoice_prefix parameter. Prefixes have to be between 3 and 12 characters and they cannot match any other customer prefix, including prefixes that are no longer in use.

Using account level prefixes

When configured to use account-level numbering, each invoice number starts with a common prefix and has a sequential number.

For example, if your business is named Rocket Rides, you might set the prefix to RKTRIDE. Your first invoice would be RKTRIDE-0001, a second invoice to a different customer would be RKTRIDE-0002, another invoice to the first customer would be RKTRIDE-0003, and so on.

The account-wide prefix is automatically assigned and can be overridden to make it clearer that these invoices come from you. If you want to modify the prefix for your account, you can change it in the Stripe Dashboard. This requires that your account’s default API version is at least 2020-03-02. Prefixes have to be between 3 and 12 characters and they cannot match any customer prefix, including prefixes that are no longer in use.

Prefixes that have been used as a customer prefix cannot be chosen as an account prefix. This exclusion includes prefixes that have been created but are no longer in use.

Setting the next invoice number

By default, invoice numbers start at 0001. There are scenarios where you might want to use a different number. For example, if you’re migrating to Stripe Billing with existing customers, you might want to continue where your old system left off. If a customer’s last invoice was 0127 on a previous system, you can set their first invoice on Stripe to be 0128.

You can set the number on the Customer Detail page or with the API using the next_invoice_sequence parameter. If you’re using account level prefixes, you can set the next invoice number in the Next invoice sequence field in the Stripe Dashboard on the invoice template page.

You can only set the next invoice number to numbers greater than any numbers used on an invoice. The maximum allowed invoice number is 1,000,000,000 regardless of how you set it. Use the lowest value possible so that you don’t reach this limit.

Customer preferred language (localization)

Use the Language property on a Customer to set the preferred language. This language will be used to localize Invoice emails and PDFs, Receipt emails and PDFs, as well as Credit Note PDFs.

Customer preferred language

The Update customer invoice details modal showing the Language field.

You can also update the language through the API’s preferred_locales field.

Public support information

Invoices include any public information that you’ve specified in your account details, such as your phone number or website address. Here you’ll also be able to opt-out of including your support phone number on invoices. This setting also determines whether or not your support phone number appears on other customer facing documents like the payment receipt and refund receipt.

Customizing Branding

Stripe allows customization of customer-facing emails and UIs on the Branding Settings page.

The following brand settings are available:

  • Icon—a square, digital friendly icon/logo.
  • Logo—a non-square logo to override some uses of the Icon.
  • Accent color—used as a background on emails and pages.
Brand settings screenshot

Customize your branding on the Branding Settings Dashboard page.

Icons and logos must be in JPG or PNG format, less than 512kb in size, and equal to or greater than 128px by 128px.

Where brand settings are applied

Because brand settings apply to your whole account, they take effect in many places:

SettingEmailsHosted Invoice PageCheckout PageInvoice PDFs
IconYesYesYesNo
LogoNoNoYesNo
Accent colorYes, as background colorNoNoNo

While the generated PDF invoices contain no branded elements, you can customize their content extensively with custom fields, footers, and other content.

Was this page helpful?
Questions? Contact us.
Developer tutorials on YouTube.
You can unsubscribe at any time. Read our privacy policy.
On this page
Custom fields
Memo field
Footer field
Invoice numbering schemes
Customer preferred language (localization)
Public support information
Customizing Branding
Where brand settings are applied