Skip to main content

Wallet Passes

Query wallet pass templates, list wallet passes for customers, and send push notifications to wallet pass holders.

List Templates

Retrieve wallet pass templates for a specific shop.
GET /v1/management/wallet-passes/templates
shop_identifier
string
required
The shop identifier
Required permission: wallet_pass_template:read

Example Request

curl -X GET "https://api.rxscale.com/v1/management/wallet-passes/templates?shop_identifier=my-shop" \
  -H "X-API-Key: your-api-key-here"

Response

{
  "data": [
    {
      "uid": "wpt-abc123",
      "display_name": "Loyalty Card",
      "pass_type": "generic",
      "shop_identifier": "my-shop"
    }
  ],
  "total": 1
}

List Wallet Passes

Retrieve wallet passes for a specific shop customer and shop combination.
GET /v1/management/wallet-passes
shop_customer_id
string
required
The shop customer ID
shop_identifier
string
required
The shop identifier
wallet_pass_template_uid
string
Optional template UID to filter by
Required permission: wallet_pass:read

Example Request

curl -X GET "https://api.rxscale.com/v1/management/wallet-passes?shop_customer_id=cust-123&shop_identifier=my-shop" \
  -H "X-API-Key: your-api-key-here"

Response

{
  "data": [
    {
      "uid": "wp-abc123",
      "wallet_pass_template_uid": "wpt-abc123",
      "shop_customer_id": "cust-123",
      "status": "active"
    }
  ],
  "total": 1
}

Send Push Notifications

Send push notifications to one or more wallet pass holders. Accepts a batch of notifications.
POST /v1/management/wallet-passes/push-notifications
Required permission: wallet_pass_push_notification:write

Request Body

The request body is a JSON array of notification objects.
[
  {
    "wallet_pass_uid": "wp-abc123",
    "message": "Your prescription is ready for pickup!"
  },
  {
    "wallet_pass_uid": "wp-def456",
    "message": "Hello {first_name}, your order has been shipped."
  }
]
FieldTypeRequiredDescription
wallet_pass_uidstringYesUID of the wallet pass to send the notification to
messagestringYesPush notification message text (supports {field} placeholders)

Example Request

curl -X POST "https://api.rxscale.com/v1/management/wallet-passes/push-notifications" \
  -H "X-API-Key: your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "wallet_pass_uid": "wp-abc123",
      "message": "Your prescription is ready for pickup!"
    }
  ]'

Response (201 Created)

{
  "data": [
    {
      "uid": "wpn-abc123",
      "wallet_pass_uid": "wp-abc123",
      "message": "Your prescription is ready for pickup!",
      "status": "queued"
    }
  ],
  "total": 1
}

Error Responses

Status CodeDescription
400Invalid body format, empty array, validation error, or wallet pass not found
403Missing wallet_pass_push_notification:write permission