Nous formons une application hybride Android via Phonegap. Utilisation du kit d'intégration Web PayTm.
La somme de contrôle est générée correctement. Mais lorsque le formulaire est soumis pour le paiement, le problème ** Somme de contrôle invalide ** est renvoyé.
3 Réponses :
J'ai rencontré le même problème pendant plus de 2 jours. J'ai intégré PAYTM sur ionic 4. mon erreur était, mon "TXN_AMOUNT" est en montant total. "TXN_AMOUNT" doit être en nombre décimal. par exemple 199,33, 152,56.
D'autre part, "LISEZ LE GUIDE D'INTÉGRATION PAYTM" attentivement. c'est en fait assez bon. https://developer.paytm.com/docs
Le nombre décimal doit être envoyé au format décimal ou au format chaîne? Je suis confronté au même problème de somme de contrôle invalide et je suis incapable de trouver une solution. Sur la documentation de Paytm, ils ont envoyé le TXN_AMOUNT en chaîne.
https://developer.paytm.com/docs/api/initiate-transaction-api/?ref=payments
REMARQUE: créez la signature à l'aide du paramètre body de la demande dans la même séquence que vous transmettez la demande .
exemple:
body = {"mid": "MID HERE", "websiteName": "WEBSTAGING", "orderId": "ORDERIDHERE", "txnAmount": {"value": "10.00", "currency": "INR"}, "userInfo": {"custId": "CUSTOMERID_HERE"}, "callbackUrl": "https://securegw-stage.paytm.in/theia/paytmCallback?ORDER_ID=ORDERID", "requestType": "Payment"}
json_body = body.to_json
#RUBY SUR RAILS https://github.com/paytm/Paytm_Ruby_Checksum
generated_signature = PaytmChecksum.new.generateSignature(json_body, MERCHANT_KEY_HERE) curl -X POST 'https://securegw-stage.paytm.in/theia/api/v1/initiateTransaction?mid=MID HERE&orderId=ORDERID_HERE' \ --header 'Content-Type: application/json' \ --data '{"body":{"requestType":"Payment","mid":MID_HERE,"websiteName":"WEBSTAGING","orderId":ORDER_ID_HERE,"txnAmount":{"value":"10.00","currency":"INR"},"userInfo":{"custId":CUSTOMER_ID},"callbackUrl":"https://securegw-stage.paytm.in/theia/paytmCallback?ORDER_ID=ORDER_ID_HERE"},"head":{"signature": generated_signature}}'
Comme vous l'avez noté, je passe le paramètre body dans la même séquence que celle que j'ai utilisée lors de la création de la signature (somme de contrôle) comme dans le paramètre corps de la requête.
Veuillez transmettre la même valeur de paramètre dans la requête qui est utilisée lors de la génération de la somme de contrôle. Reportez-vous également aux documents de somme de contrôle paytm disponibles sur le portail des développeurs paytm.
solution trouvée?
Pourtant, le problème persiste. Même en suivant la documentation officielle, on obtiendra ce message d'erreur. Les documents Paytm sont des déchets.