Hi Community,
I have been using ODataV4 WS for attaching EFT transactions on the Sales orders. The payments happen in Versapay/Chargelogic gateway.
Here is the process:
1. Collect payment in versapay gateway at the point of sale. This generates a 12 digit order number in versapay.
2. Sales Order is created in BC with all the necessary fields, all sales lines are created. Sales Order creation is complete.
3. Attach EFT and release the sales order. I write the Versapay Orde No. from step 1 to Your_Reference field in Sales Order and mark the SO released.
Step 3 takes for ever where as it should take 1-3 seconds. I have even tried attaching EFT in separate PUT request and no success there. This was working fine and we haven't made any changes to code.
When enquired with Versapay, they suggested checking saved cards/payment accounts on the customer record as BC might be scanning through all the saved cards before attaching EFT(Not sure why this needs to happen as we are not storing ecommerce cards for every order on the customer record, we save only the cards for direct orders). There are a few saved cards but the result is inconsistent meaning some EFTs get attached very quick though they have more cards saved on the customer record compared to the one's taking longer time.
Here is the error response that I get from BC after FET fails to attach:
error: {
code: 'RequestTimeout',
message: 'The operation has been canceled because it took longer to generate rows than the specified threshold (00:08:00). Refine your filters to include less data and try again. CorrelationId: ed990398-50>
}
I totally understand the message but this issue has been in-consistent. For the same order, if I try pushing the SO again, it successfully attaches EFT.
Please provide any information or feedback on where to look as I am still working with versapay team in debugging the issue.
Thanks,
Kishore.