Xero - beautiful accounting software

Xero Developer Help Center

Xero Developer Community

Community > Find a Developer >

SnapScan (QR based payment) and Xero

Started by Ariel Geffen -   in Find a Developer

Hi all,

I am looking for someone to help me integrate SnapScan (www.snapscan.co.za) as a payment service into Xero.

SnapScan has the ability to embed pricing and reference numbers into the QR code displayed for the customer to use.

Would then like Xero to mark as paid (upon succesful payment)


Can anyone help?
Hi Ariel!
The API looks straightforward - if you're looking to transfer payments only then maybe a custom Zapier app would be the simplest option?
Let me know if we can help further.

Stu Hawkins  

Ideally I would like for a custom QR code to display based on the Invoice total so that the customer doesnt have to input the amount manually.

Once they've successfully paid - it would be nice for it to mark as paid in Xero, but the main goal is above.

Currently clicking the Pay with SnapScan button on my invoice links to a static code hosted on my webpage. The client then has to manually input their payment amount.

Ariel Geffen  

Ahhh! Apologies - missed that in your first post. Not sure we have a way of doing that, well, not without building an entire invoicing add-on - and I don't think that's what you're looking for. Sorry!

Stu Hawkins  

Yes I would assume it would need to be some kind of web script that pulls info from Xero API and uses the SnapScan API to create custom QR based on that?

Ariel Geffen  

Am I understanding correctly that you host a page that displays a snapscan QR that contains your SnapCode + controls to enter the amount, which you link to from the Xero invoice page?
And 2 questions: does the link send the Xero invoiceID and what platform are you using to host the page??

Stu Hawkins  

No, its just this page : www.macmagic.co.za/payment

Then the customer scans from their phone with the SnapScan app, and enters the amount to pay.

I then manually reconcile when the money comes through my bank feed.....

Ariel Geffen  

Hi Ariel,
I work for 729 Solutions, the oldest Agile Dev Shop in the Bay Area. We have the have the experience and Xero experts needed to help you with your project. I'd love to set up a time to chat further about it. Please email me at graham@729.io to coordinate a call.

Graham Silbermann  

Hey Ariel,
Thanks for the additional info!
If you can get the Xero invoice to the web page, then displaying a custom QR code is definitely possible. Basically - as you suggested - use the ID to get the invoice details from the Xero API then pass these to the Snapscan API to generate a custom QR code. Whether to process this in your page, or create a page in a separate app would depend on the platform used to host your page. The latter would be a simple app that received the invoiceID then communicates with Xero/Snapscan to generate the QR code.

I think the real question is whether developing this would be cost effective for a one-off solution! Maybe someone else on the forum knows of a framework that includes most of what's needed already?

Does that help??
Feel free to contact back if we can help further..
Cheers, Stu

Stu Hawkins  


I also process a whole lot of SnapScan payments and am currently manually reconciling them, which is a pain. Any developments on this?

Catherine Brodie  


Our business is also wanting to add snapScan/Zapper onto the Xero invoice but as Ariel mentioned, it would be great if Xero can speak to SnapScan and indicate the amount that has been invoiced and not inputed manually by the payee.

Ariel did you by any chance figure a way to display the QR code?

Susan Signorile  

Regarding displaying the QR code : I got the *link* for my QR code from SnapScan and use that on my invoices. Works really well.

Catherine Brodie  

Also, I reconcile SnapScan payments by adding a SnapScan control account (bank account) to which client payments are reconciled, then reconciling SnapScan company payments to my business account, and then having an expense account for SnapScan fees.

Catherine Brodie  

Hello Catherine, Just so that I can understand.

When an invoice is sent, does the link to the QR code reflect the amount that is on the xero invoice?

Susan Signorile  

Hi there, no. The link just connects to the app, and the client needs to manually input the payment amount.

Example :

Hi there xx,

To view your invoice for xx from xxx for ZAR xxx, please click the link below:

Online Invoice Link

SnapScan: https://pos.snapscan.io/qr/NDSC1397

PayPal: https://www.paypal.me/scienceinmotion

Catherine Brodie  

Thank you!

Susan Signorile  

Nope I never implemented it as the development required was a bit too much (Cost wise)

You would need a web server running a database to keep track of clients and payments information and then have that server receive and send responses to Xero before and after transactions. It would also need to send responses back to snapscan to show that its been paid.

Basically I ended up creating a hidden (to the public) page on my website that displays my SnapScan QR code, and then setup a payment method in Xero but changed the "payment gateway" (Im paraphrasing here - don't recall the exact setting offhand) to link to that web page where the customer could scan the code.

It wasn't the best solution, the customer had to manually enter the amount and I had to manually reconcile the payment to that invoice. BUT because I could not use the custom invoice number as the SnapScan reference, I had to know who was paying me what and when.

I eventually disabled it because it became too complicated.

Ariel Geffen  

+1 for feature request!

Christopher Clark  

Are people still looking for this to be developed?

Rob Weidner  

definitely still needed. more and more people use snapscan as a payment method and would be great to have it integrated as a payment method into Xero to make it as easy as possible for customers to pay the specific invoice value instead of having to type in a custom amount.

Chris Vos  

Definitely! Please.

Susan Signorile  

Surely if a whole lot of us are facing the same issue in SA, we can get Snapscan to do the integration?

Was chatting to one of the other payment gateway companies and they claim to have full Xero integration already.

Joel Singer  

"Hi there, no. The link just connects to the app, and the client needs to manually input the payment amount.

Example :

Hi there xx,

To view your invoice for xx from xxx for ZAR xxx, please click the link below:

Online Invoice Link

SnapScan: https://pos.snapscan.io/qr/NDSC1397

PayPal: https://www.paypal.me/scienceinmotion "

Not sure how to properly quote on here.

This is so cool. If I understand this correctly all I need is one barcode?

I'm currently on lockdown in NZ. Level 3 is about to start so I need to be a good citizen and comply.

What I'd like to use this for is for a customer to roll up next to my factory, they tell me what they want, scan the QR code and input the amount they wish to pay? But they need to already have one of these accounts, say Paypal, or Snapscan, or they'll need to set it up while they are there at my factory on the spot?

I don't need to raise a customer specific invoice as it can just be recorded as a Cash Sale.

Am I understanding this correctly?


I'd then give them the product and everything's done except it?


Cameron Smith  

Hi all,

We're planning to implement an integration between SnapScan and Xero that will:
1) Allow Xero invoices to be paid with SnapScan
2) Automatically mark invoices as Paid in Xero

If you're interested in this functionality, please would you take 2 minutes to register your interest here: https://forms.gle/wCCXUWFDcqX57apeA


Andrew Cawood