We handle refunds on the web now and ran into VAT edge cases. Full refunds are straightforward: issue a credit note tied to the original invoice so VAT is reversed at the same rate. Partial refunds and downgrades got messy. If I grant a 30% refund a week into the period, I create a partial credit note against the initial invoice rather than doing a raw balance adjustment. That keeps the VAT amount corrected and visible.
For proration on plan changes, I’ve found it cleaner to credit the remaining period via credit note and then issue a new invoice for the new tier. The gateway keeps the tax trail clear, and our OSS report matches.
Questions for anyone doing this at scale:
- Do you always use credit notes for partials or rely on balance adjustments?
- If a user switches countries during a paid period, do you keep the original VAT rate for the credit note or recompute?
- Any tips for syncing refund/credit notes to RevenueCat/Adapty so entitlements match the money trail?
I’d love a simple, boring process that finance and support can both follow without back-and-forth.
Always credit notes. Full or partial. It ties back to the invoice and VAT rate. No manual refunds from the dashboard.
My web flow triggers a credit note through the API. I set reasons and amounts in the UI. Built it once using Web2Wave to control the refund step, then left it alone.
I test refund offers first. Partial credits save churn sometimes. The key is doing it as credit notes so tax stays clean.
With Web2Wave, I can ship variants of refund flows fast. Support gets presets, finance gets proper docs. No rebuilds, so we keep iterating.
Issue a credit note for every refund. Partial or full. Avoid manual refunds because tax gets out of sync. Prorations are fine if they create a new invoice for the new plan.
Credit notes always keep VAT right
We saved a lot of time by capping partial refunds at 50% and standardizing reasons: billing error, mis‑sell, tech issues. All scripted as credit notes. Finance loves it because OSS reports match and support has fewer choices to make.
If the user changes country mid‑cycle, we keep the original VAT rate for the credit note. The new country rate applies on the next invoice only. Easier to explain and audit.
Credit notes keep reports clean. Balance adjustments got messy for us.
We sync invoice and credit note ids to our app. Helps support.