This e-commerce platform Jordan sets out the brief, the approach and the measured result.
Building an e-commerce platform in Jordan means designing around cash on delivery from the first line of code, not adding it as a payment option later.
We rebuilt the storefront rather than patching it, because the payment assumption ran through every layer of the original platform.
Reconciliation as a first-class feature
Every order now carries its courier reference, remittance batch and settlement date as structured fields. Courier remittance files import directly and match automatically, with only genuine exceptions surfacing for human review.
The finance dashboard shows, at any moment, how much cash is outstanding with each courier and how long it has been outstanding — a number nobody at Shifa could produce before.
Reducing refusals
Four changes, in order of impact:
- WhatsApp confirmation before dispatch. Orders are confirmed by an automated message with a one-tap reply. Unconfirmed orders after 24 hours are held rather than shipped.
- Total including delivery shown in dinars before the customer commits, ending surprise at the door.
- Two-hour delivery windows rather than a whole day.
- Refusal history scoring. Customers with repeated refusals are asked to prepay. A small number of numbers had been generating a disproportionate share of losses.
Addressing that matches reality
The checkout captures a landmark description in free text, a map pin, and a phone number as the primary identifier. Street number and postcode are optional. Drivers navigate by landmark and phone, so the form now collects what they actually use.
Genuinely bilingual
Product names, dosage information and checkout flow were written in Arabic rather than translated, with full RTL layout including order summary and validation messages. Transactional SMS and email follow the customer's chosen language.
Pharmacy-specific requirement: prescription items route to a pharmacist for review before the order can be confirmed, with the prescription image uploaded at checkout.