.. meta:: :description: Уведомление сопоставления карты при верификации в потоке Mobile Device Server Payneteasy: callback, передающий ссылку на сопоставленную карту после мобильной верификации. .. _api_verification_card_mapping_notification: Уведомление о сопоставлении карты Verification ###################################### .. role:: ex .. role:: code Введение ^^^^^^^^^^^^ | Уведомление о сопоставлении карты проверки инициируется запросом :code:`HTTPS POST` с использованием :ref:`URL-адресов` и :ref:`параметров`. | Уведомление о сопоставлении карт позволяет сопоставлять учётные данные Consumer (телефон, e-mail, адрес выставления счёта, имя в Twitter и т. д.) с данными карты. Сопоставления можно использовать в транзакциях Transfer или Sale вместо номеров карт и иной информации о держателе карты. Payneteasy отправляет запрос уведомления о сопоставлении карты Verification на сервер/прокси Присоединяющейся стороны с созданной на своей стороне ссылкой на карту — :ex:`{serverCardId}`. | Сервер Присоединяющейся стороны сопоставляет :ex:`{serverCardId}` с созданным на своей стороне :ex:`{clientCardId}`. Затем :ex:`{clientCardId}` может быть сопоставлен в приложении или на сервере Присоединяющейся стороны с любыми данными Consumer из исходного запроса Perform validation. Это позволяет приложению Присоединяющейся стороны обрабатывать транзакции Sale или Transfer по электронному адресу Consumer, номеру телефона и т. д. | :ex:`{uniqueReferenceCardId}` остаётся неизменным, если клиент выполняет другую проверку с тем же номером карты, но, например, с другой датой истечения срока действия. Присоединяющаяся сторона может использовать его для программ лояльности или контроля мошенничества. .. _api_url_verification_card_mapping_notification: API URL ^^^^^^^^ .. note:: | Это пример URL на сервере Присоединяющейся Стороны. .. list-table:: :widths: 100 :header-rows: 1 :class: longtable * - Сервер Присоединяющейся Стороны * - :ex:`https://proxy.connectingpartyserver.com/verification/notification` .. _api_parameters_verification_card_mapping_notification: Параметры запроса ^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30, 45, 25 :header-rows: 1 :class: longtable * - Название параметра - Описание - Значение * - :code:`consumer` - - | ``Тип``: **Object** * - :code:`consumer.device` - - | ``Тип``: **Object** * - :code:`consumer.device.serialNumber` - Серийный номер устройства потребителя. - | ``Тип``: String | ``Длина``: 1-50 * - :code:`reference` - - | ``Тип``: **Object** * - :code:`reference.serverCardId` - Идентификатор ссылки на карту (на стороне сервера). - | ``Тип``: String | ``Length``: 1-64 * - :code:`reference.uniqueReferenceCardId` - Идентификатор карты (на стороне сервера). - | ``Тип``: Integer * - :code:`session` - - | ``Тип``: **Object** * - :code:`session.accessToken` - Ключ токена доступа потребителя. - | ``Тип``: String | ``Длина``: 32-128 * - :code:`session.token` - Токен сеанса транзакции верификации. - | ``Тип``: String | ``Длина``: 16-36 * - :code:`sourceCard` - - | ``Тип``: **Object** * - :code:`sourceCard.bin` - BIN исходной карты. - | ``Тип``: Integer Параметры успешного ответа ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30, 45, 25 :header-rows: 1 :class: longtable * - Название параметра - Описание - Значение * - :code:`invoiceId` - Идентификатор транзакции верификации. - | ``Тип``: String * - :code:`session` - - | ``Тип``: **Object** * - :code:`session.checkSignature` - Контрольная сумма, сгенерированная по hmac-sha1 (см. :ref:`signature-computation`) из конкатенации session.nonce, endpointId и invoiceId. - | ``Тип``: String * - :code:`session.nonce` - Уникальная случайная строка, сгенерированная сервером Присоединяющейся стороны. - | ``Тип``: String * - :code:`session.token` - Токен сеанса транзакции верификации. - | ``Тип``: String Параметры неуспешного ответа ^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30, 45, 25 :header-rows: 1 :class: longtable * - Название параметра - Описание - Значение * - :code:`error` - - | ``Тип``: **Object** * - :code:`error.cause` - Причина ошибки. Возможные значения: ``FILTERED``, ``INVALID_REQUEST``, ``SERVER_FAILED``, ``SERVER_UNAVAILABLE``. - | ``Тип``: Enum * - :code:`error.code` - Уникальный код ошибки. - | ``Тип``: String * - :code:`error.message` - Описание ошибки. - | ``Тип``: String * - :code:`invoiceId` - Идентификатор транзакции верификации. - | ``Тип``: String Пример запроса ^^^^^^^^^^^^^^^ .. code-block:: json { "consumer": { "device": { "serialNumber": "string" } }, "reference": { "serverCardId": "string", "uniqueReferenceCardId": "integer" }, "sourceCard": { "bin": "integer" }, "session": { "accessToken": "string", "token": "string" } } Пример успешного ответа ^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: json { "invoiceId": "string", "session": { "checkSignature": "string", "nonce": "string", "token": "string" } } Пример неуспешного ответа ^^^^^^^^^^^^^^^^^^^^^ .. code-block:: json { "error": { "cause": "enum", "code": "string", "message": "string" }, "invoiceId": "string" }