Back

Back

Back

Share

Share

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

A Tech Journey in a Retail Giant's Warehouse

FPT Retail • 2025 • 9 min read

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

A Tech Journey in a Retail Giant's Warehouse

FPT Retail • 2025 • 9 min read

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

A Tech Journey in a Retail Giant's Warehouse

FPT Retail • 2025 • 9 min read

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

Transforming Inventory Inbound Operation

A Tech Journey in a Retail Giant's Warehouse

FPT Retail • 2025 • 9 min read

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

This isn’t a case study about perfect UX processes. It’s a real journey I went through designing the inbound warehouse system for Long Chau — from chaotic, unclear problems to step-by-step solutions shaped by the reality of a large enterprise environment.

1. Project Overview

  • Project Name: Real Warehouse App (RWA) - Inbound Flow

  • Company / Team: FPT Software

  • Team size: 20 members • 2 designers

  • My Role: Senior Product Designer

  • Client: FPT Retail – Long Châu Pharmacy Chain

  • Goal: Initial phase of building and standardizing the inbound process for Long Châu's national-scale pharmaceutical warehouse system (35k-45k m2, 25,000 SKUs, ~70k orders/day).

2. Context

Long Châu aggressively expanded their retail pharma operations, launching two of the largest pharmaceutical warehouses in Vietnam. The RWA project was kicked off rapidly to support these operations.

  • Size: 35,000m² in Hanoi, 45,000m² in HCMC

  • Products: ~25,000 SKUs

  • Warehouse zones: 10

  • Order volume: ~70,000 orders/day and 200+ trucks/day

Enterprise-grade warehouse software is notoriously complex. Most companies opt for off-the-shelf platforms like Zoho or KiotViet. However, FRT chose to build their own proprietary system to better adapt to changing workflows and avoid vendor lock-in during incidents.

This is a reflection of my experience during the first ~4 weeks of the project.

Simplified Warehouse Inbound–Outbound Process

3. Discovery & Interview

When starting a project in a large enterprise setting, the first thing you must clarify is:

  • Who are you working with?

  • Who are the key stakeholders?

  • What information do you already have?

With multiple departments involved, it’s easy to get lost. You might talk to the wrong people, miss decision-makers, or confuse user groups who request features versus those who actually use them daily. Without mapping this clearly from the beginning, you're at risk of wasting time re-aligning and chasing redundant feedback loops.

If this is a completely new domain, you're unfamiliar with internal workflows or terminology. My advice: use AI like ChatGPT to kickstart your desk research. It helps you build foundational knowledge quickly instead of getting lost in countless online resources.

Keep in mind that AI or online documents only offer directional insights. Each enterprise has its unique logic. You must always verify with the right people inside the organization.

After the kick-off, we visited the Long An warehouse for an in-person study. The team included PM, BA, Designer, Tech Lead, stakeholders, and warehouse representatives – who directly shared their needs and described their roles.

Post-meeting, we observed actual warehouse operations. This revealed numerous edge cases and manual workarounds not captured in existing documentation.

Project team is working on clarifying real-world workflows at the warehouse.

It was clear that our initial understanding of the system was shaky. What we needed now was to restructure the information, identify scope boundaries, and capture the domain-specific nuances.

We modeled the workflow around 6 key questions:

  1. Who performs the task? (e.g., delivery driver, warehouse staff, accounting...)

  1. What device is used? (PC, barcode scanner, mobile, tablet...)

  1. What triggers the task? (Truck arrival, barcode scan, order received...)

  1. What is the goal of the step?

  1. What data is input and where is it stored? (e.g., in DB, Excel, paper)

  1. What are the pain points and user expectations?

This method helped structure chaotic information and detect any undocumented manual steps – which then became the basis for accurate design and implementation.

Overall Warehouse Layout and Goods Flow Direction

4. Prototyping & Testing

With the foundational questions mapped out and around 90% of key information collected, we were ready to move forward. Below is a quick overview of the inbound feature I was about to design, summarized through six core questions that shaped our early analysis:

🔍 Feature: Inbound

  1. Who performs the task?

Warehouse accountants

  1. What device is used?

