Applying Taxes to Subscriptions

    How to set taxes on subscriptions to have Stripe calculate invoice tax amounts for you.

    To collect tax on a subscription, either set tax rates on the subscription, or dynamically lookup and add set the tax rates on invoices as the subscription cycles.

    Recommended: Setting tax rates on a subscription

    Apply up to five Tax Rates to subscription items.

    When subscriptions create invoices, the tax rates are copied from the subscription to the invoice, and from the subscription items to the invoice items.

    Subscription item 1 (no tax set) ➡️ Invoice item 1 (no tax set)
    Subscription item 2 3% and 5% ➡️ Invoice item 2 3% and 5%
    Subscription 1% ➡️ Invoice 1%

    Dynamically configuring tax rates on each subscription cycle

    If you add extra invoice items, or sell in enough jurisdictions that tax rates change frequently, dynamically calculate and assign tax rates to the subscription’s invoice as it’s created.

    When a subscription renews and creates an invoice, Stripe sends the invoice.created webhook event. Stripe waits approximately one hour before finalizing the invoice and attempting payment or sending an email.

    During that delay, the invoice is a draft and is editable. Follow the process to assign tax rates to that invoice.

    Next steps

    Now that you understand how to charge taxes on subscriptions, you may want to check out:

    Was this page helpful? Yes No


    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.


    We're always happy to help with code or other questions you might have. Search our documentation, contact support, or connect with our sales team. You can also chat live with other developers in #stripe on freenode.

    On this page