Developer Program FAQ & Support
FAQ
- How do I get an application key?
- What are the steps to enable a Bill.com account to be accessed via the API?
- How do I add approvers to bills created using the API?
- How can I retrieve only records that have been created/updated since last time I retrieved them in the API?
- Can I create new Bill.com accounts using the API?
- I got an Error Code (for example, BDCE001). What does it mean?
Contacting Support
If you can't find your answer in our API FAQ and documentation, you can contact Customer Support at any time. We're here to help!
The Answers
How do I get an application key?
You should fill out the "Join the Developer Program" form. Within 3 business days, you will be contacted by Bill.com and, if your application is approved, you will receive the application key in the email provided in the form. Make sure the contact information provided is correct otherwise your application may be rejected.
What are the steps to enable a Bill.com account to be accessed via the API?
By default, Bill.com accounts are not accessible via the API. To enable the access via the API, an administrator user in the account should login to their Bill.com accounts and set the option "Allow API Access" to Yes under Setup > Company > Preferences.
In addition, only Bill.com users with administrator role will be able to use the API.
How do I add approvers to bills created using the API?
In your company account preferences, you can define a "Default Approver for Bills". Every bill created in the API will be routed to this approver. To set this "Default Approver for Bills":
- Login to your bill.com account at https://app.bill.com/login
- Click on Setup -> Company -> Preferences and then click Edit.
- On the "Default Approver for Bills" field, select the user you want to be the (first) approver of the bills. (If you haven't created the user yet, click on the "Users" link in the side navigation and then click "New". Select a role to this user that can "Approve bills/vendor credits".)
How can I retrieve only records that have been created/updated since last time I retrieved them in the API?
You should store a time-stamp ofof the last time you have retrieved records from Bill.com. Then when you want to retrieve the new/modified records, filter the records that have the field "updatedTime" equal or greater than the date/time on your time-stamp.
Can I create new Bill.com accounts using the API?
No. You have to use the Bill.com website (or a Bill.com console) to create new Bill.com accounts. In addition, the Bill.com account set up needs to be done using the Bill.com website.
Error Code Table
Here are the Bill.com API Error Codes. Locate in the table below the code you encountered while using the Bill.com API to find out the meaning and possible solution.
| Error Code | Error Message | Possible Solution(s) |
| BDCE001 | Access via API not enabled for this company | Login to your company at https://app.bill.com/login and enable access via API under Setup->Company->Preferences. |
| BDCE002 | Invalid Application Key. Contact Bill.com Customer Support to request permission to develop applications using the Bill.com API. | Go to http://www.bill.com/developer and request an application key. |
| BDCE003 | The Application Key has been deactivated. Contact Bill.com Customer Support to learn why. | Contact Bill.com Customer Support to learn why the application key is inactive. |
| BDCE004 | No User Found | Invalid user login or organizationid. |
| BDCE005 | Information you entered doesn't match our records. Please try again. | Invalid password. |
| BDCE006 | You have to have edit Org permission in this company to perform this task. | Only users with permission to Manage Company Info (e.g. Administrators or a Custom Role) can be used for the API calls. |
| BDCE007 | Invalid id values for fields: {fields} | The ID passed in the request is invalid. |
| BDCE008 | Empty sessionId | SessionId is required. |
| BDCE009 | Missing required fields: {fields} | The request must contain all the required fields. |
| BDCE010 | Changes made don't match this vendor information in our Listed Vendors. | Vendor is setup for Bill.com ePayments so the some fields are not editable (maintained by vendor). To remove the vendor from ePayments, login to Bill.com. |
| BDCE011 | Unsupported function | API call not available. |
| BDCE012 | Unknown Error | Unexpected errors such as wrong XML queries, etc. |
| BDCE013 | Not a Valid Process Date specified | The Process Date Format must be MM/DD/YYYY and I cannot be earlier than the next business day if scheduled before 6pm PST or 2 business days if after 6pm PST. |
| BDCE014 | Unknown Error | Unexpected errors such as invalid IDs. |
| BDCE015 | Invalid Session | Session expired or not valid (both for access via API and website) |
| BDCE016 | Login Locked | Your account is locked because it reached the maximum number of failed login attempts. To reset your password, please use the "Forgot your password" link below. |
| BDCE017 | Invalid Application Key for Session. | Your account is locked because it reached the maximum number of failed login attempts. To reset your password, please use the "Forgot your password" link in the login page in the Bill.com website. |
| BDCE018 | Org is inactive or has payment overdue. | Your Bill.com account billing fees are overdue or is inactive. |
| BDCE040 | Invalid value passed for fields :{fields} | Review the API documentation for the expected format for required fields. |
| BDCE041 | Transaction rolled back | All the operations in the batch were rolled back (not committed) because one or more operations within the batch failed. |
| BDCE042 | Cannot locate bill :{id} | No results returned because the bill id is not valid for the account. |
| BDCE043 | Cannot decode using document passed using base-64 | File may be corrupted. |
| BDCE044 | Failed to upload document | Invalid file name. |
| BDCE045 | Invalid Payment Amount | Enter a valid amount for the payment (e.g. amount needs to be positive, etc). |
| BDCE046 | For Payment by Bill.com, Process Date must be scheduled on or after
|
If user entered a date prior to the next business days (if before 6pm) or prior to the next 2 business days (if after 6pmPST) the pay bills method |
| BDCE047 | Invalid API version | The API version should be 1.0. (e.g. <request version="1.0">) |
| BDCE048 | Value entered is too large for
|
Field length exceeded. Review the API documentation to learn about the max field length. |
| BDCE049 | For XML request has invalid IDs formats or invalid date format. | |
| BDCE050 | No active bank account for Bill.com Payments. | There is no active bank account for this company. Login to Bill.com website and add a bank account for Bill.com Payments. |
| BDCE051 | Bill amount does not match total amounts in splits. | The total amounts in the line items need to match bill amount. |
| BDCE052 | Vendor has invalid address. | Address is required when scheduling Bill.com payments to check vendors. Update the vendor address or login to Bill.com and set up this vendor for ePayments. |
| BDCE053 | Bill.com Payments to non-US vendors is disabled. | If you wish to have Bill.com mail checks to non-US vendors, contact Bill.com Customer Support to enable International Payments for this account. |
| BDCE054 | Country not supported for Bill.com Payments. | The country information entered for this vendor is not supported by Bill.com Payments. To see the list of countries supported by Bill.com Payments, login to Bill.com and edit the vendor. |
| BDCE055 | Maximum payment amount to non-US vendors is US $10,000.00. | The payment amount cannot be greater than US$ 10,000.00. |
| BDCE056 | File too large. | The file uploaded is larger than 20Mb. Try again using a file smaller than 20Mb. |
| BDCE057 | Invalid Filter:{error} | The filter contains a not supported field or operator. Review the API documentation to learn more about the supported filter operators and fields. |
"The API integration options and QuickBook tie-ins were our main decision factors. When it came time to integrate with the API, Bill.com was always available to answer any technical questions. The time we've been able to save makes me wonder why we didn't start using Bill.com sooner!"