Desktop & handheld calculator

  1. What triggers the task?

The delivery of physical invoices

  1. What is the goal of the step?

Digitize supplier documents and cross-check with POs to verify incoming goods

  1. What data is input and where is it stored?

  • Supplier information, invoice details, product names, quantities, and total amounts are directly entered into the system.

  • Some fields such as unit conversions or VAT rates require manual calculation before being input.

  • There was no existing input flow to manage batch numbers and expiry dates.

  • Physical documents are stored on-site in the warehouse and destroyed after one quarter.

  1. What are the pain points and user expectations?

Manual data entry was slow and error-prone; users expected faster, more accurate input with minimal system switching

From this information, we started breaking things down to gradually shape the right direction.

I always keep measurement in mind from the beginning, so I usually rely on a few basic UX metrics to guide my thinking toward a workable solution:

  • Task Completion Time

  • Error Rate

  • Click Rate

Below is how I applied these principles. Even though there were many more complexities in reality, I will only highlight the key ones.

🔑 Key Business Process:

Warehouse accountants need to digitize the physical delivery documents from suppliers to enable 3-ways matching between:

  1. The supplier’s printed invoice

  1. The PO created by Long Chau’s back office

  1. The actual delivered goods

📃 Essential Requirements:

  1. Manage product batch numbers and expiry dates

  1. Reduce data entry time, which was around 15 minutes per document

🎯 Problems & Challenges:

Problems

Challenges

Invoices contain a lot of data; manual input is time-consuming (5 common fields + 9 product-specific fields each)

Adding batch and expiry dates increases field count → Each product may have 2 batches → ~18 fields per product. The UI becomes overwhelming

Selecting the right PO is manual and error-prone

Difficult to match PO line-by-line, time-consuming and mistake-prone

🏹 How I approached it

When the number of fields increases, to reduce time, the system should assist the user, not rely on manual effort. After researching warehouse management case studies, we proposed the following solutions:

1. Minimize manual input – two approaches:

  • OCR scan of printed documents + AI auto-extraction

  • Pros: Users mostly review, no need to type, auto-save scan images

  • Cons: Requires AI training due to variety in invoice templates

  • Manual input with smart defaults, the system auto-fills frequently repeated fields (e.g. unit, VAT)

  • Pros: UI follows the physical invoice’s field order (~80%), optimized for keyboard use

  • Cons: Still about 50% fields require manual entry

2. Auto-match PO

Once product and quantity are extracted, the system automatically matches them to the correct PO and assigns quantities. Users don’t need to search manually.

3. Normalize information across varied document templates

Since we can’t control supplier invoice formats, the system filters and standardizes only the necessary fields for inventory, reducing cognitive load for users.

🧩 UI Execution

Due to project urgency, I reused Long Chau’s design system to rapidly create wireframes and main flows to verify them with the team and stakeholders within 2 days. The main screens included:

  • Invoice List

  • Method Selection Popup

  • Invoice Detail Form

UI sample for main screens

For the detailed invoice screen, which was quite complex due to business logic, I made the following choices to help users:

  1. Tab header: Allow handling multiple suppliers at once without opening/closing different screens

  1. Grouped buttons: Clustered key actions in one visible area

  1. Product form: Matches 90% of the layout on the printed documents for fast scanning

  1. PO Matching: Auto-select based on timestamp, manual override available

Eventually, the flow of the first MVP feature was ready for stakeholder review after just two days.

Ideal User Journey for Inbound Process

5. Pilot & Testing

Due to the urgency of delivering on time for a committed checkpoint, we flexibly switched from agile to waterfall during the early phases.

After stakeholder feedback confirmed 90% alignment, we moved forward with development and released it to the CI environment, then piloted for 2 weeks.

What made testing go smoothly was how engaged our users were. They read documents, tested the software seriously, and even created change request tickets on Jira themselves.

💻 Observations (2-weeks trial)

In the first few days, bugs in the system slowed users down. But once resolved, users became comfortable with the new workflow. Manual steps were significantly reduced.

Results:

  • Data entry time dropped to 6 minutes per invoice (↓60%)

  • Errors and operational issues dropped 70%

  • Auto-matching PO reduced back-office workload

