Skip to main content
Use the Commerce API from your backend to manage sellable items and sync sales into your own systems. All endpoints use the M2M base URL:
M2M credentials are server-side secrets. Do not call these endpoints from browser, mobile, or embedded widget code.

Scopes

Commerce routes use the tenant attached to the M2M credential. Do not send a tenant id in the path or query string.

Item Model

scope is global unless the item is assigned to a property. Property-scoped items include propertyId.

List Items

Requires commerce:items:read.

Create an Item

Requires commerce:items:write.
Response:
Supported field types: text, number, email, phone, date, and select.

Read an Item

Requires commerce:items:read.

Update an Item

Requires commerce:items:write. Send only the fields you want to change.

Assign Item Scope

Requires commerce:items:write. Assign the item to one active property:
Make the item global:
Response:

Delete an Item

Requires commerce:items:write.

Sales

Sales are commerce purchases exposed with sales-oriented route names for external systems.

List Sales

Requires commerce:sales:read. Query parameters: Response:

Read a Sale

Requires commerce:sales:read.
Sale objects include payment status, fulfillment status, transfer/refund fields, captured checkout fields, linked conversation fields when available, and reservation details for reservation deposit purchases.