XtractSDK
This gem is the official library provided by Xtract to interact with our API.
You can read the API docs directly from here.
Installation
Add this line to your application's Gemfile:
gem 'xtract-sdk'
And then execute:
$> bundle
Or install it yourself as:
$> gem install xtract-sdk
Usage
First you need to configure your api key obtained from the platform:
XtractSDK.configure do |config|
config.api_key = 'API_KEY'
end
Also you can pass the key when creating the client directly:
client = XtractSDK::Client.new(api_key: 'API_KEY')
Then you can create a client and start making requests. We provide a convenient way to do this:
Get invoices
client = XtractSDK::Client.new
invoices = client
.invoices
.client_tax_id('SOME_TAX_ID')
.call
invoices.each do |invoice|
puts invoice.id
puts invoice.products
end
These are all the filtering options:
client_business_name
client_tax_id
provider_business_name
provider_tax_id
date_from
date_to
expiration_date_from
expiration_date_to
number
electronic_authorization_id
created_at_from
created_at_to
accounted ('pending', 'in_progress', 'completed', 'with_errors')
imputed (true, false)
Get an invoice
client = XtractSDK::Client.new
invoice = client.invoice(ID)
puts invoice.id
puts invoice.products
Update an invoice
client = XtractSDK::Client.new
client.update_invoice(ID, { accounted: 'completed' }) #=> :ok
Errors
You can check here all the error classes that the library raises.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/xtractapp/ruby-sdk.