6. Takeaways

1. One screen – multiple levels of information

In high-volume workflows, breaking steps into multiple popups isn't always optimal. Users often need to see both the overview and details on a single screen to work efficiently.

2. Think beyond the requirement

Initial specs may miss tech opportunities. UX should propose smarter approaches (e.g., OCR, auto-suggestions) to boost user productivity.

3. Do fast - fail fast

For large-scale internal systems, the earlier you validate, the better. Fixing issues late in deployment is significantly more expensive—in both time and money.

Thanks for reading

1. Project Overview

  • Project Name: Real Warehouse App (RWA) - Inbound Flow

  • Company / Team: FPT Software

  • Team size: 20 members • 2 designers

  • My Role: Senior Product Designer

  • Client: FPT Retail – Long Châu Pharmacy Chain

  • Goal: Initial phase of building and standardizing the inbound process for Long Châu's national-scale pharmaceutical warehouse system (35k-45k m2, 25,000 SKUs, ~70k orders/day).

2. Context

Long Châu aggressively expanded their retail pharma operations, launching two of the largest pharmaceutical warehouses in Vietnam. The RWA project was kicked off rapidly to support these operations.

  • Size: 35,000m² in Hanoi, 45,000m² in HCMC

  • Products: ~25,000 SKUs

  • Warehouse zones: 10

  • Order volume: ~70,000 orders/day and 200+ trucks/day

Enterprise-grade warehouse software is notoriously complex. Most companies opt for off-the-shelf platforms like Zoho or KiotViet. However, FRT chose to build their own proprietary system to better adapt to changing workflows and avoid vendor lock-in during incidents.

This is a reflection of my experience during the first ~4 weeks of the project.

Simplified Warehouse Inbound–Outbound Process

3. Discovery & Interview

When starting a project in a large enterprise setting, the first thing you must clarify is:

  • Who are you working with?

  • Who are the key stakeholders?

  • What information do you already have?

With multiple departments involved, it’s easy to get lost. You might talk to the wrong people, miss decision-makers, or confuse user groups who request features versus those who actually use them daily. Without mapping this clearly from the beginning, you're at risk of wasting time re-aligning and chasing redundant feedback loops.

If this is a completely new domain, you're unfamiliar with internal workflows or terminology. My advice: use AI like ChatGPT to kickstart your desk research. It helps you build foundational knowledge quickly instead of getting lost in countless online resources.

Keep in mind that AI or online documents only offer directional insights. Each enterprise has its unique logic. You must always verify with the right people inside the organization.

After the kick-off, we visited the Long An warehouse for an in-person study. The team included PM, BA, Designer, Tech Lead, stakeholders, and warehouse representatives – who directly shared their needs and described their roles.

Post-meeting, we observed actual warehouse operations. This revealed numerous edge cases and manual workarounds not captured in existing documentation.

Project team is working on clarifying real-world workflows at the warehouse.

It was clear that our initial understanding of the system was shaky. What we needed now was to restructure the information, identify scope boundaries, and capture the domain-specific nuances.

We modeled the workflow around 6 key questions:

  1. Who performs the task? (e.g., delivery driver, warehouse staff, accounting...)

  1. What device is used? (PC, barcode scanner, mobile, tablet...)

  1. What triggers the task? (Truck arrival, barcode scan, order received...)

  1. What is the goal of the step?

  1. What data is input and where is it stored? (e.g., in DB, Excel, paper)

  1. What are the pain points and user expectations?

This method helped structure chaotic information and detect any undocumented manual steps – which then became the basis for accurate design and implementation.

Overall Warehouse Layout and Goods Flow Direction

4. Prototyping & Testing

With the foundational questions mapped out and around 90% of key information collected, we were ready to move forward. Below is a quick overview of the inbound feature I was about to design, summarized through six core questions that shaped our early analysis:

🔍 Feature: Inbound

  1. Who performs the task?

Warehouse accountants

  1. What device is used?

Desktop & handheld calculator

  1. What triggers the task?

The delivery of physical invoices

  1. What is the goal of the step?

