POS API / Overview

POS API Overview

Accept in-store payments with dynamic QR codes and payment pages via the Quickei POS API.

What is the POS API?

The POS API allows you to create payment orders from any point-of-sale system — physical terminals, kiosks, mobile apps, or ERP integrations like Odoo. Each order generates a dynamic QR code and/or a hosted payment page that your customer can use to pay.

Once a payment is completed, you receive a real-time webhook notification and can poll the order status at any time.

Base URL

BASE {{domain}}/merchant-api/pos/v1

Authentication

The POS API uses HTTP Basic Authentication. Encode your client_id and client_secret as base64 and include them in the Authorization header.

// Authorization header
Authorization: Basic base64(client_id:client_secret)

// Example with curl
curl -X POST {{base_url}}/orders \
  -H "Authorization: Basic Y2xpZW50X2lkOmNsaWVudF9zZWNyZXQ=" \
  -H "Content-Type: application/json"

You can find your client_id and client_secret in the Merchant Dashboard under Developer API → API Keys.

Rate Limiting

60 requests per minute

If you exceed the rate limit, you will receive a 429 Too Many Requests response. Implement exponential backoff in your client.

Order Statuses

Status Description
PENDING Order created, awaiting payment
PAID Payment received and confirmed
EXPIRED Order expired before payment was received
CANCELLED Order cancelled by merchant via API
REFUNDED Payment refunded to customer
REFUND_PENDING Refund requested, awaiting admin approval

Available Endpoints

POST /orders Create a new POS order
GET /orders List recent orders
GET /orders/{order_id} Get order details
POST /orders/{order_id}/cancel Cancel a pending order
GET /terminals List your terminals