Solutions
E-commerce that runs on the same stock, prices and orders as the rest of the business.
An online store earns its keep when the stock it shows, the prices it charges and the orders it takes stay connected to stores, warehouses and finance. Odoo 20.0 documentation describes an eCommerce app that shares products, stock, customers and accounting with the rest of the system. Where a retailer already runs a webshop that works, connecting it can be the better first step.
Connected stock and prices
The website sells from the same product, variant and stock records as stores and warehouses, so availability and price come from one place.
- Variants, categories and pricelists are documented eCommerce configuration
- Optional display of available quantity and a choice to stop or continue selling when out of stock
- Stock reserved at order confirmation when the delivery operation is set to reserve at confirmation
- B2B and B2C pricing and tax display configured per website
Orders and fulfillment
Each confirmed online order becomes a sales order with delivery and invoice documents, so warehouse and store teams work the same order the customer sees.
- Order states distinguish carts, unpaid orders and paid sales orders
- Delivery from a warehouse, or Click & Collect from a chosen store
- Carrier connections for rates, labels and tracking where Odoo documents the carrier
- Fulfilling from a store when the warehouse is short needs routes and agreed rules, and some steps are proposed enhancements
Returns and customer service
Returns are handled against the original order, so the business knows what was delivered, what came back and what was refunded.
- Customers can start a return from the customer portal
- Returns use reverse transfers, with credit notes once invoiced
- Helpdesk after-sales actions include refunds, coupons and returns from a ticket
- Store returns of online orders need configuration and uses a store screen set up by TRC
Finance
Online sales post to the same accounts as stores, so revenue, refunds and payment provider balances can be reconciled in one ledger.
- Online payments recorded through a bank journal, optionally with a separate outstanding account per provider
- Refunds from Odoo where the payment provider supports them
- Invoices and credit notes linked to the original order
- Bank reconciliation matches provider payouts to recorded payments
Keeping an existing webshop
Replacing a webshop that customers already use is not always the right first move. The retailer can keep it and connect orders, stock and prices to the ERP.
- Standard in Odoo: Amazon and Shopee marketplace connectors, which TRC configures
- Other storefronts and marketplaces: TRC connects or builds
- Decide which system owns product content, prices, stock and refunds before connecting
- Move the storefront to Odoo later if the connected model proves the case
What TRC would prove first
Before any commitment, TRC would run the retailer's own products and orders through test journeys with clear pass criteria.
- Last-unit order competing with a store sale
- Click & Collect order picked, collected and one left uncollected
- Online order returned in store with a prior partial refund
- Daily provider payout reconciled against orders and refunds
Odoo applications involved
Retail journeys that depend on it
Is this return eligible, and has any refund already happened?
Item already refunded online. Order history shows the earlier refund, so the store blocks a second refund for the same quantity and avoids a loss that stock counts would not reveal.
The objective. The customer wants a refund or the right size today; the associate needs to accept only what was delivered and not already refunded, and send the money back the right way.
How the work flows
- Store associate Finds the original online order by reference or customer and sees delivered quantity, net price per line and any earlier return or refund.
- Store associate Checks item condition and reason, and confirms the quantity returned does not exceed delivered quantity less prior returns.
- Store manager Approves exceptions such as a late return, missing proof of purchase or a price override, and the approval is recorded on the return. Decision: Is this return eligible, and has any refund already happened?
- Store associate Records stock disposition: back to sellable store stock, to an inspection location, or to scrap.
- Store associate For an exchange, sells the replacement variant from store stock and settles only the price difference.
- Payment owner Refunds the original online payment where the provider supports refunds, or issues an approved alternative such as a gift card.
- Finance Matches the credit note, refund transaction, store session and stock movement back to the original order.
What must stay connected
- Original order reference with delivered and previously returned quantities
- Net price paid per line after discounts and promotions
- Returned item condition and the stock location it went to
- Original payment method and provider reference
- Exchange difference and how it was settled
- Who approved any exception
When it doesn't go to plan
Item already refunded online
Order history shows the earlier refund, so the store blocks a second refund for the same quantity and avoids a loss that stock counts would not reveal.
Original payment cannot be refunded from the store
The return and stock are recorded, and the refund is routed to the payment owner and tracked until confirmed, so the customer receives a clear status.
Discount spread across the basket
The refund uses the net price paid for that line rather than list price, so the retailer does not over-refund.
Item damaged or worn
Stock goes to inspection or scrap rather than sellable stock, and the manager decides refund, partial credit or refusal under the written policy.
Why it matters. Stores can accept online returns and exchanges while the retailer keeps control of what was delivered, what was already refunded, and where both the stock and the money went.
Core apps
Optional but recommended
- Email Marketing So a receipt can become a returning customer.
- Live Chat So shoppers get an answer before they leave.
- Sign So quotes are accepted and signed online.
How TRC delivers it
- Standard in Odoo Odoo 20.0 documentation returns from a sales order through a reverse transfer and credit note, and refunds from the payment record when the payment provider supports refunds.
- Standard in Odoo Point of Sale documents order-based refunds, refunds issued as a gift card, and loading sales orders into the point of sale.
- Standard in Odoo · TRC configures Inspection and scrap locations, return reasons, manager approval and a store procedure for online orders.
- TRC builds A store return screen for online orders showing what was delivered, already returned and the net price per line, because standard refunds in Point of Sale work from point of sale orders, not online ones.
What we would prove before you commit
- Discounted online order partly returned in store, then a second attempt on the same quantity is blocked
- Exchange to a higher-priced variant with only the difference charged
- Refund to the original provider where supported, and gift card fallback where not
- Credit note, refund and stock movement reconcile to the original order
Odoo 20 documentation: Returns and refunds (Odoo 20.0) opens odoo.com ↗ · point of sale returns and refunds (Odoo 20.0) opens odoo.com ↗ · Online payment refunds (Odoo 20.0) opens odoo.com ↗
Open this journey on its own page
Is the order ready, the collector verified and payment settled?
Item damaged during picking. Staff replace it from store stock or contact the customer before marking ready, so the customer does not travel for nothing.
The objective. The customer wants confidence the item will be waiting; the store wants each collection order picked, verified and closed, including ones never collected.
How the work flows
- Customer Chooses in-store pickup and a store that holds the item, then pays online or chooses to pay on collection.
- System Confirms the order and reserves the quantity in that store's stock.
- Store staff Picks the item and moves it to the collection area.
- Store staff Marks the order ready, and the customer receives a ready-to-collect message.
- Store staff Verifies the order reference and the collector's identity, hands over the item, and settles payment at the point of sale if it was not paid online. Decision: Is the order ready, the collector verified and payment settled?
- Store manager Reviews uncollected orders after the hold period and cancels them, returning stock to sale and refunding or voiding payment.
What must stay connected
- Chosen store and reserved quantity
- Picked and ready status
- Payment state: paid online, authorized, or due on collection
- Collector verification
- Hold period and cancellation outcome
When it doesn't go to plan
Item damaged during picking
Staff replace it from store stock or contact the customer before marking ready, so the customer does not travel for nothing.
Customer cancels before collection
The reservation is released and payment refunded or voided, keeping stock and money consistent.
Order never collected
After the hold period the order is canceled under a set rule, so reserved stock does not sit off sale indefinitely.
Someone else collects
Staff follow the agreed verification rule and record who collected, protecting against disputed handovers.
Why it matters. Stores win online orders with nearby collection, and every reservation ends in a handover or a controlled cancellation.