Skip to main content

Connect POS and RMS to every channel

The Integrations API connects your POS and RMS with every sales channel your merchant operates. If you have built or used an integration like Uber Eats Marketplace, the building blocks will feel familiar: authentication, stores, menus, and orders. The difference is scope — Uber Eats is one channel. Fire spark is your omnichannel aggregator intelligence layer. Instead of integrating each aggregator separately, you connect once to Fire spark. We sync menus with your POS and RMS, apply intelligence across all your channels, and inject orders back into the system where your kitchen and operations already run.

New to Fire spark?

Start by connecting a merchant before building against the Integrations API.

What this integration does

Fire spark sits between your operational stack (POS, RMS, inventory) and your sales channels (app, web, kiosk, call center, Uber Eats, Rappi, PedidosYa, and more). A single-channel integration like Uber Eats typically handles:
  • Authentication — secure API access for your integration
  • Store management — which locations are live and how they operate
  • Menu synchronization — what customers see in the aggregator app
  • Order processing — receiving orders and sending them to your POS
Fire spark covers the same responsibilities, but across every channel connected to the merchant. Uber Eats is one entry in your channel list, not the entire integration.

How it works end to end

1

Authenticate your integration

Your server obtains an access token using OAuth 2.0 client credentials. All Integrations API requests use this token.
2

Sync menus with POS and RMS

Fire spark pulls menu structure, items, pricing, and availability from your POS or RMS. Operational changes flow from that source; you compose what customers see per channel, store, fulfillment type, or schedule.
3

Apply intelligence across channels

Fire spark shapes each selling context — channel-specific menus, scheduling, availability rules, and fulfillment options — without separate integrations per variation. Your app, aggregators, and in-store surfaces can show different assortments from the same synced foundation.
4

Receive orders from any channel

When a customer places an order on any connected channel, Fire spark sends a webhook to your integration with the order payload.
5

Send orders to POS and RMS

When the order reaches a status you subscribed to — typically injecting via order.status.changed — your integration creates the ticket in the merchant’s POS or RMS using the payload as-is.

Integration areas

The API is organized around the same domains you would expect from a marketplace integration, extended for omnichannel operations.

Authentication

OAuth 2.0 client credentials secure server-to-server access. Your integration authenticates once and calls endpoints for menus, stores, channels, orders, and fulfillment.

Token

Obtain an access token with client credentials.

Stores

Stores represent merchant locations. Map each Fire spark store to a location in your POS or RMS so menus and orders stay aligned per site.

List stores

Read stores for POS or RMS location mapping.

Upsert stores

Create or update up to 100 stores by external id.
Upload and maintain menu structures customers see on each surface. Fire spark synchronizes with your POS and RMS for item changes, pricing, and availability, then applies menu composition — different catalogs by channel, store, fulfillment, or schedule when your strategy requires it.

Menu sync guide

Learn how to keep POS, Fire spark, and channels in sync.

Channels

Channels are the surfaces where customers order: owned channels (app, web, kiosk) and aggregators (Uber Eats, Rappi, PedidosYa). Fire spark manages channel configuration and applies intelligence per channel without duplicating integrations.

Payments

Payment configurations decide which methods are available at checkout for a store, channel, brand, and fulfillment.

List payments

Read payment configurations for the merchant.

Upsert payments

Create or update up to 100 payment configurations by id.

Orders

Orders arrive via webhooks when a customer checks out on any channel. Your integration acknowledges each event and creates the POS ticket when order.status.changed fires with status injecting — with the order in whatever state it is at that moment.

Order webhooks

Learn webhook events and how order.status.changed sends orders to your POS or RMS.

Kiosk devices

Kiosk devices are the tablets linked to a kiosk channel and a store. List them, read one by id, or upsert alias, store, device code, and disabled payments.

Kiosk devices

Read and upsert the devices shown on the kiosk devices page.

Fulfillment

Fulfillment options (delivery, pickup, dine-in) define how orders are completed per store and channel. Keep fulfillment rules consistent between Fire spark and your operational stack.

Uber Eats vs Fire spark

If you already integrated with Uber Eats or a similar aggregator API, reuse the same patterns: authenticate, map stores, sync menus, listen for webhooks, and fulfill orders. Fire spark generalizes that model so you build it once and cover every channel.

Base URL

Postman collection

Download all Integrations API endpoints. Set client_id and client_secret, then run the Token request to populate bearerToken.

Next steps

Token

Get an access token

Menu sync

Sync menus with POS and RMS

Order webhooks

Receive orders and send them to POS

Architecture

architecture of the Integrations API