Mobile Payments

A set of endpoints dedicated for mobile payment solution providers integrating with POS

Simplified Mobile Payment Flow sequence diagram

  1. The 3rd Party sends a request to retrieve a check by order number.
  2. The 3rd Party receives a list of checks matching the provided order number.
  3. The 3rd Party sends a request to execute a payment transaction using an access token obtained via the Auth Token process, as described in Access Token Exchange Flow.
  4. The 3rd Party receives payment data upon a successful sale.
  5. The 3rd Party registers the payment data for the specific check.
  6. The 3rd Party receives the payment identifier and the remaining amount due, if applicable.

Methods

Retrieve Checks for a location

Retrieve Checks for a specified location

GET /pos/v2/{locationId}/checks

Query Parameters

Name Type Description
filter object Set of search parameters. They can be defined as a URI parameters or JSON object
filter.status array Filterable check statuses. Only 'OPEN' is supported at this time. Reserved for future use.
filter.orderNumber string A number to filter the checks by

Response 200

A list of Checks

{
  "results": [
    {
      "posRef": "string",
      "orderNumber": "string",
      "tableName": "string",
      "guestCount": 0,
      "status": "OPEN",
      "openedAt": "2025-09-10T11:50:24.922Z",
      "ownedByEmployeeRef": "string",
      "ownedByEmployee": "string",
      "subtotal": 0,
      "dualPricing": {
        "cashTotal": 0,
        "cashAmountDue": 0
      },
      "supplementalFee": {
        "name": "string",
        "amount": 0
      },
      "taxes": 0,
      "otherTaxes": 0,
      "taxList": [
        {
          "name": "string",
          "amount": 0
        }
      ],
      "hiddenTaxList": [
        {
          "name": "string",
          "amount": 0
        }
      ],
      "gratuity": 0,
      "total": 0,
      "paymentAmountDue": 0,
      "paymentAmountPaid": 0,
      "isLocked": true,
      "items": [
        {
          "posRef": "string",
          "name": "string",
          "quantity": 0,
          "modifiersAsText": "string",
          "price": 0
        }
      ]
    }
  ],
  "meta": {}
}

Retrieve a Check for a location

Retrieve a Check for a specified location

GET /pos/v2/{locationId}/checks/{posRef}

Response 200

A uniquely identified Check

Response 404

Check not found


Pay for a specific check

Pay for a specific check

POST /pos/v2/{locationId}/checks/{posRef}/pay

Request Body (required)

Content-Type: application/json

{
  "amount": 0,
  "card": {
    "type": "AX",
    "last4Digits": "string",
    "expirationDate": "string",
    "token": "string"
  },
  "transaction": {
    "authorizationCode": "string",
    "invoice": "string"
  }
}

Response 200

Payment successful

{
  "paymentRef": "string",
  "remainingAmount": "string"
}

Definitions

Check

A check retrieved from POS

Name Type Description
posRef* string Unique identifier for the check within a given location.
orderNumber* string Human-readable order number displayed to staff or customers.
tableName string Name or number of the table associated with the check.
guestCount integer Number of guests associated with the check.
status* string Current lifecycle status of the check. Possible values:
  • OPEN
openedAt* string Timestamp of when the check was opened.
ownedByEmployeeRef* string The employee reference responsible for this check.
ownedByEmployee* string The employee name responsible for this check.
subtotal* integer Subtotal of the check, in cents, excluding taxes, gratuity, and fees
dualPricing object Breakdown of pricing if Dual Pricing is in effect.
supplementalFee object Additional fee (e.g., service fee or surcharge) added to the check.
taxes* integer Total tax amount applied to the check, in cents.
otherTaxes* integer Additional or non-standard taxes applied to the check, in cents.
taxList array Itemized list of all applied taxes on the check.
hiddenTaxList array Itemized list of hidden taxes (e.g., embedded taxes) applied to the check.
gratuity* integer Gratuity or tip amount applied to the check, in cents.
total* integer Total amount of the check including all charges, in cents.
paymentAmountDue* integer Remaining amount to be paid for the check, in cents.
paymentAmountPaid* integer Amount already paid towards this check, in cents
isLocked* boolean If true, the check is locked and cannot be paid or modified.
items* array -

Dual Pricing

Breakdown of pricing if Dual Pricing is in effect.

Name Type Description
cashTotal* integer Total check amount when paid in cash, in cents.
cashAmountDue* integer Remaining amount due if paying with cash, in cents.

Supplemental Fee

Additional fee (e.g., service fee or surcharge) added to the check.

Name Type Description
name* string Supplemental fee name.
amount* integer Supplemental fee amount in cents.

Tax

Name Type Description
name string Name of the tax.
amount integer Amount of this specific tax, in cents.

Hidden Tax

Name Type Description
name string Name of the hidden tax.
amount integer Amount of the hidden tax, in cents.

Item

List of items included in this check.

Name Type Description
posRef string Unique identifier for the item within the location.
name string Display name of the item.
quantity number Number of units sold for this item.
modifiersAsText string Comma-separated list of modifiers applied to the item.
price integer Total price of the item, including modifiers, in cents.

results matching ""

    No results matching ""