Przejdź do głównej zawartości

Przyjmowanie płatności

W najprostszej wersji, przyjęcie płatności opiera się na wysłaniu żądania utworzenia nowego zamówienia i przekierowaniu kupującego na stronę płatniczą PayU. W tym wariancie zakładamy, że w procesie zakupowym nie pobierasz indywidualnych metod płatności z back end PayU, a wyświetlasz jedynie ogólną opcję płatności - PayU.

Uwierzytelnienie zamówienia

Zanim utworzysz nowe żądanie płatności musisz uwierzytelnić się w zakresie wybranego punktu płatności. W tym celu musisz pobrać client_id i client_secret z punktu płatności, na który powinny wpłynąć środki po zakończeniu transakcji.

Przykład żądania wygenerowania tokena OAuth
curl -X POST https://secure.snd.payu.com/pl/standard/user/oauth/authorize \
-d 'grant_type=client_credentials' \
-d 'client_id=460718' \
-d 'client_secret=22f4175da9f0f72bcce976dd8bd7504f'

W odpowiedzi otrzymasz token OAuth, którego powinieneś użyć do uwierzytelnienia żądania.

Odpowiedź na żądanie wygenerowania tokena OAuth
{
"access_token": "3e5cac39-7e38-4139-8fd6-30adc06a61bd",
"token_type": "bearer",
"expires_in": 43199, //czas życia tokena w sekundach
"grant_type": "client_credentials"
}

Jeżeli chcesz dowiedzieć się więcej na temat uwierzytelnienia odwiedź Uwierzytelnianie żądań i sekcję Authorize w naszej referencji API.

Utworzenie nowego zamówienia

Kiedy kupujący przejdzie przez proces zakupowy na Twojej stronie, wybierze płatność z PayU i zatwierdzi utworzenie zamówienia, musisz skomunikować się z systemem PayU i stworzyć nową transakcję. Zrobisz to wysyłając żądanie, ze szczegółami transakcji, na adres: https://secure.payu.com/api/v2_1/orders:

Przykład żądania utworzenia nowego zamówienia
curl -X POST https://secure.payu.com/api/v2_1/orders \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd" \
-d '{
"customerIp": "127.0.0.1",
"merchantPosId": "145227",
"description": "RTV market",
"currencyCode": "PLN",
"totalAmount": "21000",
"products": [
{
"name": "Wireless Mouse for Laptop",
"unitPrice": "21000",
"quantity": "1"
}
]
}'

W odpowiedzi do zamówienia otrzymasz szczegółowe informacje na temat transakcji, w tym parametr redirectURI. Parametr redirectUri zawiera adres URL strony płatniczej PayU, na który powinieneś przekierować płatnika, aby mógł dokończyć płatność.

Odpowiedź na żądanie utworzenia nowego zamówienia
{
"status": {
"statusCode": "SUCCESS"
},
"redirectUri": "{adres_url_przekierowania_strony_płatności}",
"orderId": "WZHF5FFDRJ140731GUEST000P01",
"extOrderId": "{YOUR_EXT_ORDER_ID}"
}

Jeżeli chcesz dowiedzieć się więcej na temat tworzenia nowego zamówienia odwiedź sekcję Tworzenie nowego zamówienia i sekcję Crate an Order w naszej referencji API.

Po przekierowaniu kupujący znajdzie się na stronie płatniczej PayU, gdzie będzie mógł wybrać odpowiadającą mu metodę płatności. Po dokonaniu płatności, środki trafią na saldo twojego sklepu z punktem płatności, w którego zakresie uwierzytelniłeś żądanie.

Przykład przekierowania na stronę płatniczą PayU

Klikając poniższy przycisk, zostaniesz przekierowany do strony płatności PayU, hostowaną na środowisku sandbox.

To wszystko! Jeżeli chcesz ułatwić i przyśpieszyć proces zakupowy dla swoich klientów Stwórz własną stronę płatności.