Start here
Quickstart
From sign-up to your first accepted test order in about fifteen minutes.
Scanimart Connect lets your POS work with Scanimart stores: receive the online orders customers pay for in the Scanimart app, accept or reject them, keep stock counts in step, and book every Scanimart sale. This page takes you from nothing to an accepted test order.
You will need a terminal with curl, and somewhere to receive a webhook. For the webhook, any public HTTPS URL works — a tunnel such as ngrok http 3000 in front of your laptop is fine for now.
1. Create an account
Sign up with your company name and work e-mail, then confirm the address from the e-mail we send. Your company starts in the sandbox: everything works, against a test store that only you can see. Live keys come later, after review.
2. Set up your sandbox
In the dashboard, open Sandbox and press Set up sandbox. That creates a test store with five stocked products and connects it to your company. Note its store id — every store call takes it.
3. Create a test key
Open API keys with the mode switch on Test and create a company-wide key. It starts sk_test_ and is shown once; keep it somewhere safe. Company scope is required for webhook management and sandbox simulators.
export SCANIMART_KEY=sk_test_...
curl https://sandbox.api.scanimart.com/v1/ping \
-H "Authorization: Bearer $SCANIMART_KEY"{
"object": "ping",
"mode": "test",
"company": { "id": "…", "name": "Acme POS", "status": "PENDING_REVIEW" },
"key": { "prefix": "sk_test_4f9a", "scope": "company", "store_id": null }
}Test keys work only on sandbox.api.scanimart.com; live keys only on api.scanimart.com. Sending one to the other host is refused with a message that says so.
4. Register a webhook endpoint
Events — a new order, a cancellation, a finished sale — are pushed to you. Add an endpoint in Webhooks (Test mode), or with the API:
curl -X POST https://sandbox.api.scanimart.com/v1/webhook-endpoints \
-H "Authorization: Bearer $SCANIMART_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://your-tunnel.example/scanimart/webhooks"}'The response includes a secret starting whsec_. You need it to verify signatures; it is shown only on create and when you roll it (the dashboard can reveal it again after asking for your password).
5. Place a test order
In Sandbox, press Simulate a paid order — or call the API:
curl -X POST https://sandbox.api.scanimart.com/v1/sandbox/orders \
-H "Authorization: Bearer $SCANIMART_KEY"Within a second your endpoint receives order.placed, with the order's lines, prices and delivery fee in data.order.
6. Accept it
curl -X POST https://sandbox.api.scanimart.com/v1/stores/$STORE_ID/orders/$ORDER_ID/accept \
-H "Authorization: Bearer $SCANIMART_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"fulfilment_mode": "STORE_STAFF", "external_id": "BILL-20391"}'The order comes back ACCEPTED, and an order.accepted webhook follows. external_id is your own bill number: every later event about this order carries it, so you never have to map ids yourself.
Where next
- Online orders — the whole lifecycle, and who may do what when.
- Webhooks — verify signatures before you trust a single event.
- Sandbox and going live — the checklist your sandbox work ticks off on the way to live keys.
- API reference — every endpoint, generated from the same OpenAPI file the server is tested against.
