Oracle Retail20 min readBy Priyanshu Pandey

Oracle Retail Allocation: Optimizing Inventory Distribution from Warehouse to Stores

A comprehensive guide to Oracle Retail Allocation. Learn how initial allocation distributes new merchandise to stores, the proportional and push allocation methods, ALLOC_HEADER/ALLOC_DETAIL tables, integration with RMS purchase orders, and strategies for maximizing sell-through rates.

Phase 6 · Allocation

Getting the right products to the right stores in the right quantities. The science of initial inventory distribution.

20 min read📅Jul 21, 2026✍️Priyanshu Pandey📚Oracle Retail Ecosystem
THE RIGHT PRODUCT, RIGHT STORE

What is Allocation?

When a retailer buys 10,000 units of a new winter jacket and receives them into the central warehouse, the next question is: how many of those 10,000 units should go to each of the 500 stores?

This is the allocation problem. Sending too many to a small rural store wastes capital and shelf space. Sending too few to a high-volume urban store means lost sales. The goal is to maximize sell-through rate — getting as close to 100% of allocated units sold as possible.

Oracle Retail Allocation is the module that solves this. It takes a pool of inventory at a warehouse and distributes it across stores based on configurable logic — historical sales, store size, store grade, merchandise plan targets, or manual overrides.

ALLOCATION VS REPLENISHMENT

Allocation vs. Replenishment

These two concepts are frequently confused. The key difference:

AspectAllocationReplenishment
WhenBefore or at first receipt of a new itemAfter the item is established and selling
TriggerManual decision or planned eventAutomated based on stock levels
Source DataPlans, forecasts, store gradesActual sales history, current SOH
FrequencyOne-time or periodic (seasonal)Continuous (nightly batch)
ScopeEntire initial buy or seasonal receiptIndividual item/store combinations

Allocation is about distributing new inventory. Replenishment is about maintaining ongoing inventory levels for established items. In practice, many items transition from allocation (initial distribution) to replenishment (ongoing automated ordering) after the first few weeks of sales data.

METHODS

Allocation Methods

Oracle Retail Allocation supports several distribution methods:

1. Proportional Allocation (Based on History)

Distribute inventory proportionally based on historical sales performance. If Store A sold 30% of the total sales for a similar item last season, it receives 30% of the new allocation.

Store A historical sales = 3,000 (30% of total)
Store B historical sales = 5,000 (50% of total)
Store C historical sales = 2,000 (20% of total)

Total to allocate: 10,000 units

Store A allocation = 10,000 × 0.30 = 3,000
Store B allocation = 10,000 × 0.50 = 5,000
Store C allocation = 10,000 × 0.20 = 2,000

2. Store Grade Allocation

Instead of using individual store history, stores are grouped into grades (A, B, C, D) based on overall volume. Each grade receives a predetermined percentage:

GradeStore CountSharePer-Store Qty (from 10,000)
A (Premium)50 stores40% → 4,00080 each
B (Standard)150 stores35% → 3,50023 each
C (Value)200 stores20% → 2,00010 each
D (Low Volume)100 stores5% → 5005 each

3. Plan-Based Allocation

Distribute based on the Merchandise Financial Plan (MFP) targets built in RPAS. If the plan says Store A should do $50,000 in winter jacket revenue, allocation works backward from that target to determine the unit quantity.

4. Push Allocation

At end of season, remaining warehouse inventory must be distributed to stores regardless of demand. The goal is to empty the warehouse. Push allocation divides remaining stock evenly or by store capacity, with the intent that stores will clear the merchandise through markdowns.

5. Manual Override

For special items (exclusive launches, limited editions, flagship store allocations), allocators can manually specify exact quantities per store, overriding any calculated method.

WORKFLOW

Initial Allocation Workflow

