csob / platebnibrana

Česká dokumentace ČSOB platební brány a jejího eAPI pro platby platebními kartami, Apple Pay, Google Pay, mallpay a platebními tlačítky ČSOB.
https://platbakartou.csob.cz/platebni-brana
GNU General Public License v3.0
7 stars 1 forks source link

v1.9 oneclick/process vždy vrací "Wrong signature" #7

Closed OndrejSykora closed 2 years ago

OndrejSykora commented 2 years ago

Zdravím,

zkouším na testovacím API provolávat endpointy nové verze API a v rámci endpointu oneclick/process jsem narazil na to, že se mi pokaždé vrací odpověď...

{
    "resultCode": 110,
    "resultMessage": "Wrong signature"
}

Zkoušel jsem vše několikrát překontrolovat, ale už nevím kde by mohla být chyba. Podepisování požadavků provádím stejně jako v případě v1.8 a dokonce i provolání všech ostatních endpointů nové verze, až na tento jediný, funguje bez problémů.

Podle "resultCode": 110, bych čekal, že bude chyba v názvu nebo hodnotě nějakého parametru, ale ostatní parametry by měly být správně. Tak musí být nějaká špatnost při generování samotného podpisu.

Například pro požadavek...

{
  "merchantId": "M1MIPS1679",
  "payId": "a815d83f0f24@HG",
  "dttm": "20220703113906",
  "fingerprint": {
    "browser": {
      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.5 Safari/605.1.15",
      "acceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
      "language": "en-GB",
      "javascriptEnabled": true,
      "colorDepth": 24,
      "screenHeight": 2160,
      "screenWidth": 3840,
      "timezone": -120,
      "javaEnabled": false,
      "challengeWindowSize": "05"
    }
  },
  "signature": "base64-encoded-response-signature"
}

Vygeneruji RETEZEC_ZPRAVY ve tvaru:

'M1MIPS1679|a815d83f0f24@HG|20220703113906|Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.5 Safari/605.1.15|text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8|en-GB|true|24|2160|3840|-120|false|05'

Na první pohled se mi to zdá správně. Nebo jsme něco přehlédl?

mschre400 commented 2 years ago

Dobrý den, Váš požadavek byl zaevidován pod: TSGSMIPS-17529  a předán k řešení. O dalším průběhu Vás budeme informovat. S přáním hezkého dne 1st level support

M +420 603 197 054 E servis@monetplus.cz MONET+,a.s., Za Dvorem 505, 763 14  Zlín-Štípa monetplus.com | linkedin | facebook

Daaarkling commented 2 years ago

Zdravím,

pouze potvrzuji chybu. Také při requestu na oneclick/process dostávám Wrong signature. :-(

jgrmelova commented 2 years ago

Dobrý den,

chyba je na naší straně, momentálně se (v rozporu s dokumentací), očekává pořadí podepisovaného objektu "browser" takto:

acceptHeader javaEnabled language colorDepth screenHeight screenWidth timezone userAgent challengeWindowSize javascriptEnabled

místo správného: userAgent acceptHeader language javascriptEnabled colorDepth screenHeight screenWidth timezone javaEnabled challengeWindowSize

Oprava bude nasazena v nejbližším release.

-- Jana Grmelová

Daaarkling commented 2 years ago

@jgrmelova

Dobrý den, potvrzuji funkčnost.

Toret-plugins commented 2 years ago

@jgrmelova

Dobrý den, bohužel stále dostávám chybu 110, Wrong signature. při volán: https://iapi.iplatebnibrana.csob.cz/api/v1.9/googlepay/process

Lze najít z logu co je konkrétně špatně?

Požadavek:

{
  ["merchantId"]=>
  string(10) "M1EPAY0349"
  ["payId"]=>
  string(15) "7c644f22a800@HH"
  ["dttm"]=>
  string(14) "20220801083445"
  ["fingerprint"]=>
  array(1) {
    ["browser"]=>
    array(4) {
      ["userAgent"]=>
      string(111) "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
      ["acceptHeader"]=>
      string(48) "text/html,application/xhtml+xml,application/xml;"
      ["language"]=>
      string(2) "en"
      ["javascriptEnabled"]=>
      bool(true)
    }
  }
  ["signature"]=>
  string(344) "WYxQRii82V69sur0wpJmlJRNi+F1FgT7nhRg3C4f2CeWSE9/5eguzZ76QkdJI/BVblkPaDuLw2cn/IME/zYnNHjeC3312bidF8Om+TdlstMxMctOaBGGeTg34C49aQ+yzExDRrXTQAQmExVIG7SKyv2syUkYhSuQNhlU7SNgYDv6egcozW/mZXglWBR5NCn2pCfVr8l7rvEPKw95BP8CMXT3NzwxC6uNuT+2zSe0u6qiBCq+aED5gPtZJb5lIQm5oO9Wr00Gr/OyXgnMfGsdtuKAPVGSvfESx+mK8KQvIT+CwxW3Dc2qLNpKwYadr9U68ZX0w+mGQMdVYiGdFaS/eA=="
}

Předem děkuji.

S pozdravem, Vojtěch Rubáš

jgrmelova commented 2 years ago

Dobrý den,

nový release vyjde 09.08.2022. Aktuálně je očekávané pořadí podepisovaného objektu "browser" v rozporu s dokumentací.

Aktuálně: acceptHeader javaEnabled language colorDepth screenHeight screenWidth timezone userAgent challengeWindowSize javascriptEnabled

místo správného: userAgent acceptHeader language javascriptEnabled colorDepth screenHeight screenWidth timezone javaEnabled challengeWindowSize

V případě dotazů jsme Vám k dispozici.

Hezký den.


Jana Grmelová

jgrmelova commented 2 years ago

Dobrý den,

plánované vydání nového release pro produkční prostředí bylo posunuto. Nový termín vydání je 16.08.2022. O nasazení Vás budu informovat.


Jana Grmelová

jgrmelova commented 2 years ago

Dobrý den,

dnes proběhlo plánované nasazení nového release pro produkční prostředí.

Očekávané pořadí podepisovaného objektu "browser" je již v souladu s dokumentací.

V případě doplňujících dotazů jsem Vám k dispozici.

Hezký den.


Jana Grmelová

Toret-plugins commented 2 years ago

@jgrmelova Funguje, děkuji za opravu.