Full API integration
With a Full API integration, you build the rewards interface and call Spendstream directly. You control the customer journey, and Spendstream continues to run inventory, suppliers, fulfilment and affiliate connectivity.
What you control
- The interface, presentation and messaging.
- Reward calculations shown to your users, and your communications and workflows.
- When and how each Spendstream endpoint is called.
What Spendstream manages
- Brand inventory and supplier relationships.
- Gift card fulfilment through our gift card supplier.
- Affiliate network connectivity.
- Transaction recording and commission data.
Endpoints you will use
The available endpoints depend on your publisher configuration. Exact parameters, schemas and responses are in the API reference.
Task | Endpoints |
Authenticate |
|
Manage users |
|
Read the catalogue |
|
Affiliate offers |
|
Sell gift cards with hosted payment |
|
Sell gift cards from a prepaid balance |
|
Check a gift card balance |
|
Track transactions |
|
Typical build order
- Authenticate and cache the bearer token. See Authentication.
- Register users with a stable
UID, and store it alongside your own customer record. - Show brands, categories and promotions, and refresh them regularly.
- Build the gift card or affiliate journey for your configuration.
- Register a webhook URL and reconcile using
getTransactionsList. - Test on staging and follow the Go-live checklist.
Points that catch integrators out
- Check the body. Most endpoints return HTTP 200 with the real outcome in the
responsefield. promo_idis thepromotion-id. Take it fromgetPromotionsList, not thebrand-idfromgetBrands. A brand identifier returns a 400 with “no promotion found connection”.- Validate
user_idyourself. A gift card purchase throughpaymentLinkcreates an unknown user with blank details rather than rejecting it. - No server-side idempotency. Deduplicate orders on your side.
- Webhooks carry no event identifier and are not retried. Deduplicate on the transaction or user identifier plus status, and reconcile periodically.
Related pages
- Choose your integration model
- Choosing between white-label and Full API
- API quickstart
- Environments
- Testing payments on staging
On this page
- Full API integration