Frequently Asked Questions

In this section, we list the frequently asked questions for the BILL API AP/AR workflows.

Common API error codes

See Common API error codes for information about the common BILL API error codes.

I get the BDC_1101 ("User name and/or password do not match our records.") error. What should I do?

Confirm whether your username and password is correct. In addition, confirm whether the username and password belong to the correct environment - sandbox or production.

Note that the BILL sandbox and production environments do not share any data.

I get the BDC_1102 ("Developer key is invalid.") error. What should I do?

Confirm whether your developer key is correct. In addition, confirm whether the developer key belongs to the correct environment - sandbox or production.

Note that the BILL sandbox and production environments do not share any data.

I get the BDC_1121 ("API not supported.") error. What should I do?

If HTTP status code of the response is 404, confirm that you have the correct endpoint path without any spelling errors or capitalization errors.

When I am testing with the API, I get the BDC_1322 (Max number of concurrent requests per organization reached.). What should I do?

Confirm whether your concurrent API requests per developer key per organization is not more than three.

When you receive this error, all subsequent API requests fail until one concurrent request is completed. Implement exponential backoff in your code to address concurrent rate limits.

See API rate limits for more information.

Other BILL API questions

Do I build with the BILL v2 API or v3 API?

Start building with the BILL v3 API. We keep adding new features to the v3 API. See API release notes for information about new features and updates in the v3 API. You can also subscribe to the RSS feed .

BILL has no plans to deprecate the BILL v2 API. As you continue building and find a useful v2 API feature, note that each version has its own API base URL.

API base URLv3v2
Sandboxhttps://gateway.stage.bill.com/connecthttps://api-stage.bill.com/api
Productionhttps://gateway.prod.bill.com/connecthttps://api.bill.com/api

For example, the v3 sandbox API login request is POST https://gateway.stage.bill.com/connect/v3/login, and the v2 sandbox API login request is POST https://api-stage.bill.com/api/v2/Login.json.

I am asked to pay to continue testing with my Sandbox account. Am I required to pay with my credit card?

Any BILL pricing plan or subscription is not charged in the Sandbox environment.

Use your test credit card for setting up a subscription for your sandbox developer account. When the trial period for your sandbox account is over, use the same test credit card to continue using your account.

See Add a test credit card in sandbox for more information.

Am I required to set up a new developer key (devKey) for each of my test organizations and test users?

When you generate a developer key, the key is available for you to use with any of your test organizations and test users.

When you sign in with /v2/Login.json, the generated sessionId in the response is available only for the selected devKey in your request. This sessionId does not work with another devKey.

How do I move all my production data to sandbox?

We do not recommend that you move any of your production data to sandbox. There can be unintended consequences. For example, you may be testing with your production data in sandbox, but the vendors and customers will receive emails based on your testing with bills and invoices.

In the BILL web app, select Settings > Import & Export to move any required information between your development environments.

How do I link a money movement object to a bill id, invoice id, or payment?

Money movement objects enable you to view BILL money movement information for a bill, invoice, or payment. Currently, you cannot link a MoneyMovement object with any other BILL object.