All posts
Engineering

From Excel to Odoo: A Practical Migration Playbook for Wholesale and Multi-Branch Retail Operations in Vietnam

Published on 3 Jun 2026

For wholesale distributors and multi-branch retailers in Vietnam, the migration from Excel to Odoo is primarily a data and process re-engineering problem, not a software installation. Done correctly, it eliminates the reconciliation overhead, stockout-driven revenue losses, and reporting delays that spreadsheet-based operations accumulate as branch counts and SKU volumes grow. The migration requires four concrete phases: data audit and cleanup, field mapping and transformation, staged import with validation gates, and go-live with parallel running. Most failures happen not during import, but during the weeks before it, when business owners underestimate how inconsistent their legacy data actually is.

TL;DR

  • Excel breaks silently under multi-branch inventory and wholesale distribution workloads; Odoo solves the structural problems Excel cannot.

  • Data cleanup before migration is the highest-leverage activity. Budget at least 40% of total migration time for it.

  • Field mapping between flat Excel structures and Odoo's relational schema requires systematic preparation, especially for products, partners, and opening balances.

  • Odoo inventory management and the wholesale distribution ERP modules work best when configured together from the start, not bolted on post-launch.

  • Parallel running for two to four weeks post-go-live prevents business disruption while teams validate transaction accuracy.