Digitize supplier documents and cross-check with POs to verify incoming goods

  1. What data is input and where is it stored?

  • Supplier information, invoice details, product names, quantities, and total amounts are directly entered into the system.

  • Some fields such as unit conversions or VAT rates require manual calculation before being input.

  • There was no existing input flow to manage batch numbers and expiry dates.

  • Physical documents are stored on-site in the warehouse and destroyed after one quarter.

  1. What are the pain points and user expectations?

Manual data entry was slow and error-prone; users expected faster, more accurate input with minimal system switching

From this information, we started breaking things down to gradually shape the right direction.

I always keep measurement in mind from the beginning, so I usually rely on a few basic UX metrics to guide my thinking toward a workable solution:

  • Task Completion Time

  • Error Rate

  • Click Rate

Below is how I applied these principles. Even though there were many more complexities in reality, I will only highlight the key ones.

🔑 Key Business Process:

Warehouse accountants need to digitize the physical delivery documents from suppliers to enable 3-ways matching between:

  1. The supplier’s printed invoice

  1. The PO created by Long Chau’s back office

  1. The actual delivered goods

📃 Essential Requirements:

  1. Manage product batch numbers and expiry dates

  1. Reduce data entry time, which was around 15 minutes per document

🎯 Problems & Challenges:

Problems

Challenges

Invoices contain a lot of data; manual input is time-consuming (5 common fields + 9 product-specific fields each)

Adding batch and expiry dates increases field count → Each product may have 2 batches → ~18 fields per product. The UI becomes overwhelming

Selecting the right PO is manual and error-prone

Difficult to match PO line-by-line, time-consuming and mistake-prone

🏹 How I approached it

When the number of fields increases, to reduce time, the system should assist the user, not rely on manual effort. After researching warehouse management case studies, we proposed the following solutions:

1. Minimize manual input – two approaches:

  • OCR scan of printed documents + AI auto-extraction

  • Pros: Users mostly review, no need to type, auto-save scan images

  • Cons: Requires AI training due to variety in invoice templates

  • Manual input with smart defaults, the system auto-fills frequently repeated fields (e.g. unit, VAT)

  • Pros: UI follows the physical invoice’s field order (~80%), optimized for keyboard use

  • Cons: Still about 50% fields require manual entry

2. Auto-match PO

Once product and quantity are extracted, the system automatically matches them to the correct PO and assigns quantities. Users don’t need to search manually.

3. Normalize information across varied document templates

Since we can’t control supplier invoice formats, the system filters and standardizes only the necessary fields for inventory, reducing cognitive load for users.

🧩 UI Execution

Due to project urgency, I reused Long Chau’s design system to rapidly create wireframes and main flows to verify them with the team and stakeholders within 2 days. The main screens included:

  • Invoice List

  • Method Selection Popup

  • Invoice Detail Form

UI sample for main screens

For the detailed invoice screen, which was quite complex due to business logic, I made the following choices to help users:

  1. Tab header: Allow handling multiple suppliers at once without opening/closing different screens

  1. Grouped buttons: Clustered key actions in one visible area

  1. Product form: Matches 90% of the layout on the printed documents for fast scanning

  1. PO Matching: Auto-select based on timestamp, manual override available

Eventually, the flow of the first MVP feature was ready for stakeholder review after just two days.

Ideal User Journey for Inbound Process

5. Pilot & Testing

Due to the urgency of delivering on time for a committed checkpoint, we flexibly switched from agile to waterfall during the early phases.

After stakeholder feedback confirmed 90% alignment, we moved forward with development and released it to the CI environment, then piloted for 2 weeks.

What made testing go smoothly was how engaged our users were. They read documents, tested the software seriously, and even created change request tickets on Jira themselves.

💻 Observations (2-weeks trial)

In the first few days, bugs in the system slowed users down. But once resolved, users became comfortable with the new workflow. Manual steps were significantly reduced.

Results:

  • Data entry time dropped to 6 minutes per invoice (↓60%)

  • Errors and operational issues dropped 70%

  • Auto-matching PO reduced back-office workload

6. Takeaways

1. One screen – multiple levels of information

In high-volume workflows, breaking steps into multiple popups isn't always optimal. Users often need to see both the overview and details on a single screen to work efficiently.

