How to Sell Products & Use Ship Later in Odoo 18 Point of Sale
By Braincuber Team
Published on December 30, 2025
Electronics store sells $47,000 monthly through POS. Customer wants 15 laptops today. Store has 8 in stock. Old process: "Sorry, we only have 8. Come back next week." Customer walks to competitor, buys all 15 there. Lost sale: $22,500. New scenario with Ship Later: Ring up all 15 laptops at POS (full payment today). Ship 8 immediately from current stock. Schedule remaining 7 for delivery when restock arrives Friday. Customer happy (got full order locked in at today's price). Store happy (captured $22,500 sale, not $0). This is "Ship Later" in Odoo 18 POS—sell products at point of sale, deliver inventory when available, without losing customers to stock-outs.
Your POS disaster without Ship Later: Customer orders 50 units. You have 30 in stock. POS forces you to sell only what's physically available (30 units). Customer leaves to buy remaining 20 from competitor. Lost revenue on 20 units = 40% of sale gone. Customer annoyed (has to visit two stores). No way to capture future inventory commitment. Back-office creates manual sales order (disconnected from POS payment). Inventory tracking nightmare (POS sale + separate SO = confusion). Customer won't return (bad experience).
Cost: Average retail store loses 18-27% of potential POS sales due to inventory limitations. Cannot accept full payment for out-of-stock items. Customer goes to competitor for remaining quantity. Manual workarounds (paper notes, separate sales orders) = 3.2 hours weekly staff time. Inventory errors from disconnected systems. Cannot offer "buy now, deliver later" service. Miss bulk orders that exceed current stock.
Odoo 18 POS Ship Later fixes this: Ring up products at POS (any quantity, even if stock insufficient). Accept full payment immediately. System auto-creates delivery order for available stock. Remaining items scheduled as backorder (ships when stock arrives). Customer gets one receipt, one payment, professional experience. Inventory automatically managed across POS and warehouse. Here's how to configure Ship Later so you stop losing 27% of sales to inventory constraints.
You're Losing Sales If:
What Ship Later Does
Ship Later = Sell full quantity at POS + Schedule delivery when inventory becomes available. Customer pays today, receives products as stock permits. POS and warehouse automatically synchronized.
| Without Ship Later | With Ship Later |
|---|---|
| Can only sell available stock (customer leaves) | Sell any quantity, ship when ready |
| Lose 27% of sales to inventory limits | Capture 100% of customer intent |
| Manual backorder process (3.2 hrs weekly) | Automatic backorder creation |
| Customer pays partial, comes back later | Full payment upfront, scheduled delivery |
| Disconnected POS and inventory tracking | Integrated delivery orders from POS |
💡 Ship Later Example:
Scenario: Furniture Store POS Sale
- Customer orders: 25 Office Chairs @ $340 each = $8,500 total
- Current stock: 18 chairs on hand
- POS action: Ring up all 25 chairs, accept $8,500 payment
- Ship Later: Select delivery date (next Friday when restock arrives)
- Delivery Order 1: Ship 18 chairs today (from current stock)
- Backorder: Auto-created for remaining 7 chairs (ships Friday)
- Result: $8,500 sale captured (not $6,120 partial), customer satisfied
Step 1: Enable Ship Later Feature
- Go to Point of Sale app
- Find your POS (e.g., "Main Shop")
- Click three-dot menu (⋮) on POS card
- Select Edit
- Navigate to Configuration → Settings tab
- Scroll to Inventory section
- Enable: ☑ Allow Ship Later
Ship Later Configuration Fields:
Warehouse
Select warehouse for delivery fulfillment (e.g., "Main Warehouse")
Shipping Route
Choose delivery complexity:
- 1-Step: Direct delivery (WH → Customer)
- 2-Step: Pick then ship (WH → Output Location → Customer)
- 3-Step: Pick, pack, ship (WH → Packing → Output → Customer)
Recommendation: Use 1-Step for simplicity
Shipping Policy
Choose delivery strategy:
- As soon as possible: Ship available items immediately, backorder rest
- When all products are ready: Wait until full order complete, ship together
- Set Warehouse: Select your warehouse
- Set Specific Route: Choose shipping steps (1-step recommended)
- Set Shipping Policy:
- "As soon as possible" = Ship partial quantities immediately
- "When all products are ready" = Wait for full order
- Click Save
✓ Ship Later Enabled
POS now has "Ship Later" button during checkout. Delivery orders auto-create when orders processed.
Step 2: Configure Customer Addresses
Ship Later requires valid shipping addresses. Configure customer delivery locations before using feature.
- Go to Contacts app (or Customers in POS)
- Open customer record (e.g., "Deco Addict")
- Fill Address tab:
- Street: 123 Oak Avenue
- City: San Francisco
- State: California
- ZIP: 94105
- Country: United States
- Set Address Type: Delivery
- Click Save
⚠️ Important:
Ship Later button won't appear if customer has no delivery address. Always verify customer address before using Ship Later feature.
Step 3: Process POS Sale with Ship Later
Scenario: Partial Stock Available
Customer orders 50 units. You have 32 in stock. Ship Later lets you capture full sale.
- Open Point of Sale app
- Select your POS (e.g., "Retail Store")
- Click New Session
- Enter Opening Cash: $500 (or opening amount)
- Click Open Session
Add Products to Cart
- Browse products on POS screen
- Click product: Wireless Mouse
- Current stock: 32 units
- Price: $42 each
- Product added to cart (default qty: 1)
- Change quantity: Click Qty field
- Enter: 50 units (exceeds stock)
- Cart shows: 50 × $42 = $2,100
POS Cart Summary:
Select Customer
- Click Customer button (top right of POS)
- Search for: Deco Addict
- Select customer from list
- Verify shipping address appears (required for Ship Later)
Use Ship Later Feature
- Click Payment button
- Payment screen appears
- Click Ship Later button (new button visible because feature enabled)
- Ship Later popup appears:
- Requested Delivery Date: Select date (e.g., January 5, 2026)
- Shows: "32 units available now, 18 units as backorder"
- Click Confirm
- Delivery date scheduled ✓
Complete Payment
- Select payment method: Cash or Card
- Enter amount: $2,100
- Click Validate
- Receipt prints showing:
- Full order: 50 units @ $2,100
- Delivery scheduled: January 5
- Order complete ✓
✓ Sale Captured Successfully
- Full payment received: $2,100 (not partial $1,344)
- Delivery order created: Automatically in backend
- Customer satisfied: Got full order, knows delivery date
- Revenue secured: 100% of sale captured, not 64%
Step 4: Manage Delivery Orders (Backend)
Access Backend from POS
- In POS screen, click three-line menu (☰) top right
- Select Backend
- Returns to Odoo backend interface
View POS Order
- Go to Point of Sale → Orders → Orders
- Find recent order (e.g., "Order 00042-001-0003")
- Click to open order
- Order shows:
- Customer: Deco Addict
- Products: 50 × Wireless Mouse
- Total: $2,100
- Status: Paid
- Click Pickings smart button (shows "1" or "2")
Process Delivery Order (Partial Stock)
With "As soon as possible" shipping policy: Ship available 32 units now, backorder 18 units.
- Open Delivery Order (Picking)
- Status: Waiting Availability (insufficient stock)
- Operations tab shows:
- Demand: 50 units
- Reserved: 32 units (available)
- Remaining: 18 units (backorder)
- Adjust Done quantity: Enter 32 (what's available)
- Click Check Availability
- Status changes to: Ready
- Click Validate
- Backorder popup appears:
- "18 units not available"
- Options: Create Backorder or No Backorder
- Click Create Backorder
- First delivery complete: 32 units shipped ✓
- Backorder created automatically: 18 units (scheduled for later) ✓
Delivery Split Result:
Delivery Order 1 (Completed):
- Product: Wireless Mouse
- Quantity: 32 units
- Status: Done
- Shipped: Today
Backorder (Pending):
- Product: Wireless Mouse
- Quantity: 18 units
- Status: Waiting Availability
- Scheduled: January 5 (when stock arrives)
Complete Backorder (When Stock Arrives)
- Receive inventory restock (18+ units of Wireless Mouse)
- Go to Point of Sale → Orders → Orders
- Open original order
- Click Pickings smart button (shows "2")
- Open Backorder delivery
- Click Check Availability (stock now available)
- Status: Ready
- Verify Done quantity: 18 units
- Click Validate
- Backorder complete: All 50 units delivered ✓
Shipping Policy Comparison
Option 1: "As Soon As Possible"
Ship partial quantities immediately. Remaining items delivered when stock arrives.
Example:
- Order: 100 Conference Tables
- Available: 73 tables
- Action:
- Ship 73 tables today
- Create backorder for 27 tables
- Ship 27 tables when restock arrives
✓ Best for: Time-sensitive orders, customers OK with partial delivery
Option 2: "When All Products Are Ready"
Wait until full order available. Ship complete order together.
Example:
- Order: 100 Conference Tables
- Available: 73 tables
- Action:
- Hold all 73 tables (don't ship yet)
- Wait for 27 tables to arrive
- Ship all 100 tables together (one delivery)
✓ Best for: Bulk orders, customer requires complete set, single delivery preferred
Advanced: Update Inventory for Backorders
If stock arrives early, manually update inventory to fulfill backorders immediately.
- Go to backorder delivery order
- Click product name (e.g., "Conference Table")
- Opens product form
- Click Update Quantity button (Inventory tab)
- Update quantity wizard appears:
- Location: WH/Stock
- On Hand: Current quantity (e.g., 73)
- New Quantity: Enter updated stock (e.g., 150)
- Click Apply
- Return to backorder delivery
- Click Check Availability
- Stock now sufficient, validate delivery
⚠️ Note on Inventory Updates:
Manual inventory updates bypass proper receiving processes. Best practice: Use Purchase Orders → Receive Products to properly track inventory increases. Manual updates OK for demos/testing only.
Real-World Use Cases
Use Case 1: Electronics Retailer
Challenge:
Laptop promotion advertised. Customer wants 12 laptops (business bulk purchase). Store has 5 on display. Without Ship Later: Turn customer away, lose $23,400 sale.
Solution with Ship Later:
- Ring up all 12 laptops at POS ($23,400)
- Accept full payment via business credit card
- Ship 5 laptops immediately (customer takes today)
- Schedule remaining 7 for delivery Thursday (restock day)
- Backorder auto-fulfills Thursday
Result:
- $23,400 sale captured (not lost)
- Customer satisfied (got promotional price locked in)
- Inventory properly managed (5 shipped now, 7 later)
- No manual paperwork (automated delivery orders)
Use Case 2: Furniture Showroom
Challenge:
Corporate client orders 40 office chairs for new building. Showroom has 28 chairs. Remaining 12 arrive from supplier in 10 days.
Solution:
- POS sale: 40 chairs @ $340 = $13,600
- Ship Later: Select date (10 days out)
- Shipping policy: "When all products ready" (customer wants complete set)
- Hold all 28 chairs, wait for 12 to arrive
- Deliver all 40 together in one truck
Impact:
- $13,600 revenue secured immediately
- Single delivery saves shipping costs ($340 vs $680 for two deliveries)
- Professional experience (not "come back in 10 days")
Use Case 3: Appliance Store
Scenario:
Customer buys 3 appliances: Refrigerator ($2,400), Dishwasher ($890), Range ($1,200). Total: $4,490. Refrigerator in stock. Dishwasher and range arriving Friday.
Ship Later Workflow:
- POS checkout: All 3 items, $4,490 payment
- Ship Later: Friday delivery scheduled
- Shipping policy: "As soon as possible"
- Refrigerator ships today (customer takes home)
- Dishwasher + range shipped Friday (backorder)
- One installer appointment for all 3 (Friday)
Win: Customer saved one trip to store. Full payment secured. Coordinated delivery matches installation schedule.
Best Practices
- Always Verify Customer Address
- Ship Later won't work without valid shipping address
- Train POS staff: "Check address before offering delivery"
- Quick tip: Ask for ZIP code, update customer record if missing
- Communicate Delivery Expectations
- Tell customer: "We'll ship 32 today, remaining 18 by January 5"
- Print delivery date on receipt
- Send email confirmation with tracking (if email integration enabled)
- Choose Right Shipping Policy
- As soon as possible: Most retail stores (ship what's ready)
- When all ready: Bulk orders, matched sets, customers who prefer single delivery
- Can't change per-order; set at POS configuration level
- Monitor Backorders Daily
- Go to Inventory → Delivery Orders → Filter: "Backorder"
- Check availability when stock arrives
- Validate backorders promptly (customers waiting)
- Link Restocking to Backorders
- When creating purchase orders, check pending backorders
- Prioritize restocking items with customer backorders waiting
- Use Odoo Replenishment reports to auto-suggest ordering
Pro Tip: Ship Later prevents "lost sale" disasters, but creates operational commitment. When customer pays $8,500 for 25 chairs and you only have 18, you MUST deliver remaining 7 or issue refund (customer unhappy either way). Best practice: Set reorder points in Odoo so low-stock triggers auto-restocking BEFORE you sell out. Ship Later is safety net for unexpected demand spikes, not substitute for good inventory planning. Monitor your backorder fulfillment rate: Target 98%+ (backorders delivered within promised timeframe). If below 95%, tighten reorder points or reduce Ship Later usage.
Frequently Asked Questions
Can I use Ship Later for walk-in customers without delivery addresses?
No. Ship Later requires valid shipping address in customer record. For walk-in customers wanting delivery: (1) Ask for delivery address at checkout, (2) Update customer record with address, (3) Then use Ship Later. Alternative: Customer takes available stock today, you create separate sales order for remaining items (not integrated with POS payment).
What happens if I can't fulfill the backorder?
Customer already paid full amount at POS. Options: (1) Fulfill backorder (best—order from supplier, deliver as promised), (2) Partial refund (customer agreed to 50 units, you deliver 32, refund 18 × price), (3) Substitute product (with customer approval—similar item at same/lower price). In Odoo: Open backorder → Cancel transfer → Issue credit note for undelivered items. Avoid this scenario: Set automatic reordering rules so stock replenishes before you sell out.
Can I change the delivery date after checkout?
Yes. Go to POS → Orders → Open order → Click Pickings → Open delivery order → Edit "Scheduled Date" field → Save. Customer won't be auto-notified of date change unless you have email automation configured. Best practice: Call/email customer to inform of new delivery date if changing from original promise.
Does Ship Later work with multiple products in one POS order?
Yes. Example: Order has 3 products—Product A (10 units, 10 available), Product B (20 units, 15 available), Product C (5 units, 0 available). With "As soon as possible" policy: Delivery 1 ships Product A (10) + Product B (15). Backorder created for Product B (5 remaining) + Product C (5). With "When all ready" policy: Hold everything until Product C stock arrives, ship all together.
Can I use Ship Later with POS down payments?
Not directly. Ship Later assumes full payment at checkout. Workaround for partial payment scenario: (1) Don't use Ship Later at POS, (2) Create sales order in backend (not POS), (3) Record down payment on SO, (4) Schedule delivery when final payment received. Ship Later is designed for "pay now, deliver later" situations, not "pay later, deliver later" scenarios.
How do I track which orders have pending backorders?
Method 1: Go to Inventory → Delivery Orders → Group by: Backorder → Shows all backorders. Method 2: Point of Sale → Orders → Filter: "To Ship" → Shows orders with unfulfilled deliveries. Method 3: Create dashboard with "Pending Backorders" KPI using Odoo Reporting. Recommended: Check backorders daily, prioritize fulfillment, communicate with customers if delays expected.
Losing 27% of POS Sales to Stock-Outs?
We configure Odoo 18 POS Ship Later: Enable delivery scheduling, integrate warehouse management, train staff on backorder workflows. Capture every sale, even when floor stock runs low.
