Deliverect Baskets API

Baskets operations for the Deliverect Commerce API.

OpenAPI Specification

deliverect-baskets-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Deliverect Channel Accounts Baskets API
  description: Integrate ordering channels and marketplaces with Deliverect to create and cancel orders, sync menus, snooze products, update store and courier status, and exchange payment events. Authenticates with OAuth 2.0 machine-to-machine access tokens scoped via genericChannel.
  version: '1.0'
  x-generated-from: documentation
  x-source-url: https://developers.deliverect.com/reference
  x-last-validated: '2026-06-02'
  contact:
    name: Kin Lane
    email: kin@apievangelist.com
  license:
    name: All Rights Reserved
servers:
- url: https://api.deliverect.com
  description: Production
- url: https://api.staging.deliverect.com
  description: Staging
security:
- oauth2: []
tags:
- name: Baskets
  description: Baskets operations for the Deliverect Commerce API.
paths:
  /commerce/{accountId}/baskets/recreate:
    post:
      description: Deliverect Recreate Basket
      responses:
        '200':
          description: ''
          content:
            application/json:
              examples:
                OK:
                  summary: OK
                  value:
                    id: 65********************e2
                    channel: 20000
                    category:
                      type: restaurant
                    currency: USD
                    taxExclusive: true
                    status: open
                    items:
                    - id: 65********************27
                      menuId: 64********************7b
                      plu: QS-01
                      name: Classic Quesadilla + Drink
                      note: as much cheese as possible!
                      quantity: 1
                      price: 529
                      gross: 698
                      taxes:
                      - rate: 7000
                        name: GST
                        amount: 49
                      net: 747
                      subItems:
                      - customizationPlu: MOD-01
                        plu: DRNK-01
                        name: Coca Cola
                        quantity: 1
                        price: 169
                        note: Extra cold please
                        subItems: []
                      discounts: []
                      discountTotal: 0
                    - id: 691327c5d367f4588f9482fb
                      menuId: 6902550da160cca419af2469
                      plu: '645611577'
                      name: Chocolate Chip Cookie
                      quantity: 2
                      price: 159
                      gross: 318
                      taxes: []
                      net: 318
                      subItems: []
                      discounts: []
                      discountTotal: 0
                      note: In seperate bag please
                    payment:
                      tips: []
                      discountsTotal: 0
                      chargesTotal: 0
                      taxTotal: 56
                      tipTotal: 0
                      subTotal: 1016
                      total: 1065
                    customer:
                      name: John Doe
                      companyName: ACME
                      phoneNumber: '+3211223344'
                      email: john.doe@acme.com
                      externalId: crm-id-1234
                      tin: '123456789'
                    fulfillment:
                      type: pickup
                      time: null
                    taxes:
                    - name: SALES_TAX
                      amount: 49
                    discounts: []
                    charges:
                      serviceCharge:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                        type: fixed
                      bagFee:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                      deliveryFee:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                      taxTotal: 0
                      netTotal: 0
                      grossTotal: 0
                    created: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    updated: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    deleted: false
                    etag: f4c8f20eeb23206c2bc8cf66c2843a6efaa3eaaf
                    accountId: 66********************d1
                    storeId: 67********************a8
                    channelLinkId: 67********************a8
                    channelOrderId: null
                    channelOrderDisplayId: null
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: 65********************e2
                  channel:
                    type: integer
                    example: 20000
                    default: 0
                  category:
                    type: object
                    properties:
                      type:
                        type: string
                        example: restaurant
                  currency:
                    type: string
                    example: USD
                  taxExclusive:
                    type: boolean
                    example: true
                    default: true
                  status:
                    type: string
                    example: open
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          example: 65********************27
                        menuId:
                          type: string
                          example: 64********************7b
                        plu:
                          type: string
                          example: QS-01
                        name:
                          type: string
                          example: Classic Quesadilla + Drink
                        note:
                          type: string
                          example: as much cheese as possible!
                        quantity:
                          type: integer
                          example: 1
                          default: 0
                        price:
                          type: integer
                          example: 529
                          default: 0
                        gross:
                          type: integer
                          example: 698
                          default: 0
                        taxes:
                          type: array
                          items:
                            type: object
                            properties:
                              rate:
                                type: integer
                                example: 7000
                                default: 0
                              name:
                                type: string
                                example: GST
                              amount:
                                type: integer
                                example: 49
                                default: 0
                        net:
                          type: integer
                          example: 747
                          default: 0
                        subItems:
                          type: array
                          items:
                            type: object
                            properties:
                              customizationPlu:
                                type: string
                                example: MOD-01
                              plu:
                                type: string
                                example: DRNK-01
                              name:
                                type: string
                                example: Coca Cola
                              quantity:
                                type: integer
                                example: 1
                                default: 0
                              price:
                                type: integer
                                example: 169
                                default: 0
                              note:
                                type: string
                                example: Extra cold please
                              subItems:
                                type: array
                                items:
                                  type: object
                                  properties: {}
                        discounts:
                          type: array
                          items:
                            type: object
                            properties: {}
                        discountTotal:
                          type: integer
                          example: 0
                          default: 0
                  payment:
                    type: object
                    properties:
                      tips:
                        type: array
                        items:
                          type: object
                          properties: {}
                      discountsTotal:
                        type: integer
                        example: 0
                        default: 0
                      chargesTotal:
                        type: integer
                        example: 0
                        default: 0
                      taxTotal:
                        type: integer
                        example: 56
                        default: 0
                      tipTotal:
                        type: integer
                        example: 0
                        default: 0
                      subTotal:
                        type: integer
                        example: 1016
                        default: 0
                      total:
                        type: integer
                        example: 1065
                        default: 0
                  customer:
                    type: object
                    properties:
                      name:
                        type: string
                        example: John Doe
                      companyName:
                        type: string
                        example: ACME
                      phoneNumber:
                        type: string
                        example: '+3211223344'
                      email:
                        type: string
                        example: john.doe@acme.com
                      externalId:
                        type: string
                        example: crm-id-1234
                      tin:
                        type: string
                        example: '123456789'
                  fulfillment:
                    type: object
                    properties:
                      type:
                        type: string
                        example: pickup
                      time: {}
                  taxes:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          example: SALES_TAX
                        amount:
                          type: integer
                          example: 49
                          default: 0
                  discounts:
                    type: array
                    items:
                      type: object
                      properties: {}
                  charges:
                    type: object
                    properties:
                      serviceCharge:
                        type: object
                        properties:
                          value:
                            type: integer
                            example: 0
                            default: 0
                          taxRate:
                            type: integer
                            example: 0
                            default: 0
                          gross:
                            type: integer
                            example: 0
                            default: 0
                          tax:
                            type: integer
                            example: 0
                            default: 0
                          net:
                            type: integer
                            example: 0
                            default: 0
                          type:
                            type: string
                            example: fixed
                      bagFee:
                        type: object
                        properties:
                          value:
                            type: integer
                            example: 0
                            default: 0
                          taxRate:
                            type: integer
                            example: 0
                            default: 0
                          gross:
                            type: integer
                            example: 0
                            default: 0
                          tax:
                            type: integer
                            example: 0
                            default: 0
                          net:
                            type: integer
                            example: 0
                            default: 0
                      deliveryFee:
                        type: object
                        properties:
                          value:
                            type: integer
                            example: 0
                            default: 0
                          taxRate:
                            type: integer
                            example: 0
                            default: 0
                          gross:
                            type: integer
                            example: 0
                            default: 0
                          tax:
                            type: integer
                            example: 0
                            default: 0
                          net:
                            type: integer
                            example: 0
                            default: 0
                      taxTotal:
                        type: integer
                        example: 0
                        default: 0
                      netTotal:
                        type: integer
                        example: 0
                        default: 0
                      grossTotal:
                        type: integer
                        example: 0
                        default: 0
                  created:
                    type: string
                    example: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  updated:
                    type: string
                    example: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  deleted:
                    type: boolean
                    example: false
                    default: true
                  etag:
                    type: string
                    example: f4c8f20eeb23206c2bc8cf66c2843a6efaa3eaaf
                  accountId:
                    type: string
                    example: 66********************d1
                  storeId:
                    type: string
                    example: 67********************a8
                  channelLinkId:
                    type: string
                    example: 67********************a8
                  channelOrderId: {}
                  channelOrderDisplayId: {}
        '422':
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: product_snoozed
                  message:
                    type: string
                    example: Product is currently snoozed
                  context:
                    type: object
                    properties:
                      menuId:
                        type: string
                        example: 63********************b5
                      plu:
                        type: string
                        example: '123'
              examples:
                Unprocessable Entity:
                  summary: Unprocessable Entity
                  value:
                    code: product_snoozed
                    message: Product is currently snoozed
                    context:
                      menuId: 63********************b5
                      plu: '123'
          description: Unprocessable Entity
      parameters:
      - in: path
        name: accountId
        schema:
          type: string
        required: true
        description: The accountId value.
        example: 5b71c6489f00290d4
      operationId: post_commerce_accountid_baskets_recreate
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                storeId:
                  type: string
                  example: 609a1b2c3d4e5f6a7b8c9d0e
                orderId:
                  type: string
                  example: 609a1b2c3d4e5f6a7b8c9d0e
              required:
              - storeId
              - orderId
            examples:
              post_commerce_accountid_baskets_recreateRequest:
                summary: Default post_commerce_accountid_baskets_recreate request
                x-microcks-default: true
                value:
                  storeId: 609a1b2c3d4e5f6a7b8c9d0e
                  orderId: 609a1b2c3d4e5f6a7b8c9d0e
      summary: Deliverect Recreate Basket
      tags:
      - Baskets
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /commerce/{accountId}/baskets:
    post:
      tags:
      - Baskets
      summary: Deliverect Create Basket
      description: This endpoint creates a Basket for the store.
      operationId: commerce_channel_api_baskets_create_basket
      parameters:
      - name: accountId
        in: path
        schema:
          type: string
          default: ''
        required: true
        description: The accountId value.
        example: 5b71c6489f00290d4
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - channelLinkId
              properties:
                channelLinkId:
                  type: string
                  description: ID of the store the basket is happening for.
                  default: ''
                  example: 5e8abc11dec0001a009b
                fulfillment:
                  type: object
                  required:
                  - type
                  properties:
                    type:
                      type: string
                      default: pickup
                      enum:
                      - pickup
                      - delivery
                      - eatIn
                      - dispatch
                      example: pickup
                items:
                  type: array
                  items:
                    properties:
                      menuId:
                        type: string
                        example: 609a1b2c3d4e5f6a7b8c9d0e
                      plu:
                        type: string
                        default: 3F_COMBO
                        example: 3F_COMBO
                      quantity:
                        type: integer
                        default: 2
                        format: int32
                        example: 2
                      note:
                        type: string
                        example: No salad
                      subItems:
                        type: array
                        items:
                          properties:
                            plu:
                              type: string
                              default: A_FRS
                              example: A_FRS
                            customizationPlu:
                              type: string
                              example: string
                            quantity:
                              type: integer
                              default: 1
                              format: int32
                              example: 1
                            note:
                              type: string
                              example: No salad
                          required:
                          - plu
                          - customizationPlu
                          - quantity
                          type: object
                    required:
                    - menuId
                    - plu
                    - quantity
                    type: object
                customer:
                  type: object
                  properties:
                    name:
                      type: string
                      example: Deliverect's Pizza Place
                    companyName:
                      type: string
                      example: Deliverect's Pizza Place
                    phoneNumber:
                      type: string
                      example: '+15555550123'
                    email:
                      type: string
                      example: customer@example.com
                    externalId:
                      type: string
                      example: 609a1b2c3d4e5f6a7b8c9d0e
                    tin:
                      type: string
                      example: string
                    crmProfileId:
                      type: string
                      description: If the order is to be assigned to a CRM customer, this fields needs to have a valid crmProfileId.
                      example: 609a1b2c3d4e5f6a7b8c9d0e
            examples:
              pickup:
                value:
                  storeId: 67********************2c
                  fulfillment:
                    type: pickup
                    time: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  items:
                  - menuId: 62********************3w
                    plu: PR1234
                    quantity: 2
                    note: extra salt please
                    subItems:
                    - plu: MOD123
                      customizationPlu: CATOPT3
                      quantity: 1
                  - menuId: 62********************3w
                    plu: PR5678
                    quantity: 1
                  customer:
                    name: John Doe
                    companyName: ACME
                    phoneNumber: '+3211223344'
                    email: john.doe@acme.com
                    externalId: crm-id-1234
                    tin: '123456789'
              delivery:
                value:
                  storeId: 67********************2c
                  fulfillment:
                    type: delivery
                    address:
                      line: 5030 W Lovers Ln, Dallas, TX 75209, US
                      subpremise: Floor 1, Left Door
                      street: 5030 W Lovers Ln
                      area: Bluffview
                      city: Dallas
                      postalCode: '75209'
                      stateOrProvince: TX
                      country: US
                      coordinates:
                      - 32.850713
                      - -96.828014
                      note: first floor, left door, happy dog
                  items:
                  - menuId: 62********************3w
                    plu: PR1234
                    quantity: 2
                    note: extra salt please
                    subItems:
                    - plu: MOD123
                      customizationPlu: CATOPT2
                      quantity: 1
                  - menuId: 62********************3w
                    plu: PR5678
                    quantity: 1
                  customer:
                    name: John Doe
                    companyName: ACME
                    phoneNumber: '+3211223344'
                    email: john.doe@acme.com
                    externalId: crm-id-1234
                    tin: '123456789'
              eat-in:
                value:
                  storeId: 67********************2c
                  fulfillment:
                    type: eatIn
                    spot: table-5
                  items:
                  - menuId: 62********************3w
                    plu: PR1234
                    quantity: 2
                    note: extra salt please
                    subItems:
                    - plu: MOD123
                      customizationPlu: CATOPT2
                      quantity: 1
                  - menuId: 62********************3w
                    plu: PR5678
                    quantity: 1
                  customer:
                    name: John Doe
                    companyName: ACME
                    phoneNumber: '+3211223344'
                    email: john.doe@acme.com
                    externalId: crm-id-1234
                    tin: '123456789'
              curbside:
                summary: curbside
                value:
                  storeId: 67********************2c
                  fulfillment:
                    type: curbside
                    time: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    pickupNotes: Yellow Honda
                  items:
                  - menuId: 62********************3w
                    plu: PR1234
                    quantity: 2
                    note: extra salt please
                    subItems:
                    - plu: MOD123
                      customizationPlu: CATOPT3
                      quantity: 1
                  - menuId: 62********************3w
                    plu: PR5678
                    quantity: 1
                  customer:
                    name: John Doe
                    companyName: ACME
                    phoneNumber: '+3211223344'
                    email: john.doe@acme.com
                    externalId: crm-id-1234
                    tin: '123456789'
              Group:
                summary: Group
                value:
                  storeId: 67********************2c
                  fulfillment:
                    type: pickup
                    time: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  items: []
                  group:
                    customers:
                    - role: host
                      name: John Doe
                      companyName: ACME
                      phoneNumber: '+3211223344'
                      email: john.doe@acme.com
                      externalId: crm-id-1234
                      tin: '123456789'
                    - role: guest
                      name: Patrick Doe
                      companyName: ACME
                      phoneNumber: '+3211223344'
                      email: patrick.doe@acme.com
                      externalId: crm-id-1235
                      tin: '123456790'
                  customer: null
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                OK:
                  value:
                    id: 65********************e2
                    channel: 10001
                    category:
                      type: restaurant
                    currency: USD
                    taxExclusive: true
                    status: open
                    items:
                    - id: 65********************27
                      menuId: 64********************7b
                      plu: DRNK-01
                      name: Coca Cola
                      quantity: 1
                      price: 219
                      gross: 219
                      taxes:
                      - rate: 7000
                        name: GST
                        amount: 15
                      net: 234
                      subItems: []
                      discounts: []
                      discountTotal: 0
                    - id: 65********************e2
                      menuId: 64********************7b
                      plu: QS-01
                      name: Classic Quesadilla + Drink
                      quantity: 1
                      price: 399
                      gross: 399
                      taxes:
                      - rate: 7000
                        name: GST
                        amount: 28
                      net: 427
                      subItems:
                      - customizationPlu: MOD-01
                        plu: GR-CH
                        name: Green Chillis
                        quantity: 1
                        price: 0
                        subItems: []
                      - customizationPlu: INGR-1
                        plu: '645611577'
                        name: No Onions
                        quantity: 1
                        price: 0
                        subItems:
                        - customizationPlu: SUB-01
                          plu: 654267959-655503030
                          name: Spring Onion
                          quantity: 1
                          price: 0
                          subItems: []
                      discounts: []
                      discountTotal: 0
                    donations: []
                    payment:
                      tips: []
                      donationTotal: 0
                      discountsTotal: 0
                      chargesTotal: 0
                      taxTotal: 43
                      tipTotal: 0
                      subTotal: 618
                      total: 661
                    customer:
                      name: John Doe
                      companyName: ACME
                      phoneNumber: '+3211223344'
                      email: john.doe@acme.com
                      externalId: crm-id-1234
                      tin: '123456789'
                      crmProfileId: 67********************a8
                    fulfillment:
                      type: delivery
                      address:
                        line: 8719 Avenue D, Brooklyn, NY, 11236, US
                        street: 8719 Avenue D
                        city: Brooklyn
                        postalCode: '11236'
                        stateOrProvince: NY
                        country: US
                        coordinates:
                        - 40.6456946
                        - -73.9143276
                        note: first floor, left door, happy dog
                      pickupNotes: Yellow Honda
                    taxes:
                    - name: GST
                      amount: 43
                    discounts: []
                    charges:
                      serviceCharge:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                        type: fixed
                      bagFee:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                      deliveryFee:
                        value: 0
                        taxRate: 0
                        gross: 0
                        tax: 0
                        net: 0
                      taxTotal: 0
                      netTotal: 0
                      grossTotal: 0
                    preparationTime: 0
                    preparationDelayTime: 0
                    created: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    updated: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    deleted: false
                    etag: f4c8f20eeb23206c2bc8cf66c2843a6efaa3eaaf
                    accountId: 66********************d1
                   

# --- truncated at 32 KB (118 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/deliverect/refs/heads/main/openapi/deliverect-baskets-api-openapi.yml