Be able to email approved invoices via the API
- Update September 2016 -
Thanks everyone for continuing to add their votes and comments to this feature.
Emailing invoices via the API is still something we’d very much like to deliver, however it’s not likely to be done in the next 6 months.
Xero is now at the scale where we have to be extremely vigilant protecting ourselves against phishing and spam. Unfortunately that means a seemingly simple feature becomes a very challenge one.
It’s a challenge we’re keen to tackle, but there are a couple of other things we’ll be tackling first. Specifically the practice-level authorisation for the XeroHQ API and webhooks.
For now, you can see some workarounds documented here: https://developer.xero.com/documentation/api/invoices/#emailing
Chris Knipe commented
Just in terms of your "work around," let's look a bit closer for a quick, once off purchase...
1 API call to create a contact, I need to do the call separately, as I need the clientID to generate an invoice
1 API call to generate the invoice for the contact, again, I need to do the call separately, in order to receive the invoice id from the API
1 API call to mark the invoice as paid
1 API call to request the actual PDF file
That's 4 out of 1,000 API calls, just to do a simple thing as raising an invoice, and being able to email a PDF. Max, 250 invoices per day IF you don't do anything else via Xero's API.
We are *seriously* restricted by Xero's inability to automate processes such as emailing invoices. Frankly, we've put new business development 'on hold' due to these restrictions in our cloud based accounting software.
It's a serious issue.
In terms of emailing invoices, may I also suggest that you allow your clients to specify a SMTP relay, so that Xero can relay the emails through your customer's SMTP servers, instead of being sent from Xero's servers and creating MORE complexities with DKIM, SPF, and a whole bunch of other things. Just a thought.
Joseph McKnight commented
Please get this feature out!!
Jonathan Papworth commented
Another vote for this - written the code to post invoices to Xero from our internal business systems to reduce our admin overhead - but I now need to only allow admin to run this process because otherwise our customers won't receive a copy of the invoice... Another easy option to add - why not? are you trying to throttle businesses like mine because you are concerned over the load that we could put on your infrastructure? You could have a price upgrade for higher levels of automation if you wanted - or is this really a concern over your infrastructure handling the load? Will AWS fix this? Let's hope so :-)
Very much needed. As it was April when you predicted "at least six months" is it really still only in PLANNED stage?
Daveyon Mayne commented
How to expose the invoice url in the api? Im using the demo company and it's not showing in the api previewer.
please add this functionality
Sergey Erlikh commented
It limits your customers to create powerful integrations. It is not really clear why ideas with fewer votes have higher priorities.
Wow, I'm a developer. You obviously already have the feature that actually sends the invoice in production on your system currently. So, really all the API transaction needs to do is authenticate and send an invoice number and flag field requesting the invoice be emailed to the contact email already associated with the invoice (and possibly the ability to override the email address.)
That is very simple and easy because most of the work is the actual sending of the invoice which is ALREADY IN PRODUCTION!
Andrew Moorcroft commented
Eduardo Felipe commented
Guys, guys, 5 years is not that long to add an API call for something that they already have the infrastructure to do, right? It's not as if we pay Xero any money do hire people to do these things, right?
Oh, wait. Nevermind.
Sumeet Ekbote commented
Why is this not already there :/
We also require this function, Thanks
Lei Zhang commented
I strongly agree that API should support this feature. This should be a very common project requirement if system need to integrating with XERO invoicing.
It doesn't even need to be a feature of the API - it could be a standard Invoice Setting i.e. 'Automatically Email when Approved'
Although I'd like it to be an API function
Gosh Xero, hire some more developers and fix obvious holes in the API.
Mark Herbert commented
a feature you would assume was already there.
dhanuka senaratne commented
Without emailing feature, Xero API automation is half done. Some one needs to manually send invoices to customers. Please prioritize this one.