Deliverect Endpoints

These are endpoints hosted on the deliverect domain. There is a staging environment: https://api.staging.deliverect.com and a production environment https://api.deliverect.com/KDS Diagram


KDS Workflow

%%{init: {'theme': 'base', 'themeVariables': {'background': '#ffffff', 'mainBkg': '#ffffff'}}}%%
sequenceDiagram
    participant Deliverect as Deliverect Platform
    participant KDS as Third-Party KDS System
    actor Kitchen as Kitchen Staff

    Note over Deliverect,KDS: 1. Registration (Deliverect → KDS webhook)
    Deliverect->>KDS: POST {yourwebhook}/kds/register_kds (Register KDS)<br/>payload: { accountId, locationId, externalReference }
    KDS-->>Deliverect: JSON { productSyncUrl, orderWebhookUrl, orderStatusUpdateUrl }

    Note over Deliverect,KDS: 2. Product / menu sync
    Deliverect->>KDS: POST productSyncUrl (Product Update)
    KDS-->>Deliverect: Ack

    Note over Deliverect,Kitchen: 3. New order routed to kitchen
    Deliverect->>KDS: POST orderWebhookUrl (Order Notification)<br/>new order payload
    KDS-->>Deliverect: Ack
    KDS->>Kitchen: Display order on kitchen screen

    Note over Kitchen,Deliverect: 4. KDS reports progress back to Deliverect
    Kitchen->>KDS: Mark order Preparing
    KDS->>Deliverect: POST /kds/orderStatus/{orderId} (Update Order Status)<br/>body: { orderId, status: 50, reason? }
    Deliverect-->>KDS: 200 { result: "OK" }

    Kitchen->>KDS: Mark order Prepared
    KDS->>Deliverect: POST /kds/orderStatus/{orderId} { status: 60 }
    Deliverect-->>KDS: 200 { result: "OK" }

    Kitchen->>KDS: Ready for pickup
    KDS->>Deliverect: POST /kds/orderStatus/{orderId} { status: 70 }
    Deliverect-->>KDS: 200 { result: "OK" }

    Note over Deliverect,KDS: 5. Deliverect-initiated status updates (optional)
    Deliverect->>KDS: POST orderStatusUpdateUrl (Order Status Update)<br/>e.g. status 80 In Delivery
    KDS-->>Deliverect: Ack