01
Order sync + courier history
New Shopify orders arrive in the internal dashboard with the customer courier history the team needs before making a COD decision.
Shopify operations / Custom integration
A lightweight internal workflow connecting Shopify, courier operations and customer SMS so the team can process COD orders without repeating the same system-to-system work.

Project context
Fiora is a Bangladesh-based Shopify store where cash on delivery is a normal part of day-to-day ecommerce operations. This case study focuses on the internal workflow I built around order review, courier submission, status synchronization and customer notification. Customer information shown in the visuals has been anonymized.
01 / The challenge
For a typical COD order, the team had to review the Shopify order, call the customer, open the courier portal, check previous delivery history, decide whether the order looked safe, create the parcel, return to Shopify and fulfill it.
After the courier started processing the parcel, delivery and return updates created another round of checking. The business could handle the process, but the same operational steps were being repeated across multiple systems every day.

02 / The solution
I built a small private dashboard around the exact sequence the team already followed. Shopify remains the commerce source, the courier company remains the delivery provider, and the new system sits between them to remove repeated data entry and status checking.
The goal was not to replace people with automation. The team still makes the decisions that need judgement — such as confirming a COD order — while the software handles the mechanical work between systems.

03 / What the system handles
01
New Shopify orders arrive in the internal dashboard with the customer courier history the team needs before making a COD decision.
02
The team can confirm or cancel a COD order directly in the dashboard without moving through multiple systems.
03
Once approved, the order can be created with the courier company through the API instead of entering the parcel manually.
04
Invoice and packing-slip actions were kept inside the workflow because those print formats were specific operational requirements.
05
Courier webhooks bring shipment changes back into the system and keep the relevant Shopify order state aligned without repeated manual checking.
06
Relevant status changes trigger SMS through a local Bangladesh gateway, avoiding the cost and complexity of routing local notifications through an international number.
04 / Why custom
The client had already used courier-integration apps and experienced downtime. Adding another generic tool did not solve the reliability problem they actually cared about.
The client was not comfortable sending more customer and order data through an additional third-party SaaS layer when a direct integration could keep the workflow in their own environment.
Courier-history review, COD confirmation, custom invoice and packing-slip actions, courier creation and status updates all needed to sit in one sequence that matched how the team already worked.
The business already had Hostinger hosting, so a focused PHP and MySQL application could solve the operational problem without introducing unnecessary infrastructure or recurring platform overhead.

05 / Technical implementation
The dashboard connects directly to Shopify for order data and operational state rather than relying on a separate SaaS layer to mirror the store.
The application uses a straightforward server-rendered PHP stack with PDO and MySQL — appropriate for the size of the workflow and easy to run on the hosting the client already had.
Steadfast is the courier provider in this implementation. API calls handle history and parcel creation, while webhooks bring shipment updates back into the dashboard.
A Bangladesh SMS provider handles customer notifications, keeping local delivery costs practical instead of routing messages through an international virtual number.
06 / Delivered outcome
The delivered workflow gives the operations team a single surface for the order lifecycle: review the customer context, make the COD decision, submit the parcel, print what is needed and let integrations carry the routine updates forward.
I am not attaching a fabricated time-saved or conversion-lift number to the project. The verified result is the shipped operational system and the manual steps it now handles programmatically.
08 / Start a conversation
I can help map the process, identify where automation actually makes sense and build the integration around the systems your business already depends on.