┌─────────────┐    ┌──────────────┐    ┌──────────────┐    ┌──────────────┐
│   BUYER     │───▶│  ALLOCATOR   │───▶│  ALLOCATION  │───▶│    RMS       │
│  Creates PO │    │  Creates     │    │  APPROVED    │    │  Creates     │
│  in RMS     │    │  Allocation  │    │              │    │  Transfers   │
│             │    │  Plan        │    │  Qty per     │    │  WH → Store  │
│  10,000 units│   │  Method +    │    │  Store       │    │              │
│  to WH      │    │  Store List  │    │  Finalized   │    │  Shipments   │
└─────────────┘    └──────────────┘    └──────────────┘    └──────────────┘
  1. Buyer creates a PO in RMS for 10,000 units of a new item, to be delivered to Warehouse 1.
  2. Goods are received at Warehouse 1. RMS updates ITEM_LOC_SOH.STOCK_ON_HAND for the warehouse.
  3. Allocator creates an allocation in the Allocation module, selecting:
    • Source warehouse
    • Items to allocate
    • Destination stores (from the item's ranged locations)
    • Allocation method (proportional, grade-based, plan-based)
  4. System calculates quantities per store based on the selected method
  5. Allocator reviews and adjusts quantities (rounding, minimum display quantities, store capacity constraints)
  6. Allocation is approved — the system generates Transfer documents in RMS, one per store
  7. Warehouse picks and ships the transfers
  8. Stores receive using SIOCS
QUANTITY LOGIC

Quantity Calculation Logic

Beyond the basic allocation method, several constraints affect the final quantity:

Minimum Presentation Stock

Every store needs at least a minimum presentation stock — the minimum number of units to create a visible display. A single unit hanging on a rack looks like a mistake; 3–5 units create a proper display.

Pack Rounding

If items ship in packs of 6, allocations must round to multiples of 6. A calculated allocation of 14 units becomes either 12 or 18.

Store Capacity

Some stores have limited shelf space or backroom capacity. Allocation respects maximum stock levels to avoid over-shipping to space-constrained locations.

Size Curve Distribution

For fashion items with sizes (XS, S, M, L, XL), the total store allocation is further distributed across sizes using a size curve:

SizeCurve %From 60 units
XS5%3
S20%12
M35%21
L25%15
XL15%9

Size curves are determined by historical sales mix and vary by item category and store demographics.

DATA MODEL

Database Schema

Core Allocation Tables
ColumnTypeDescription
ALLOC_HEADERPK
Allocation Header

The master allocation document. Contains alloc_id, alloc_description, item, source warehouse, status (WORKSHEET, APPROVED, CLOSED), allocation method, and creation date.

ALLOC_DETAILPK
Allocation Lines

Per-store allocation quantities. Contains alloc_id, store, allocated_qty, received_qty, in_transit_qty. Primary key: ALLOC_ID + STORE.

ALLOC_CHRONO
Allocation Timeline

Timeline of allocation events. Records when quantities were allocated, shipped, and received for tracking and reporting.

Allocation Status Summary by Item
SQL
SELECT 
    ah.item,
    im.item_desc,
    ah.wh            AS source_warehouse,
    COUNT(DISTINCT ad.to_loc)  AS stores_allocated,
    SUM(ad.qty_allocated)      AS total_allocated,
    SUM(ad.qty_transferred)    AS total_shipped,
    SUM(ad.qty_received)       AS total_received,
    SUM(ad.qty_allocated) 
      - SUM(ad.qty_transferred) AS pending_shipment,
    ah.status
FROM 
    alloc_header ah
JOIN 
    alloc_detail ad ON ah.alloc_no = ad.alloc_no
JOIN 
    item_master im ON ah.item = im.item
WHERE 
    ah.status IN ('APPROVED', 'CLOSED')
    AND ah.close_date >= TRUNC(SYSDATE) - 90
GROUP BY 
    ah.item, im.item_desc, ah.wh, ah.status
ORDER BY 
    total_allocated DESC;
RMS INTEGRATION

Integration with RMS & POs

Allocation integrates tightly with RMS:

  • Item Master: Allocation reads item data (department, class, subclass, item type) to determine applicable allocation rules
  • Item-Location Ranging: Only stores where the item is actively ranged receive allocation
  • PO Linkage: Allocations can be linked to specific POs, reserving incoming inventory before it physically arrives at the warehouse
  • Transfer Creation: Approved allocations automatically create transfer documents in RMS, triggering the warehouse picking process
  • Inventory Updates: As transfers ship and are received, RMS updates stock positions and the stock ledger
DATA FLOW

The Allocation Data Flow

Merchandise Plan (RPAS)  ──▶  Target Sales by Store
                                      │
                                      ▼
Historical Sales Data    ──▶  Allocation Calculation  ◀──  Store Grades
                                      │
                                      ▼
                              Allocation Document
                              (ALLOC_HEADER + DETAIL)
                                      │
                                      ▼
                              Transfer Creation (RMS)
                                      │
                         ┌────────────┼────────────┐
                         ▼            ▼            ▼
                     Store 101    Store 205    Store 340
                     80 units     50 units     30 units
BEST PRACTICES

Allocation Best Practices

Important Gotchas

  • !
    Never allocate 100% of warehouse stock on the initial distribution. Hold back 10-15% as a "reserve pool" to redistribute to high-performing stores after the first week of sales data.
  • !
    Size curves should be reviewed and updated seasonally. A curve that worked for summer t-shirts won't work for winter coats — different body types buy different seasonal categories.
  • !
    When allocating to new stores (with no sales history), use the nearest comparable store's history or the store grade default. Never allocate zero to a new store.
  • !
    Push allocations near end-of-season should consider which stores have the highest markdown sell-through rates, not just the highest overall volume. A small store that clears markdown inventory quickly is a better target than a large store that lets it sit.
  • !
    Always factor in lead time. If it takes 5 days to ship from the warehouse to remote stores, those stores' allocations must ship first to ensure simultaneous floor-set dates.

Key Takeaways

  • Allocation distributes new inventory from warehouses to stores based on planned targets, historical sales, or store grades.
  • It differs from replenishment: allocation is for initial/seasonal distribution; replenishment is for ongoing automated restocking.
  • Proportional allocation uses historical sales ratios; store grade allocation uses volume-based tiers; plan-based uses MFP targets from RPAS.
  • Quantity calculations account for minimum presentation stock, pack rounding, store capacity, and size curve distribution.
  • Approved allocations automatically generate transfer documents in RMS, triggering warehouse-to-store shipments.
  • Reserve 10-15% of initial buy as a holdback pool for post-launch redistribution based on actual sales performance.
RetailCoder
All systems operational
v1.0 Live

RC:OMS

Multi-channel order management with double-entry inventory ledger. Amazon, Flipkart, Shopify, WooCommerce — one source of truth.

Launch demo →
v1.0 Live

RC:Storefront

Self-hosted headless e-commerce. Your server, your data, zero transaction fees. Native RC:OMS inventory sync.

Visit Storefront →
Pipeline

RC:Pulse

AI-powered retail analytics and demand forecasting — built natively on top of your RC:OMS and Storefront data.

Request early access →
Built in India 🇮🇳  ·  Architected by Priyanshu PandeyTalk to an engineer →