I am currently using a Square POS system and need some assistance with integrating it with my external application. Here’s what I am looking to achieve:
User Identification via Barcode: I have unique barcodes for my customers, which I would like to scan at the point of sale to identify them.
Sending Data to External App: When a transaction occurs, I want to send the transaction data, including the scanned barcode information, to my external application via a webhook.
User Matching: My external application maintains its own user list. I need to match the user identified by the barcode against this list.
Updating Payment Information: If a match is found, I want to update the relevant payment information in my external application.
Could anyone provide guidance or examples on how to:
Integrate barcode scanning with Square POS to identify users.
Add barcode information to the transaction data.
Configure Square to send this enhanced transaction data via webhooks to my external application.
Any help or pointers to relevant documentation would be greatly appreciated.
I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:
If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.
With the Square POS you can scan a QR or bar code that’s already associated to a customer in the sellers Customers Directory. When the sale is completed on the POS it will trigger payment.updated or payment.createdwebhook events that you can use to then update your database.
Also, the webhook provides a card fingerpting which is unique per card, though differs across businesses from what I remember from the doco.
You can link the card info with the bar code when both are used together the first time, then subsequently the card signature (which is a secure derivative of the card number) could be used to get the bar code.
I’m not sure how useful this is in practice, as you may not be able to access the card fingerprint until the card is processed, at which point it’s too late to fetch and include the barcode if it wasn’t already linked.