ACCOUNTRISE
Odoo Accounting Process Playbook / Customer Credits

A cleaner path from invoice correction to cash refund

Odoo Credit Notes & Customer Refunds: The Right Accounting Process

A customer return, pricing correction, or duplicate invoice should not turn into a confusing receivables balance. Use a controlled workflow to document the reason, issue the credit, handle any cash refund, and reconcile the complete trail.

Practical workflow guideFor finance and operations teamsOdoo setup may vary

Credit case

CN-0148

Review Required
Original invoiceINV/2026/0421
Credit reasonPartial return
Credit amount$480.00
Refund statusNot yet paid
Illustrative case only. Document IDs, amounts, and statuses are examples—not actual records.

Start with the distinction

A credit note is not the same as a cash refund.

1

Credit note

Adjusts or reverses all or part of the customer invoice balance. Depending on the reason, it can affect revenue, tax, receivables, or other accounts.

Accounting document

2

Refund payment

Records money sent back to the customer. It affects cash or the relevant payment account and must be connected to the customer’s open items properly.

Cash movement

The operating workflow

A seven-step process for traceable customer credits

Keep the commercial reason, accounting document, inventory movement, and cash settlement connected—but do not treat them as the same transaction.

01

Log the business reason

Sales / Support

Record why the customer needs a credit: returned goods, a price correction, damaged items, a duplicate invoice, a service adjustment, or an approved goodwill credit. Capture the original invoice, customer, lines, quantities, dates, and approval.

Control: Require a reason code or standard description; avoid vague entries such as “adjustment”.

02

Choose the correct source document

Accounting

For a posted customer invoice that needs to be reduced or reversed, use the approved credit-note/reversal workflow rather than quietly changing the accounting history. Link the credit to the original invoice wherever the configured workflow supports it.

Control: Confirm invoice status, company, currency, tax treatment, and the accounting period before proceeding.

03

Create a full or partial credit note

Credit document

Credit only the affected lines, quantities, or approved amount. Review accounts, taxes, analytic distributions, fiscal position, currency, and customer reference before posting. A full reversal and a partial commercial adjustment may require different checks.

Control: Compare the credit lines with the approved reason and original invoice.

04

Handle the physical return separately

Warehouse

If goods are physically returned, complete the appropriate return transfer or inventory process and inspect the items as required. Decide whether goods return to sellable stock, quarantine, repair, or scrap. An accounting credit by itself does not prove stock was received.

Control: Reconcile credited quantities to actual returned or otherwise approved quantities.

05

Decide whether cash actually leaves the business

Settlement

Not every credit requires a bank refund. A credit may remain available against a future invoice, offset an unpaid receivable, or be refunded through the approved payment method. Follow the customer agreement and the business’s refund policy.

Control: Do not register a cash refund solely because a credit note exists.

06

Register and reconcile the refund or offset

Cash / AR

When cash is returned, record the payment through the configured Odoo payment workflow and reconcile it with the correct customer credit/open items and bank transaction. If the credit offsets an invoice, reconcile the applicable receivable entries so the customer balance is accurate.

Control: Check the customer ledger and outstanding items after reconciliation—not just the payment status.

07

Review the audit trail and month-end balances

Close

Confirm the original invoice, credit note, related return (when relevant), refund payment, and bank reconciliation can be traced. Review open credit notes, unapplied customer credits, unusual refund amounts, tax impact, and aged customer balances.

Control: Assign unresolved credits to an owner and document the next action.

Choose the scenario

What happened with this customer?

Select the situation to see the main workflow checkpoints. The exact menu labels and steps can differ by Odoo version, localization, installed apps, and configuration.

Product return: track both stock and accounting

Verify the original sale, confirm the returned quantity, complete the return transfer or approved stock adjustment, and issue the credit note using the correct lines and taxes. Check whether the items are resalable or require a different inventory destination. Reconcile the resulting customer credit based on the agreed settlement.

Frequent trouble spots

Why customer credits get messy in Odoo

The issue is often not the credit-note button itself. It is an incomplete process between sales, warehouse, accounting, and cash application.

The credit note is posted, but the invoice still appears open +

Review reconciliation between the receivable entries on the invoice and credit note. Posting a credit does not always mean the applicable open items have been matched or settled.

A refund was paid, but the customer ledger looks wrong +

Check the refund payment journal, customer, receivable account, payment status, and reconciliation. Confirm the payment is linked to the appropriate credit balance and bank transaction.

Inventory and accounting show different results +

A commercial credit and a physical return are different events. Verify return transfers, product destination, costing method, and automated valuation configuration where applicable.

Tax amounts do not match the original invoice +

Review the credit lines, tax mapping, fiscal position, tax-inclusive/exclusive pricing, company localization, and relevant tax-period requirements. Have the responsible tax professional approve the treatment where needed.

Month-end case review

Customer credit control checklist

Use this review to catch uncompleted settlements before finalizing the period. Mark items as your team works through them.

0 of 8 review checks completed

Questions finance teams ask

Odoo credit note and refund FAQs

Is a credit note the same as a refund in Odoo?

No. A credit note records a reduction or reversal of a customer receivable and may adjust revenue, taxes, or other accounts. A refund payment records money returned to the customer. Depending on the case, both steps may be required.

Should I cancel a posted customer invoice or issue a credit note?

For a posted invoice that needs a formal reversal or reduction, a credit note is generally the traceable accounting document. The correct treatment depends on status, tax rules, and configuration. Avoid deleting or changing posted records outside your approved process.

Can I issue a partial credit note in Odoo?

Odoo workflows commonly support crediting selected quantities or amounts, subject to version and configuration. Confirm the quantities, tax treatment, original invoice reference, and reason before posting.

Why does a customer still show an open balance after a refund?

The credit note, refund payment, and original invoice may not all be reconciled correctly. Review the customer ledger, payment status, and outstanding entries to find the remaining balance.

Does a credit note automatically return products to stock?

Not necessarily. Accounting crediting and physical inventory returns are related but distinct flows. Verify the return transfer or inventory adjustment is completed according to the configured sales and warehouse workflow.

Continue improving your workflow

Related Odoo accounting guides

Explore all articles →

Need a more reliable Odoo process?

Make customer credits easier to trace, reconcile, and close.

Accountrise supports Odoo accounting cleanup, receivables, reconciliation, and month-end workflows for businesses and accounting teams. Support starts at $10/hour; final pricing depends on scope, transaction volume, complexity, and engagement requirements.