Our drivers use our web app. In our Tap-to-Pay flow, we open the Square POS application using a deep link in our web app. Before starting the transaction, we include a unique UUID in the REQUEST_METADATA / state field. When no tip is added, the callback URL is triggered immediately after the transaction ends, allowing us to match this UUID with the transaction_id.
However, when a tip is added, the POS displays a “Thank you” screen, and if the user does not press the “New Sale” button, the callback never returns. In this case:
- In the payment.updated webhook, we cannot see the UUID or any other matchable field (such as reference_id or note).
- On iOS, there is no parameter similar to Android’s AUTO_RETURN_AFTER_PAYMENT to automatically return.
Questions:
- Is it possible for the data we send via deep link (requestMetadata / state) to be included in the payment.updated webhook?
- Is there a parameter on iOS that can skip or automatically close the “Thank you” screen?
- Is there any other way that we can forward Square POS App from our webapp so that customers pay using Tap to Pay?
I’m open for any other recommendation. Thanks a lot for your help.