2. Think beyond the requirement

Initial specs may miss tech opportunities. UX should propose smarter approaches (e.g., OCR, auto-suggestions) to boost user productivity.

3. Do fast - fail fast

For large-scale internal systems, the earlier you validate, the better. Fixing issues late in deployment is significantly more expensive—in both time and money.

Thanks for reading

1. Project Overview

  • Project Name: Real Warehouse App (RWA) - Inbound Flow

  • Company / Team: FPT Software

  • Team size: 20 members • 2 designers

  • My Role: Senior Product Designer

  • Client: FPT Retail – Long Châu Pharmacy Chain

  • Goal: Initial phase of building and standardizing the inbound process for Long Châu's national-scale pharmaceutical warehouse system (35k-45k m2, 25,000 SKUs, ~70k orders/day).

2. Context

Long Châu aggressively expanded their retail pharma operations, launching two of the largest pharmaceutical warehouses in Vietnam. The RWA project was kicked off rapidly to support these operations.

  • Size: 35,000m² in Hanoi, 45,000m² in HCMC

  • Products: ~25,000 SKUs

  • Warehouse zones: 10

  • Order volume: ~70,000 orders/day and 200+ trucks/day

Enterprise-grade warehouse software is notoriously complex. Most companies opt for off-the-shelf platforms like Zoho or KiotViet. However, FRT chose to build their own proprietary system to better adapt to changing workflows and avoid vendor lock-in during incidents.

This is a reflection of my experience during the first ~4 weeks of the project.

Simplified Warehouse Inbound–Outbound Process

3. Discovery & Interview

When starting a project in a large enterprise setting, the first thing you must clarify is:

  • Who are you working with?

  • Who are the key stakeholders?

  • What information do you already have?

With multiple departments involved, it’s easy to get lost. You might talk to the wrong people, miss decision-makers, or confuse user groups who request features versus those who actually use them daily. Without mapping this clearly from the beginning, you're at risk of wasting time re-aligning and chasing redundant feedback loops.

If this is a completely new domain, you're unfamiliar with internal workflows or terminology. My advice: use AI like ChatGPT to kickstart your desk research. It helps you build foundational knowledge quickly instead of getting lost in countless online resources.

Keep in mind that AI or online documents only offer directional insights. Each enterprise has its unique logic. You must always verify with the right people inside the organization.

After the kick-off, we visited the Long An warehouse for an in-person study. The team included PM, BA, Designer, Tech Lead, stakeholders, and warehouse representatives – who directly shared their needs and described their roles.

Post-meeting, we observed actual warehouse operations. This revealed numerous edge cases and manual workarounds not captured in existing documentation.

Project team is working on clarifying real-world workflows at the warehouse.

It was clear that our initial understanding of the system was shaky. What we needed now was to restructure the information, identify scope boundaries, and capture the domain-specific nuances.

We modeled the workflow around 6 key questions:

  1. Who performs the task? (e.g., delivery driver, warehouse staff, accounting...)

  1. What device is used? (PC, barcode scanner, mobile, tablet...)

  1. What triggers the task? (Truck arrival, barcode scan, order received...)

  1. What is the goal of the step?

  1. What data is input and where is it stored? (e.g., in DB, Excel, paper)

  1. What are the pain points and user expectations?

This method helped structure chaotic information and detect any undocumented manual steps – which then became the basis for accurate design and implementation.

Overall Warehouse Layout and Goods Flow Direction

4. Prototyping & Testing

With the foundational questions mapped out and around 90% of key information collected, we were ready to move forward. Below is a quick overview of the inbound feature I was about to design, summarized through six core questions that shaped our early analysis:

🔍 Feature: Inbound

  1. Who performs the task?

Warehouse accountants

  1. What device is used?

Desktop & handheld calculator

  1. What triggers the task?

The delivery of physical invoices

  1. What is the goal of the step?

Digitize supplier documents and cross-check with POs to verify incoming goods

  1. What data is input and where is it stored?

  • Supplier information, invoice details, product names, quantities, and total amounts are directly entered into the system.

  • Some fields such as unit conversions or VAT rates require manual calculation before being input.

  • There was no existing input flow to manage batch numbers and expiry dates.

  • Physical documents are stored on-site in the warehouse and destroyed after one quarter.

  1. What are the pain points and user expectations?

