You have sent 15 units back to your supplier, yet their statement may still show a bill for 100. A vendor return in Odoo needs three records to agree: the stock movement, the vendor credit note and the balance settlement. Complete only one and part of the transaction remains unexplained.

Odoo 19.0 documents the vendor-credit workflow and distinguishes the physical return, financial document and repayment 1. Saudi Arabia’s Zakat, Tax and Customs Authority includes credit and debit notes in structured electronic invoice exchange 2. A warehouse return document should therefore not be treated as a substitute for the financial documents finance needs to review.

At ToDoOps, we start with a practical question for your Saudi business: what proves that the quantity returned, the supplier balance changed and the settlement finished? Explore our Odoo implementation approach, then follow the case below to see why these are separate outcomes.

Distinguish quarantine, return, credit and settlement

A warehouse may set aside 15 units for inspection without sending them back. It may dispatch them while still waiting for the supplier to agree the credit amount. Finance may record the correct credit note while repayment or its application to another balance remains outstanding.

Event What needs checking What it does not prove by itself
Quarantine Where are the items, and what controls their use while a decision is pending? That they reached the supplier or changed the payable
Stock return What quantity left, and which receipt does it relate to? That a financial credit or cash repayment exists
Vendor credit What amount was agreed, and which bill does it adjust? That the goods moved or the bank received money
Settlement or repayment How was the balance cleared, with what evidence? That the warehouse completed a pending movement

If the original problem is purchasing approval, receipt or bill control, use the Odoo purchase-control guide first. This article concerns goods returned to a supplier after purchase. It is distinct from a customer credit note for a sales return.

A hypothetical purchase of 100 units, with 15 returned

Assume 100 units were purchased and received at SAR 80 each, with a posted vendor bill of SAR 8,000. The parties agree to return 15 units and issue a SAR 1,200 vendor credit. There are no partial payments, other bills or fees, and the illustration is before tax. This first example also assumes an unchanged inventory unit cost of SAR 80.

Review stage Company quantity Assumed stock value Net payable if nothing was paid
Receipt and bill recorded 100 SAR 8,000 SAR 8,000
15 returned, before the credit 85 SAR 6,800 SAR 8,000
Agreed SAR 1,200 credit recorded 85 SAR 6,800 SAR 6,800

The middle stage is not necessarily a technical error. Warehouse has completed its movement while finance has not yet recorded the adjustment. The important requirement is that the state is visible, supported by a reference and assigned to someone with a next action.

Also, the net supplier balance is not always the residual on one particular bill. A credit can appear separately until the appropriate matching or reconciliation is completed. Review the statement, bill and credit together instead of manually changing the original bill to force a matching number.

To organise the wider implementation budget, use the central estimation calculators. The figures here belong to a hypothetical purchase. The calculators estimate implementation and time assumptions; they do not determine an approved supplier balance or tax obligation.

What if the bill was already paid in full?

If SAR 8,000 was paid before the return, recording a SAR 1,200 credit does not put money back into the bank automatically. There is an amount with the supplier that needs an actual repayment or an agreed application against a later balance. Stock remains at 85 units in the example, but the payable workflow differs from the unpaid-bill case.

Prepare both tests with finance. In the first, follow the net amount due and how the credit is matched against the bill. In the second, trace the post-payment credit through to settlement or a bank repayment and reconciliation. This makes completed and outstanding work visible, rather than treating every credit as settled cash.

Start from the original receipt and review the product, unit of measure, quantity, and lot or serial number where used. Prepare the linked return movement, check its destination and confirm its actual validation status. Do not hide the quantity through an unrelated inventory adjustment and lose the supplier reference and reason.

For a credit based on its vendor bill, the 19.0 documentation shows Accounting → Vendors → Bills → Credit Note. A new record can also be created under Vendors → Refunds. Review the lines, quantity and amount so the document represents only the agreed adjustment, and retain the supporting reason and references 1.

