#api #client #finance #xero


A Xero API client library for Rust

4 releases

0.0.1 Nov 23, 2022
0.0.1-alpha.2 Jul 29, 2021
0.0.1-alpha.1 Jul 26, 2021

#4 in #oauth2-client

Custom license

875 lines


Crates.io Documentation MIT licensed Build Status Coverage


A Xero API client library for Rust. This library is in very early days and the API is not stable, it may change without notice.

This was put together as part of the requirements for a private project so I will be implementing features as-needed, but all contributions are welcome.


  • Client credential & code flow authorization support
  • Generic GET, PUT, and POST methods for custom requests
  • Uses rust_decimal for storing prices/decimal values
  • Well tested (that's the goal, at least)

Currently Implemented

This has been implemented so far:

  • OAuth2 Authentication (Client Credentials, Authorization Code Flow)
  • List authorized connections (tennants)
  • Quotes
    • List
    • Get by ID
  • Invoices
    • List
    • Get by ID
  • Purchase Orders
    • List
    • Get by ID
    • Create
  • Contacts
    • List


~752K SLoC