About the Author: 724SOFTWARE is a Top 5 Odoo service partner in Vietnam, with delivered implementations for wholesale distributors and multi-branch retailers including SAMNEC International (Samsung's largest Vietnam dealer) and VIETTELIMEX. As a long-term technology partner, 724SOFTWARE brings dedicated Odoo teams and ongoing operational support to ensure sustained success beyond initial deployment. This article draws directly from those engagements.

Why Does Excel Eventually Fail Wholesale and Multi-Branch Retail Businesses?

Excel fails these businesses for a structural reason: it is a single-user, single-file tool forced into a multi-user, multi-location, real-time problem. The failure is not dramatic. It accumulates slowly through version conflicts, manual rekeying errors, and the increasingly long gap between when a transaction happens at a branch and when someone updates the master file.

Specific failure points in wholesale and retail contexts:

  • Stock discrepancy accumulation: Branch A sells ten units while Branch B is unaware of the central stock position, leading to double-commits on the same inventory.

  • No real-time visibility: Sales orders, purchase orders, and inventory levels exist in separate files, reconciled manually at month-end.

  • Promotion and pricing errors: Complex dealer discount programs or branch-specific promotions are tracked in separate sheets, creating billing disputes.

  • Audit trail gaps: Excel has no native transaction log. Who changed what, and when, is largely unverifiable.

  • Scaling cost: Each new branch adds another sheet, another reconciliation loop, and another person managing it.

When 724SOFTWARE deployed Odoo for SAMNEC International, the brief explicitly included replacing Excel-based manual workflows that were collapsing under a wholesale distribution operation with complex dealer-based pricing programs and multi-location inventory.

What Data Do You Actually Need to Migrate, and In What Order?

Data migration order matters because Odoo's relational structure requires parent records to exist before child records can be created. Importing in the wrong sequence produces foreign key errors that are time-consuming to untangle.

The correct migration sequence for wholesale and retail operations:

Sequence

Data Object

Key Preparation Note

 

1

Chart of Accounts

Map to Vietnamese Accounting Standards (VAS) before import

2

Customers and Suppliers (Partners)

Deduplicate; assign customer vs. vendor tags; validate tax codes

3

Products and Product Categories

Standardize units of measure; assign internal references consistently

4

Inventory Opening Balances

Conduct a physical count first; use a fixed cutover date

5

Open Payables and Receivables

Agree on cutover date; do not import settled invoices

6

Historical Transactions (optional)

Import only if audit or compliance requires it; keep a defined lookback window

A frequent mistake is treating historical transaction migration as mandatory. For most Vietnam-based businesses, importing twelve months of history is sufficient for trend analysis. Attempting to import five years of Excel sales data creates a large volume of transformation work for marginal operational benefit.

How Do You Handle the Structural Difference Between Excel Flat Files and Odoo's Relational Schema?

Building on the sequencing logic above, the harder technical challenge is that Excel stores data in flat tables while Odoo stores it in a relational database. A single Excel row like "Customer: ABC Trading, Product: Samsung Galaxy S25, Qty: 10, Price: 12,500,000 VND" maps to at least three Odoo tables: res.partner, product.product, and sale.order.line.

Practical field mapping steps for wholesale operations:

  1. Export a complete column inventory from every Excel file involved (sales, purchasing, inventory, promotions).

  2. Match each column to an Odoo field using Odoo's import templates as a reference. Note fields that have no Excel equivalent and need default values.

  3. Create transformation rules for fields where the format differs (e.g., Excel dates as serial numbers vs. Odoo's DD/MM/YYYY; product codes with inconsistent prefixes).

  4. Handle many-to-one relationships explicitly: if multiple Excel rows describe the same customer with slightly different names, resolve to one canonical partner record before import.

For Odoo inventory management specifically, every product record needs a unit of measure, a product category, and an internal reference before any stock move can be recorded against it. Missing any of these fields blocks the inventory opening balance import entirely.

What Is the Right Go-Live Strategy for a Multi-Branch Operation?

A phased rollout by branch type is more reliable than a simultaneous all-branches cutover for wholesale distribution ERP implementations. The risk profile of going live at a 30-branch distribution network on a single date is high: one misconfigured warehouse or pricing rule creates errors that propagate across every branch before anyone catches it.

Recommended phasing for Vietnam multi-branch businesses:

  • Phase 1 (Weeks 1-4): Go live at one pilot branch with the highest transaction volume. This surfaces real-world edge cases before they affect the entire network.

  • Phase 2 (Weeks 5-8): Extend to a second cluster of branches, applying fixes identified in Phase 1.

  • Phase 3 (Weeks 9-12): Full rollout with parallel running across all branches for two to four weeks.

During parallel running, both Excel and Odoo record the same transactions. The test is not whether Odoo runs, but whether the closing balances match within an acceptable tolerance. Discrepancies found during parallel running are far cheaper to fix than discrepancies found three months after a hard cutover.

Frequently Asked Questions

1. How long does a typical Excel-to-Odoo migration take for a Vietnamese wholesale or retail business?

Duration depends on data volume and branch count. A single-location business with clean data can complete migration in six to eight weeks. A multi-branch wholesale distributor with years of Excel history typically requires three to six months, with the majority of time spent on data cleanup and user training rather than the technical import itself.

2. Which Odoo modules are essential for a wholesale distribution operation?

At minimum: Inventory, Purchase, Sales, Accounting, and Contacts. For wholesale distribution specifically, the Pricelists feature within the Sales module handles dealer-tier pricing. Multi-warehouse configuration within Odoo inventory management handles branch-level stock separation.

3. What is the most common reason Excel-to-Odoo migrations fail?

Inconsistent or duplicate data in the source Excel files. Businesses often discover that product codes are not standardized, customer names appear in multiple formats, and inventory quantities do not match physical counts. Attempting to import this data without cleaning it first produces an Odoo database that is as unreliable as the spreadsheet it replaced.

4. Do I need to migrate all historical transactions?

No. The practical approach is to migrate open balances (unpaid invoices, current stock levels, open purchase orders) as of the cutover date. Historical transactions can remain in Excel as an archive for reference. Migrating years of closed transactions adds significant time and cost for limited operational benefit.

5. How does Odoo handle Vietnamese Accounting Standards (VAS)?

Odoo's Vietnam localization includes a VAS-compliant chart of accounts and supports tax reporting requirements. However, the localization requires configuration and sometimes customization for businesses with specific VAS reporting obligations. This is an area where working with a Vietnam-based Odoo partner who understands local compliance requirements meaningfully reduces risk.

6. Can Odoo handle complex wholesale pricing and promotion programs?

Yes. Odoo's pricelists support multi-tier pricing by customer segment, quantity breaks, and time-bound promotions. For dealer-based programs common in Vietnamese wholesale distribution, these features can be configured without custom code in most cases. More complex promotion logic (e.g., conditional rebates tied to quarterly sales targets) typically requires module customization.

7. What post-go-live support does a multi-branch retail business actually need?

The first 90 days after go-live generate the highest volume of user questions and edge-case configurations. Dedicated support with a <10 minute incident response time, covering month-end closing procedures, VAS tax reporting cycles, and branch-level user queries is essential during this window. 724SOFTWARE operates under a Follow-the-Sun model across timezones to deliver 24/7 coverage for critical issues. After 90 days, most teams reach operational independence with periodic check-ins for module updates and process improvements.

About 724SOFTWARE

724SOFTWARE is a Vietnam-based long-term technology partner and a Top 5 Odoo service partner in Vietnam, with delivered ERP implementations for wholesale distributors, multi-branch retailers, and F&B chains across the country. The company's Odoo team has handled large-scale migrations from legacy systems and Excel environments, including integrations with logistics partners, e-invoice platforms, and financial consolidation systems. Vietnam-based delivery provides cost efficiency without quality tradeoff compared to Singapore, Japan, or US onshore hiring. With 200+ professionals (58% senior-level), ISO 9001 and ISO 27001:2022 certification, and a 95% client retention rate, 724SOFTWARE brings dedicated teams and ongoing operational support for sustained success beyond initial deployment. For businesses outside Vietnam, the team offers multilingual collaboration in English, Mandarin, Korean, and Japanese with delivery experience across 10+ countries.

Ready to move your wholesale or retail operation off Excel?

724SOFTWARE's Odoo team has done this before, at scale, in Vietnam. Whether you are at the planning stage or already mid-migration, we can assess your data, map your processes, and build a go-live plan aligned with your branch structure and timeline.

Talk to our Odoo team at 724software.com.vn

Share this article

EngineeringProduct

Shrimpie

AI Engineer

Keep Reading

Explore more from our experts.

View all

Stay ahead with our insights.

Get the latest on software design, strategy, and what's working in the field.

We respect your inbox. Unsubscribe anytime from any email.