What product data must be ready before integration?
Before linking a store to stock, every sellable item needs a unique SKU, a clean variant structure for colours and sizes, one unit of measure, a barcode where you scan, a clear stock location and consistent names in Arabic and English. Fix duplicates and blanks in a spreadsheet first, then test-import 20 products before the full load.
Why the data matters more than the connector
A connector moves what it finds. If the store lists “Brown bag” with no SKU and the warehouse lists the same bag as “BAG-BR-01”, the system cannot tell they are one item. An order then deducts stock from nothing, or creates a second product. The symptoms show weeks later: an item sells online with an empty shelf, counts never match, and staff stop trusting the numbers.
Cleaning the item list takes a few days and removes the cause. It is the cheapest part of the project and the one most often skipped.
The fields that must be right
| Field | Rule | Typical mistake |
|---|---|---|
| SKU (internal reference) | Unique, short, never reused, one per variant | Same SKU on two colours, or blank |
| Product name | Same name in store and stock, in both languages | “Bag brown” in the store, “حقيبة” in stock |
| Variant attributes | Colour and size as separate attributes | Colour and size typed into the name |
| Barcode | One per variant, EAN or your own scheme | One barcode for every size |
| Unit of measure | One unit for stock, purchase and sale | Pieces in the store, boxes in the warehouse |
| Product type | Storable item, service, bundle | Services stocked as items |
| Category | One tree used by both systems | Different category names in each |
| Weight and dimensions | Filled in for shipping calculation | Blank, so shipping fees break |
| Supplier and cost | Linked supplier for purchasing | No supplier, so reorders cannot run |
| Photos | One main image per colour variant | One image for all colours |
Variants: the biggest source of trouble
A store like OOYAA has 51 products but 261 colour and size options. In a stock system each of the 261 needs its own line with its own count. If variants are typed into names instead of set up as attributes, the system sees 261 unrelated products, or worse, 51 products with one shared stock figure.
Use a code pattern people can read:
BAG-001-BRN-M: product family, product number, colour, size.- Keep the pattern identical across all products.
- Reserve a code once assigned and never reuse it for a different item.
In Odoo a product template holds the shared details and each combination of attributes becomes a variant with its own internal reference, barcode and stock. Stores such as Shopify use the same idea: a product with options, each option combination being a variant with its own SKU.
Spreadsheet traps to avoid
- Lost leading zeros. The code 00123 becomes 123 when Excel reformats it. Format the SKU column as text before editing.
- Hidden spaces. “BAG-001 ” with a trailing space does not match “BAG-001”.
- Mixed Arabic and English digits. ١٢٣ and 123 look identical to a person and different to a system.
- Merged cells and colour coding. Colours carry no data once you export.
- Duplicate rows from copying between sheets.
Sort by SKU and look for repeated values. Filter for blanks in every required column.
Stock locations and quantities
Decide where stock lives before connecting anything:
- List warehouses, shops and any stock held at suppliers.
- Choose which location the store sells from, or whether several locations feed one store.
- Run a physical count and enter it as opening stock on one date. Do not enter estimates.
- Set up a “damaged or returned” location so returns do not inflate sellable stock.
- Set a reorder minimum for fast sellers so the Purchase app can alert you.
Which system is the source of truth?
Pick one owner for each kind of data and write it down:
| Data | Owner | Flows to |
|---|---|---|
| Stock quantity | Stock system (for example Odoo Inventory) | Store |
| Product details and photos | Wherever your team edits most easily | The other system |
| Orders | Store | Stock and invoicing |
| Customers | Store, or CRM if you run one | Other systems |
| Invoices | Accounting | Store (as documents) |
Two systems editing the same field overwrite each other. A one-way flow per field prevents it. See Odoo implementation for how Inventory, Sales and Invoicing connect.
What happens when an order arrives
A well-built integration does this in order:
- The store creates the order and the payment status.
- The order reaches the stock system as a sales order for the right variants.
- Stock is reserved at the chosen location.
- A delivery is prepared and the tracking number goes back to the store.
- The invoice is created from the order.
- A return reverses stock and invoice.
Test every step with real products, including a cancelled order and a partial shipment.
A five-step plan to prepare the data
- Audit. Export products from the store and from stock. Compare by SKU and list the mismatches.
- Clean. Fix duplicates, blanks and names in one master sheet.
- Map. Match each store variant to a stock variant in a column pair.
- Test-import 20 products covering simple items, variants and a bundle. Place test orders.
- Go live after a stock count, with the store paused for a short window so the numbers hold still.
Watch it for a week
Run both systems in parallel for a week after launch. Each day compare a sample of products, store quantity against warehouse quantity. A difference points to a mapping or timing fault, which is easy to fix early and painful a month later.
Symptoms that your data needs cleaning
- Items sell online while the warehouse is out.
- The monthly count never matches the system.
- Duplicate products with near-identical names.
- Staff correcting quantities by hand in the store.
- An invoice listing a different item from the one shipped.
How we approach it
We start with your export files, produce the mismatch list and a clean master sheet, build the connection and test it with your own products on a staging copy. Details are in our integration service, and inventory and purchasing work is covered in inventory software. If the store is changing platform first, use the store migration checklist.