Manual data entry was slow and error-prone; users expected faster, more accurate input with minimal system switching

From this information, we started breaking things down to gradually shape the right direction.

I always keep measurement in mind from the beginning, so I usually rely on a few basic UX metrics to guide my thinking toward a workable solution:

  • Task Completion Time

  • Error Rate

  • Click Rate

Below is how I applied these principles. Even though there were many more complexities in reality, I will only highlight the key ones.

🔑 Key Business Process:

Warehouse accountants need to digitize the physical delivery documents from suppliers to enable 3-ways matching between:

  1. The supplier’s printed invoice

  1. The PO created by Long Chau’s back office

  1. The actual delivered goods

📃 Essential Requirements:

  1. Manage product batch numbers and expiry dates

  1. Reduce data entry time, which was around 15 minutes per document

🎯 Problems & Challenges:

Problems

Challenges

Invoices contain a lot of data; manual input is time-consuming (5 common fields + 9 product-specific fields each)

Adding batch and expiry dates increases field count → Each product may have 2 batches → ~18 fields per product. The UI becomes overwhelming

Selecting the right PO is manual and error-prone

Difficult to match PO line-by-line, time-consuming and mistake-prone

🏹 How I approached it

When the number of fields increases, to reduce time, the system should assist the user, not rely on manual effort. After researching warehouse management case studies, we proposed the following solutions:

1. Minimize manual input – two approaches:

  • OCR scan of printed documents + AI auto-extraction

  • Pros: Users mostly review, no need to type, auto-save scan images

  • Cons: Requires AI training due to variety in invoice templates

  • Manual input with smart defaults, the system auto-fills frequently repeated fields (e.g. unit, VAT)

  • Pros: UI follows the physical invoice’s field order (~80%), optimized for keyboard use

  • Cons: Still about 50% fields require manual entry

2. Auto-match PO

Once product and quantity are extracted, the system automatically matches them to the correct PO and assigns quantities. Users don’t need to search manually.

3. Normalize information across varied document templates

Since we can’t control supplier invoice formats, the system filters and standardizes only the necessary fields for inventory, reducing cognitive load for users.

🧩 UI Execution

Due to project urgency, I reused Long Chau’s design system to rapidly create wireframes and main flows to verify them with the team and stakeholders within 2 days. The main screens included:

  • Invoice List

  • Method Selection Popup

  • Invoice Detail Form

UI sample for main screens

For the detailed invoice screen, which was quite complex due to business logic, I made the following choices to help users:

  1. Tab header: Allow handling multiple suppliers at once without opening/closing different screens

  1. Grouped buttons: Clustered key actions in one visible area

  1. Product form: Matches 90% of the layout on the printed documents for fast scanning

  1. PO Matching: Auto-select based on timestamp, manual override available

Eventually, the flow of the first MVP feature was ready for stakeholder review after just two days.

Ideal User Journey for Inbound Process

5. Pilot & Testing

Due to the urgency of delivering on time for a committed checkpoint, we flexibly switched from agile to waterfall during the early phases.

After stakeholder feedback confirmed 90% alignment, we moved forward with development and released it to the CI environment, then piloted for 2 weeks.

What made testing go smoothly was how engaged our users were. They read documents, tested the software seriously, and even created change request tickets on Jira themselves.

💻 Observations (2-weeks trial)

In the first few days, bugs in the system slowed users down. But once resolved, users became comfortable with the new workflow. Manual steps were significantly reduced.

Results:

  • Data entry time dropped to 6 minutes per invoice (↓60%)

  • Errors and operational issues dropped 70%

  • Auto-matching PO reduced back-office workload

6. Takeaways

1. One screen – multiple levels of information

In high-volume workflows, breaking steps into multiple popups isn't always optimal. Users often need to see both the overview and details on a single screen to work efficiently.

2. Think beyond the requirement

Initial specs may miss tech opportunities. UX should propose smarter approaches (e.g., OCR, auto-suggestions) to boost user productivity.

