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

HTTP response 400 pri prechodu do PROD prostredi #581

Closed Pitrsn closed 3 years ago

Pitrsn commented 3 years ago

Dostal jsem se do faze, ze mame prejit do produkcnho prostredi.

Merchant ID: M1MIPS9101

  1. Na adrese https://platebnibrana.csob.cz/keygen/ jsem vygeneroval nove klice, ktere jsem ulozil na server
  2. Nahral jsem klic do administrace
  3. https://posman.csob.cz/posmerchant jsem potvrdil nahrani klice jednorazovym heslem

Zmenil jsem klice v aplikaci

public static $bankMerchantId = "M1MIPS9101";
public static $bankUrl = "https://iapi.iplatebnibrana.csob.cz/api/v1.8";
public static $bankPublicKey = "mips_platebnibrana.csob.cz.pub";
public static $bankPrivateKey = "rsa_M1MIPS9101.key";
public static $bankPrivateKeyPassword = null;

Ale pri inicializaci platby dostanu HTTP response 400 https://github.com/csob/paymentgateway/wiki/Vol%C3%A1n%C3%AD-rozhran%C3%AD-eAPI coz jsem se dozvedel, ze je povazovano za Bad request

Toto jsou vytazene data co se skladaji a posilaji

"merchantId":"M1MIPS9101",
"orderNo":"1011198",
"payOperation":"payment",
"payMethod":"card",
"totalAmount":"1000",
"currency":"CZK",
"closePayment":true,
"returnUrl":"https:\/\/www.moto-jitka.cz\/platba-objednavky",
"returnMethod":"POST",
"cart":[
  {
   "name":"Zbo\u017e\u00ed",
   "quantity":1,
   "amount":"1000",
   "description":"Zbo\u017e\u00ed"
  }
],
"description":"N\u00e1kup na moto-jitka.cz",
"merchantData":null,
"language":"CZ",
"dttm":"20210614224649",
"signature":"BfIPiIPo602RDhFNj0UBBieEjGKLepojm28ZZ1U1GAspejv5PT2Hqmbd\/ydQGIikWOOpcvWWMErk\/U75HDn3u286ZGgFf++dukH8jEm\/ZgSYGFKKONjTpw60sanjsSs+bI3TJvgEk1vJvJRAQsggMprg+xXjS3Tuu7YUGg5oA3E8qfJ\/P0UYQaPgW4hHnhSactROjV0H5xvFezATHZa\/xB5D1rcWIKkguRglgqpI1r0attb8rPRJxvc4pJgrB0G9vv5t7PP+g+iYP\/hzQE3\/+0omayX2761Yp7XY5FB0A6wmf6nV9+ACCw7FQ6al9K6Xo+dAWDPfBvYMnNSmyxBYxQ=="
$ch = curl_init(Config::$bankUrl . Config::$bankMethods["init"]);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Accept: application/json;charset=UTF-8'
));

$result = curl_exec($ch);

Koukal jsem se do logu a z toho bohuzel nic moc nevyctu zda je neco spatne

----- Mon, 14 Jun 2021 22:46:49 +0200 ----- payment/init data to sign:: 'M1MIPS9101|1011198|20210614224649|payment|card|1000|CZK|true|https://www.moto-jitka.cz/platba-objednavky|POST|Zboží|1|1000|Zboží|CZ'
----- Mon, 14 Jun 2021 22:46:49 +0200 ----- payment/init verify: |||

jedine co muzu rict, ze to nedokazalo verifikovat platbu. To je asi vse co z toho dokazu vycist.

Dokazali byste me prosim poradit? Není nejaka casova prodleva, mezi tim kdy se aktivuje brana a dobou co se muze zacit pouzivat? Nebo nevidite nekde problem? Pripadne doplnim co a jak se pouziva, pokud to pomuze

mjanek commented 3 years ago

Dobrý den, zkuste změnit adresu integrace https://iapi.iplatebnibrana.csob.cz/api/v1.8 na produkční adresu https://api.platebnibrana.csob.cz/api/v1.8 Pokud nepomůže ani to. Předám na odpovědného kolegu.

Pitrsn commented 3 years ago

Tak to jsem nouma, samozrejme, ze funguje! Ja si rikal, jestli tam to "i"cko ma byt, kdyz jsem menil ten public key, ale nedohledal jsem to.

Díky za pomoc, beru za vyresene. Uspesne jsem zaplatil

janbrasna commented 3 years ago

@Pitrsn Je pravda ze ani

nepopisuje potrebu vymenit sandbox endpointy za ostre. Diky za feedback, to samozrejme chybi. Pridavam do meta-vlakna #222 ktere podobne potize koncentruje. Snad to v budoucnu pomuze ostatnim, ocenujeme nahlaseni! ^H.