csob / paymentgateway

English documentation of the ČSOB Payment Gateway that offers an API for credit card payments, Apple Pay, Google Pay, mallpay and ČSOB Payment Button.
https://platbakartou.csob.cz/platebni-brana
GNU General Public License v3.0
121 stars 68 forks source link

Apple pay, applepay/init #514

Closed kopeclu2 closed 4 years ago

kopeclu2 commented 4 years ago

Dobrý den, píši ohledně chyby kódu 400. Snažíme se implementovat apple pay. Platbu klasickou cestou pres payment/init .. /status fungují naprosto v pořádku. Prošel jsem celý manuál integrace applePay do platební brány všechny kroky, jsem splnil. Certifikáty jsou vygenerované a aktivní. pro podpis používáme stejný private klíč jako pro posílání plateb na payment/init ... bohužel stále a pořád mě brána vrací 400 bez jakékoliv informace z které by jsem poznal, kde děláme chybu. merchantId: M1MIPS7886

Děkuji mnohokrát za jakékoliv informace a odpověď

Obrázek requestu:

Snímek obrazovky 2020-07-23 v 15 34 26
kkolarikova commented 4 years ago

Dobrý den,

Váš požadavek byl předán na odpovědného kolegu.

S pozdravem Kolaříková

kopeclu2 commented 4 years ago

Dobrý den,

Váš požadavek byl předán na odpovědného kolegu.

S pozdravem Kolaříková

dkomarek2 commented 4 years ago

Dobrý den,

hodnota parametru "orderNo" musí být v uvozovkách (je to string). Jinou obsahovou chybu jsem nenašel. HTTP code 400 je problém s podpisy.

Pokud řešíme problém s verifikací klíčů tak několik poznámek: • Důležité je pořadí hodnot stringu ze kterého se tvoří Signature (odpovídá pořadí parametrů v tabulce odshora dolů - https://github.com/csob/paymentgateway/wiki/Metody-pro-Apple-Pay#metoda-applepayinit-) • Dále použitý algoritmus pro tento podpis, typicky SHA-1 (pro eAPI v1.7 a nižší), nebo SHA-256 (pro eAPI v1.8 a vyšší) • Příklady implementace a další informace: https://github.com/csob/paymentgateway/wiki/%C4%8Cast%C3%A9-technick%C3%A9-dotazy https://github.com/csob/paymentgateway/wiki/Podpis-po%C5%BEadavku-a-ov%C4%9B%C5%99en%C3%AD-podpisu-odpov%C4%9Bdi

Prosím opravte impelemntaci a vyzkoušejte. V případě přetrvávajících problémů mi prosím napište email na dkomarek@monetplus.cz. Do něj prosím uveďte:

Děkuji.

S pozdravem,

Daniel Komárek IT application specialist

kopeclu2 commented 4 years ago

Děkuji mnohokrát za rady. Problém byl ve String Builderu kde nebyl do dodrženo pořadí atributů. Bohužel nyní mě API vrací 500 a to s message: MerchantID blocked Jak jsem již psal nahoře, certifikáty by měli být platné. Děkuji předem za odpověď

dkomarek2 commented 4 years ago

Dobrý den,

metoda platby ApplePay aktuálně není povolena pro MerchanID M1MIPS7886.

Prosím kontaktujte zástupce banky aby vám ji povolila.

Děkuji.

S pozdravem,

Daniel Komárek IT application specialist

kopeclu2 commented 4 years ago

Dobrý den, děkuji mnohokrát, právě applepay/init prošel. Avšak nadále tápeme co nastává po /init. Nejspíše volání apple session (https://developer.apple.com/documentation/apple_pay_on_the_web/apple_pay_js_api/requesting_an_apple_pay_payment_session) na kde validationURL bude jeden ze serveru Apple (https://developer.apple.com/documentation/apple_pay_on_the_web/setting_up_your_server) ? Děkuji za odpověď S pozdravem Kopecký

janbrasna commented 4 years ago

@kopeclu2 Je to tak, popis viz wiki/Apple-Pay#integrace — kde jsou i odkazy dal na Apple Developer vc. demo sandboxu s ukazkami JS pro obsluhu dialogu a sezeni v klientu, a take paralelni komunikace s API na strane serveru. Je to mimo zdejsi ramec dokumentace brany (popis se snazime priblizit tomu co vas ceka i na teto fronte, ale spis jen pro predstavu), nebot zbyla klientska komunikace; a implementace sezeni, validace, dialogu ap. vuci Apple serverum a jejich API je uz na vas.

Jinak jen poznamka do budoucna, na cervnovem WWDC bylo oznameno ze volba validationURL v API bude nahrazena primym volanim na pevny endpoint — v Apple Developer dokumentaci to zatim neni, ale vyvojari jiz byli upozorneni ze stavajici cesta pridelovani serveru v ramci geografie bude zmenena, a do budoucna nebude dal podporovana. Tak si pak jen jednou za cas sledujte zmeny co Apple provadi v danych volani, abyste zavcasu svou implementaci upravili.

dkomarek2 commented 4 years ago

Dobrý den,

potvrzuji, že od včerejška (27.7. cca 14:42) máte od banky na integračním prostředí aktivní (povolenou) metodu platby ApplePay. Jak již zmínil @janbrasna tak zmíněná část implementace je již mezi vámi a Apple. Pokud by jste měl problém s komunikací s platební bránou, pak napište konkrétní příklad.

Děkuji.

S pozdravem,

Daniel Komárek IT application specialist