Clients
Loyalty card holders. Create, import, update, search.
Create a client
Creates a client and their loyalty card from the wallet's store card template. Without `clientType`, the client gets the default type; without `barcode`, the client ID is used as the barcode (when the card shows one). Returns the client with their card details (`passId`, `passStatus`, `shortLink`).
List clients
Paginated list of the wallet's clients with the state of their loyalty card (`passStatus`, `deviceTypes`, `shortLink`). Combine full-text search (`search`), exact-match filters and the status filter to find a client or a segment.
Bulk create clients
Returns a bulk operation: track its status and results with `GET /bulk-operations/{operationId}`.
Bulk update clients
Returns a bulk operation: track its status and results with `GET /bulk-operations/{operationId}`.
Bulk delete clients
Returns a bulk operation: track its status and results with `GET /bulk-operations/{operationId}`.
Sync passes for all clients
Rebuilds the loyalty card of every client in the wallet from their stored data, to bring installed cards back in line. Pass `clientType` to process only the clients of one type. Processing is asynchronous: the response only gives the number of clients to sync (`clientsToSync`).
Get a client by barcode
Returns a client of the wallet from their loyalty card barcode, with the state of their card. Handy at the point of sale, after scanning the card.
Delete a client by barcode
Deletes a client identified by their loyalty card barcode, together with their card. Returns the deleted client's data.
Update a client by barcode
Updates a client identified by their loyalty card barcode. Same behavior as `PATCH /clients/{id}`: only the fields you send change and the card is updated. Returns the updated client.
Update client-specific pass fields
Fields: `overrideStrip`, `additionalInformations`, `barcode`, `altBarcode`.
Update a client
Updates a client and their loyalty card. Only the fields you send change; the card installed on the client's phone is updated accordingly. Returns the updated client.
Get a client
Returns a client by ID, with the state of their loyalty card (`passStatus`, `deviceTypes`, `shortLink`), their type name (`clientTypeName`) and the status of their other passes.
Delete a client
Deletes a client and their loyalty card. Returns the deleted client's data.
Get client statistics
Returns client statistics for the wallet: breakdown by source (`crmSource`, `internalSource`, `extrnalSource`), active and inactive cards, and active or deleted cards per platform (iOS, Android). Narrow the period with `startDate` and `endDate` (creation date).
Send a reminder for inactive passes
Sends an email and/or SMS reminder to clients whose loyalty card has the `inactive` status. `type: all` targets all of them, `type: specific` only the clients listed in `ids`. Returns the number of cards found (`totalPasses`), reminders queued (`emailsQueued`) and cards skipped (`passesSkipped`).
Update a client's points balance (gain)
Replaces a client's points balance (`gain`) and updates their loyalty card. Returns the updated client.
Update a client's points balance (gain) by barcode
Replaces the points balance (`gain`) of a client identified by their loyalty card barcode. Same behavior as `PATCH /clients/{id}/gain`. Returns the updated client.