{
    "info": {
        "name": "Developer Portal & API Reference | Al-Shrouq Express",
        "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
        "description": "Official developer documentation and REST API reference for Al-Shrouq Express delivery, fleet dispatch, Deliverect POS, and Salla ecommerce platform."
    },
    "item": [
        {
            "name": "Core Direct Orders Lifecycle",
            "item": [
                {
                    "name": "Create New Order",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/create",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "create"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n  // Either (\"branch_lat\" & \"branch_lng\") OR \"branch_id\" is required (but not both)\r\n  \"branch_lat\": 24.7136,  // Required if branch_id is missing (must be numeric)\r\n  \"branch_lng\": 46.6753,  // Required if branch_id is missing (must be numeric)\r\n  \"branch_id\": null,      // Required if \"branch_lat\" & \"branch_lng\" are missing\r\n  \r\n  // Optional fields\r\n  \"client_order_id\": \"12345\",  // Optional.\r\n  \"value\": 100.50,             // Optional.\r\n  \"payment_type\": 1,           // Required, must be either //  1= COD (Cash on Delivery) , 2= SPAN Machine , 3= Paid , 4= AlshrouqPay\r\n  \"preparation_time\": 30,      // Optional, must be integer >= 0 if provided\r\n  \r\n  // Customer location\r\n  \"customer_lat\": 24.7136,     // Optional\r\n  \"customer_lng\": 46.6753,     // Optional\r\n  \"customer_address\": \"123 Main St\",  // Optional\r\n  // Customer details\r\n  \"customer_phone\": \"501234567\",  // Required, must follow KSA phone rules\r\n  \"customer_name\": \"Ahmed\",       // Required, must be string if provided\r\n  \r\n  // Delivery time (optional)\r\n  \"deliver_at\": \"2029-05-20 14:00:00\",  // Optional Must be a future datetime in \"Y-m-d H:i:s\" format\r\n  \r\n  // Additional details (optional)\r\n  \"details\": \"Extra sauce, no onions\"  // Optional, must be string if provided\r\n  // \"customer_national_address\":\"test address\" // Optional\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Order Created successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"order_id\": 609077,\r\n  \"client_order_id\": 12345,\r\n  \"customer_name\": \"Ahmed\",\r\n  \"customer_phone\": \"501234567\",\r\n  \"customer_lat\": 24.7136,\r\n  \"customer_lng\": 46.6753,\r\n  \"customer_address\": null,\r\n  \"branch_name\": \"Tawera\",\r\n  \"branch_id\": 33,\r\n  \"fees\": \"0\",\r\n  \"distance\": \"0\",\r\n  \"status_id\": \"\",\r\n  \"status_label\": \"Order created\",\r\n  \"value\": \"100.5\",\r\n  \"cod\": \"100.5\",\r\n  \"payment_type_label\": \"Cash\",\r\n  \"payment_type\": 1,\r\n  \"details\": \"Extra sauce, no onions\",\r\n  \"created_at\": \"2025-04-21 1:17 PM\"\r\n}"
                        }
                    ]
                },
                {
                    "name": "Cancel order",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/cancel",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "cancel"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"order_id\": \"5254700\"\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Order Cancelled successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"message\": \"ok , Order Cancelled\"\r\n}"
                        },
                        {
                            "name": "Order Picked Up Cancel Request Submitted",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n\"message\":\"ok , Order Picked Up Cancel Request Submitted\"\r\n\r\n}"
                        },
                        {
                            "name": "Order not found or has already been cancelled or cannot be cancelled",
                            "status": "Response",
                            "code": 422,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"error\": \"Order not found or has already been cancelled or cannot be cancelled.\"\r\n}"
                        }
                    ]
                },
                {
                    "name": "Get Specific Order",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/get",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "get"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"order_id\": 5254808\r\n\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "HTTP 200",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"data\": {\r\n    \"order_id\": 5254071,\r\n    \"client_order_id\": \"1231125\",\r\n    \"customer_name\": \"Ahmed\",\r\n    \"customer_phone\": \"501234567\",\r\n    \"customer_lat\": \"24.7136\",\r\n    \"customer_lng\": \"46.6753\",\r\n    \"customer_address\": \"123 Main St\",\r\n    \"branch_name\": \"Test alaraab\",\r\n    \"branch_id\": 9999927650791,\r\n    \"fees\": \"15\",\r\n    \"distance\": \"0\",\r\n    \"status_id\": 22,\r\n    \"status_label\": \"Client Cancellation Request is being Proccessed\",\r\n    \"value\": \"100.50\",\r\n    \"tracking_url\": \"https://staging.alshrouqsse.org/tracking/eyJpdiI6Im1NcmxRRThzWVpWOHowWEwrQXYwQkE9PSIsInZhbHVlIjoiUzZLNVhCTUxxWERYL2w2b3UwVGtnMjF2aXlBYzdnaFU4emdXYkFQTnpXMnJsYTVYamxBWk1VSlcxREI1WVQxdiIsIm1hYyI6IjFjOWY1NmJhZjMyYmQ3NGQyY2I0OWIzMzZjODM4MmRmMGI2YmYzN2ZkNWM0MTM3MDRiNmM0YjMzMzIxOTliOGIiLCJ0YWciOiIifQ==\",\r\n    \"cod\": \"115.5\",\r\n    \"payment_type_label\": \"COD\",\r\n    \"payment_type\": 1,\r\n    \"details\": \"Extra sauce, no onions\",\r\n    \"created_at\": \"2026-07-26 1:47 PM\",\r\n    \"driver_accepted_time\": null,\r\n    \"arrived_to_pickup_time\": null,\r\n    \"picked_up_time\": null,\r\n    \"arrived_to_dropoff_time\": null,\r\n    \"delivered_at\": null,\r\n    \"driver\": null,\r\n    \"has_otp\": false,\r\n    \"has_pickup_code\": false,\r\n    \"pick_up_code\": null,\r\n    \"otp\": null,\r\n    \"invoice_url\": \"\",\r\n    \"phone_code\": null,\r\n    \"country_id\": 2,\r\n    \"service_type_value\": 0,\r\n    \"service_type_label\": \"On Demand\",\r\n    \"current_status_timestamp\": \"2026-07-26T10:48:40.000000Z\",\r\n    \"previous_status_timestamp\": \"2026-07-26T10:47:08.000000Z\",\r\n    \"weight\": \"1.000\",\r\n    \"eta\": {\r\n      \"pickup\": 0,\r\n      \"delivery\": 0\r\n    }\r\n  }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Track order",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/track-order",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "track-order"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"order_id\": 5254808\r\n\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "HTTP 200",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n    \"data\": {\r\n        \"order_id\": 5254983,\r\n        \"client_order_id\": \"Test-create-01\",\r\n        \"branch\": {\r\n            \"lat\": \"24.7136\",\r\n            \"lng\": \"46.6753\"\r\n        },\r\n        \"customer\": {\r\n            \"lat\": \"24.7136\",\r\n            \"lng\": \"46.6753\"\r\n        },\r\n        \"driver\": null,\r\n        \"eta\": {\r\n            \"pickup\": 0,\r\n            \"delivery\": 0\r\n        }\r\n    }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Update specific order",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/update",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "update"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"order_id\": 5254072,\r\n    // Additional details (optional)\r\n    \"details\": \"Extra sauce, no onions\",  // Optional, must be string if provided\r\n     \"value\": 100.50,           // Optional, must be numeric if provided\r\n     \"payment_type\": 1,          // Optional, must be either // 1 = CASH, 2 = CREDIT\r\n // Customer location\r\n    \"customer_lat\": 24.7136,    // Optional \r\n    \"customer_lng\": 46.6753,    // Optional \r\n    \"customer_address\": \"123 Main St\",   // Optional \r\n    // Customer details\r\n    \"customer_phone\": \"501234567\",  // Optional, must follow KSA phone rules\r\n    \"customer_name\": \"Ahmed\"          // Optional, must be string if provided\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Order Updated successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"order_id\": 5254072,\r\n  \"client_order_id\": \"123115\",\r\n  \"customer_name\": \"Ahmed\",\r\n  \"customer_phone\": \"501234567\",\r\n  \"customer_lat\": 24.7136,\r\n  \"customer_lng\": 46.6753,\r\n  \"customer_address\": \"123 Main St\",\r\n  \"branch_name\": \"Test alaraab\",\r\n  \"branch_id\": 9999927650791,\r\n  \"fees\": \"15\",\r\n  \"distance\": \"0\",\r\n  \"status_id\": 23,\r\n  \"status_label\": \"Order Created\",\r\n  \"value\": \"100.5\",\r\n  \"tracking_url\": \"https://staging.alshrouqsse.org/tracking/eyJpdiI6Ik1aY0JtakgwZnI2R3FJbG9oNnBMT0E9PSIsInZhbHVlIjoiL1VMUnBmZDBpeUZKR0R5M2dUWDFBQ0RFOENZRDlRT3c1ZWhtM2lET2JLQitkaUVhWWNwU3dETmJmYkxKQmMrVSIsIm1hYyI6IjRmNjEwNjMwNjcwZTAwYWYxNzJiZmJlODMwMzA3MTM5OTdmZmNkOWIzMDY1M2U1NTdmZjRkOTRhMTYxYzkxYmIiLCJ0YWciOiIifQ==\",\r\n  \"cod\": \"115.5\",\r\n  \"payment_type_label\": \"COD\",\r\n  \"payment_type\": 1,\r\n  \"details\": \"Extra sauce, no onions\",\r\n  \"created_at\": \"2026-07-26 1:49 PM\",\r\n  \"driver_accepted_time\": null,\r\n  \"arrived_to_pickup_time\": null,\r\n  \"picked_up_time\": null,\r\n  \"arrived_to_dropoff_time\": null,\r\n  \"delivered_at\": null,\r\n  \"driver\": null,\r\n  \"has_otp\": false,\r\n  \"has_pickup_code\": false,\r\n  \"pick_up_code\": null,\r\n  \"otp\": null,\r\n  \"invoice_url\": \"\",\r\n  \"phone_code\": null,\r\n  \"country_id\": 2,\r\n  \"service_type_value\": 0,\r\n  \"service_type_label\": \"On Demand\",\r\n  \"current_status_timestamp\": \"2026-07-26T10:49:23.000000Z\",\r\n  \"previous_status_timestamp\": \"2026-07-26T10:49:11.000000Z\",\r\n  \"weight\": \"1.000\",\r\n  \"eta\": {\r\n    \"pickup\": 0,\r\n    \"delivery\": 0\r\n  }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Order rate",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{api_token}}/orders/get-rate",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{api_token}}",
                                "orders",
                                "get-rate"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"pickup_id\": 9999927650903,\r\n    \"delivery_lat\": 24.75,\r\n    \"delivery_lng\": 46.70\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Rate retrieved successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n    \"status\": true,\r\n    \"message\": \"Rate retrieved successfully\",\r\n    \"data\": {\r\n        \"distance\": 13.11,\r\n        \"fees\": 15,\r\n        \"extra_fees\": 3.11,\r\n        \"total_fees\": 18.11\r\n    }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Cancel reason",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/orders/cancel-reasons",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "orders",
                                "cancel-reasons"
                            ]
                        },
                        "description": null
                    },
                    "response": [
                        {
                            "name": "Cancel reasons retrieved successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"status\": true,\r\n  \"message\": \"Cancel reasons retrieved successfully\",\r\n  \"data\": [\r\n    {\r\n      \"id\": 4,\r\n      \"name\": \"Customer Not Responding\"\r\n    },\r\n    {\r\n      \"id\": 11,\r\n      \"name\": \"Branch cancel orders\"\r\n    },\r\n    {\r\n      \"id\": 12,\r\n      \"name\": \"RTO\"\r\n    }\r\n  ]\r\n}"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Branches",
            "item": [
                {
                    "name": "Create new branch",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/branches/create",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "branches",
                                "create"
                            ]
                        },
                        "description": null,
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n    \"branch_lat\": 24.7136, // Required | numeric\r\n    \"branch_lng\": 46.6753, // Required | numeric\r\n    // \"city\": 1,                         // Optional | integer, must exist in cities\r\n    \"ingr_branch_name\": \"test\", // Required | string\r\n    \"displayed_name\": \"test\", // Optional | string\r\n    //\"custom_id\": \"BR-001\", // Optional\r\n    \"phone_number\": \"0512345678\", // Optional\r\n    \"street\": \"King Fahd Road\", // Optional\r\n    \"landmark\": \"Near Kingdom Tower\", // Optional\r\n    \"building\": \"12B\", // Optional\r\n    \"floor\": \"3\", // Optional\r\n    \"apartment\": \"301\", // Optional\r\n    \"description\": \"Main branch\" // Optional\r\n    ,\r\n    \"logo_url\": \"https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\" // Optional\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Branch created successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n    \"status\": true,\r\n    \"message\": \"Branch created successfully\",\r\n    \"data\": {\r\n        \"branch\": {\r\n            \"id\": 9999927651212,\r\n            \"name\": \"test 3\",\r\n            \"client_branch_name\": \"test\",\r\n            \"displayed_name\": \"test\",\r\n            \"logo\": \"https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\",\r\n            \"custom_id\": null,\r\n            \"phone_number\": \"0512345678\",\r\n            \"lat\": 24.7135999999999995679900166578590869903564453125,\r\n            \"lng\": 46.67530000000000001136868377216160297393798828125,\r\n            \"city\": \"Riyadh\",\r\n            \"city_id\": 2,\r\n            \"country\": \"Saudi Arabia\",\r\n            \"country_id\": 2,\r\n            \"street\": \"King Fahd Road\",\r\n            \"landmark\": \"Near Kingdom Tower\",\r\n            \"building\": \"12B\",\r\n            \"floor\": \"3\",\r\n            \"apartment\": \"301\",\r\n            \"description\": \"Main branch\",\r\n            \"is_active\": true\r\n        }\r\n    }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Branch list",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/branches",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "branches"
                            ]
                        },
                        "description": null
                    },
                    "response": [
                        {
                            "name": "Branch retrieved successfully",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n  \"status\": true,\r\n  \"message\": \"Branches retrieved successfully\",\r\n  \"data\": {\r\n    \"branches\": [\r\n     {\r\n  \"id\": 9999927651208,\r\n            \"name\": \"test 12\",\r\n            \"client_branch_name\": \"test\",\r\n            \"displayed_name\": \"test\",\r\n            \"logo\": \"https://alshrouqdelivery.b-cdn.net/https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\",\r\n            \"custom_id\": \"BR-001\",\r\n            \"phone_number\": \"0512345678\",\r\n            \"lat\": 24.7135999999999995679900166578590869903564453125,\r\n            \"lng\": 46.67530000000000001136868377216160297393798828125,\r\n            \"city\": \"Riyadh\",\r\n            \"city_id\": 2,\r\n            \"country\": \"Saudi Arabia\",\r\n            \"country_id\": 2,\r\n            \"street\": \"King Fahd Road\",\r\n            \"landmark\": \"Near Kingdom Tower\",\r\n            \"building\": \"12B\",\r\n            \"floor\": \"3\",\r\n            \"apartment\": \"301\",\r\n            \"description\": \"Main branch\",\r\n            \"is_active\": true\r\n},\r\n {\r\n  \"id\": 9999927651209,\r\n            \"name\": \"test 13\",\r\n            \"client_branch_name\": \"test\",\r\n            \"displayed_name\": \"test\",\r\n            \"logo\": \"https://alshrouqdelivery.b-cdn.net/https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\",\r\n            \"custom_id\": \"BR-001\",\r\n            \"phone_number\": \"0512345678\",\r\n            \"lat\": 24.7135999999999995679900166578590869903564453125,\r\n            \"lng\": 46.67530000000000001136868377216160297393798828125,\r\n            \"city\": \"Riyadh\",\r\n            \"city_id\": 2,\r\n            \"country\": \"Saudi Arabia\",\r\n            \"country_id\": 2,\r\n            \"street\": \"King Fahd Road\",\r\n            \"landmark\": \"Near Kingdom Tower\",\r\n            \"building\": \"12B\",\r\n            \"floor\": \"3\",\r\n            \"apartment\": \"301\",\r\n            \"description\": \"Main branch\",\r\n            \"is_active\": true\r\n},\r\n {\r\n  \"id\": 99999276512010,\r\n            \"name\": \"test 14\",\r\n            \"client_branch_name\": \"test\",\r\n            \"displayed_name\": \"test\",\r\n            \"logo\": \"https://alshrouqdelivery.b-cdn.net/https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\",\r\n            \"custom_id\": \"BR-001\",\r\n            \"phone_number\": \"0512345678\",\r\n            \"lat\": 24.7135999999999995679900166578590869903564453125,\r\n            \"lng\": 46.67530000000000001136868377216160297393798828125,\r\n            \"city\": \"Riyadh\",\r\n            \"city_id\": 2,\r\n            \"country\": \"Saudi Arabia\",\r\n            \"country_id\": 2,\r\n            \"street\": \"King Fahd Road\",\r\n            \"landmark\": \"Near Kingdom Tower\",\r\n            \"building\": \"12B\",\r\n            \"floor\": \"3\",\r\n            \"apartment\": \"301\",\r\n            \"description\": \"Main branch\",\r\n            \"is_active\": true\r\n},\r\n {\r\n  \"id\": 99999276512011,\r\n            \"name\": \"test 15\",\r\n            \"client_branch_name\": \"test\",\r\n            \"displayed_name\": \"test\",\r\n            \"logo\": \"https://alshrouqdelivery.b-cdn.net/https://www.equinetmedia.com/hubfs/How-to-find-b2b-blog-images.png\",\r\n            \"custom_id\": \"BR-001\",\r\n            \"phone_number\": \"0512345678\",\r\n            \"lat\": 24.7135999999999995679900166578590869903564453125,\r\n            \"lng\": 46.67530000000000001136868377216160297393798828125,\r\n            \"city\": \"Riyadh\",\r\n            \"city_id\": 2,\r\n            \"country\": \"Saudi Arabia\",\r\n            \"country_id\": 2,\r\n            \"street\": \"King Fahd Road\",\r\n            \"landmark\": \"Near Kingdom Tower\",\r\n            \"building\": \"12B\",\r\n            \"floor\": \"3\",\r\n            \"apartment\": \"301\",\r\n            \"description\": \"Main branch\",\r\n            \"is_active\": true\r\n},\r\n\r\n    ],\r\n    \"pagination\": {\r\n      \"current_page\": 1,\r\n      \"last_page\": 3,\r\n      \"per_page\": 10,\r\n      \"total\": 30,\r\n      \"next_page_url\": \"https://staging.alshrouqsse.org/api/integration/h0v6Xb9pwZvuTQL1CY0V3dXbfygQkO06Z277ojUYpZpqKL4CXP44HIjOmpIXRdFMH5mXOVgrmv6DXNnI/branches?page=2\",\r\n      \"prev_page_url\": null\r\n    }\r\n  }\r\n}"
                        }
                    ]
                },
                {
                    "name": "Cities list",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}/api/integration/{{apiToken}}/cities?country_id=2",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "api",
                                "integration",
                                "{{apiToken}}",
                                "cities?country_id=2"
                            ]
                        },
                        "description": null
                    },
                    "response": [
                        {
                            "name": "HTTP 200",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n    \"id\": 2,\r\n    \"name\": \"Riyadh\",\r\n    \"lat\": \"24.714061319485616\",\r\n    \"lng\": \"46.67583405296055\",\r\n    \"country\": \"Saudi Arabia\",\r\n    \"spl_id\": \"3\",\r\n    \"spl_name\": \"RIYADH\",\r\n    \"spl_region_id\": \"1\",\r\n    \"distance_km\": null\r\n  },\r\n  {\r\n    \"id\": 3,\r\n    \"name\": \"Jeddah\",\r\n    \"lat\": \"21.529183147129466\",\r\n    \"lng\": \"39.17986254008007\",\r\n    \"country\": \"Saudi Arabia\",\r\n    \"spl_id\": \"18\",\r\n    \"spl_name\": \"JEDDAH\",\r\n    \"spl_region_id\": \"2\",\r\n    \"distance_km\": null\r\n  }"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Outbound Webhooks",
            "item": [
                {
                    "name": "Order Created Webhook",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{baseUrl}}https://{your-domain}/api/webhooks/HandleAlShrouqWebhook",
                            "host": [
                                "{{baseUrl}}"
                            ],
                            "path": [
                                "https:",
                                "{your-domain}",
                                "api",
                                "webhooks",
                                "HandleAlShrouqWebhook"
                            ]
                        },
                        "description": "Al-Shrouq posts this notification to each merchant's own webhook URL (every client registers a different callback in the dashboard) — not to Al-Shrouq servers and not a fixed base URL. Placeholder example: https://{your-domain}/api/webhooks/HandleAlShrouqWebhook. The Request Body is the data shape we send. Authorization = the token saved on the webhook settings. Whatever the merchant server returns is logged as-is.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\r\n  \"order_id\": 5256258,\r\n  \"customer_id\": \"\",\r\n  \"client_order_id\": \"KSA_kfc123_07Aug26_6479302\",\r\n  \"customer_name\": \"Test Customer\",\r\n  \"customer_phone\": \"8899889989\",\r\n  \"pickup_lat\": \"\",\r\n  \"pickup_lng\": \"\",\r\n  \"lat\": \"24.6575436485526\",\r\n  \"lng\": \"46.7103296693345\",\r\n  \"city\": null,\r\n  \"shop\": \"Americana KFC Test \",\r\n  \"branch\": \"KFC test B1\",\r\n  \"branch_id\": 9999927650772,\r\n  \"branch_area\": \"\",\r\n  \"dropoff_area\": \"\",\r\n  \"dropoff_lat\": \"\",\r\n  \"dropoff_lng\": \"\",\r\n  \"tracking_code\": \"\",\r\n  \"tracking_url\": \"https://staging.alshrouqsse.org/tracking/eyJpdiI6IlkvS0VZUXVVSWM4N085T0ozQTI4cWc9PSIsInZhbHVlIjoiMUtyUm95bG5GeG5sQSsreHlJRXlaWElQc3NKZEFMNkt2MWJOYkMvaVJyTzcrSVIzT3ZEV1AraVIyYW5sdTNGNiIsIm1hYyI6ImM0MTEzMzVmYzE3YmY0ZTM3YTg3Y2I5NGJmZWQyYTcxMTMyNGY4MGU0ZjZhMDI4NzNkMDJjYWNlNWNjZGU1YWMiLCJ0YWciOiIifQ==\",\r\n  \"expected_pickup\": \"\",\r\n  \"expected_delivery\": \"\",\r\n  \"at_pickup\": \"\",\r\n  \"pickup\": \"\",\r\n  \"at_dropoff_at\": \"\",\r\n  \"dropoff_at\": \"\",\r\n  \"fees\": \"0\",\r\n  \"distance\": \"0\",\r\n  \"status\": 4,\r\n  \"status_id\": 4,\r\n  \"status_label\": \"Driver accepted the order\",\r\n  \"value\": \"13.01\",\r\n  \"cod\": \"13.01\",\r\n  \"payment_type_label\": \"COD\",\r\n  \"payment_type\": 1,\r\n  \"currency\": \"\",\r\n  \"details\": \"\",\r\n  \"created_at\": \"2026-09-23 10:11 AM\",\r\n  \"customer_address\": null,\r\n  \"pickup_poa\": 0,\r\n  \"pickup_poa_qrcode\": \"\",\r\n  \"dropoff_poa\": 0,\r\n  \"dropoff_poa_qrcode\": \"\",\r\n  \"driver\": {\r\n    \"id\": 6610,\r\n    \"name\": \"محمد احمد\",\r\n    \"phone\": \"0500588630\",\r\n    \"location\": {\r\n      \"lat\": \"31.0961749\",\r\n      \"lng\": \"29.7524133\"\r\n    },\r\n    \"status\": \"Busy\"\r\n  },\r\n  \"is_current\": true,\r\n  \"has_otp\": false\r\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    },
                    "response": [
                        {
                            "name": "Example merchant response (logged as-is)",
                            "status": "OK",
                            "code": 200,
                            "_postman_previewlanguage": "json",
                            "header": [
                                {
                                    "key": "Content-Type",
                                    "value": "application/json"
                                }
                            ],
                            "body": "{\r\n    \"ok\": Success\r\n}"
                        }
                    ]
                }
            ]
        }
    ],
    "variable": [
        {
            "key": "environment",
            "value": "production",
            "type": "string",
            "description": "Active environment: production or staging"
        },
        {
            "key": "baseUrl",
            "value": "https://alshrouqdelivery.com",
            "type": "string",
            "description": "Active API Base URL for all requests"
        },
        {
            "key": "productionUrl",
            "value": "https://alshrouqdelivery.com",
            "type": "string",
            "description": "Production Server URL"
        },
        {
            "key": "stagingUrl",
            "value": "https://staging.alshrouqsse.org/",
            "type": "string",
            "description": "Staging / Sandbox Server URL"
        },
        {
            "key": "apiToken",
            "value": "YOUR_API_TOKEN",
            "type": "string",
            "description": "Secret merchant API_TOKEN provided by Al-Shrouq Express"
        },
        {
            "key": "orderId",
            "value": "609077",
            "type": "string",
            "description": "Sample Order ID for lookup, update, and cancellation endpoints"
        }
    ]
}