WhatsApp Bot - Pharmacy Order Flow
User selects "Order Pharmacy medications" from the main menu.
Flow Diagram
flowchart TD
START([User selects 'Order Pharmacy']) --> CHECK_PINNED{Pinned products?}
CHECK_PINNED -->|Yes| PHARMACY_OPTIONS[/"Popular medications:
1. Product A (2000 XAF)
2. Product B (1500 XAF)
3. Product C (3500 XAF)
4. Product D (2500 XAF)
5. Product E (4000 XAF)
6. Other product"/]
CHECK_PINNED -->|No| CHOICE_TYPE
PHARMACY_OPTIONS --> USER_INPUT{User Input}
USER_INPUT -->|"1-5"| CREATE_CHECKOUT[Create Checkout Cart]
USER_INPUT -->|"6 - Other"| CHOICE_TYPE[/"How would you like to order?
1. Describe medication
2. Upload prescription"/]
USER_INPUT -->|"0"| MAIN_MENU[Return to Main Menu]
CREATE_CHECKOUT --> CHECKOUT_LINK[/"✅ Your order is ready!
🔗 Complete Payment"/]
CHECKOUT_LINK --> COMPLETED([Completed])
CHOICE_TYPE --> CHOICE{User Choice}
CHOICE -->|"1"| DESCRIBE_FLOW[Describe Flow]
CHOICE -->|"2"| UPLOAD_FLOW[Upload Flow]
DESCRIBE_FLOW --> ORDER_CONFIRM[/"✅ Order received!"/]
UPLOAD_FLOW --> ORDER_CONFIRM
ORDER_CONFIRM --> COMPLETED
Describe Medication Flow
flowchart TD
START([User chose 'Describe']) --> PROMPT[/"Please describe the medication(s):"/]
PROMPT --> INPUT[User enters product name]
INPUT --> VALIDATE{Valid input?}
VALIDATE -->|No| PROMPT
VALIDATE -->|Yes| CHECK_USER{User exists?}
CHECK_USER -->|Yes| CREATE_ORDER[Create order]
CHECK_USER -->|No| ASK_NAME[/"Please enter your name:"/]
ASK_NAME --> NAME[User enters name]
NAME --> CREATE_ORDER
CREATE_ORDER --> CONFIRM[/"✅ Order received!"/]
CONFIRM --> COMPLETED([Completed])
Upload Prescription Flow
Same as Lab Order - see 04-lab-order.md