The card-account.updated webhook notification now includes the id field.
| Field | Description |
|---|---|
id | BILL-generated ID of the card account. The value begins with cat. |
See Card account notification payloads for more information.
The card-account.updated webhook notification now includes the id field.
| Field | Description |
|---|---|
id | BILL-generated ID of the card account. The value begins with cat. |
See Card account notification payloads for more information.
The payment.updated webhook notification now includes more status values.
| Status | Description |
|---|---|
READY_TO_FUND | BILL is ready to start debiting the payer's funding account. |
CANCELLATION_IN_PROGRESS | Payment cancellation is in progress. |
PARTIALLY_CLAIMED | A virtual card payment has been claimed by the vendor for less than the full amount. |
UNDEFINED | If none of the above conditions are met. |
See AP payment notification payloads for more information.
We have introduced a set of API endpoints for general ledger classifications. These endpoints enable you to better maintain a General Ledger (GL) for bookkeeping and financial reporting.
Accounting class objects enable you to set up categories unique to your business.
| Operation | API endpoint |
|---|---|
| Create an accounting class | POST /v3/classifications/accounting-classes |
| Get list of accounting classes | GET /v3/classifications/accounting-classes |
| Get accounting class details | GET /v3/classifications/accounting-classes/{id} |
| Update an accounting class | PATCH /v3/classifications/accounting-classes/{id} |
| Archive an accounting class | POST /v3/classifications/accounting-classes/{id}/archive |
| Restore an archived accounting class | POST /v3/classifications/accounting-classes/{id}/restore |
Department objects enable you to set up groups or divisions for your business, such as Marketing, HQ, or Asia-Pacific.
| Operation | API endpoint |
|---|---|
| Create a department | POST /v3/classifications/departments |
| Get department details | GET /v3/classifications/departments/{id} |
| Update a department | PATCH /v3/classifications/departments/{id} |
| Archive a department | POST /v3/classifications/departments/{id}/archive |
| Restore an archived department | POST /v3/classifications/departments/{id}/restore |
Employee objects enable you to set up employees on your payroll.
| Operation | API endpoint |
|---|---|
| Create an employee | POST /v3/classifications/employees |
| Get employee details | GET /v3/classifications/employees/{id} |
| Update an employee | PATCH /v3/classifications/employees/{id} |
| Archive an employee | POST /v3/classifications/employees/{id}/archive |
| Restore an archived employee | POST /v3/classifications/employees/{id}/restore |
Item objects enable you to set up products and/or services sold by your business.
| Operation | API endpoint |
|---|---|
| Create an item | POST /v3/classifications/items |
| Get item details | GET /v3/classifications/items/{id} |
| Update an item | PATCH /v3/classifications/items/{id} |
| Archive an item | POST /v3/classifications/items/{id}/archive |
| Restore an archived item | POST /v3/classifications/items/{id}/restore |
Job objects enable you to set up unique projects with their own set of income and expenses.
| Operation | API endpoint |
|---|---|
| Create a job | POST /v3/classifications/jobs |
| Get job details | GET /v3/classifications/jobs/{id} |
| Update a job | PATCH /v3/classifications/jobs/{id} |
| Archive a job | POST /v3/classifications/jobs/{id}/archive |
| Restore an archived job | POST /v3/classifications/jobs/{id}/restore |
Location objects enable you to set up office locations, such as West Coast, San Francisco, or California.
| Operation | API endpoint |
|---|---|
| Create a location | POST /v3/classifications/locations |
| Get location details | GET /v3/classifications/locations/{id} |
| Update a location | PATCH/v3/classifications/locations/{id} |
| Archive a location | POST/v3/classifications/locations/{id}/archive |
| Restore an archived location | POST /v3/classifications/locations/{id}/restore |
We have introduced a set of API endpoints for the Spend & Expense reimbursement operations. A reimbursement is a request to be repaid from budget funds for an out-of-pocket expense. Reimbursements enable business transactions without a charge card (physical or virtual card) to be included in the Spend & Expense platform.
See Reimbursements for more information.
| Operation | API endpoint |
|---|---|
| Upload an image for a reimbursement | POST /v3/spend/reimbursements/image-upload-url |
| Create a reimbursement | POST /v3/spend/reimbursements |
| Approve a reimbursement | POST /v3/spend/reimbursements/{reimbursementId}/action |
| Get list of reimbursements | GET /v3/spend/reimbursements |
| Get reimbursement details | GET /v3/spend/reimbursements/{reimbursementId} |
| Update a reimbursement | PATCH /v3/spend/reimbursements/{reimbursementId} |
| Delete a reimbursement | DELETE /v3/spend/reimbursements/{reimbursementId} |
We have added two new recipes for showcasing more workflows with the v3 API.
| Recipe | Description |
|---|---|
| List unpaid balance for each vendor | In this recipe, we list unpaid bills that are past their current due date, and then extract the unpaid balance for each vendor. |
| Pay vendors that accept virtual cards | In this recipe, we check whether a vendor accepts virtual cards as a payment method, and then we pay the vendor with an API card. |
You can get details about your current API session with GET /v3/login/session. In the response, we have introduced a set of improvements.
Field | Description |
|---|---|
| The existing The |
| This is a new field in the Get API session details response. This field is set as |
See GET /v3/login/session in the API reference for more information.
We have added a new field in the cancel payment response to confirm that BILL has received your payment cancellation request. When you attempt to cancel a payment with POST /v3/payments/{paymentId}/cancel, you now get a cancelRequestSubmitted field in the response. This field is set as true if your cancel payment request is submitted.
Note: If the payment is canceled, the payment status is set as CANCELLED.
See POST /v3/payments/{paymentId}/cancel in the API reference for more information.
We have added bill payment status information in the bills API response. When you create a bill and it goes through a payment workflow, the bills API response now includes the paymentStatus field.
See POST /v3/bills in the API reference for more information.
We have introduced a new Get list of organization industries (GET /v3/organizations/industries) endpoint. Get a list of available values for the industry field for an organization. Use this information to set the industry field in your POST /v3/partner/organizations or PATCH /v3/organizations/{organizationId} request.
See GET /v3/organizations/industries in the API reference for more information.
We have introduced a new Get card funding purpose (GET /v3/funding-accounts/cards/funding-purposes) endpoint. Get a list of card funding purpose values based on the vendor and card brand.
When you create a payment (POST /v3/payments or POST /v3/payments/bulk) with a CARD_ACCOUNT funding account type, BILL requires a vendor industry value for compliance. When BILL cannot identify the vendor industry, the cardFundingPurpose field must be set in your payment request.
Use this endpoint to get the list of card funding purpose values you can set. If you get an empty 200 response, BILL has information about the vendor industry and setting the cardFundingPurpose field is not required in your payment request.
See GET /v3/funding-accounts/cards/funding-purposes in the API reference for more information.