Skip to content

Accounting API

Welcome to our official feedback forum for the Xero Developer API.

The Xero Community site is the best place to submit feedback for improving Xero Business

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback

543 results found

  1. Remove validation to allow 0 value spend money transactions on bank account to move money between accounts

    Currently it's possible to add a 0 value transaction on a bank account using the web interface by clicking "New Transaction" selecting "spend money" then adding a positive sum to one account and a negative sum to another account.

    When attempting this with the API you get a validation error "The Total for this document must be greater than zero".

    This is a simple request to remove the additional validation on the API to allow this transaction to be added (like you can in the web interface).

    Something similar can be achieved with a manual journal, however these don't support…

    6 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Banking  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. API access to product attachments

    The API doesn't currently offer access to product attachments. This would be useful in our case.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Show more love on Practice Manager API

    The Job returned by the XPM API v3.1 is not consistent, for example:
    01. Jobs - GET - Current -> contained <WebUrl>
    02. Jobs - GET - Staff ID -> does not have <WebUrl>

    Also, I find it a little puzzling, on how all other "Schedule Information" fields such as Start Date, Due Date, Partner, Manager, and even all Assigned Staffs are included in GET Current Jobs, but Priority is not..

    Could the Practice Manager API have a little bit more love from Xero? I really suspect that the XPM API is built by completely separate team, because even by…

    6 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. allow filtering in reports at the group level

    A U.S. nonprofit's statement of activities groups expenses by activity, not by account. It would be helpful to be able to add an account to a blank report more than once so the account can appear under different groups, and to be able to apply a filter to each group by one or more tracking categories. This would allow us to create a report using the Blank Report template that mimics the statement of activities.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Reports  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. Add an 'IN' operator to WHERE filter, to use a list

    I've previously used ODATA when filtering requests - e.g. MYOB.

    It provides an 'IN' operator for the filter, so you can request using a list of items.

    e.g. ?where=Code IN ('1234','1245','1236','1237','1238')

    Obviously, this translates directly to the common SQL clause - WHERE column_name IN (value1, value2, vlaue3, etc)

    Thus avoiding the need for multiple request, or paging an ALL accounts request and then filtering locally.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. add the option to send a idempotency key with requests to update or change resources

    For example any network, process issues etc may cause a request to create an invoice (or other resource) to occur, but the response to never be recorded. Potentially causing the process to retry this action.

    One way is to add a idempotency key which Stripe for example does nicely here: https://stripe.com/docs/api/idempotent_requests

    Another way would be to have a non consumer facing external ID, for both the resource and lineitems that can be set by the application and then check for its existence later. Or allow the application to set the UUIDs for these resources

    For something as accurate as accounting,…

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. Increase the number of uncertified apps you can link to Xero, 2 is very limiting!

    We aren't able to connect a 3rd party uncertified app due to already being at the limit of 2. This poses quite an issue for us!

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. include cost of sales on invoices

    A customer of ours need to pull Invoices via the Xero API and are particularly interested in the COGS value of sales in order to calculate a Gross Profit value.

    Unfortunately, that value does not appear in the Invoices endpoint.

    I ran some tests where i posted a sale, then posted a purchase with items with a higher purchase price, then edit the sale and increase the quantity.

    I then checked journals and i could see a reversal jounral for the COGS that used the old COGS value, and a reposting using the new COGS value.

    This implies the data…

    4 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Invoices  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. XPM - GET Staffs Capacities

    It would be great if we could GET Capacities from Practice Manager

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  New APIs  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. UpdatedDateUTC to be updated on Contacts when a Contact Group is modified

    When a contact has been added or removed from a group, or when a group is changed the UpdatedDateUTC on the contact should also be change to reflect this.

    4 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Contacts  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Add an API endpoint for starting and stopping project timers, and getting the current time

    There are currently endpoints for adding time logging to Xero, but not for interacting with the running timers.

    It would be really helpful to be able to do this, so that I (and others) could have external tools (in my case a StreamDeck) able to start and stop timers.

    I would also like to be able to request information on what the timer is currently on in order to get live feedback.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  New APIs  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Send Remittance Advice via API

    I would love to be able to send a remittance advice via API. There are a couple of scenarios where this is would be useful:
    1. Monitoring the bank feed for reconciled payments and sending the Remittance ass appropriate
    2. Generating a payment file from a list of invoices that are being paid and sending the remittance as appropriate

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  New APIs  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Enable Bank feeds to public

    Allow bank feed to be retrieved via Xero API. All I want to do is allow my staff to see what payments have been received in the last day so they can release equipment. Very basic. But I go through paying the subscription and setting up the whole thing just to find that obvious and needed option is not available?? If I try to setup an API with the NAB thats going to be a nightmare. Its all there in Xero - if we log in we can see it. So why not allow access with an API?

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Banking  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. include the optionID in the "Get budgets" operation

    According to the developer reference here https://developer.xero.com/documentation/api/accounting/budgets
    The get budgets operation should include both the tracking category option name and ID.

    Currently, only the name comes through which means we are forced to name match unless we validate the names via a seperate API call before trusting that budgets are for specific options.

    This method we are forced to use does not account for name collisions.

    12 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  15. Update Repeating invoices via the API

    It's great that we can create and delete repeating invoices via the API, but we also need the ability to update them, especially options such as ApprovedForSending, Next Invoice Date, and Due Date.

    18 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Invoices  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. Provide a start and end date for budgets in the "Get Budgets" operation

    We are currently implementing a feature where we bring in divisional budgets.

    The companies we import into our product have data for a specific date range and we wish to filter out budgets for selection that do not have a date range that overlaps with the rest of the company data.

    Without the ability to do this our users will have to pick from any budget that is filtered by a tracking category option and if they choose one that doesn't overlap we will have to either

    • not connect the invalid budget in the first place and provide feedback as…
    9 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. Expose the Online quotes URL via the Xero API

    Be able to retrieve the online quotes URL via the Xero API as you already can for invoices (http://help.xero.com/#OnlineInvoices)

    22 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Quotes  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. budget upload to Xero API

    It would be great to have an budget upload API.
    I'm using G-Accon to push data in Xero, it would be great to be able to push budgets too.
    Currently, Xero's budget manager is a bit rigid in its layout. However with G-Accon I could use a custom layout, or for example narrow down for a departmental budget, and then push to Xero.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  New APIs  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. Include Contact field in Journal Report API

    When running the Journal Report API, Contact should be included in the resulting fields. We want to be able to see contacts by Account for our planning system.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  New APIs  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. Create more granular accounting scopes (eg: Sales - Invoice only)

    Right now there is a very wide range of APIs wrapped up in the "accounting.transactions" scope, with no way to provide more granular access within these APIs (https://developer.xero.com/documentation/guides/oauth2/scopes#organisation-scopes).

    This means that it's not possible to grant access to something quite narrow without also granting access to other things that are often not needed. For example, you cannot grant permission to creating/manipulating Sales Invoices without also giving access to all Bank Transactions at the same time.

    This problem is perhaps accentuated for Custom Connections, which are designed to be used for "in house" integrations, as ALL developers with access…

    160 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  • Don't see your idea?

Feedback and Knowledge Base