Фон
Функция автоматической привязки пропусков позволяет отправлять дополнительные пропуска пользователю, у которого уже есть ваш пропуск в Google Wallet. Вы также можете предварительно привязать пропуски к основному пропуску, когда пользователь сохраняет основной (главный) пропуск. Автоматически привязанный пропуск группируется с основным пропуском, а над ним появляется всплывающее сообщение, информирующее пользователя о том, что новый пропуск был привязан. В качестве основных или связанных пропусков поддерживаются следующие типы пропусков:
- Билет на мероприятие
- Посадочный талон
- Транзитный пропуск
- Предложение
- Подарочная карта
- абонемент лояльности
- Общий пропуск
![]() | ![]() |
| Основной пас с сообщением о добавлении нового паса. | Новый пропуск, связанный с основным пропуском. |
Варианты использования
У вас могут быть разные сценарии использования привязки пропусков к уже существующим. Вот несколько примеров:
- Привяжите предложение к существующей карте лояльности.
- Привяжите ваучер на питание к посадочному талону или билету на мероприятие.
- Привяжите парковочный пропуск к билету на мероприятие.
Некоторые моменты, которые следует учитывать при использовании автоматически связанных пропусков.
- Основной объект и связанный объект должны использовать один и тот же идентификатор эмитента (summerId).
- На один основной объект приходится не более 50 связанных объектов.
- Автоматическая отправка связанных пропусков не гарантируется и считается «максимально возможной». Пользователи могут отказаться от получения автоматически связанных пропусков. Если сценарий использования критически важен и пользователю необходимо получить связанный пропуск, мы рекомендуем связаться с ним по другому каналу, чтобы убедиться, что он добавит пропуск.
- В обновленную версию правил использования Google Wallet включены рекомендации по использованию автоматически связанных пропусков, которые необходимо соблюдать.
Этапы интеграции
Если вы уже создали основной объект, можете пропустить шаг 1.
- Создайте объект любого из перечисленных типов проходов с необходимыми параметрами. Это будет основной объект.
- Создайте еще один объект любого из перечисленных типов проходов. Он будет связанным объектом.
- До или после сохранения основного объекта обновите основной объект, указав в параметре linkedObjectIds идентификатор связанного объекта.
Для установки идентификаторов связанных объектов (linkedObjectIds) на первом этапе требуется минимальный объем полезной нагрузки. К числу обязательных параметров относятся:
- ISSUERID.PRIMARY_OBJECT_ID
- ISSUERID.PRIMARY_CLASS_ID
- ISSUERID.LINKED_OBJECT_ID
Пример JSON-запроса для добавления связанного объекта к объекту pass.
… { "id": "ISSUERID.PASS_OBJECTID", "classId": "ISSUERID.PASS_CLASSID", "barcode": { "type": "qrCode", "value": "QR code" }, "linkedObjectIds": ["ISSUERID.LINKED_PASS_OBJECTID"] } …
Пример JSON-ответа после связывания объекта с объектом передачи.
…
"state": "active",
"linkedObjectIds": {
"ISSUERID.LINKED_PASS_OBJECTID"
}
…Ожидаемое поведение
После получения успешного ответа устройства с обновленным вами пропуском должны получить связанный пропуск. Этот связанный пропуск будет сгруппирован вместе с основным пропуском. Пользователи могут увидеть связанный пропуск, проведя пальцем вправо.
Обработка исключений
Возможны ошибки, возникающие при неправильном использовании API, в том числе:
| Сообщение | Причина |
|---|---|
| Основной объект и связанный объект не имеют одинакового идентификатора эмитента. | Нельзя прикрепить связанный объект к объекту другого эмитента. |
| Основной объект и связанный объект относятся к одному и тому же объекту. | Нельзя прикрепить тот же объект, что и связанный объект. |
| Связанный объект не существует. | Связанный объект уже должен быть вставлен в Wallet API. |
| Связанный объект уже имеет другой связанный объект. Невозможно добавить вложенные связанные объекты. | Связанные объекты не могут иметь другие связанные объекты. |
| Объект уже связан с другим объектом. Невозможно добавить вложенные связанные объекты. | Основной объект не может быть связанным объектом сам по себе. |
| Невозможно добавить больше связанных объектов, превышен лимит. | Для основного пропуска достигнут лимит в 50 связанных пропусков. |

