Scan custom QR code at checkout

Hi team,

I am trying to add an additional field with orders. The field is a customer ID that I would like to attach to the order metadata if possible. This doesn’t necessarily have to be attached to the order metadata but can be a part of the payment metadata as well or anything unique to the transaction. I am planning to get this data, i.e. customer ID by scanning a QR code at checkout before the payment is made. Is there a way to scan a QR code at checkout to add this data to the metadata, for which I have a webhook to listen to the order. created event?

Any help or an alternate solution is appreciated!


Are these payments being taken with our 1st party product or are you creating the payments with our API. If its with our 1st party products it’s currently not possible to scan a QR code that would add metadata to a payment or an order at this time. :slightly_smiling_face:

Hi Bryan,

Thanks for your response. We are just subscribing to the order.created event for the virtual terminal for itemized sales( Would I be able to create a custom step before the payment is taken to allow the user/terminal accept a customer ID?

Are you using Terminal API? If so you can use custom screen interactions for non-Payment workflows. Otherwise there isn’t any other option to create a custom workflow on any other POS device at this time. :slightly_smiling_face:

I see, would we instead be able to scan a barcode with information? Apologies for the amount of questions, I am fairly new to Square and still figuring my way around the APIs and documentation.

Does Square support barcode scanning, I can see one of the compatible hardware devices is a barcode scanner( How am I able to set this up to send information scanned by the barcode to the POS and therefore the webhook?

Alternatively, I can see a custom order attribute field available using which we can add additional information to an order - CustomAttributeDefinition Object - Square API Reference . For the mentioned use case, i.e. to add an additional ID as a string to the order, how would I use this custom attribute? How would I be able to provide this information to set this custom attribute and will it be possible to do so in the Sqaure’s order creation workflow (

No worries on the amount of questions. Happy to help!

The problem we have here isn’t the ability to scan a customer QR code. It’s for you to get the metadata on the order. That isn’t currently possible with our first party solutions. :slightly_smiling_face:

What other solution would be possible other than using first party solution provided by square? I would like to integrate with the retailer who is already using square as their POS, would this include developing an app for square?

Any help would be appreciated as scanning QR codes/barcode for customer ID is an essential part of the workflow.

Many thanks!

Hi Bryan,

I know you mentioned above that you don’t support customer QR code scanning. Please could you help me understand this article and if it can be customised or something similar be implemented by a developer on our team: Identify Customers at Your Counter with QR Codes | Square Support Centre - GB