Then review its effect on the supplier statement and the reconciliation or matching process. Warehouse validation alone is not evidence of the financial credit; recording the credit alone is not evidence of repayment. If you want an automated link or approval between these stages, first define the trigger and the exceptions that must stop it. Do not assume that every physical return is immediately entitled to the same financial amount.

Why might inventory cost differ from the vendor credit?

Odoo 19’s movement-valuation reference describes a vendor return as an outbound movement valued using the selected cost method. It should not be assumed to remove inventory at the vendor bill price in every case 1.

For illustration, if 15 returned units leave stock at an average cost of SAR 50, the inventory movement is SAR 750. If the supplier credit is agreed at a billed SAR 60 each, the credit is SAR 900. The SAR 150 difference needs an accounting explanation under the configuration and records. It is not automatically missing goods or an incorrect credit simply because the two values differ.

Use the inventory costing guide to understand the underlying cost choices. The decision here remains how quantity, claim and settlement connect. We do not change the cost policy merely to make the return and credit appear numerically identical.

What should finance review for Saudi documents?

ZATCA describes structured electronic exchange that includes invoices, credit notes and debit notes 2. During requirements analysis, record who issues the document in the particular transaction, what your company receives and how its references connect to the original bill and the physical return.

A stock movement alone does not determine a tax-correction period or the requirements of a particular case. Finance approves the relevant documents and treatment, after which their representation in the available localisation and configuration is tested. A reviewer should be able to move from the credit to its bill and return evidence without reconstructing the transaction from scattered messages.

An acceptance checklist for three teams

  1. Clear partial return: confirm that 15 units left and 85 remain, using the correct unit of measure and lot where applicable.
  2. Supplier agreement: test a difference between dispatched quantity and the approved credit, including who owns the outstanding claim.
  3. Unpaid bill: inspect the credit, net statement and matching with the bill. Do not rely on a single unexplained net total.
  4. Paid bill: follow the amount in the company’s favour through to an actual repayment or documented later application.
  5. Changing costs: compare inventory value removed with the vendor credit and explain the difference without forcing equality.
  6. Unfinished case: record the owner, date and next action. A single completed movement does not close the whole return file.

These tests belong within an agreed implementation scope, together with product and vendor data, permissions and reporting. Explore Odoo applications and industry workflows to identify connected operations. The limited guided demonstration illustrates sales, stock and invoicing; vendor-return acceptance is tested separately against a case representing your business.

Questions about purchase returns

Should we reverse the whole bill for a small partial return?

Review the document and lines representing the agreed adjustment. Our example returns 15 of 100 units, so it does not assume a reversal of the full SAR 8,000 or an automatic replacement of the entire bill.

Does quarantined stock count as returned to the supplier?

Internal quarantine describes location and operational status. A vendor return requires the supplier-directed movement, quantity and supporting reference. Review the configuration controlling availability while goods are waiting for a decision.

Does a vendor credit mean the supplier repaid the money?

No. Review the settlement or repayment record and its reconciliation. A credit can remain with the supplier until it is applied to another agreed transaction.

Turn scattered messages into a reviewable return cycle

The useful result is a file understood by warehouse, purchasing and finance: goods returned, a credit explaining the amount and a balance with a clear status. We define the settings, data links, approvals and reports with you, identifying any custom work after analysing the actual case.

Start with ToDoOps Odoo implementation services, structure your requirements using the cost and time calculators, then discuss your business needs. Bring an anonymised receipt, bill, return and supplier statement, noting whether the bill was paid, so we can define the links and acceptance evidence before agreeing the scope.

References

Odoo — official 19.0 documentation: Credit notes and refunds, Manage vendor bills, and Valuation of stock movements and inventory operations. Reviewed on 9 November 2026 for vendor-credit paths and the separation between physical stock and financial claims. Original URLs are recorded internally.

Zakat, Tax and Customs Authority — What is e-invoicing?: the definition of structured electronic exchange of invoices, credit notes and debit notes. This supports that definition, not an assumed deadline or tax ruling for a particular transaction.