Wallet Messaging API

A wallet message (also known as a wallet notification) is a way to communicate with your end users directly in their wallet app. These messages may display differently depending on which operating system the end user is on.

See our Wallet Notification guide for more information.

Available API Methods

Notes for messaging to Android devices

  • Geofenced notifications unavailable: Google has temporarily made geofenced notifications unavailable for a majority of users while they make platform improvements.
  • 12-hour notification restriction: Google doesn't allow notifications for messages sent to wallet passes within the first 12 hours after installation. Any updates or messages within this period will still appear on the pass, but no notification will appear on the user's lock screen.
  • Messaging cap: There is a limit of 3 push notification per 24-hour period for Android Wallet passes. Updates and messages will still appear on the pass, but no notification will appear on the user's lock screen.

Elements & Attributes

Data Element

Type

Description

wallet_message_id

String

Unique system-generated identifier for each message created

message

Object

Object reference for the message components.

message.template

String

Message template that contains the message to be sent to each item.

message.header

String

Optional header value to display with the message.

  • *Note**: Currently only used with Android wallet objects.

recipient_count

Integer

Number of items that were included in the message.

campaign_ref

Object

Object that contains data relevant to the wallet campaign this wallet message is associated with.

campaign_ref.id

String

Reference to wallet_id that identifies the wallet campaign this message is associated with.

campaign_ref.type

String

Campaign type (“Offer” or “Loyalty”).

campaign_ref.url

String

Reference to internal URL of mobile wallet campaign entity associated with this message.

filters

Array

Optional array of filter objects that will target the message to specific items in the wallet campaign.

created_at

Timestamp

Timestamp for when the campaign was created. It should be in the ISO 8601 format - for example: 2017-01-15T14:30Z.

updated_at

Timestamp

Timestamp for when the campaign was last updated. It should be in the ISO 8601 format - for example: 2017-02-18T19:30Z.

Entity Example

This is an example of a wallet message entity.

{
  "wallet_message_id": "abcdef23SDF2",
  "message": {
    "template": "This is the updated message I would like to send.",
    "header": "Header, for Google Wallet only."
  },
  "campaign_ref": {
    "id": "abCDefGHij",
    "type": "Loyalty",
    "url": "/companies/:company_id/campaigns/wallet/abCDefGHij"
  },
  "filters": [
    {
      "name": "group_code",
      "selector": "starts_with",
      "value": "DEA"
    },
    {
      "name": "providers",
      "selector": "any",
      "value": [
        "Passbook"
      ]
    }
  ],
  "recipient_count": 75,
  "url": "/companies/:company_id/campaigns/wallet/abCDefGHij/messages/abcdef23SDF2",
  "created_at": "2017-01-15T14:30Z",
  "updated_at": "2017-02-18T19:30Z"
}