3. Do fast - fail fast

For large-scale internal systems, the earlier you validate, the better. Fixing issues late in deployment is significantly more expensive—in both time and money.

Thanks for reading

1. Project Overview

  • Project Name: Real Warehouse App (RWA) - Inbound Flow

  • Company / Team: FPT Software

  • Team size: 20 members • 2 designers

  • My Role: Senior Product Designer

  • Client: FPT Retail – Long Châu Pharmacy Chain

  • Goal: Initial phase of building and standardizing the inbound process for Long Châu's national-scale pharmaceutical warehouse system (35k-45k m2, 25,000 SKUs, ~70k orders/day).

2. Context

Long Châu aggressively expanded their retail pharma operations, launching two of the largest pharmaceutical warehouses in Vietnam. The RWA project was kicked off rapidly to support these operations.

  • Size: 35,000m² in Hanoi, 45,000m² in HCMC

  • Products: ~25,000 SKUs

  • Warehouse zones: 10

  • Order volume: ~70,000 orders/day and 200+ trucks/day

Enterprise-grade warehouse software is notoriously complex. Most companies opt for off-the-shelf platforms like Zoho or KiotViet. However, FRT chose to build their own proprietary system to better adapt to changing workflows and avoid vendor lock-in during incidents.

This is a reflection of my experience during the first ~4 weeks of the project.

Simplified Warehouse Inbound–Outbound Process

3. Discovery & Interview

When starting a project in a large enterprise setting, the first thing you must clarify is:

  • Who are you working with?

  • Who are the key stakeholders?

  • What information do you already have?

With multiple departments involved, it’s easy to get lost. You might talk to the wrong people, miss decision-makers, or confuse user groups who request features versus those who actually use them daily. Without mapping this clearly from the beginning, you're at risk of wasting time re-aligning and chasing redundant feedback loops.

If this is a completely new domain, you're unfamiliar with internal workflows or terminology. My advice: use AI like ChatGPT to kickstart your desk research. It helps you build foundational knowledge quickly instead of getting lost in countless online resources.

Keep in mind that AI or online documents only offer directional insights. Each enterprise has its unique logic. You must always verify with the right people inside the organization.

After the kick-off, we visited the Long An warehouse for an in-person study. The team included PM, BA, Designer, Tech Lead, stakeholders, and warehouse representatives – who directly shared their needs and described their roles.

Post-meeting, we observed actual warehouse operations. This revealed numerous edge cases and manual workarounds not captured in existing documentation.

Project team is working on clarifying real-world workflows at the warehouse.

It was clear that our initial understanding of the system was shaky. What we needed now was to restructure the information, identify scope boundaries, and capture the domain-specific nuances.

We modeled the workflow around 6 key questions:

  1. Who performs the task? (e.g., delivery driver, warehouse staff, accounting...)

  1. What device is used? (PC, barcode scanner, mobile, tablet...)

  1. What triggers the task? (Truck arrival, barcode scan, order received...)

  1. What is the goal of the step?

  1. What data is input and where is it stored? (e.g., in DB, Excel, paper)

  1. What are the pain points and user expectations?

This method helped structure chaotic information and detect any undocumented manual steps – which then became the basis for accurate design and implementation.

Overall Warehouse Layout and Goods Flow Direction

4. Prototyping & Testing

With the foundational questions mapped out and around 90% of key information collected, we were ready to move forward. Below is a quick overview of the inbound feature I was about to design, summarized through six core questions that shaped our early analysis:

🔍 Feature: Inbound

  1. Who performs the task?

Warehouse accountants

  1. What device is used?

Desktop & handheld calculator

  1. What triggers the task?

The delivery of physical invoices

  1. What is the goal of the step?

Digitize supplier documents and cross-check with POs to verify incoming goods

  1. What data is input and where is it stored?

  • Supplier information, invoice details, product names, quantities, and total amounts are directly entered into the system.

  • Some fields such as unit conversions or VAT rates require manual calculation before being input.

  • There was no existing input flow to manage batch numbers and expiry dates.

  • Physical documents are stored on-site in the warehouse and destroyed after one quarter.

  1. What are the pain points and user expectations?

