Ryde Developers
Español Dashboard ryde.us.com

Business

Operate a store you are authorized for: read and work its order queue, and manage its catalogue. These are the same routes the Ryde merchant portal and its point of sale call, so a change made here appears on the store's own terminal immediately — there is no separate "API catalogue" to keep in step. Access needs the merchant's own authorization plus their signed Ryde business agreement; a developer cannot accept that agreement on a store's behalf.

API version v1 · View as Markdown

Operate a store you are authorized for: read and work its order queue, and manage its catalogue. These are the same routes the Ryde merchant portal and its point of sale call, so a change made here appears on the store's own terminal immediately — there is no separate "API catalogue" to keep in step. Access needs the merchant's own authorization plus their signed Ryde business agreement; a developer cannot accept that agreement on a store's behalf.

Lifecycle

  PLACED                (the customer has paid, or is paying cash)
     |
  MERCHANT ACCEPTED  ---> REJECTED   (a paid order is refunded to the
     |                                customer's Ryde wallet)
  PREPARING
     |
  READY FOR PICKUP      (for a delivery order, THIS is what dispatches
     |                   a Ryde courier — couriers accept first-come,
     |                   so there is nothing to assign)
  PICKED UP
     |
  DELIVERED             (or COMPLETED, for pickup and dine-in)

Operations

GET /v1/business/orders

Beta Business agreement required Sandbox supported

List the store's orders, newest first. Filter by status or fulfillment, or ask only for active work.

Operationlist_business_orders
Scopeorders.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toollist_business_orders

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/orders' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

GET /v1/business/orders/{order_id}

Beta Business agreement required Sandbox supported

Read one of the store's orders in full, including its line items and status history.

Operationget_business_order
Scopeorders.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toolget_business_order

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

POST /v1/business/orders/{order_id}/accept

Beta Business agreement required Sandbox supported

Accept an incoming order. Refused with 402 if a card or wallet order has not been paid yet.

Operationaccept_business_order
Scopeorders.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolaccept_business_order

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/accept' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/orders/{order_id}/reject

Beta Business agreement required Sandbox supported

Reject an order. A paid order is refunded to the customer's Ryde wallet — or, when the store collected it on its own Stripe account, to the customer's card by the store — and any booked slot is released.

Operationreject_business_order
Scopeorders.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolreject_business_order

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/reject' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/orders/{order_id}/preparing

Beta Business agreement required Sandbox supported

Mark an accepted order as being prepared, so the customer's tracking reflects the kitchen.

Operationstart_business_order_prep
Scopeorders.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolstart_business_order_prep

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/preparing' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/orders/{order_id}/ready

Beta Business agreement required Sandbox supported

Mark an order ready for collection. For a delivery order this is what dispatches a Ryde courier.

Operationmark_business_order_ready
Scopeorders.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolmark_business_order_ready

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/ready' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/orders/{order_id}/complete

Beta Business agreement required Sandbox supported

Complete a pickup or dine-in order. Refused with 409 while a table check is still open.

Operationcomplete_business_order
Scopeorders.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolcomplete_business_order

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/orders/$order_id/complete' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

GET /v1/business/catalog/items

Beta Business agreement required Sandbox supported

List the store's catalogue items with their prices, modifiers and availability.

Operationlist_catalog_items
Scopemenu.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toollist_catalog_items

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/catalog/items' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

GET /v1/business/catalog/items/{item_id}

Beta Business agreement required Sandbox supported

Read one catalogue item by its id: price, SKU, barcode, tax treatment, stock and availability.

Operationget_catalog_item
Scopemenu.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toolget_catalog_item

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

POST /v1/business/catalog/items

Beta Business agreement required Sandbox supported

Create a catalogue item. It appears immediately in the store's POS and on its Ryde storefront.

Operationcreate_catalog_item
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolcreate_catalog_item

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/items' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

PUT /v1/business/catalog/items/{item_id}

Beta Business agreement required Sandbox supported

Update a catalogue item's name, description, price, category or modifier groups.

Operationupdate_catalog_item
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolupdate_catalog_item

Example request

curl -sX PUT 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

PUT /v1/business/catalog/items/by-sku/{sku}

Beta Business agreement required Sandbox supported

Create or update the catalogue item with this SKU. The SKU is unique within the store, so the same call is safe to repeat.

Operationupsert_catalog_item_by_sku
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolupsert_catalog_item_by_sku

Example request

curl -sX PUT 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/by-sku/$sku' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

PUT /v1/business/catalog/items/{item_id}/availability

Beta Business agreement required Sandbox supported

Take an item off sale or put it back on, without deleting it. The reversible way to 86 something.

Operationset_catalog_item_availability
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolset_catalog_item_availability

Example request

curl -sX PUT 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id/availability' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

DELETE /v1/business/catalog/items/{item_id}

Beta Business agreement required Sandbox supported

Remove a catalogue item. There is no undo through the API — to take something off sale temporarily, set its availability instead.

Operationdelete_catalog_item
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP tooldelete_catalog_item

Example request

curl -sX DELETE 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/$item_id' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/catalog/items/batch

Beta Business agreement required Sandbox supported

Add many catalogue items at once, with their categories. Duplicate-safe: an item matched by SKU or barcode is updated (price and description) instead of added twice, a name-only match is skipped unless decided, and mode "replace" retires items missing from the list once confirm_retire equals the count a 409 names.

Operationimport_catalog_items
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolimport_catalog_items

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/items/batch' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

GET /v1/business/catalog/export

Beta Business agreement required Sandbox supported

Export the store's sellable catalogue as rows in the fixed template's columns (name, SKU, barcode, category, type, price, tax, cost, stock, warehouse, description). Cost, stock and barcode are filled only for a token with menu.manage.

Operationexport_catalog
Scopemenu.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toolexport_catalog

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/catalog/export' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

GET /v1/business/catalog/template

Beta Business agreement required Sandbox supported

The template's columns, the values each accepts, an example row, the row limit and the import modes.

Operationget_catalog_template
Scopemenu.read
EntitlementBusiness agreement required
IdempotencyNot required
MCP toolget_catalog_template

Example request

curl -s 'https://sandbox-api.ryde.us.com/v1/business/catalog/template' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN"

POST /v1/business/catalog/import/preview

Beta Business agreement required Sandbox supported

Check rows in the template's columns against the catalogue WITHOUT writing: what is new, updated, unchanged, a possible duplicate or an error, per row. Answers a token for the commit.

Operationpreview_catalog_import
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolpreview_catalog_import

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/import/preview' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'

POST /v1/business/catalog/import/commit

Beta Business agreement required Sandbox supported

Apply a previewed import by its token, in mode merge, add_only or replace. Committing the same token again answers the first result and writes nothing.

Operationcommit_catalog_import
Scopemenu.manage
EntitlementBusiness agreement required
IdempotencySupported
MCP toolcommit_catalog_import

Example request

curl -sX POST 'https://sandbox-api.ryde.us.com/v1/business/catalog/import/commit' \
  -H "Authorization: Bearer $RYDE_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{ … }'