Przejdź do głównej zawartości

Masterpass

Masterpass to portfel cyfrowy, który umożliwia użytkownikom bezpieczne przechowywanie informacji o kartach. Wersja Masterpass oferowana przez PayU jest obecnie skierowana tylko do użytkowników z numerem telefonu w Polsce.

Masterpass jest dostępny w PayU na dwa różne sposoby:

  1. Jako metoda płatności na stronie płatniczej PayU.
  2. W bezpośredniej integracji z Mastercard (white label).

Wykorzystanie strony płatności PayU

W standardowej integracji Masterpass jest dostępny z poziomu strony płatniczej PayU i nie wymaga żadnych zmian w integracji z PayU - jest po prostu kolejną metodą płatności dostępną dla płatnika.

Przycisk Masterpass jest wyświetlany za pośrednictwem formularza płatności kartą, serwowanego przez PayU. Przycisk jest widoczny kiedy metoda płatności Masterpass jest włączona (listę włączonych metod można znaleźć w panelu PayU, w zakładce Płatności Elektroniczne->Moje sklepy->Punkty płatności).

Przycisk wywołuje ekran, na którym płacący loguje się do portfela i wybiera zapisaną kartę. Dane karty są następnie w bezpieczny sposób przekazywane do PayU i użyte do przeprowadzenia płatności.

Dalsze przetwarzanie płatności podlega standardowemu procesowi, opisanemu na stronie Procesy Płatności.

Płatność zostanie rozliczona jak standardowa płatność kartą, dlatego aby sprawdzić, czy dane karty zostały pobrane z Masterpass, należy sprawdzić wartość parametru payment flow, dostępną poprzez usługę pobrania danych transakcji.

Możesz też wywołać ekran Masterpass bezpośrednio – wówczas płacący nie musi klikać na przycisk metody płatności Masterpass na stronie płatniczej PayU. Opis tej metody znajduje sie poniżej w sekcji Bezpośrednie wywołanie.

Rozwiązanie white label

Innym sposobem zintegrowania Masterpass jest zbudowanie własniej strony płatniczej i włączenie na niej usługi Masterpass. Możesz zintegrować się z "Masterpass by Mastercard" w zakresie obsługi portfela elektronicznego, a z PayU (za pomocą REST API) w zakresie zlecania zamówienia. Dzięki temu możesz dowolnie kształtować proces zakupowy na swojej stronie.

Więcej informacji znajdziesz na oficjalnej stronie Masterpass.

Notatka

Ponieważ zamówienia z metodą płatności Masterpass będą rozliczane tak jak standardowe płatności kartą, warto rozważyć integrację usługi pobrania danych transakcji. Taka integracja pomoże rozróżnić karty wpisane przez formularz PayU od kart wybranych przez płacącego bezpośrednio z portfela "Masterpass by Mastercard".


Integracja Masterpass white label nie jest dostępna na środowisku sandbox.

Bezpośrednie wywołanie Masterpass

Jak wspomniano wcześniej, Masterpass jest dostępny z poziomu strony płatności PayU i nie wymaga żadnych zmian w integracji. Jeśli jednak chcesz przekierować płatnika bezpośrednio na stronę płatności PayU, z już wybranym Masterpass jako metodą płatności, musisz określić metodę płatności w żądaniu zamówienia.

Rozszerzenie zamówienia przy bezpośrednim wywołaniu Masterpass
{
"payMethods": {
"payMethod": {
"type": "PBL",
"value": "ma"
}
}
}

Masterpass przy integracji white label

Ta forma integracji wymaga dodatkowej konfiguracji ze strony PayU.

Jeśli chcesz obsługiwać Masterpass na swojej stronie płatniczej, musisz rozszerzyć standardowe zamówienie o pole extOrderId i sekcję payMethods.

Pola wymagane przy płatności white-label
"extOrderId": "<transaction id used in Masterpass by Mastercard>",
"payMethods": {
"payMethod" : {
"type": "PBL",
"value": "ma",
"authorizationCode": "<masterpassToken>"
}
}

Wartość pola authorizationCode kodowana jest base64 i zawiera masterpassToken o następującej strukturze:

wartość masterpassToken przed kodowaniem base64
{
"cardId": "<cardId from the Masterpass by Mastercard wallet>",
"cardIssuingTokens": "<issue token for card transaction returend by the Masterpass by Mastercard service>",
"merchantName": "<your name in Masterpass by Mastercard service>"
}

Dalsze przetwarzanie żądania podlega standardowemu procesowi opisanemu na stronie Payment Flows.

Tworzenie zamówienia przy integracji white-label

