# Generowanie transakcji Endpoint: POST /payment/{serviceId}/transactions Version: 1.0.0 Security: bearerAuth ## Path parameters: - `serviceId` (string, required) Id usługi ## Request fields (application/json): - `amount` (number, required) Kwota transakcji - `currency` (string) Waluta transakcji - `description` (string) Opis transakcji nadany przez partnera, prezentowany na bramce płatności - `control` (string) Pole do wykorzystania przez partnera - `customer` (object,null) Obiekt podstawowych informacji o płacącym - `customer.name` (string) - `customer.email` (string) - `customer.ip` (string) Adres IP kupującego. Wymagany przy używaniu directChannel. - `customer.countryCode` (string) Kod ISO kupującego. Wymagany przy używaniu directChannel. Example: "PL" - `antifraud` (object,null) Obiekt informacji do antifrauda - `antifraud.useragent` (string) UserAgent kupującego. Wymagany przy używaniu directChannel. - `antifraud.steamid` (integer) STEAMID64 kupującego - `antifraud.mcusername` (string) Nick gracza Minecraft - `antifraud.mcid` (string) UUID gracza Minecraft - `billing` (object,null) - `billing.surname` (string,null, required) - `billing.street` (string,null, required) - `billing.building` (string,null) - `billing.flat` (string,null) - `billing.city` (string,null, required) - `billing.region` (string,null) - `billing.postalCode` (string,null, required) Kod pocztowy, format zależny od pola - `billing.country` (string,null, required) Kraj - `billing.company` (string,null) Nazwa firmy - `shipping` (object,null) - `cart` (array,null) - `cart.name` (string, required) Nazwa produktu - `cart.quantity` (number, required) Ilość danego produktu - `cart.price` (number, required) Kwota jednego produktu - `cart.producer` (string,null, required) Marka producneta produktu - `cart.category` (string,null, required) Kategoria produktu - `cart.code` (string,null, required) Kod produktu - `returns` (object,null) - `returns.success` (string) - `returns.failure` (string) - `directChannel` (string) W tym polu można przesłać Id kanału, wtedy płacący zostanie przekierowany od razu na stronę podanego kanału np. przy podaniu zostanie przekierowany od razu na bramkę płatności BLIK. Wymagane jest wtedy przesłanie oraz . - `channels` (array,null) Tablica z Id kanałów płatności, które zostaną wyświetlone płacącemu na bramce po przekierowaniu na url transakcji Listę dostępnych kanałów wraz z ich Id możemy uzyskać tutaj [Pobieranie listy kanałów dla usługi](#tag/Payment/operation/paymentGetChannels) - `channelTypes` (object,null) Obiekt w którym możemy zdefiniować które typu kanłów mają być dostępne na bramce płatności - `channelTypes.blik` (boolean) Płatność BLIK - `channelTypes.transfer` (boolean) Płatności przelewami online - `channelTypes.cards` (boolean) Płatności kartami - `channelTypes.ewallets` (boolean) Płatności wirtualnymi portfelami (Google Pay, Apple Pay) - `channelTypes.paypal` (boolean) Płatność PayPal - `channelTypes.paysafe` (boolean) Płatności od grupy Paysafe (Skrill, PaysafeCard) - `channelTypes.latam` (boolean) Płatności Ameryki Południowej (PIX, Boleto, BoletoFlash) - `referer` (string) ## Response 200 fields (application/json): - `success` (boolean, required) Request status Example: true - `data` (object, required) Example: {"transactionId":"1d87a1b3-18f8-4146-bcb1-c0c9f293b04f","redirectUrl":"https://pay.simpay.pl/1d87a1b3-18f8-4146-bcb1-c0c9f293b04f"} - `data.transactionId` (string, required) Id transakcji - `data.redirectUrl` (string, required) Example: "https://pay.simpay.pl/1d87a1b3-18f8-4146-bcb1-c0c9f293b04f" ## Response 401 fields (application/json): - `success` (boolean, required) Request status - `errorCode` (string, required) Error status code Enum: "UNAUTHORIZED" ## Response 403 fields (application/json): - `success` (boolean, required) Request status - `errorCode` (string, required) Error status code Enum: "INVALID_ABILITY_PROVIDED", "IP_ADDRESS_NOT_WHITELISTED" ## Response 404 fields (application/json): - `success` (boolean, required) Request status - `errorCode` (string, required) Error status code Enum: "SERVICE_NOT_FOUND", "TRANSACTION_NOT_FOUND", "ROUTE_NOT_FOUND" ## Response 422 fields (application/json): - `success` (boolean, required) Request status - `errorCode` (string, required) Error status code Enum: "VALIDATION_ERROR" - `errors` (object, required) Example: {"amount":["The amount field is required."],"currency":["The selected currency is invalid."]} - `errors.amount` (array) Example: ["The amount field is required."]