MPGS (mastercard): как токенизировать транзакцию (как создать токен)? - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь создать токен с MPGS.

Я следую этому руководству:

https://sample -sub.domain .mastercard.com / API / документация / integrationGuidelines / supportedFeatures / pickAdditionalFunctionality / лексический анализ / tokenization.html? Локали = en_US # x_tokenConfiguration

В разделе «Работа с токенами»> «Tokenize» написано:

Эту операцию можно использовать для создания или обновления токена путем сохранения реквизиты платежа против токена. ...

Я публикую это, чтобы помочь людям, которые, как и я, разочаровываются в MPGS. Я столкнулся с рядом проблем и много раз отрывал волосы. Итак, вот проблемы, с которыми я столкнулся и как их решить (я застрял с проблемой № 4).


Проблема № 1: Неверные учетные данные.

Исправление : убедитесь, что вы нажимаете правильный URL.

https://example -subdomain .mastercard.com /..

https://some.other -example .mastercard.com /..

https://MILLION -Другие-ВОЗМОЖНОСТИ .mastercard.com /..

Даже ссылка на руководство по документации содержит те же субдомены, поэтому убедитесь, что вы вводите правильный URL-адрес, и убедитесь, что вы переходите по правильной ссылке на документацию.


Проблема № 2: Неверные параметры или сервер запрашивает параметры, хотя вы их указали.

Исправлено: При использовании Почтальона, убедитесь, что вы установили параметры в «Теле»> « raw » как JSON, например так:

{
    "sourceOfFunds": {
        "provided": {
            "card": {
                "expiry": {
                    "month": "05",
                    "year": "21"
                },
                "number": "5123456789012346"
            }
        },
        "type": "CARD"
    }
}

Выпуск № 3: Требуется авторизация

Исправлено: При использовании Почтальона, нажмите «Авторизация», установите для «Типа» значение Базовая аутентификация , для «Имя пользователя» установите для merchant.YOUR_MERCHANT_ID , для "Пароль" установите YOUR_API_PASSWORD


Проблема № 4 (застряла здесь): Значение '9999999999999999' недопустимо. Жетон карты не должен поставляться

Метод: PUT

URL: https://test -my.sample.gateway .mastercard.com / api / rest / version / 46 / merchant / MY_MERCHANT_ID / token / 9999999999999999

Авторизация: правильно установить на вкладке Авторизация

Тело> сырье:

{
    "sourceOfFunds": {
        "provided": {
            "card": {
                "expiry": {
                    "month": "05",
                    "year": "21"
                },
                "number": "5123456789012346"
            }
        },
        "type": "CARD"
    }
}

Ответ:

{
    "error": {
        "cause": "INVALID_REQUEST",
        "explanation": "Value '9999999999999999' is invalid. Card token must not be supplied",
        "field": "tokenid",
        "validationType": "INVALID"
    },
    "result": "ERROR"
}

Q: Не уверен, что нужно сделать, чтобы токенизировать транзакцию ..?! Я застрял с выпуск № 4 .

1 Ответ

0 голосов
/ 25 февраля 2019

Хорошо, наконец-то разобрался. MPGS имеет 2 способа создания / обновления токенов:

  1. Токенизация, при которой ВЫ предоставляете токен (уведомление: PUT метод)
  2. Токенизация, при которой MPGS генерирует для вас токен (уведомление: POST метод)

Они очень похожи.

У меня все работает со вторым вариантом.

Примечание : Это POST метод !!

Метод: ПОЧТА

URL: https://SUBDOMAIN_YOU_SHOULD_BE_USING.mastercard.com/api/rest/version/50/merchant/YOUR_MERCHANT_ID/token

В почтальоне установите Авторизацию (как описано в вопросе, в , выпуск № 3 ).

Пример данных для отправки (в почтальоне это должно быть в Body> raw):

{
    "sourceOfFunds": {
        "provided": {
            "card": {
                "expiry": {
                    "month": "05",
                    "year": "21"
                },
                "number": "5123456789012346"
            }
        },
        "type": "CARD"
    }
}

Пример ответа:

{
    "repositoryId": "1000000000002",
    "response": {
        "gatewayCode": "BASIC_VERIFICATION_SUCCESSFUL"
    },
    "result": "SUCCESS",
    "sourceOfFunds": {
        "provided": {
            "card": {
                "brand": "MASTERCARD",
                "expiry": "0521",
                "fundingMethod": "CREDIT",
                "issuer": "BANCO DEL PICHINCHA, C.A.",
                "number": "512345xxxxxx2346",
                "scheme": "MASTERCARD"
            }
        },
        "type": "CARD"
    },
    "status": "VALID",
    "token": "9717501974559694",
    "usage": {
        "lastUpdated": "2019-02-25T09:36:54.928Z",
        "lastUpdatedBy": "1015",
        "lastUsed": "2019-02-25T09:36:54.928Z"
    },
    "verificationStrategy": "BASIC"
}
...