openapi: 3.0.0
info:
  title: "API metody platby"
  description: ''
  version: '2.0'
servers:
  -
    url: 'https://payments.comgate.cz'
    description: 'Comgate Payment Gateway'
paths:
  /v2.0/payment.json:
    post:
      summary: create
      description: "</span>Přístup je chráněn validací IP adresy a integrita předávaných dat je zajištěna použitím HTTPS protokolu.<br><br>Server platební brány odpovídá pouze v případě, že je platba zakládána na pozadí. Všechny parametry jsou 'urlencoded', stejně jako v případě HTTP requestu. Pokud je platba založena přesměrováním, pak server platební brány rovnou přesměruje Plátce na příslušnou URL nebo zobrazí chybovou zprávu.<br><br>**Výběr platební metody**<br>V rámci nákupního procesu je v e-shopu možné plátci zobrazit výběr platebních metod a na základě jeho výběru založit platbu s konkrétní metodou. Ve chvíli, kdy je plátci zobrazena platební brána, dojde k automatickému zobrazení předem vybrané platební metody. Nastavit vybranou platební metodu je možné vyplněním parametru 'method'. Prostřednictvím tohoto parametru je možné platební metody i různě filtrovat.<br>Více zde: https://apidoc.comgate.cz/metody-platebni-brany<br><br>**Předautorizace**<br>Platební brána umožňuje zadávat, potvrzovat a rušit předautorizace plateb kartou. Založení platby probíhá standardně, pouze je potřeba uvést parametr 'preauth=true'. Poté plátce projde stejným procesem jako v případě normální platby. Poté, co zadá své údaje na platební bráně, je na jeho platební kartě zarezervována příslušná částka. Podle výsledku této operace přechází buď do zvláštního stavu AUTHORIZED, nebo v případě zamítnutí do stavu CANCELLED. Tento stav je ohlášen na pozadí obvyklým postupem popsaným výše.<br>Aby byly peníze skutečně strženy, volá e-shop funkci pro potvrzení předautorizace. Pokud se peníze mají uvolnit (např. není možné naplnit podmínky kupní smlouvy), volá funkci pro zrušení předautorizace.<span class='rest'><br><br>**Přesměrování**<br>Pro zakládání platby přesměrováním použijte endpoint /v2.0/paymentRedirect/merchant/{merchant_id}, se stejnými parametry jako u základní create.</span></span><div class='theme-admonition theme-admonition-warning alert alert--warning'><h3 class='cg-alert-title'>UPOZORNĚNÍ</h3><p class='cg-alert-content'>URL adresa a struktura kódu založené platby se může měnit. Vždy použijte adresu, kterou vám vrátí API, a nijak do ní nezasahujte. Pokud chcete uložit kód platby, použijte parametr transId. Nikdy neparsujte data z konkrétních pozic v textu, mohou se též měnit.<br><br><strong>Všechny hodnoty obsahující speciální znaky musí být v UTF-8.</strong></p></div>"
      operationId: 87f36741ae33d16a8f205abdbcc834c4
      requestBody:
        description: "Vytvořit novou platbu"
        content:
          application/json:
            schema:
              required:
                - price
                - curr
                - label
                - refId
                - method
                - email
                - phone
                - fullName
              properties:
                test:
                  description: "Hodnota 'true' znamená, že platba bude založena jako testovací, hodnota 'false' znamená produkční verzi. Pokud parametr chybí, založí se platba jako produkční."
                  type: boolean
                  default: false
                  example: true
                country:
                  description: "Možné hodnoty: AT, BE, CY, CZ, DE, EE, EL, ES, FI, FR, GB, HR, HU, IE, IT, LT, LU, LV, MT, NL, NO, PL, PT, RO, SI, SK, SE, US. Pro ostatní země použijte ALL. Pokud parametr chybí, použije se automaticky 'CZ'. Parametr slouží k omezení výběru platebních metod na platební bráně. Je potřeba aby byla zvolena správná kombinace parametrů 'country' a 'curr' (měna) pro daný region. Například  pro zobrazení českých tlačítek a platby kartou v měně CZK zvolte kombinaci country=CZ a curr=CZK. U slovenských bankovních tlačítek a platby kartou v EUR zvolte country=SK a curr=EUR. Pro polská bankovní tlačítka a platbu kartou v PLN zvolte country=PL a curr=PLN. Pro ostatní cizí měny můžete použít parametr country=ALL nebo další kód země, který platební brána přijímá. "
                  type: string
                price:
                  description: "Cena za produkt v centech nebo haléřích. U měny HUF nelze zadat cenu s desetinnými místy. V tomto případě musí cena vždy končit 00.<br>Musí být min. 1 CZK; 0,1 EUR; 1 PLN; 100 HUF; 1 USD; 1 GBP; 5 RON; 0,5 NOK; 0,5 SEK.<br>Max. 1 000 000 CZK; 40 000 EUR; 170 000 PLN; 12 500 000 HUF; 45 000 USD; 35 000 GBP; 190 000 RON; 400 000 NOK; 390 000 SEK."
                  type: integer
                  format: int32
                  example: 1000
                curr:
                  description: "Kód měny dle ISO 4217. K dispozici jsou měny: CZK, EUR, PLN, HUF, USD, GBP, RON, NOK, SEK."
                  type: string
                  example: CZK
                label:
                  description: "Krátký popis produktu (1-16 znaků) – dle této položky je možné filtrovat platby v Klientském portálu."
                  type: string
                  example: 'Product 123'
                refId:
                  description: "Parametr vhodný k zadaní variabilního symbolu nebo čísla objednávky na straně Klienta (nemusí být unikátní, tzn., že lze založit více plateb se stejným refId). V Klientském portálu a denním csv. je parametr označen jako ID Klienta."
                  type: string
                  example: order445566
                method:
                  description: "Metoda platby z tabulky platebních metod, hodnota 'ALL' v případě, že si má metodu vybrat plátce, nebo jednoduchý výraz s výběrem metod.<br>Více zde: https://apidoc.comgate.cz/metody-platebni-brany"
                  type: string
                  example: ALL
                account:
                  description: "Identifikátor bankovního účtu Klienta, na který Comgate převede peníze. Pokud parametr nevyplníte, použije se výchozí účet Klienta. Seznam účtů Klienta najdete na https://portal.comgate.cz/."
                  type: string
                email:
                  description: "Kontaktní email plátce. Povinný je pouze jeden z údajů emailová adresa nebo telefonní číslo."
                  type: string
                  example: platce@email.com
                phone:
                  description: "Telefonní číslo plátce v mezinárodním formátu +420777112233. Povinný je pouze jeden z údajů emailová adresa nebo telefonní číslo."
                  type: string
                fullName:
                  description: "Jméno a příjmení plátce, např. Josef Novák."
                  type: string
                  example: 'Jan Novák'
                billingAddrCity:
                  description: "Fakturační adresa - město. (např. Hradec Králové)."
                  type: string
                billingAddrStreet:
                  description: "Fakturační adresa - ulice. (např. Jiráskova 115)."
                  type: string
                billingAddrPostalCode:
                  description: "Fakturační adresa - PSČ. (např. 50304)."
                  type: string
                billingAddrCountry:
                  description: "Fakturační adresa - země, ve formátu ISO 3166 alpha-2 (např. CZ, SK, US, GB)."
                  type: string
                delivery:
                  description: "Způsob doručení - jedna z dostupných možností: HOME_DELIVERY, PICKUP, ELECTRONIC_DELIVERY. Varianta PICKUP znamená všechna výdejní místa, výdejní boxy apod."
                  type: string
                  example: HOME_DELIVERY
                homeDeliveryCity:
                  description: "Doručovací adresa - město. Vyplňuje se pouze v případě delivery=HOME_DELIVERY (např. Hradec Králové)."
                  type: string
                homeDeliveryStreet:
                  description: "Doručovací adresa - ulice. Vyplňuje se pouze v případě delivery=HOME_DELIVERY (např. Štefanikova 421)."
                  type: string
                homeDeliveryPostalCode:
                  description: "Doručovací adresa - PSČ. Vyplňuje se pouze v případě delivery=HOME_DELIVERY (např. 50341)."
                  type: string
                homeDeliveryCountry:
                  description: "Doručovací adresa - země, ve formátu ISO 3166 alpha-2. Vyplňuje se pouze v případě delivery=HOME_DELIVERY (např. CZ, SK, US, GB)."
                  type: string
                category:
                  description: "Kategorie produktu v košíku - jedna z dostupných možností, která nejvíce popisuje košík: PHYSICAL_GOODS_ONLY, OTHER. Varianta OTHER zahrnuje i dárkové karty, vouchery nebo služby."
                  type: string
                  example: PHYSICAL_GOODS_ONLY
                name:
                  description: "Identifikátor produktu – tato položka se nachází v denním csv. Klienta pod názvem Produkt."
                  type: string
                lang:
                  description: "Kód jazyka (ISO 639-1), ve kterém budou Plátci zobrazeny instrukce pro dokončení platby, standardně povolené hodnoty ('bg', 'cs', 'da', 'de', 'el', 'en', 'es', 'et', 'fi', 'fr', 'hr', 'hu', 'it', 'lt', 'lv', 'nl', 'no', 'pl', 'pt', 'ro', 'si', 'sk', 'sv', 'vi'), pokud parametr chybí, použije se 'cs', v případě požadavku na další jazyk, kontaktujte podpora@comgate.cz."
                  type: string
                preauth:
                  description: "V případě požadavku na předautorizaci platby kartou nastavte na 'true'. V případě normální platby vyplňte 'false' nebo parametr nepoužívejte. Pouze pro platby kartou."
                  type: boolean
                initRecurring:
                  description: "Příznak pro založení iniciační transakce pro opakované platby. Pouze pro Klienty, kteří mají službu povolenou."
                  type: boolean
                verification:
                  description: "Parametr ověřovací platby, v případě požadavku na založení ověřovací platby (hodnota 'true') není nutné posílat parametr 'initRecurring'."
                  type: boolean
                expirationTime:
                  description: "Délka expirace platby. Povolená hodnota je celé číslo následované písmenem zvolené časové jednotky: 'm' (minuty), 'h' (hodiny) nebo 'd' (dny). Například '30m' (30 minut) nebo '10h' (10 hodin) nebo '2d' (2 dny). Jednotky nelze kombinovat. Výsledná délka musí být v rozmezí 30 minut až 7 dní. Pokud není vyplněno, použije se hodnota v nastavení obchodu zvolená v Klientském portálu."
                  type: string
                dynamicExpiration:
                  description: "Hodnota 'true' znamená, že u platby bude použita dynamická expirace, hodnota 'false' znamená, že dynamická expirace použita nebude. Pokud není vyplněno, použije se hodnota v nastavení obchodu zvolená v Klientském portálu. Více o dynamické expiraci najdete v článku <a href='https://help.comgate.cz/v1/docs/expirace-plateb'>zde</a>."
                  type: boolean
                url_paid:
                  description: "Individuální nastavení pro jednotlivé platby. Např. 'https://www.example.com/result.php?id=${id}&refId=${refId}'"
                  type: string
                url_cancelled:
                  description: "Individuální nastavení pro jednotlivé platby. Např. 'https://www.example.com/result.php?id=${id}&refId=${refId}'"
                  type: string
                url_pending:
                  description: "Individuální nastavení pro jednotlivé platby. Např. 'https://www.example.com/result.php?id=${id}&refId=${refId}'"
                  type: string
                chargeUnregulatedCardFees:
                  description: "Pomocí tohoto parametru zapnete nebo vypnete přenesení poplatků na plátce při platbě neregulovanou kartou a zároveň vypnete metodu Apple Pay a Google Pay (pokud není parametrem 'enableApplePayGooglePay' nastaveno jinak). Povolené hodnoty jsou 'true' nebo 'false'.<br>Použití tohoto parametru je možné pouze po schválení a zapnutí ze strany Comgate. Ne všechna e-commerce řešení tento parametr podporují.<br><br>Více informací o přenesení poplatku najdete na <a href='https://help.comgate.cz/docs/preneseni-poplatku' target='_blank'>stránkách podpory</a>."
                  type: boolean
                enableApplePayGooglePay:
                  description: "Nastavte na 'false' pro vypnutí platební metody Apple Pay a Google Pay pro konkrétní platbu, i když jsou ve vašem nastavení účtu tyto metody povoleny.<br>Nastavte na 'true' pro zapnutí platební metody Apple Pay a Google Pay pro konkrétní platbu, i když je použit parametr 'chargeUnregulatedCardFees'.<br>Pokud je použit parametr 'chargeUnregulatedCardFees', tak je výchozí hodnota parametru 'enableApplePayGooglePay' 'false'. V opačném případě je výchozí hodnota 'true'."
                  type: boolean
              type: object
      responses:
        200:
          description: "Vytvoří novou platbu"
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>Návratový kód metody a popis chyby:</strong><br/>0 OK<br/>1100 neznámá chyba<br/>1102 zadaný jazyk není podporován<br/>1103 nesprávně zadaná metoda<br/>1104 nelze načíst platbu<br/>1107 cena platby není podporovaná<br/>1200 databázová chyba<br/>1301 neznámý e-shop<br/>1303 propojení nebo jazyk chybí<br/>1304 neplatná kategorie<br/>1305 chybí popis produktu<br/>1306 vyberte správnou metodu<br/>1308 vybraný způsob platby není povolen<br/>1309 nesprávná částka<br/>1310 neznámá měna<br/>1311 neplatný identifikátor bankovního účtu Klienta<br/>1316 e-shop nemá povolené opakované platby<br/>1317 neplatná metoda – nepodporuje opakované platby<br/>1319 nelze založit platbu, problém na straně banky<br/>1399 neočekávaný výsledek z databáze<br/>1400 chybný dotaz<br/>1500 neočekávaná chyba<br/>"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                  transId:
                    description: "Unikátní alfanumerický identifikátor (kód) transakce, který bude zobrazen Plátci v různých fázích platby."
                    type: string
                    example: AB12-CD34-EF56
                  redirect:
                    description: "URL stránky, kam má být Plátce přesměrován pro realizaci platby."
                    type: string
                    example: 'https://payments.comgate.cz/client/instructions/index?id=AB12-CD34-EF56'
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
  '/v2.0/payment/transId/{transId}.json':
    delete:
      summary: cancel
      description: "**Storno platby**<br>V případě, že byla objednávka v e-shopu stornována a transakce nemá být plátcem dokončena, je možné využít storno platby. Na rozdíl od refundace musí být platba ve stavu očekávaná (pending).<br>Vzhledem k rychlosti zaplacení plateb může být platba již ve stavu zaplacená, v takovém případě se zobrazí chyba a je nutné využít metodu refundace."
      operationId: 7667d478e251915f2a76980a83977908
      responses:
        200:
          description: "Stav zrušení"
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>návratový kód metody a popis chyby:</strong><br>0 OK<br>1400 není možné přepnout platbu do cancel stavu (platba nenalezena, platba není ve stavu pending, neoprávněný přístup)"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transId
          in: path
          description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
          required: true
          schema:
            type: string
            example: AAAA-BBBB-CCCC
    get:
      summary: status
      description: "**Získání stavu platby na pozadí**<br>Analogická funkce pro předání výsledku platby na pozadí, pouze iniciovaná Obchodem. Nenahrazuje však předání stavu platby na pozadí, její implementace je stále povinná."
      operationId: 62d0375da5c483677e37da545c688caa
      responses:
        200:
          description: "Získaný stav platby"
          content:
            application/json:
              schema:
                description: "Stav platby"
                required:
                  - code
                  - message
                  - test
                  - price
                  - curr
                  - label
                  - refId
                  - email
                  - transId
                  - status
                properties:
                  code:
                    description: "Návratový kód metody"
                    type: integer
                    example: 0
                  message:
                    description: "<strong>popis chyby v závislosti na návratovém kódu:</strong><br>0 OK<br>1100 neznámá chyba<br>1200 databázová chyba<br>1400 chybný dotaz<br>1500 neočekávaná chyba<br><br>v případě code=0 jsou v odpovědi následující parametry:"
                    type: string
                    example: OK
                  test:
                    description: "Hodnota 'true' znamená, že platba byla založena jako testovací, hodnota 'false' znamená produkční verzi."
                    type: string
                    example: false
                  price:
                    description: "cena za produkt v centech nebo haléřích"
                    type: integer
                    example: 10000
                  curr:
                    description: "kód měny dle ISO 4217"
                    type: string
                    example: CZK
                  label:
                    description: "krátký popis produktu (1-16 znaků)"
                    type: string
                    example: 'Beatles - Help'
                  refId:
                    description: "reference platby v systému e-shopu"
                    type: string
                    example: '2010102600'
                  payerId:
                    description: "identifikátor Plátce v systému e-shopu"
                    type: string
                  method:
                    description: "použitá metoda platby, z tabulky platebních metod"
                    type: string
                    example: ALL
                  account:
                    description: "identifikátor bankovního účtu e-shopu, na který Comgate převede peníze"
                    type: string
                  email:
                    description: "kontaktní email na Plátce"
                    type: string
                    example: platce@email.com
                  name:
                    description: "identifikátor produktu - dle této položky je potom možné se zorientovat ve statistikách plateb Comgate platebního systému."
                    type: string
                  phone:
                    description: "Telefonní číslo plátce, je-li k dispozici"
                    type: string
                  transId:
                    description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
                    type: string
                    example: AB12-CD34-EF56
                  status:
                    description: "aktuální stav transakce, hodnoty<br>'PENDING' – platba je založena, finální výsledek není známý<br>'PAID' – platba byla úspěšně zaplacena<br>'CANCELLED' – platba nebyla dokončena korektně a je zrušena<br>'AUTHORIZED' – vyžádaná předautorizace proběhla úspěšně"
                    type: string
                    example: PAID
                  payerName:
                    description: "předání jména účtu patřící Plátci"
                    type: string
                  payerAcc:
                    description: "předání čísla účtu Plátce"
                    type: string
                  fee:
                    description: "pokud má e-shop nastavené automatické strhávání poplatku za platbu, bude v tomto poli spočítaný poplatek za transakci v centech nebo halířích, jinak bude pole nabývat hodnoty 'unknown'"
                    type: string
                  vs:
                    description: "variabilní symbol platby (nemusí být vždy dostupné)"
                    type: string
                  cardValid:
                    description: "expirace karty plátce dostupná u opakovaných iniciačních plateb vyjma Apple Pay a Google Pay"
                    type: string
                  cardNumber:
                    description: "částečné číslo karty plátce dostupné u opakovaných iniciačních plateb"
                    type: string
                  appliedFee:
                    description: "Částka přirážky aplikovaná za neregulované typy karet."
                    type: integer
                  appliedFeeType:
                    description: "Typ přirážky aplikované za neregulované typy karet jako je 'EU_UNREGULATED', 'NON_EU_BUSINESS', 'NON_EU_CONSUMER' i nepřirážkový 'EU_CONSUMER'."
                    type: string
                  paymentErrorReason:
                    description: "Důvod zamítnutí platby, pokud je k dispozici. V případě více pokusů plátce o provedení platby se vrací důvod zamítnutí posledního pokusu. Možné hodnoty: <br> 'CUSTOMER_CLICK' - Zrušeno plátcem <br> 'FRAUD_SUSPECTED' - Podezření na podvod <br> 'ESHOP_CANCELLED' - Zrušeno obchodníkem <br> 'PROVIDER_REPORT' - Zrušeno providerem <br> 'PROVIDER_TIMEOUT' - Vypršel časový limit poskytovatele <br> 'CUSTOMER_TIMEOUT' - Vypršel časový limit platby <br> 'ACS_TIMEOUT' - Vypršel časový limit pro ověření <br> 'INVALID_CARDNO_EXPIRY' - Chybně zadané číslo karty nebo datum platnosti karty <br> 'INVALID_CVC' - Chybně zadaný CVC / CVV kód <br> 'LIMIT_EXCEEDED' - Limit karty byl překročen <br> 'NO_FUNDS' - Na účtu není dostatečný zůstatek <br> 'REJECTED_BY_BANK' - Platba byla zamítnuta bankou <br> '3DS_AUTH_FAIL' - Ověření platby nebylo úspěšné <br> 'BANK_TIMEOUT' - Vypršel časový limit pro provedení platby <br> 'BANK_FORBIDDEN' - Plátce neudělil přístup ke svým účtům <br> 'TRANSACTION_CANCELLED' - Plátce zrušil ověření platby <br> '3RDPART_APP_LIMIT_EXCEEDED' - Překročen limit transakcí pro třetí strany <br> 'UNAVAILABLE' - Platební metoda je dočasně nedostupná <br> 'BAD_ACCOUNT_TYPE' - Typ účtu plátce nepodporuje tuto platbu <br> 'NOT_SPECIFIED' - Nespecifikováno"
                    type: string
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transId
          in: path
          description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
          required: true
          schema:
            type: string
            example: AAAA-BBBB-CCCC
  /v2.0/recurring.json:
    post:
      summary: recurring
      description: "**Opakované platby, zapamatování karetních údajů**<br>Platební brána umožňuje zadávání opakovaných plateb, to je plateb na jedno kliknutí. První (iniciační) platba probíhá standardním procesem s přesměrováním na platební bránu, následující platby už probíhají kompletně na pozadí. Systém tak umožňuje plátci zaplatit během několika sekund bez nutnosti vyplňovat informace o platební kartě.<br>Tato funkcionalita je dostupná na vyžádání. V případě opakovaných plateb na začátku zakládáme iniciační platbu, která se zakládá jako běžná platba, pouze se v požadavku nachází navíc parametr 'initRecurring' - metoda create. Následné opakované platby jsou už zakládány metodou recurring a jsou vázány na Comgate ID iniciační transakce. Toto ID musí být v systému Klienta vázáno na konkrétního Plátce.<br>Po založení opakované platby nedochází k přesměrování Plátce na platební bránu, protože celý proces probíhá na pozadí, Klientovi je pouze předán stav založení platby, a ten následně zobrazí tento stav Plátci.<br><br>**Následující opakované platby**<br>Založení druhé a následující opakované platby do platební brány je možné pouze při akceptaci karet pro e-shopy, které mají službu povolenou. První (iniciační) platba probíhá standardní cestou (viz Založení platby). Proces založení druhé a každé další platby probíhá kompletně na pozadí, tyto platby jsou vázány na iniciační přes Comgate ID iniciační platby. Toto ID se musí nacházet v požadavku v parametru 'initRecurringId'. Plátci je v systému e-shopu jako výsledek zobrazen stav platby.<br><br>Všechny parametry jsou urlencoded, stejně jako v případě HTTP requestu pro založení standardní platby. V odpovědi se nachází parametr 'code', podle kterého e-shop určí, jaký výsledek zobrazí plátci. **code = 0** znamená úspěch, platba byla založena a zaplacena, jakýkoliv jiný kód znamená chybu a tudíž nezaložení platby.<br><br>**Rekurentní platby (recurring)**<br>Rekurentí platby, tzn. opakované platby s předem definovanou částkou a periodou (např. měsíční, týdenní apod.) lze realizovat pomocí služby Opakované platby, která je popsána v předchozích odstavcích.<br>Testovací rekurentní platby (s výjimkou iniciační) založené s e-mailem 'recurring.cancelled@comgate.cz' budou automaticky označeny jako CANCELLED (nezaplacené)"
      operationId: d6dae0a504955877441dbfcea7cffbeb
      requestBody:
        content:
          application/json:
            schema:
              required:
                - price
                - curr
                - label
                - refId
                - initRecurringId
              properties:
                test:
                  description: "Hodnota 'true' znamená, že platba bude založena jako testovací, hodnota 'false' znamená produkční verzi. Pokud parametr chybí, založí se platba jako produkční."
                  type: boolean
                  example: true
                price:
                  description: "Cena za produkt v centech nebo haléřích. Musí být min. 10 CZK (včetně), max. neomezeno."
                  type: integer
                  format: int32
                  example: 10000
                curr:
                  description: "kód měny dle ISO 4217, standardně 'CZK'"
                  type: string
                  example: CZK
                label:
                  description: "krátký popis produktu (1-16 znaků)"
                  type: string
                refId:
                  description: "Reference platby v systému e-shopu (nemusí být unikátní, tzn., že lze založit více plateb se stejným refId)."
                  type: string
                  example: '2010102600'
                account:
                  description: "Identifikátor bankovního účtu e-shopu, na který Comgate převede peníze. Pokud parametr nevyplníte, použije se výchozí účet e-shopu. Seznam účtů e-shopu najdete na https://portal.comgate.cz/."
                  type: string
                name:
                  description: "Identifikátor produktu - dle této položky je potom možné se zorientovat ve statistikách plateb Comgate platebního systému."
                  type: string
                initRecurringId:
                  description: "Comgate ID iniciační platby"
                  type: string
                  example: AB12-CD34-EF56
              type: object
      responses:
        200:
          description: Status
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>návratový kód metody a popis chyby:</strong><br>0 OK<br>1100 neznámá chyba<br>1102 zadaný jazyk není podporován<br>1103 nesprávně zadaná metoda<br>1104 nelze načíst platbu<br>1200 databázová chyba<br>1301 neznámý e-shop<br>1303 propojení nebo jazyk chybí<br>1304 neplatná kategorie<br>1305 chybí popis produktu<br>1308 vybraný způsob platby není povolen<br>1309 nesprávná částka<br>1310 neznámá měna<br>1311 neplatný identifikátor bankovního účtu e-shopu<br>1316 e-shop nemá povolené opakované platby<br>1317 neplatná metoda – nepodporuje opakované platby<br>1318 iniciační platba nebyla nalezena<br>1319 nelze založit platbu, problém na straně banky<br>1320 neplatný email pro opakovanou platbu<br>1399 neočekávaný výsledek z databáze<br>1400 chybný dotaz<br>1500 neočekávaná chyba"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                  transId:
                    description: "unikátní alfanumerický identifikátor (kód) transakce, který bude zobrazen Plátci v různých fázích platby"
                    type: string
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
  /v2.0/refund.json:
    post:
      summary: refund
      description: "**Refundace platby**<br>Metoda pro refundaci je určena pro již založené a proplacené platby. Stav platby musí být zaplacená (paid). Je možné provést jak částečnou (refundovaná částka je nižší, než částka platby), tak plnou refundaci (částka refundace je rovna částce platby). Daná částka bude převedena zpět na účet plátce.<br>Pokud platba nebyla dokončena a je ve stavu pending, je možné využít metodu storno platby."
      operationId: 4197a39ef55bac2448864b62c3023b1d
      requestBody:
        description: "Vrácení platby"
        content:
          application/json:
            schema:
              required:
                - transId
                - amount
              properties:
                transId:
                  description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
                  type: string
                  example: AB12-CD34-EF56
                amount:
                  description: "částka refundace – může být v plné nebo částečné výši transakce. Částka refundace se zadává v centech nebo haléřích. U měny HUF nelze zadat částku s desetinnými místy. V tomto případě musí částka vždy končit 00."
                  type: integer
                  format: int32
                  example: 10000
                test:
                  description: "Hodnota 'true' znamená, že refundace bude založena jako testovací. Refundace a platba bude prověřena standardní cestou, pouze nedojde k refundaci původní platby.<br>Pokud je vyplněno 'false' nebo je parametr prázdný, je založena ostrá refundace.<br>Testovací transakce mohou být refundovány pouze testovací refundací."
                  type: boolean
                  example: true
                refId:
                  description: "parametr vhodný k zadaní identifikačního čísla refundace na straně Klienta (nemusí být unikátní, tzn., že lze založit více refundací se stejným refId); v Klientském portálu v sekci refundací a denním csv u refundace je parametr označen jako ID Klienta. V případě, že tento parametr k refundaci není připojen, k platbě se zobrazí původní refId založené platby."
                  type: string
              type: object
      responses:
        200:
          description: Status
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>Návratový kód metody a popis chyby:</strong><br>0 OK<br>1100 neznáma chyba<br>1200 databázová chyba<br>1400 chybný dotaz<br>1401 refundovaná platba je v stavu CANCELLED<br>1402 částka převyšuje povolenou výšku<br>1500 neočakávaná chyba"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
  /v2.0/refundPos.json:
    post:
      summary: refundPos
      description: "**Refundace terminálové platby**<br>Metoda pro refundaci je určena pro již založené a proplacené terminálové platby. Stav platby musí být zaplacená (paid). Je možné provést jak částečnou (refundovaná částka je nižší, než částka platby), tak plnou refundaci (částka refundace je rovna částce platby). Daná částka bude převedena zpět na účet plátce.<br>Pokud platba nebyla dokončena a je ve stavu pending, je možné využít metodu storno platby.<br>Serverové API nemusí mít záznam o platbě ihned k dispozici. Proto je vhodné nejprve zavolat refundaci z pokladny na terminálu. A volání API využít v případě, že nelze refundaci zavolat z pokladny na terminálu.<br/>Pro využití této metody je nutné nejprve v Klientském portálu nastavit v sekci Nastavení obchodu - Terminály u daného terminálu povolené IP adresy, ze kterých se budou refundace provádět."
      operationId: 65170de9091a03dad0fb408a647b27c7
      requestBody:
        description: "Refundace terminálové platby"
        content:
          application/json:
            schema:
              required:
                - vs
                - amount
                - date
              properties:
                vs:
                  description: "variabilní symbol platby"
                  type: string
                  example: '7654321'
                amount:
                  description: "částka refundace – může být v plné nebo částečné výši transakce"
                  type: integer
                  format: int32
                  example: 10000
                date:
                  description: "datum provedení transakce"
                  type: string
                  example: '2000-02-22'
              type: object
      responses:
        200:
          description: Status
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>Návratový kód metody a popis chyby:</strong><br>0 OK<br>1100 neznáma chyba<br>1200 databázová chyba<br>1400 chybný dotaz<br>1401 refundovaná platba je v stavu CANCELLED<br>1402 částka převyšuje povolenou výšku<br>1500 neočakávaná chyba"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
  '/v2.0/preauth/transId/{transId}.json':
    put:
      summary: capturePreauth
      description: "V případě, že e-shop založil platbu s požadavkem na předautorizaci platby kartou (s využitím parametru 'preauth=true'), voláním této funkce vyžádá stržení peněz, které byly v rámci předautorizace zablokovány. Je možné provést jak částečné stržení transakce (předautorizovaná částka je nižší, než částka platby), tak plné stržení (částka stržení je rovna částce platby). Volání lze použít pouze pro platby, u nichž byl ohlášen stav AUTHORIZED."
      operationId: d91e7c3202b7c5b6128177e5611c0c8b
      requestBody:
        description: "Potvrzení předběžné autorizace"
        content:
          application/json:
            schema:
              required:
                - empty
              properties:
                amount:
                  description: "částka předautorizace, která má být z karty stržena - může být v plné nebo částečné výši transakce"
                  type: integer
                  format: int32
                  example: 10000
              type: object
      responses:
        200:
          description: "Předautorizační stav"
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>návratový kód metody a popis chyby:</strong><br>0 OK<br>1100 neznámá chyba<br>1104 nelze načíst platbu<br>1200 databázová chyba<br>1301 neznámý e-shop<br>1303 propojení nebo jazyk chybí<br>1399 neočekávaný výsledek z databáze<br>1400 chybný dotaz<br>1500 neočekávaná chyba"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transId
          in: path
          description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
          required: true
          schema:
            type: string
            example: AAAA-BBBB-CCCC
    delete:
      summary: cancelPreauth
      description: "V případě, že e-shop založil platbu s požadavkem na předautorizaci platby kartou (s využitím parametru 'preauth=true'), voláním této funkce dává najevo, že peníze, které byly v rámci předautorizace zablokovány, nechce inkasovat a peníze se na kartě mohou opět uvolnit. Volání lze použít pouze pro platby, u nichž byl ohlášen stav AUTHORIZED."
      operationId: 5fad261dae920bba7880aade214deedb
      responses:
        200:
          description: "Stav před zrušením autorizace"
          content:
            application/json:
              schema:
                required:
                  - code
                  - message
                properties:
                  code:
                    description: "<strong>návratový kód metody a popis chyby:</strong><br>0 OK<br>1100 neznámá chyba<br>1104 nelze načíst platbu<br>1200 databázová chyba<br>1301 neznámý e-shop<br>1303 propojení nebo jazyk chybí<br>1399 neočekávaný výsledek z databáze<br>1400 chybný dotaz<br>1500 neočekávaná chyba"
                    type: integer
                    example: 0
                  message:
                    description: ''
                    type: string
                    example: OK
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transId
          in: path
          description: "unikátní alfanumerický identifikátor (kód) transakce (transactionId)"
          required: true
          schema:
            type: string
            example: AAAA-BBBB-CCCC
  '/v2.0/transferList/date/{date}.json':
    get:
      summary: transferList
      description: "Metoda transferList slouží k získání informace, jaké převody byly uskutečněny v rámci daného dne. Informace o bankovním převodu (poslaného v předchozí pracovní den) je dostupná v dopoledních hodinách dne následujícího."
      operationId: c791f638208a6eef84b677ee5369a1ca
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/json:
              schema:
                type: array
                items:
                  properties:
                    transferId:
                      description: "Převody, které byly uskutečněny v rámci daného dne."
                      type: integer
                      example: 1234567
                    transferDate:
                      description: "Parametry date a transferDate jsou interpretovány v časovém pásmu Europe/Prague (CET/CEST v závislosti na datu)."
                      type: string
                      format: date
                      example: '2023-01-25'
                    accountCounterparty:
                      description: "Číslo účtu protistrany."
                      type: string
                      example: 0/0000
                    accountOutgoing:
                      description: "Odchozí číslo účtu."
                      type: string
                      example: 123456789/0000
                    variableSymbol:
                      description: "Identifikátor platby (variabilní symbol)."
                      type: string
                      example: '12345678'
                  type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: date
          in: path
          description: "uveďte datum uskutečnění převodu"
          required: true
          schema:
            type: string
            example: '2025-04-25'
        -
          name: test
          in: query
          description: "pokud vyplníte true, metoda vrátí předem definovaný vzorový převod"
          required: false
          schema:
            type: boolean
            example: false
  '/v2.0/singleTransfer/transferId/{transferId}.json':
    get:
      summary: singleTransfer
      description: "Metoda singleTransfer zobrazuje detailní informace ke konkrétnímu bankovnímu převodu.<br>Povinný parametr 'transferId' získá obchodník pomocí metody transferList.<br> Parametry date jsou interpretovány v časovém pásmu Europe/Prague (CET/CEST v závislosti na datu)"
      operationId: b473184f974917ad27377798abad1634
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/json:
              schema:
                type: array
                items:
                  properties:
                    typ:
                      description: "Parametr označuje typ převodu."
                      type: integer
                      example: 1
                    Merchant:
                      description: "Identifikátor e-shopu v systému Comgate."
                      type: string
                      example: '123456'
                    'Datum založení':
                      description: "Datum založení transakce."
                      type: string
                      example: '2023-01-06 14:11:30'
                    'Datum zaplacení':
                      description: "Datum zaplacení transakce."
                      type: string
                      example: '2023-01-06 14:21:30'
                    'Datum převodu':
                      description: "Datum vyplacení hromadného převodu transakcí."
                      type: string
                      example: '2023-01-10'
                    'Měsíc fakturace':
                      description: "Měsíc, ke kterému se platba vztahuje účetně."
                      type: string
                      example: null
                    'ID Comgate':
                      description: "Comgate ID platby, 12místný kód, unikátní identifikace platby."
                      type: string
                      example: AAAA-BBBB-CCCC
                    Metoda:
                      description: "Výsledná metoda platby."
                      type: string
                      example: 'Card payment'
                    Produkt:
                      description: "Libovolný identifikátor produktu, který předává váš systém při založení platby pod parametrem 'name'."
                      type: string
                      example: null
                    Popis:
                      description: "Krátký popis produktu (1–16 znaků), který předává váš systém při založení platby pod parametrem 'label'."
                      type: string
                      example: 'description eshop payment'
                    'E-mail plátce':
                      description: "E-mail plátce platby."
                      type: string
                      example: name.lastname@email.cz
                    'Variabilní symbol platby':
                      description: "Variabilní symbol přiřazený k dané platbě."
                      type: string
                      example: '123456789'
                    'Variabilní symbol převodu':
                      description: "Variabilní symbol hromadného převodu."
                      type: string
                      example: '123456789'
                    'ID od klienta':
                      description: "Párovací symbol, díky kterému identifikujete zboží a zákazníka, který si ho objednal (např. číslo objednávky, číslo zákazníka apod.). V rámci protokolu API se jedná o parametr RefId, který systém posílá při založení platby."
                      type: string
                      example: '1234'
                    Měna:
                      description: "Měna platby. Hodnota je ve formátu ISO 4217."
                      type: string
                      example: EUR
                    'Potvrzená částka':
                      description: "Částka realizované transakce (výše zákazníkovy objednávky)."
                      type: string
                      example: '10,00'
                    'Převedená částka':
                      description: "Částka, která je e-shopu standardně zaslána na bankovní účet (ponížená o poplatek z transakce)."
                      type: string
                      example: '10,00'
                    'Poplatek celkem':
                      description: "Celkový poplatek za platbu, který se řídí nastaveným ceníkem. Poplatek celkem = poplatek mezibankovní + poplatek asociace + poplatek zpracovatel."
                      type: string
                      example: '0,35'
                    'Poplatek mezibankovní':
                      description: "Poplatek, který dostává vydavatel platební karty."
                      type: string
                      example: '0,25'
                    'Poplatek asociace':
                      description: "Poplatek, který z transakce obdrží karetní asociace."
                      type: string
                      example: '0,25'
                    'Poplatek zpracovatel':
                      description: "Poplatek, který si účtuje zpracovatel transakce."
                      type: string
                      example: '-0,15'
                    'Typ karty':
                      description: "Typ použité platební karty při platbě kartou."
                      type: string
                      example: EU_UNREGULATED
                  type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transferId
          in: path
          description: "uveďte převody, které byly uskutečněny v rámci daného dne. Seznam získáte pomocí Metoda transferList."
          required: true
          schema:
            type: string
            example: '1234567'
        -
          name: test
          in: query
          description: "vhodné pro testování - Pokud je honota true, vrátí se detaily k předem definovaným vzorovým převodům"
          required: false
          schema:
            type: boolean
            example: false
  '/v2.0/csvSingleTransfer/transferId/{transferId}.json':
    get:
      summary: csvSingleTransfer
      description: "Díky metodě csvSingleTransfer si lze stáhnout denní výpis ve formátu CSV."
      operationId: d295851769bb8f5e0c4e21fdcf7dd896
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/json:
              schema:
                properties:
                  nazev:
                    description: "Název staženého souboru CSV"
                    type: string
                    example: vypis-YYYY-MM-DD.csv
                  csv:
                    description: "Soubor CSV s kódováním Base64"
                    type: string
                    example: 'base64 encoded csv'
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transferId
          in: path
          description: "uveďte převody, které byly uskutečněny v rámci daného dne. Seznam získáte pomocí Metoda transferList."
          required: true
          schema:
            type: string
            example: '1234567'
        -
          name: download
          in: query
          description: "Pokud není vyplněno, nebo je false, tak vrací data : název souboru a jeho obsah; pokud je true, tak vrací rovnou CSV soubor."
          required: false
          schema:
            type: boolean
            example: false
        -
          name: test
          in: query
          description: "Pokud je hodnota true, vrátí ukázkový CSV soubor."
          required: false
          schema:
            type: boolean
            example: false
  '/v2.0/aboSingleTransfer/transferId/{transferId}.json':
    get:
      summary: aboSingleTransfer
      description: "Díky metodě aboSingleTransfer si lze stáhnout denní výpis ve formátu ABO."
      operationId: d36a9b048e379b37846200d16e8eb501
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/json:
              schema:
                properties:
                  nazev:
                    description: "název souboru"
                    type: string
                    example: vypis-YYYY-MM-DD.gpc
                  abo:
                    description: "soubor abo/gpc v kódování base64"
                    type: string
                    example: base64_encoded_abo_file
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: transferId
          in: path
          description: "uveďte převody, které byly uskutečněny v rámci daného dne. Seznam získáte pomocí Metoda transferList."
          required: true
          schema:
            type: string
            example: '1234567'
        -
          name: download
          in: query
          description: "Pokud není vyplněno, nebo je false, tak vrací data : název souboru a jeho obsah; pokud je true, tak vrací rovnou ABO soubor."
          required: false
          schema:
            type: boolean
            example: true
        -
          name: type
          in: query
          description: "parametr 'type' může nabývat hodnot 'v1' a 'v2'. Pod 'v1' získáte ABO verzi s poplatky uvedenými zvlášť ke každé platbě, pod 'v2' pak ABO s poplatkem souhrnným v jednom řádku. Pokud nebude parametr vyplněn, automaticky obdržíte typ 'v1'. "
          required: false
          schema:
            type: string
            example: v1
        -
          name: encoding
          in: query
          description: "Kódování znaků může mít hodnoty utf8 nebo win1250. Pokud není hodnota vyplněna je hodnota parametru defaultně ve formátu utf8."
          required: false
          schema:
            type: string
            example: false
        -
          name: test
          in: query
          description: "Pokud je hodnota true, vrátí ukázkový ABO soubor."
          required: false
          schema:
            type: boolean
            example: false
  '/v2.0/csvDownload/date/{date}':
    get:
      summary: csvDownload
      description: "Přímé stažení CSV souborů pro konkrétní den metodou csvDowload. Stažený soubor ve formátu ZIP bude obsahovat jeden nebo více souborů CSV, pokud je více převodů v rámci dne. Lze využít např. pro volání pomocí wget."
      operationId: e10e8699fce1a4e2b02f3393e8b229ec
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/zip:
              schema:
                type: string
                format: binary
                example: 'ZIP file containing a CSV of all transfers made on the date specified in the request'
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: date
          in: path
          description: "povinný pouze za jeden den"
          required: true
          schema:
            type: string
            example: '2025-04-25'
        -
          name: test
          in: query
          description: "Pokud je hodnota true, vrátí ukázkový CSV soubor ve formátu ZIP."
          required: false
          schema:
            type: boolean
            example: false
  '/v2.0/aboDownload/date/{date}':
    get:
      summary: aboDownload
      description: "Přímé stažení ABO souborů pro konkrétní den metodou aboDowload. Stažený soubor ve formátu ZIP bude obsahovat jeden nebo více souborů ABO.<br>Lze využít např. pro volání pomocí wget."
      operationId: ddc69daa06e5d32f13ad35c759e1e1a1
      responses:
        200:
          description: "Úspěšná operace"
          content:
            application/zip:
              schema:
                type: string
                format: binary
                example: 'ZIP file contaning ABO for all transfers made on the date specified in the request'
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: date
          in: path
          description: "povinný pouze za jeden den"
          required: true
          schema:
            type: string
            example: '2025-04-25'
        -
          name: type
          in: query
          description: "parametr 'type' může nabývat hodnot 'v1' a 'v2'. Pod 'v1' získáíte ABO verzi s poplatky uvedenými zvlášť ke každé platbě, pod 'v2' pak ABO s poplatek souhrným v jednom řádku. Pokud nebude parametr vyplněn, automaticky obdržíte typ 'v1'."
          required: false
          schema:
            type: string
        -
          name: encoding
          in: query
          description: "Kódování znaků může mít hodnoty utf8 nebo win1250. Pokud není hodnota vyplněna je hodnota parametru defaultně ve formátu utf8."
          required: false
          schema:
            type: string
        -
          name: test
          in: query
          description: "Pokud je hodnota true, vrátí ukázkový CSV soubor ve formátu ZIP."
          required: false
          schema:
            type: boolean
            example: false
  /v2.0/method.json:
    get:
      summary: methods
      description: "**Získání povolených metod**<br>Metoda pro získání nastavení, které má e-shop povolené v Comgate Platebním Systému. Touto metodou lze získat seznam dostupných platebních metod pro realizaci plateb.<br>V odpovědi se nachází XML nebo JSON, podle zvoleného parametru. Oba formáty mají stejnou úroveň zanoření."
      operationId: 5a06496cc036a6e4b545635883ad1111
      responses:
        200:
          description: "HTTP 200, Seznam platebních metod"
          content:
            application/json:
              schema:
                description: "struktura vráceného JSON"
                required:
                  - methods
                properties:
                  methods:
                    description: "Dostupné metody"
                    type: array
                    items:
                      properties:
                        id:
                          description: "ID metody"
                          type: string
                        group:
                          description: "Skupina metody"
                          type: string
                        groupLabel:
                          description: "Popis skupiny metody"
                          type: string
                        name:
                          description: "Název metody"
                          type: string
                        name_short:
                          description: "Krátký název metody"
                          type: string
                        description:
                          description: "Popis metody"
                          type: string
                        logo:
                          description: "Logo metody"
                          type: string
                        logo_240:
                          description: "240px logo metody"
                          type: string
                        cblogo:
                          description: "Centrované větší logo metody"
                          type: string
                        clogo:
                          description: "Centrované logo metody"
                          type: string
                        sblogo:
                          description: "Čtvercové větší logo metody"
                          type: string
                        slogo:
                          description: "Čtvercové logo metody"
                          type: string
                      type: object
                type: object
        400:
          description: "HTTP 200, došlo k chybě"
          content:
            application/json:
              schema:
                description: "vrátí HTTP 200 (OK)!!<br>struktura vráceného JSONu"
                required:
                  - error
                properties:
                  error:
                    description: "Chyba"
                    type: array
                    items:
                      properties:
                        code:
                          description: ''
                          type: string
                          example: '1400'
                        message:
                          description: "návratový kód metody a popis chyby:<br>0 OK<br>1100 neznámá chyba<br>1200 databázová chyba<br>1300 e-shop nemá žádnou metodu<br>1400 chybný dotaz<br>1500 neočekávaná chyba"
                          type: string
                          example: 'Unauthorized access!'
                        extraMessage:
                          description: "upřesnění chybového hlášení"
                          type: string
                          example: ''
                      type: object
                type: object
      parameters:
        -
          name: authorization
          in: header
          description: "Autorizační hlavička je ve tvaru: 'Authorization: Basic [base64_encode(merchant:secret)]'. Merchant je identifikátor e-shopu v systému Comgate - naleznete v Klientském portálu v sekci Nastaveni obchodů - Propojeni obchodu. Secret je heslo."
          required: true
          schema:
            type: string
        -
          name: lang
          in: query
          description: "Výběr, v jakém jazyce budou popisy metod. Povolené hodnoty jsou 'bg', 'cs', 'da', 'de', 'el', 'en', 'es', 'et', 'fi', 'fr', 'hr', 'hu', 'it', 'lt', 'lv', 'nl', 'no', 'pl', 'pt', 'ro', 'si', 'sk', 'sv', 'vi'. Pokud nebude vyplněno, použije se 'cs'."
          required: false
          schema:
            type: string
        -
          name: curr
          in: query
          description: "Vyplněním parametru na hodnoty CZK nebo EUR dojde k vrácení metod, které podporují zadanou měnu (CZK, EUR, PLN, HUF, USD, GBP, RON, NOK, SEK)."
          required: false
          schema:
            type: string
        -
          name: country
          in: query
          description: "Kód země ('AT', 'BE', 'CY', 'CZ', 'DE', 'EE', 'EL', 'ES', 'FI', 'FR', 'GB', 'HR', 'HU', 'IE', 'IT', 'LT', 'LU', 'LV', 'MT', 'NL', 'NO', 'PL', 'PT', 'RO', 'SL', 'SK', 'SE', 'US'), parametr slouží k omezení výběru platebních metod pro zadanou zemi."
          required: false
          schema:
            type: string
        -
          name: price
          in: query
          description: "Cena za produkt v centech nebo haléřích. U měny HUF nelze zadat cenu s desetinnými místy. V tomto případě musí cena vždy končit 00.<br>Musí být min. 1 CZK; 0,1 EUR; 1 PLN; 100 HUF; 1 USD; 1 GBP; 5 RON; 0,5 NOK; 0,5 SEK.<br>Max. 1 000 000 CZK; 40 000 EUR; 170 000 PLN; 12 500 000 HUF; 45 000 USD; 35 000 GBP; 190 000 RON; 400 000 NOK; 390 000 SEK."
          required: false
          schema:
            type: integer
        -
          name: initRecurring
          in: query
          description: "Příznak pro iniciační transakce pro opakované platby. Pouze pro Klienty, kteří mají službu povolenou."
          required: false
          schema:
            type: boolean
        -
          name: verification
          in: query
          description: "Parametr ověřovací platby, v případě požadavku na založení ověřovací platby (hodnota ‘true’) není nutné posílat parametr ‘initRecurring’."
          required: false
          schema:
            type: boolean
        -
          name: preauth
          in: query
          description: "V případě požadavku na předautorizaci platby kartou nastavte na ‘true’. V případě normální platby vyplňte ‘false’ nebo parametr nepoužívejte. Pouze pro platby kartou."
          required: false
          schema:
            type: boolean
        -
          name: expirationTime
          in: query
          description: "Délka expirace platby. Povolená hodnota je celé číslo následované písmenem zvolené časové jednotky: ‘m’ (minuty), ‘h’ (hodiny) nebo ‘d’ (dny). Například ‘30m’ (30 minut) nebo ‘10h’ (10 hodin) nebo ‘2d’ (2 dny). Jednotky nelze kombinovat. Výsledná délka musí být v rozmezí 30 minut až 7 dní."
          required: false
          schema:
            type: string
        -
          name: embedded
          in: query
          description: "Parametr 'embedded' slouží k filtrování metod v případě, že se brána bude zobrazovat v iframe. Dojde k odfiltrování platebních metod, které není možné na platební bráně v iframe zobrazit. Pokud zobrazujete platební bránu v iframe, použijte 'embedded=true'."
          required: false
          schema:
            type: boolean
        -
          name: userAgent
          in: query
          description: "Parametr 'userAgent' slouží k identifikaci webového prohlížeče zákazníka. Odfiltruje platební metody nekompatibilní s daným zařízením."
          required: false
          schema:
            type: string
        -
          name: chargeUnregulatedCardFees
          in: query
          description: "Pomocí tohoto parametru zapnete nebo vypnete přenesení poplatků na plátce při platbě neregulovanou kartou a zároveň vypnete metodu Apple Pay a Google Pay (pokud není parametrem 'enableApplePayGooglePay' nastaveno jinak). Povolené hodnoty jsou 'true' nebo 'false'.<br>Použití tohoto parametru je možné pouze po schválení a zapnutí ze strany Comgate. Ne všechna e-commerce řešení tento parametr podporují.<br><br>Více informací o přenesení poplatku najdete na <a href='https://help.comgate.cz/docs/preneseni-poplatku' target='_blank'>stránkách podpory</a>."
          required: false
          schema:
            type: boolean
        -
          name: enableApplePayGooglePay
          in: query
          description: "Nastavte na 'false' pro vypnutí platební metody Apple Pay a Google Pay pro konkrétní platbu, i když jsou ve vašem nastavení účtu tyto metody povoleny.<br>Nastavte na 'true' pro zapnutí platební metody Apple Pay a Google Pay pro konkrétní platbu, i když je použit parametr 'chargeUnregulatedCardFees'.<br>Pokud je použit parametr 'chargeUnregulatedCardFees', tak je výchozí hodnota parametru 'enableApplePayGooglePay' 'false'. V opačném případě je výchozí hodnota 'true'."
          required: false
          schema:
            type: boolean
