VivaPayments / API

Index of Viva Wallet open source projects on GitHub.
139 stars 163 forks source link

api calls to be made between EFT POS (card terminal) devices and ECR systems #2461

Open danielflorearadu opened 10 months ago

danielflorearadu commented 10 months ago

Hi,

we have serious problems regarding EFT POS - our ERP.

the problems are different, either on a unique session-id we get a response like transaction failed, but in the viva portal as well as on the receipt it is successful,

either it appears to us that it is successful but in the portal it appears as having failed.

we don't use webhooks, we just initiate a sale and periodically query its status every few seconds: Initiate a Sales Request + Retrieve Session by Id.

we watch that Sales Request response is 200, Successful Response then we search for Retrieve Session by Id json for value success=true or false

Specifically, we have session id JzzoyGeg46, unique transaction 5e787e4c-5f51-4598-94bd-0cc0d2946c2d

And now if I query the status, it displays Transaction canceled by user

But in the Viva Portal the transaction is successful

another transaction

session id 16304888_11369 ... even now we receive succes = false, and in Viva portal is it with success.

Suma: 160.74 abortAckTime: null abortOperation: false abortSuccess: false amount: 16074 authorizationId: null cashRegisterId: "SH00001455" message: "Invalid card" orderCode: "0" referenceNumber: 0 retrievalReferenceNumber: null sessionId: "16304888_11369" shortOrderCode: "0" success: false terminalId: "16304888" tid: "16304888" transactionDateTime: null transactionId: null transactionTypeId: null

once again, we rely on the fact that there is a unique session id, managed by us, to which we want an answer: success true/false

maybe the pos_ul automatically generates another transaction in addition to the first one how do we know to identify it as being in conjunction with ours?

if we get success=true ... and yet it is false, how do we know to consider the transaction completed?

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Thank you for your message. We are currently investigating your issue. We will inform you as soon as we have any updates.

Kind regards, Viva Wallet E-commerce Support Team

danielflorearadu commented 10 months ago

please, we are waiting for a solution from you. Maybe you have another logic of what should be interpreted in the answer, or regarding the uniqueness of the session_id, or another documentation. In the meantime we were waiting.

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Apologies for the delay. The issue is still under investigation. We will inform you as soon as we have any updates.

Kind regards, Viva Wallet E-commerce Support Team

danielflorearadu commented 10 months ago

102 transaction today, 98 ok, 4 with issues

session id 9INLxcwg8, transaction id 119fd609-813f-4d9f-8d0f-8fc428494643 order 3287117000304789 in viva portal, all Ok, success! in our ECR/ by your api, Invalid card RRN: TID: 16304789 Event Id: 1010

session id JzzoyGeg220, 4cd26af8-ba59-4376-a51b-6ffe54ee7959, order 3287130940304888 in viva portal all Ok, success, in our ECR ... your api ... says failes, Invalid card

we have latest android app, 5.3.0, 5 oct 2023

please, we need your help, it is a production environment, and we cannot continue to call accounting in order to confirm failes transaction

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Thank you for the additional information. Apologies once again for the delay. We will inform you as soon as we have any updates.

Kind regards, Viva Wallet E-commerce Support Team

danielflorearadu commented 10 months ago

after 9 days I don't see any concrete steps from the Viva team.

I'm calling on colleagues and the forum, who have encountered these problems before - how was it solved?

when and how do you consider a transaction to be successful? the money was collected?

I found in the older topics only that the "success" parameter only indicates if a transaction is completed (when the value of success parameter is true) or failed (when the value of success parameter is false).

how and when do we consider the transaction to be completed? only through "message": "Transaction successful" ?

have you met, and if so how do you solve the cases where a failed transaction appears on a unique sessionid and still the money is collected?

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Thank you for your message and we apologize for the inconvenience. We are currently trying to identify and resolve the issue. We would like to recommend you verify your payments by using webhooks.

As soon as we have any update about the issue, we will inform you. Thank you for your patience and time.

Kind regards, Viva Wallet E-commerce Support Team

danielflorearadu commented 10 months ago

we are talking about r EFT POS solution, which allows calls to be made between EFT POS (card terminal) devices and ECR systems. what does webhooks have to do with this?

specifically, what exactly is taking so long? someone from you debug those unique session ids to see why I'm getting the wrong answer.

I really can't wait, we are talking about a production environment and almost 2 weeks have passed!!!

danielflorearadu commented 10 months ago

22.10.2023 08:55:24 Order Code 3295081096304888 SessionId Ma6W_S4X94 Transaction ID fbd0f4fd-f4a7-426b-b278-1869f8d54ce8

viva portal: success!!! in api ECR: Event Id: 1000 Cont bancar: 414049**0082 Authorization Id: Reference Number: 0 Order Code: 0 CONTACTLESS - NO CVM Visa Classic Transaction canceled by user

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Thank you for your additional information. Kindly note that via Transaction Payment Created Webhook and Transaction failed Webhook you will get notified about all the transactions that are completed or failed in your Viva Wallet account. We kindly suggest you use that solution until the issue is resolved.

Kind regards, Viva Wallet E-commerce Support Team

danielflorearadu commented 10 months ago

what is the unique key to identify the transaction to which I receive an answer? between your webhook's and my sale made through ecr pos api (sessionID)?

VivaWalletCustomerSupport commented 10 months ago

Hello @danielflorearadu,

Thank you for your answer, you can check the "TransactionId" or "OrderCode" parameter to identify the transaction and match it with the "Retrieve Session by ID" response you are getting.

Kind regards, Viva Wallet E-commerce Support Team