Skip to main content
POST
Create a POS (in-person) order
Creates an in-person POS order with source pos, marked paid, computing totals as subtotal − discount + tax. The store is bound to your app token server-side — never send a shop id. Pass additionalInfo — a list of custom labelled { label, value } entries (e.g. a loyalty card number or note) — to attach up to 50 custom fields to the order.

Authorizations

Authorization
string
header
required

Installed-app access token (prefix app_), issued by the OAuth install flow. The store is bound to the token server-side — never send a shop id.

Body

application/json
items
object[]
required

Line items (at least one).

Minimum array length: 1
discount
number
default:0

Order-level discount amount.

Required range: x >= 0
tax
number
default:0

Order-level tax amount.

Required range: x >= 0
paymentMethod
enum<string>
default:cash

Payment method used at the point of sale.

Available options:
cash,
card,
transfer,
other
customerName
string

Walk-in customer name (optional).

customerEmail
string<email>

Walk-in customer email (optional, validated as an email when provided).

customerPhone
string

Walk-in customer phone (optional).

additionalInfo
object[]

Custom labelled key/value info to attach to the order (optional, max 50 entries).

Maximum array length: 50

Response

The created POS order.

Standard Salesive response envelope. The operation-specific payload is carried in data.

status
integer
required

HTTP status code, echoed in the body.

success
boolean
required

Whether the request succeeded.

message
string
required

Human-readable result message.

data
object

An order created through the POS endpoint. Item products and the payment are referenced by id.