Skip to main content

Welcome

The Salesive Apps API is what your installed app calls to read and write a merchant’s store data — orders, catalog, customers, notifications, and more. You authenticate with the app access token (prefixed app_) your app receives when a merchant installs it, and every endpoint is gated by the OAuth scopes that merchant granted.
The target store is bound to your token server-side from the installation. You never send a shop id — no x-shop-id header — so a token can only ever touch the one store it was installed on. Use the Try it playground on any endpoint page: paste your app_ token as the Bearer credential and call the live endpoint.

Three things, don’t confuse them

  • The Store API (store.salesive.com) is a different API for storefronts, not for apps.
  • Managing your app — registering it, editing its listing, requesting scopes, submitting it for review — happens in the Salesive dashboard Developer console, not through an API.

Authentication

Send your app access token as a Bearer header on every request:
You obtain this token through the OAuth install flow when a merchant installs your app — see Install your app. The token is bound to that one installation (one store); uninstalling it revokes the token immediately.

Version and rate limit headers

Send the API version you built against with X-Salesive-Api-Version: 2026-11; every response echoes the version that served it. Each installation can burst 40 calls and sustain 2 a second; every response reports the bucket in X-Salesive-Api-Call-Limit, and a 429 comes with Retry-After. See Versioning and Rate limits.

Scopes gate everything

Every endpoint requires a specific scope that the merchant granted at install. A call without the required scope is rejected with 403. Request only the scopes your app needs — see Scopes & permissions for the full catalog and what each unlocks.
A successful response uses the standard envelope:

Money and units

Every store amount in the Apps API is a plain JSON number in the major unit of the store’s currency: naira for NGN, dollars for USD, and so on. A price of 2200 means 2,200.00, not 22.00 and not 220,000 kobo. Amounts are never minor units (kobo or cents) and never strings. Send amounts the same way. { "price": 2200 } sets a price of 2,200.00, and a totalPrice of 12500 in a cart response is 12,500.00 in the store currency.
The one amount that is a string is the balance an app wallet source reports, because it is your own decimal value and the platform stores it without converting it. See Wallet sources.

What you can call

Each resource group is gated by its matching READ_* / WRITE_* scope (a few are read-only for apps). Open any group in the sidebar to see its endpoints and run them from the Try it playground.

Store context

Read the store’s identity and the installing user, with no scope required.

Orders

List, inspect, create POS orders, and update orders.

Catalog

Products, menu items (foods), services and digital products, with full CRUD.

Digital access

Buyer access, grants and the all-access pass on digital stores.

Customers

Read and manage the store’s customers.

Carts & wishlists

Read customer carts and saved products.

Categories

Organize the catalog into categories.

Discounts

Coupons and discount codes.

Blogs

Storefront blog posts.

Notifications

Read the merchant’s notifications and send new ones.

Emails

Email the merchant, customers, or subscribers.

Tasks & Notes

Operational tasks and notes.

Scripts

Custom storefront scripts and tracking.

Comments

Reply to and moderate storefront comments.

Shipping & Shipday

Shipping options, shipments and Shipday dispatch.

Domains, Roles & Payouts

Read-only access to store domains, roles and payouts.

KYC

Read status and start identity verification.