You can customize an invoice’s content and language to meet the needs of your business:
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.
Common example uses for custom fields are:
- Purchase Order (PO) numbers
- Contractor numbers
- Tax compliance
Custom field 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.
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
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.
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
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
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.
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.
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
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.
You can also update the language through the API’s
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.
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.
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:
|Setting||Emails||Hosted Invoice Page||Checkout Page||Invoice PDFs|
|Accent color||Yes, as background color||No||No||No|
While the generated PDF invoices contain no branded elements, you can customize their content extensively with custom fields, footers, and other content.