Curious if anybody else seen an issue like this?
I'm testing transaction webhooks. Our handler script receives a transaction notification then does a request to getTransactionDetails() with the transaction id from the notification.
This worked as expected the first couple of times, but on the fourth test the getTransactionDetails() response came back with an error: E00040 The record cannot be found.
That's really odd because the details request is triggered by a notification of the completed transaction. The transaction obviously exists at that point, so why the error saying it cannot be found? I can see the transaction in the Merchant Interface.
Solved! Go to Solution.
08-27-2018 04:23 PM
Hello @coppercup
This is likely due to brief latency in data replication. Follow-on requests like get transaction details use replicated data to improve performance. If you allow a short period after creating a transaction, it should be available.
Richard
08-27-2018 06:21 PM
Hello @coppercup
This is likely due to brief latency in data replication. Follow-on requests like get transaction details use replicated data to improve performance. If you allow a short period after creating a transaction, it should be available.
Richard
08-27-2018 06:21 PM
Thanks for the good explanation Richard.
As a thought, perhaps the webhook notification should not be sent until the transaction data is replicated.
The point of a webhook is to enable a programmatic response to an action that has already occurred, which becomes an iffy proposition when:
Rather than letting developer guess how long a script should wait, and code a pause into the script, a far more foolproof solution would be to trigger sending the notification only after the data has been replicated.
08-28-2018 07:40 AM - edited 08-28-2018 07:46 AM
Separate question: What is the maximum latency we need to plan for?
08-28-2018 08:06 AM
yes i have the same issue
10-04-2018 05:06 PM