Aby przetworzyć zamówienie na własnej stronie płatniczej przy użyciu Masterpass jako metody płatności, musisz najpierw pobrać dwie informacje:

  • cardIssuingTokens dla danego cardId z systemu Masterpass by Mastercard,
  • accessToken z grant_type ustawionym na client_credentials , w celu uwierzytelnienia zamówienia.

Następnie możesz utworzyć zamówienie w systemie PayU dla transakcji Masterpass by Mastercard, przekazanej w polu extOrderId.

curl -X POST https://secure.snd.payu.com/api/v2_1/orders \
-H 'Authorization: Bearer e5e55002-c534-4d43-b9a3-affb84b0386d' \
-H 'Content-Type: application/json' \
-d '{
"currencyCode": "PLN",
"totalAmount": 2099,
"description": "TEST_4cd6ce05-4f4e-4edb-8631-d7dc88e761db",
"notifyUrl": "https://notify.pl",
"customerIp": "193.17.41.0",
"merchantPosId": "2334121",
"extOrderId": "PayU-UAT-1871fdaa-0ada-4455-84ae-b8a823de2c9d",
"products": [
{
"name": "Wireless Mouse for Laptop",
"unitPrice": "2099",
"quantity": "1"
}
],
"payMethods": {
"payMethod": {
"type": "PBL",
"value": "ma",
"authorizationCode": "eyJjYXJkSWQiOiI1NTY1NyIsImNhcmRJc3N1aW5nVG9rZW5zIjoiZXlKaGJHY2lPaUpJVXpVeE1pSjkuZXlKcWRHa2lPaUk0TkdReE5tRmxaQzB5TUdJMkxUUm1ObUV0T0RFM01DMWpOVEJsTXpnMU16Y3pNRFVpTENKemRXSWlPaUk0TkdReE5tRmxaQzB5TUdJMkxUUm1ObUV0T0RFM01DMWpOVEJsTXpnMU16Y3pNRFVpTENKcFlYUWlPakUxTmpnd01qVXpNVGdzSW1WNGNDSTZNVFUyT0RBeU5qSXhPQ3dpYVhOUGJtVlVhVzFsUTJGeVpGUnZhMlZ1SWpwMGNuVmxmUS5zcS1sQnZHNmEzZmtfNDJ1VWpnczg3cHcwTGtpeEdHVDgtVXpwckZudWtQRVMwSjc2SHhSc1A4d2Z2djMwOExTS2FxeVMyQUZscmpFOFdHYVRqM3pnUSIsIm1lcmNoYW50TmFtZSI6Ik11bHRpS2lubyJ9"
}
}
}'

Gdzie pole authorizationCode przed kodowaniem base64 wyglądało następująco:

pole authorizationCode przed kodowaniem base64
{
"cardId": "55332",
"cardIssuingTokens": "eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiI4NGQxNmFlZC0yMGI2LTRmNmEtODE3MC1jNTBlMzg1MzczMDUiLCJzdWIiOiI4NGQxNmFlZC0yMGI2LTRmNmEtODE3MC1jNTBlMzg1MzczMDUiLCJpYXQiOjE1NjgwMjUzMTgsImV4cCI6MTU2ODAyNjIxOCwiaXNPbmVUaW1lQ2FyZFRva2VuIjp0cnVlfQ.sq-lBvG6a3fk_42uUjgs87pw0LkixGGT8-UzprFnukPES0J76HxRsP8wfvv308LSKaqyS2AFlrjE8WGaTj3zgQ",
"merchantName": "NazwaMerchanta"
}

Po wysłaniu żądania otrzymasz odpowiedź zależną od tego, czy transakcja zakończyła się powodzeniem.

Możliwe błędy w usłudze Masterpass przy integracji white-label

Możliwe błędy w usłudze Masterpass przy integracji white-label
Status HTTPKod BłęduCodeLiteralOpis
500
ERROR_INTERNAL
SERVICE_TEMPORARY_UNAVAILABLE
Usługa płatności Masterpass chwilowo niedostępna lub problem z tokenizacją danych karty.
400
ERROR_VALUE_INVALID
MASTERPASS_INVALID_DATA
Niepoprawne dane związane z systemem Masterpass::
  • niepoprawne dane karty,
  • niepoprawny cardId,
  • niepoprawny cardIssuingTokens,
  • wartość extOrderId została już użyta.
400
ERROR_VALUE_INVALID
INVALID_CURRENCY_CODE
Nieobsługiwana waluta.
400
ERROR_AUTHORIZATION_CODE
AUTH_CODE_INVALID
Niepoprawny authorizationCode.