Odoo Stripe Fee Automation for Domestic and International Transaction Fees
with Smart Waiver Rules
The Problem: Stripe Fees Are Your Cost, But Someone Has to Pay Them
Every time a customer pays via Stripe, you pay a processing fee typically a percentage of the transaction plus a small fixed amount. For domestic card payments it's one rate; for international cards it's higher. Absorbing those fees silently across hundreds of transactions every month adds up to a meaningful cost that many businesses either don't track or don't transparently pass on.
Some businesses choose to absorb Stripe fees as a cost of doing business. But many particularly those with high transaction volumes, international customer bases, or thin margins need to pass those fees on to customers at the point of payment. And for high-value orders, they may want to waive fees entirely as a goodwill gesture or competitive incentive. Without a dedicated module, none of this is automatic in Odoo. There's no built-in mechanism to calculate a Stripe fee, display it to the customer at checkout, apply different rates for domestic vs international cards, or waive it above a certain amount. Finance teams end up doing this manually adjusting invoice amounts, adding line items, or just absorbing the cost inconsistently. The Stripe Fees Extension for Odoo by Creyox solves this with fully automated, rule-based fee management built directly into Odoo's Stripe payment flow.
Overview
The Stripe Fees Extension adds intelligent, automated Stripe transaction fee handling to Odoo's payment checkout and invoice payment processes. Rather than calculating fees manually or embedding them silently into pricing, this module calculates the correct Stripe fee automatically at the point of payment displays it transparently to the customer as a Fees Badge and records it accurately in Odoo's payment transaction records.
The module supports two distinct fee configurations: Domestic Fees (applied when the customer's delivery address country matches your company's country) and International Fees (applied when they don't match). Each fee type is configured independently with a percentage rate and a fixed amount for example, 2% + £0.30 for domestic and 3% + £0.60 for international. This mirrors the actual tiered cost structure Stripe charges businesses for different card types, allowing you to configure pass-through fees that reflect your real costs accurately. Beyond the two-tier domestic/international system, the module supports a fee waiver threshold an order amount above which Stripe fees are automatically removed. This gives businesses the flexibility to waive fees on high-value orders where absorbing the cost is commercially sensible, while still applying fees on lower-value transactions.
Hot Features
◆ Domestic and international Stripe transaction fee management
◆ Automatic Stripe fee calculation during payment checkout
◆ Option to waive Stripe fees above a defined order amount limit
◆ Transparent and accurate Stripe payment fee handling
◆ Fully configurable Stripe fee rules inside Odoo
◆ Quick and simple setup with seamless Odoo–Stripe integration
Features
◆ Automatically calculate Stripe transaction fees for domestic and international payments
◆ Configure separate fee rules for local and global Stripe transactions
◆ Automatically remove Stripe fees when the order amount exceeds the set limit
◆ Display clear and accurate Stripe transaction fee details to users
◆ Allow admins to easily configure Stripe fees and charging rules in Odoo
◆ Seamlessly integrate with the Odoo Stripe payment system for smooth checkout
Stripe Fees Extension
- First, configure the Stripe Payment Provider in Odoo.
- To do this, go to Invoicing >> Configuration >> Payment Providers.


- There, locate the Stripe Payment Provider and click on it.

- Enable the Stripe Payment Provider and enter the required Publishable Key and Secret Key to connect with Stripe.
- Click on Generate Webhook to automatically create the webhook endpoint in Stripe.

- User can see a dedicated Fees tab to configure rules.
- User can configure Domestic and International fees separately.

- If the company's country and the customer's delivery address country match, then Domestic Fees will be applied. otherwise, International Fees will be applied.


- Here, both countries are same so Domestic Fees will be applied.
- Whenever the user goes to the checkout page, they will see a Fees Badge inside the payment method line.
- Domestic Fees = 2% of total amount + Fixed Fees
- Domestic Fees = 2% of 320 + 0.30
- Domestic Fees = 6.4 + 0.30
- Domestic Fees = 6.70

- After payment, the user can see Fee details in the Payment Transaction form view.

- If the Customer's delivery address country does not match with the company's country, then International Fees will be applied.


- Whenever the user goes to the checkout page, they will see a Fees Badge inside the payment method line.
- International Fees = 3% of total amount + Fixed Fees
- International Fees = 3% of 320 + 0.60
- International Fees = 9.6 + 0.60
- International Fees = 10.20


- The Fees Badge is also visible when the user pays an invoice using the Stripe payment method.

- If Stripe sends a successful response, the invoice payment is processed.

- A Fees field is added in the Payment Transaction form view.

Explore similar picks
Explore Our Other Apps





