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

Google Pay - nefunkcne overovanie podpisu (poradie parametrov) #45

Open KamikX opened 1 year ago

KamikX commented 1 year ago

Ahojte,

viem ze tu nieco podobne bolo uz reportovane v inom issue https://github.com/csob/platebnibrana/issues/8#issuecomment-1178650771 podla komenarov fixnute 19.7. ale zda sa ze tento problem stale pretrvava minimalne na integracnom prostredi s rovnakymi priznakmi, vsetky ine overenia podpisov funguju spravne az na toto.

Prijate data

array:5 [
  "resultCode" => 0
  "resultMessage" => "OK"
  "dttm" => "20230807200943"
  "signature" => "PODPIS"
  "initParams" => array:16 [
    "apiVersion" => 2
    "apiVersionMinor" => 0
    "paymentMethodType" => "CARD"
    "allowedCardNetworks" => array:2 [
      0 => "VISA"
      1 => "MASTERCARD"
    ]
    "allowedCardAuthMethods" => array:2 [
      0 => "PAN_ONLY"
      1 => "CRYPTOGRAM_3DS"
    ]
    "assuranceDetailsRequired" => false
    "billingAddressRequired" => false
    "billingAddressParametersFormat" => "FULL"
    "tokenizationSpecificationType" => "PAYMENT_GATEWAY"
    "gateway" => "csob"
    "gatewayMerchantId" => "MERCHANT_ID"
    "googlepayMerchantId" => "GOOGLE_MERCHANT_ID"
    "merchantName" => "WEB_URL"
    "environment" => "TEST"
    "totalPriceStatus" => "FINAL"
    "countryCode" => "CZ"
  ]
]

Testovany retazec: "0|OK|20230807200943|2|0|CARD|VISA|MASTERCARD|PAN_ONLY|CRYPTOGRAM_3DS|false|false|FULL|PAYMENT_GATEWAY|csob|MERCHANT_ID|GOOGLE_MERCHANT_ID|WEB_URL|TEST|FINAL|CZ"

Mozno by bolo fajn pridat nieco podobne pre debugging na styl REQUEST_TEXT_TO_SIGN len opacne RESPONSE_TEXT_TO_SIGN aby sme vedeli overit ci spravne skladame retazec na overenie podpisu v pripade response.

Možnost debuggingu hodnoty RETEZEC_ZPRAVY pro POST a PUT metody

API v integrační prostředí vrací pro každý POST a PUT požadavek speciální HTTP response header REQUEST_TEXT_TO_SIGN. Obsahuje hodnotu RETEZEC_ZPRAVY sestavenou z parametrů přijatého požadavku (platební brána tuto hodnotu následně použije pro ověření podpisu požadavku). Pomocí této response header si může obchodník zkontrolovat, zda hodnota RETEZEC_ZPRAVY sestavená na straně eshopu odpovídá tomu, co sestaví platební brána.

Dakujem.

mjanek commented 1 year ago

Dobrýden, Váš požadavekbyl zaevidován a předán k řešení. O dalším průběhu Vás budeinformovat odpovědný servisní technik. Miroslav Janek

KamikX commented 1 year ago

@mjanek Dobry den, mame nejaky update k tomuto problemu? overovanie mi nefunguje ani pri endpointe googlepay/init, myslim ze to moze sposobovat poradie parametrov vo vyskladanom retazci, napriklad pri klasickom payment/init je uvedene ze vrati nasledovne kde je payId na prvom mieste, realne to ale vrati

{
    "dttm": "20230811123558",
    "signature": "DATA",
    "payId": "fd991dc4eda4@IH",
    "resultCode": 0,
    "resultMessage": "OK",
    "paymentStatus": 1
}

ak ma niekto potom postavenu logiku vyskladania retazca na podpis automaticky ze prejde zaradom cele pole a podpolia (s vynimkami na niektore kluce) vznikne retazec ktory neprejde nesedi to voci tomu co je pozadovane podla dokumentacie

Dakujem.

jgrmelova commented 1 year ago

Dobrý den,

požadavek byl předán na vývojové oddělení k detailnímu prověření.

Prověření je na programátora z kapacitních důvodů zaplánované na začátek příštího týdne.
O výsledku prověření Vás budeme následně informovat.

Děkujeme za pochopení.

Jana Grmelová

KamikX commented 1 year ago

Dobrý den,

požadavek byl předán na vývojové oddělení k detailnímu prověření.

Prověření je na programátora z kapacitních důvodů zaplánované na začátek příštího týdne. O výsledku prověření Vás budeme následně informovat.

Děkujeme za pochopení.

Jana Grmelová

Dobry den,

nejaky update?

jgrmelova commented 1 year ago

Dobrý den,

u metody echo je pořadí v podpisu následující:

echo:

initParams:

Pro metodu init:

actions (browserChallenge):

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

Jana Grmelová

KamikX commented 1 year ago

@jgrmelova Dakujem za doplnujuce informacie, chyba bola teda na mojej strane, zle poradie parametrov / zly retazec na overenie.
Bude poradie parametrov voci dokumentacii v buducnosti zosuladene?

Dakujem