Manual data entry was slow and error-prone; users expected faster, more accurate input with minimal system switching

From this information, we started breaking things down to gradually shape the right direction.

I always keep measurement in mind from the beginning, so I usually rely on a few basic UX metrics to guide my thinking toward a workable solution:

  • Task Completion Time

  • Error Rate

  • Click Rate

Below is how I applied these principles. Even though there were many more complexities in reality, I will only highlight the key ones.

🔑 Key Business Process:

Warehouse accountants need to digitize the physical delivery documents from suppliers to enable 3-ways matching between:

  1. The supplier’s printed invoice

  1. The PO created by Long Chau’s back office

  1. The actual delivered goods

📃 Essential Requirements:

  1. Manage product batch numbers and expiry dates

  1. Reduce data entry time, which was around 15 minutes per document

🎯 Problems & Challenges:

Problems

Challenges

Invoices contain a lot of data; manual input is time-consuming (5 common fields + 9 product-specific fields each)

Adding batch and expiry dates increases field count → Each product may have 2 batches → ~18 fields per product. The UI becomes overwhelming

Selecting the right PO is manual and error-prone

Difficult to match PO line-by-line, time-consuming and mistake-prone

🏹 How I approached it

When the number of fields increases, to reduce time, the system should assist the user, not rely on manual effort. After researching warehouse management case studies, we proposed the following solutions:

1. Minimize manual input – two approaches:

  • OCR scan of printed documents + AI auto-extraction

  • Pros: Users mostly review, no need to type, auto-save scan images

  • Cons: Requires AI training due to variety in invoice templates

  • Manual input with smart defaults, the system auto-fills frequently repeated fields (e.g. unit, VAT)

  • Pros: UI follows the physical invoice’s field order (~80%), optimized for keyboard use

  • Cons: Still about 50% fields require manual entry

2. Auto-match PO

Once product and quantity are extracted, the system automatically matches them to the correct PO and assigns quantities. Users don’t need to search manually.

3. Normalize information across varied document templates

Since we can’t control supplier invoice formats, the system filters and standardizes only the necessary fields for inventory, reducing cognitive load for users.

🧩 UI Execution

Due to project urgency, I reused Long Chau’s design system to rapidly create wireframes and main flows to verify them with the team and stakeholders within 2 days. The main screens included:

  • Invoice List

  • Method Selection Popup

  • Invoice Detail Form

UI sample for main screens

For the detailed invoice screen, which was quite complex due to business logic, I made the following choices to help users:

  1. Tab header: Allow handling multiple suppliers at once without opening/closing different screens

  1. Grouped buttons: Clustered key actions in one visible area

  1. Product form: Matches 90% of the layout on the printed documents for fast scanning

  1. PO Matching: Auto-select based on timestamp, manual override available

Eventually, the flow of the first MVP feature was ready for stakeholder review after just two days.

Ideal User Journey for Inbound Process

5. Pilot & Testing

Due to the urgency of delivering on time for a committed checkpoint, we flexibly switched from agile to waterfall during the early phases.

After stakeholder feedback confirmed 90% alignment, we moved forward with development and released it to the CI environment, then piloted for 2 weeks.

What made testing go smoothly was how engaged our users were. They read documents, tested the software seriously, and even created change request tickets on Jira themselves.

💻 Observations (2-weeks trial)

In the first few days, bugs in the system slowed users down. But once resolved, users became comfortable with the new workflow. Manual steps were significantly reduced.

Results:

  • Data entry time dropped to 6 minutes per invoice (↓60%)

  • Errors and operational issues dropped 70%

  • Auto-matching PO reduced back-office workload

6. Takeaways

1. One screen – multiple levels of information

In high-volume workflows, breaking steps into multiple popups isn't always optimal. Users often need to see both the overview and details on a single screen to work efficiently.

2. Think beyond the requirement

Initial specs may miss tech opportunities. UX should propose smarter approaches (e.g., OCR, auto-suggestions) to boost user productivity.

3. Do fast - fail fast

For large-scale internal systems, the earlier you validate, the better. Fixing issues late in deployment is significantly more expensive—in both time and money.

Thanks for reading