Pass not updating
You changed some data. The API call succeeded. But the customer still sees the old value. Go through these checks in order.
Still stuck? Contact support with the customer id and the time of the call.
1. Did the call really succeed?
Check the HTTP status and the response body.
NOTHING_TO_UPDATE(204): the values sent match the current ones. Nothing goes out.INVALID_MULTIPARTorUNSUPPORTED_MEDIA_TYPE: wrong Content-Type. See Common API errors.- Bulk operation: the immediate response only says the operation was accepted. Check its result with GET
/bulk-operations/{operationId}.
2. Is the pass installed?
A pass sent but never added to the Wallet gets no updates: it does not exist on the phone yet.
Check the customer’s status with GET/clients/{id} or GET/clients, or listen for the pass.installed webhook. If they have not installed it, nudge them with POST/clients/reminder-inactive.
The customer may also have removed the pass (pass.uninstalled webhook). They need to add it again from their link.
3. Did you change the right object?
| You want to change… | The right call |
|---|---|
| A customer’s balance (points, cashback) | PATCH/clients/{id}/gain, or PATCH/clients/barcode/{barcode}/gain from the till |
| A customer’s name, email, type | PATCH/clients/{id} |
| The strip or details for one customer | PATCH/clients/{id}/specific |
| The loyalty card design for everyone | PATCH/store-cards |
| A trip’s times | PATCH/transits/{transitId}/passes/trip/{tripNumber} |
| One passenger’s ticket | PUT/transits/{transitId}/passes/{passId} |
| A customer’s coupon | PATCH/coupons/{id}/passes/{instanceId} |
| A hotel booking | PATCH/hotels/{id}/passes/{passId} |
4. Is the pass in a final state?
A cancelled or expired pass no longer updates: PASS_ALREADY_CANCELED, PASS_ALREADY_EXPIRED.
5. On the phone
- No network: the update arrives on the next connection.
- Automatic updates off: on iPhone, the customer can turn off updates for a pass in its details. They can also pull down on the back of the pass to force a refresh.
- Delay: updates go through Apple's or Google's servers. They are not always instant.
6. The value changed, but no notification?
That is expected in some cases: an update only shows a notification if the changed field is set to notify, and if the matching notification rule is on (communicationRules, PATCH/wallet-settings). See Push notifications.