Migrating from Routable API v0
If you are coming from our original JSON:API implementation, upgrading will take a little bit of thought and care. We're sorry about that, but we think it will be worth it in both the short and long term.
Already on revision 2021-02-11?
Your existing API token will work just fine against our new APIs!
If not, please contact [email protected] and we can work with you to come up with an upgrade plan. Moving forward, API upgrades will be self-service.
Memberships ➡️ Team Members
Old API | New API |
---|---|
List all memberships | List Team Members |
Old Attribute Location | New Attribute Location |
---|---|
id | id |
avatar | avatar |
first_name | first_name |
is_disabled | is_disabled |
last_name | last_name |
IDs were maintained in this transition.
In other words, if Kevin had a Membership
ID of 660640d3-82e0-43a2-ac8a-071d63c15f54
, their TeamMember
ID would also be 660640d3-82e0-43a2-ac8a-071d63c15f54
.
Funding Accounts ➡️ Accounts
Old Attribute Location | New Attribute Location |
---|---|
id | id |
created | created_at |
is_deleted | is_deleted |
is_disabled | is_disabled |
is_usable_for_payables | is_usable_for_payables |
is_usable_for_receivables | is_usable_for_receivables |
is_valid | is_valid |
ledger_ref | ledger.id |
ledger_ref_payable | ledger.payable_id |
ledger_ref_receivable | ledger.receivable_id |
name | name |
balance.balance | type_details.available |
balance.can_transact | type_details.is_usable |
balance.balance_pending | type_details.pending |
bank.account_number | type_details.account_number |
bank.account_type | type_details.account_type |
bank.institution_name | type_details.institution_name |
bank.routing_number | type_details.routing_number |
IDs were maintained in this transition.
In other words, if your Jpmorgan Chase ***1185
FundingAccount
had an ID of a7ab428c-939b-4328-b05c-9d8e27ac31c5
, the Account
ID would be a7ab428c-939b-4328-b05c-9d8e27ac31c5
.
Partnerships ➡️ Companies
Old Attribute Location | New Attribute Location |
---|---|
id | id |
name | display_name |
partnership_members | contacts |
created | created_at |
external_ref | external_id |
is_customer | is_customer |
is_vendor | is_vendor |
customer_ref | ledger.customer_id |
vendor_ref | ledger.vendor_id |
partner.name | business_name |
partner.company_type | type |
partner_status | status |
IDs were maintained in this transition.
In other words, if your InstaWork
Partnership
had an ID of 97f318b5-d438-4205-90ed-20c889ef676b
, the Company
ID would also be 97f318b5-d438-4205-90ed-20c889ef676b
.
Partnership Member ➡️ Contact
Old Attribute Location | New Attribute Location |
---|---|
id | id |
default_general | default_contact_for_company_management |
default_item | default_contact_for_payable_and_receivable |
first_name | first_name |
is_archived | is_archived |
last_name | last_name |
phone_number.number | phone_number |
phone_number.country | phone_number_country |
IDs were maintained in this transition.
In other words, if your Jennifer Jones
Partnership Member
had an ID of ab2f105b-88c0-42f1-8c5c-95fd792711fe
, the Contact
ID would also be ab2f105b-88c0-42f1-8c5c-95fd792711fe
.
Partnership Funding Account ➡️ Payment Method
Old Attribute Location | New Attribute Location |
---|---|
id | id |
created | created_at |
is_created_by_partner | is_created_by_company |
is_preferred | is_preferred_by_company |
is_primary | is_primary |
name | name |
payment_delivery_method | payment_method |
funding_account.address.city | type_details.city |
funding_account.address.country | type_details.country |
funding_account.address.postalcode | type_details.postal_code |
funding_account.address.print_company | type_details.print_business_name |
funding_account.address.print_name | type_details.print_name |
funding_account.address.state | type_details.state |
funding_account.address.street_address | type_details.address_line_1 |
funding_account.address.street_address_unit | type_details.address_line_2 |
funding_account.bank.account_number | type_details.account_number |
funding_account.bank.account_type | type_details.account_type |
funding_account.bank.institution_name | type_details.institution_name |
funding_account.bank.routing_number | type_details.routing_number |
IDs were maintained in this transition.
In other words, if your vendor's PartnershipFundingAccount
had an ID of b2c47d0b-f261-41fa-9b14-e72d774877a0
, the Payment Method
ID would also be b2c47d0b-f261-41fa-9b14-e72d774877a0
.
ID Discrepancy
When creating
Items
with v0, you would supply the vendor'sFundingAccount
ID which you could retrieve by requesting the details of thePartnershipFundingAccount
.When creating
Payables
with v1, you supply thePartnershipFundingAccount
ID.If you previously were caching the
FundingAccount
, we can recommend updating your code to List Payment Methods instead and begin caching and using those IDs.
Items ➡️ Payables and Receivables
Old Attribute Location | New Attribute Location |
---|---|
id | id |
amount | amount |
amount_due | amount_due |
amount_paid | amount_paid |
invoice_number | bill_number |
payment_delivery_option | delivery_method |
date_due | due_on |
date_expected | expected_on |
date_issued | issued_on |
reference | reference |
send_on | send_on |
status | status |
date_status_change | status_changed_at |
payment_type | type |
partnership | pay_to_company |
requester | acting_team_member_id |
attachments | attachments |
date_approved | approved_at |
external_ref | external_id |
ledger_ref | ledger.id |
ledger_status | ledger.status |
partnership_funding_account | pay_to_payment_method |
date_sent | sent_on |
status_timeline | status_changes |
funding_account | withdraw_from_account |
funding_provider_memo | type_details.ach_addenda |
check_number | type_details.check_number |
payment_delivery_methods_accepted | type_details.delivery_method_choices |
date_externally_paid | type_details.externally_paid_on |
externally_paid_method | type_details.externally_paid_method |
externally_paid_reference | type_details.externally_paid_reference |
Line Items
Old Attribute Location | New Attribute Location |
---|---|
account | account |
amount | amount |
description | description |
discount | discount |
extended | ledger |
is_taxable | is_taxable |
item | item |
quantity | quantity |
style | style |
tax | tax |
unit_price | unit_price |
Receivables are under construction
Receivable support is coming soon.
IDs were maintained in this transition.
In other words, if your Item
had an ID of b2c47d0b-f261-41fa-9b14-e72d774877a0
, the Payable
ID would also be b2c47d0b-f261-41fa-9b14-e72d774877a0
.
Item Members
In v0 of our API, we allowed detailed control over which PartnershipMember
objects in a Partnership
received email notifications regarding their items.
In the initial version of our API, we have not released equivalent APIs and instead lean on the default_contact_for_payable_and_receivable
field present on the Contact
to help autofill these values on the API side and provide a simpler interface for callers.
Tagging
Tagging APIs are under construction .
Company APIs
In v0, we surfaced company APIs to facilitate creating items with approval settings.
In v1, we automagically fill in the approval settings for your payables and receivables to reduce the burden on our developer partners. See Create a Payable for more details.
Updated about 1 month ago