# Receipts and paid invoices Send customer receipts for payments or refunds. Stripe creates receipts for all successful payments and refunds, including invoice payments and recurring payments as part of a *subscription* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis). Customers can view their receipts online through a web browser, and optionally download receipts as PDFs. ## Automatically send receipts (Recommended) You can automatically send customer receipts by email. Automatic receipts are available for payments and refunds. 1. In the Dashboard, open **Settings** > **Business** > [Customer emails](https://dashboard.stripe.com/settings/emails). 2. Under Payments, toggle **Successful payments** or **Refunds**. For payments, receipts are only sent if the payment succeeds. Nothing is sent if a payment fails or gets [declined](https://docs.stripe.com/declines.md). > Businesses in Mexico can download refund receipts from the Dashboard. These receipts contain additional information about the refund, such as refund status and refund type. ## Manually send receipts You can send email receipts manually from the Dashboard. Manual receipts are available for payments and refunds. 1. In the Dashboard, open **Transactions** > [Payments](https://dashboard.stripe.com/payments). 2. Click the successful payment or refund you want to send a receipt for. Only successful payments have receipts available. 3. On the payment details page, go to **Receipt history**. 4. Click the overflow menu (⋯), and select **Send receipt**. 5. Confirm or update the customer’s email address. You can send to multiple recipients by adding more email addresses as a comma-separated list. 6. Click **Send**. The receipt history on the payment details page displays up to 10 receipts. ## Receipt URLs Every receipt has a URL that the customer can view in a web browser. To link to a receipt from your application, use the [receipt_url](https://docs.stripe.com/api/charges/object.md#charge_object-receipt_url) attribute of the [Charge](https://docs.stripe.com/api/charges/object.md) object. ### Expired receipt URLs Receipts don’t expire, but for security reasons, links to receipts expire after 30 days. If a receipt link has expired, Stripe asks the customer to provide the email address associated with the original transaction. Stripe creates a new link and sends it to that email. ## Test receipts Test payments using a *sandbox* (A sandbox is an isolated test environment that allows you to test Stripe functionality in your account without affecting your live integration. Use sandboxes to safely experiment with new features and changes) or test mode key only automatically send receipts if the customer email belongs to a verified email that has sandbox permissions for your Stripe account. If you need to send a receipt for a test payment to any other email, send a [manual receipt](https://docs.stripe.com/receipts.md#manual). ## Paid invoice receipts You can generate paid *invoice* (Invoices are statements of amounts owed by a customer. They track the status of payments from draft through paid or otherwise finalized. Subscriptions automatically generate invoices, or you can manually create a one-off invoice) receipts, which include more detail than standard receipts. For subscriptions, Stripe generates invoices automatically, but you need to enable them for one-time payments. > Invoice creation for one-time payments through the [Checkout Sessions API](https://docs.stripe.com/api/checkout/sessions.md) is not an [Invoicing](https://stripe.com/invoicing) feature, and is priced separately. Review [this support article](https://support.stripe.com/questions/pricing-for-post-payment-invoices-for-one-time-purchases-via-checkout-and-payment-links) to learn more. ### Automatically send paid invoices 1. Enable [automatic receipts](https://docs.stripe.com/receipts.md#automatic). 2. Set [invoice_creation[enabled]](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-invoice_creation-enabled) to `true` when creating a checkout session: ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d mode=payment \ -d "invoice_creation[enabled]=true" \ -d "line_items[0][price]={{ONE_TIME_PRICE_ID}}" \ -d "line_items[0][quantity]=1" \ -d ui_mode=elements \ --data-urlencode "return_url=https://example.com" ``` After the payment completes successfully, Stripe sends an invoice summary to the email that the customer provided. This summary includes links to download PDFs of both the invoice and payment receipt. You can listen for the [invoice.paid](https://docs.stripe.com/api/events/types.md#event_types-invoice.paid) event if you need to access invoice receipts programmatically. > Invoice receipts are only sent after the payment completes successfully, not when the checkout session ends. Delayed or asynchronous payment methods can therefore take longer to trigger receipts. This includes methods like [Bacs Direct Debit](https://docs.stripe.com/payments/bacs-debit/accept-a-payment.md), [Bank transfers](https://docs.stripe.com/payments/bank-transfers/accept-a-payment.md), [Boleto](https://docs.stripe.com/payments/boleto/accept-a-payment.md), [Canadian pre-authorized debits](https://docs.stripe.com/payments/acss-debit/accept-a-payment.md), [Konbini](https://docs.stripe.com/payments/konbini/accept-a-payment.md), [OXXO](https://docs.stripe.com/payments/oxxo/accept-a-payment.md), [Pay by Bank](https://docs.stripe.com/payments/pay-by-bank/accept-a-payment.md), [SEPA Direct Debit](https://docs.stripe.com/payments/sepa-debit/accept-a-payment.md), and [ACH Direct Debit](https://docs.stripe.com/payments/ach-direct-debit/accept-a-payment.md). ## Customize receipts You can customize your receipts to match your business’s visual design, along with the business information to display. ### Branding Your branding settings control the visual display of your receipts and other Stripe interfaces. 1. In the Dashboard, go to **Settings** > **Business** > [Branding](https://dashboard.stripe.com/settings/branding). 2. Click the **Email receipts** tab. 3. For the image type you want to add, click the plus icon (:plus:), then select your file. Make sure it meets all the [requirements](https://docs.stripe.com/receipts.md#image-requirements). 4. For your color scheme, select your brand color and your accent color. You can use the dropdown color picker, or provide a color code as HEX or RGB values. 5. Click **Save changes**. #### Image requirements Image requirements are the same for both the logo and icon files, but the icon is displayed at smaller sizes. | | | Dimensions | - Must be square - Minimum 128 x 128 pixels | | Supported file types | - PNG (recommended) - JPG | | Maximum file size | 512 KB | ### Business information Your business details control the information that displays on receipts and other Stripe interfaces. 1. In the Dashboard, go to **Settings** > **Business** > [Business details](https://dashboard.stripe.com/settings/business). 2. Under **Public details**, click **Edit**. 3. Update your customer support information, noting the [requirements](https://docs.stripe.com/receipts.md#support-requirements). 4. Click **Save**. #### Support requirements For compliance reasons, some contact information is always required on receipts: - Legal business name - Customer support address - Customer support email - Privacy policy URL ### Localization The language of the receipt and invoice is determined by the customer information available when you create the checkout session. | Customer information | Localization setting | | --- | --- | | Customer has [Account v2](https://docs.stripe.com/api/v2/core/accounts.md). | Invoice uses value of [defaults.locales](https://docs.stripe.com/api/v2/core/accounts/object.md#v2_account_object-defaults-locales) attribute. | | Customer has [Customer account v1](https://docs.stripe.com/api/customers.md). | Invoice uses value of [preferred_locales](https://docs.stripe.com/api/customers/object.md#customer_object-preferred_locales) attribute. | | Customer has no locale data available. | Invoice uses **Default language** from your [**Customer emails** settings](https://dashboard.stripe.com/settings/emails). | | No customer information provided. | Invoice defaults to the user’s browser locale when they open the checkout session URL. | ### Custom invoice data When creating a checkout session, you can pass custom values to the [invoice_creation.invoice_data](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-invoice_creation-invoice_data) object to customize your invoices: ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d mode=payment \ -d "invoice_creation[enabled]=true" \ -d "invoice_creation[invoice_data][description]=Invoice for Product X" \ -d "invoice_creation[invoice_data][metadata][order]=order-xyz" \ -d "invoice_creation[invoice_data][account_tax_ids][0]=DE123456789" \ -d "invoice_creation[invoice_data][custom_fields][0][name]=Purchase Order" \ -d "invoice_creation[invoice_data][custom_fields][0][value]=PO-XYZ" \ -d "invoice_creation[invoice_data][rendering_options][amount_tax_display]=include_inclusive_tax" \ -d "invoice_creation[invoice_data][footer]=B2B Inc." \ -d "line_items[0][price]={{ONE_TIME_PRICE_ID}}" \ -d "line_items[0][quantity]=1" \ -d ui_mode=elements \ --data-urlencode "return_url=https://example.com" ``` Review [invoicing best practices](https://docs.stripe.com/invoicing/customize.md) for your region to make sure you’re collecting the right information from your customers. Information like the customer’s billing and shipping addresses, phone number, and tax ID appear on the resulting invoice. ### Stripe Connect customizations If you use *Connect* (Connect is Stripe's solution for multi-party businesses, such as marketplace or software platforms, to route payments between sellers, customers, and other recipients), receipt settings depend on the charge and account type used by your platform or marketplace: - [Destination charges](https://docs.stripe.com/connect/destination-charges.md) and [separate charges and transfers](https://docs.stripe.com/connect/separate-charges-and-transfers.md): Receipts use the platform account’s **Customer emails**, **Branding**, and **Public details** settings. - [Direct charges](https://docs.stripe.com/connect/direct-charges.md): Receipts use the connected account’s **Customer emails**, **Branding**, and **Public details** settings. Platform accounts can send a receipt for a connected account by passing `receipt_email` when making a charge request. For connected accounts that use the Stripe Dashboard (which includes Standard connected accounts), you can configure receipt settings under [Branding](https://dashboard.stripe.com/settings/branding). For connected accounts that don’t use the Dashboard (which includes Express and Custom connected accounts), the platform configures receipt settings through [settings.branding](https://docs.stripe.com/api/accounts/update.md#update_account-settings-branding). ## See also - [Send customer emails](https://docs.stripe.com/invoicing/send-email.md) - [Automate customer emails](https://docs.stripe.com/billing/revenue-recovery/customer-emails.md)