We've currently got about 15 - 20 Clover devices running in store using the secure network pay display app for a semi integration with our registers. Every now and then, we'll go to process a payment on a device with connector.sale(saleRequest), and instead of going through, it will send back a response of "existing_payment". This happens even if there is no payment up on the screen on the Clover device. In these situations, our app is set up to present a button to the merchant to allow them to reset the clover device by calling the "resetDevice" method. This seems to work and returns a successful response, but the next time we try to process a sale, the same "existing_payment" response comes back again. So far, the only fix has been a full unpairing of the device, rebooting both devices, and then repairing. Sometimes, we even need to swap the Clover device with another machine in order to make the issue go away.
Clearly in these instances, we don't actually have a pending transaction, yet for some reason the API seems to think we do. I'm not sure exactly what could cause this, but it makes it real difficult when we're in full swing and an entire line goes down because of this issue.
Is there any other method I should be calling than the "resetDevice" method in order to clear this? Any other idea why we would encounter this issue? It happened to us last weekend on a machine on Friday, Saturday, and Sunday, once each day. It seems very random and hasn't happened since then though. Very tough to replicate honestly.
Anyway, please do let me know your thoughts on this and how to best proceed. Thanks!