# 3.3. HTTP Response ### Odpowiedź serwera W przypadku wykonania poprawnego zapytania rejestrującego nowe zamówienie serwer odpowie statusem HTTP `200` oraz informacją o nowo utworzonej transakcji: ```json { "status": "SUCCESS", "data": { "transaction": { "id": "21090680-8938-467b-a53e-a68862356e2e", "type": "sale", "status": "pending", "source": "api", "createdAt": 1688379004, "modifiedAt": 1688379004, "notificationUrl": "https://1234.requestcatcher.com/", "serviceId": "3283bb82-1203-4064-86ad-27868f985769", "amount": 10000, "currency": "PLN", "orderId": "1", "paymentMethod": "pbl", "paymentMethodChannel": "ing", "payment": { "id": "8254d179-9063-47a2-adb4-5d8322679378", "status": "new" } }, "action": { "type": "redirect", "url": "https://paywall.sandbox.axepta.pl/sandbox/8254d179-9063-47a2- adb4-5d8322679378/21090680-8938-467b-a53e-a68862356e2e", "method": "GET", "contentType": "", "contentBodyRaw": "" }, "omG": "G9q" } } ``` W odpowiedzi otrzymujemy obiekty: `transaction` oraz `action`. Obiekt `transaction` jest identyczny z wysłanym w zapytaniu rejestrującym zamówienie i zawiera kilka dodatkowych parametrów: | Parametr | Typ | Opis | |------------|---------|-------------------------------------------------------------------------------| | `id` | string | Identyfikator transakcji w formacie UUID v4. Unikalny dla każdego zamówienia. | | `status` | string | Status zamówienia. | | `source` | string | Źródło zamówienia. Może posiadać wartości: `api` lub `web`. | | `createdAt` | integer | Data utworzenia zamówienia w formacie UNIX TIMESTAMP czasu UTC. | | `notificationUrl` | string | Adres notyfikacji | | `modifiedAt` | integer | Data ostatniej zmiany statusu transakcji w formacji UNIX TIMESTAMP czasu UTC. | | `payment` | object | Dane płatności do której przypisana jest transakcja | Drugim dodatkowym obiektem jest `action`. Obiekt ten wystąpi tylko w przypadku konieczności przekierowania płatnika na zewnętrzną stronę jak to ma miejsce w przypadku płatności `Pay-By-Link`. Obiekt ten zawiera dodatkowe pola których znaczenie jest opisane poniżej: | Parametr | Typ | Opis | |------------------|--------|----------------------| | `type` | string | Typ akcji. | | `url` | string | W przypadku konieczności wykonania przekierowania płatnika na inną stronę (np. banku) adres URL. | | `method` | string | Metoda POST lub GET. | | `contentType` | string | Pozycja w nagłówku zapytania do banku określająca typ payloadu. | | `contentBodyRaw` | string | Payload zapytania. | ### Statusy HTTP | Kod HTTP | Znaczenie | |----------|--------------------------------------------------------------------------| | `200` | Zapytanie wykonane poprawnie. Utworzono transakcję | | `400` | Błędne żądanie, niepoprawny payload żądania. | | `401` | Nieautoryzowany dostęp. Żądanie zasobu, który wymaga uwierzytelnienia. | | `403` | Brak uprawnień do wykonania żądania. | | `404` | Nieznany zasób. | | `422` | Payload jest poprawny ale nie zawiera wymaganaych parametrów. | | `500` | Błąd serwera. | | `503` | System niedostępny.