In the bills API endpoints, we have introduced the purchaseOrderNumber
field. You can now set this field as a purchase order number linked with the bill.
See POST /v3/bills in the API reference for more information.
In the bills API endpoints, we have introduced the purchaseOrderNumber
field. You can now set this field as a purchase order number linked with the bill.
See POST /v3/bills in the API reference for more information.
The vendor webhook notifications now include the shortName
field. This field is the vendor short name. When you receive notifications for the vendor.created
, vendor.updated
, vendor.archived
, or vendor.restored
events, the notifications now include the shortName
field.
See Vendor notification payloads for more information.
The bill webhook notifications now include the purchaseOrderNumber
field. This field is the purchase order number linked with the bill. When you receive notifications for the bill.created
, bill.updated
, bill.archived
, or bill.restored
events, the notifications now include the purchaseOrderNumber
field.
See Bill notification payloads for more information.
In February 2025, BILL introduced UUIDs in the Spend & Expense API for further improving its security standards. All API responses include both id
and uuid
values.
As of July 9, 2025, the Spend & Expense id
values are being deprecated. Both id
and uuid
values will continue to be available in all API responses. We strongly recommend that you use uuid
instead of id
in all your Spend & Expense API operations.
BILL maintains an event history for each subscription. We have now upgraded the webhooks TTL from 90
days to 180
days. You can get the list of event notifications sent to you for a subscription with GET /v3/events/subscription/{subscription_id}
. You can now get the list of events for the last 180
days.
See Webhook API notification rules for more information about the complete set of rules.
We have added the capability for filtering event notifications by an entity ID. For example, to get notifications for a specific bill, you can now filter with the ID of the bill.
In the Get list of event notifications (GET /v3/events/subscription/{subscription_id}
) request, you can now filter event notifications with the entityId
field.
Field | Description |
---|---|
entityId | BILL-generated ID of the entity, such as bill or vendor. For example, to filter notifications by a specific bill, set this value as the ID of the bill. |
See GET /v3/events/subscription/{subscriptionId} in the API reference for more information.
We have introduced a set of API endpoints for getting billing statement information for an organization. BILL generates a monthly billing invoice statement for all the billing activities in the organization.
Operation | API endpoint |
---|---|
Get list of billing statements | GET /v3/organizations/{organizationId}/billing-statements |
Get billing statement details | GET /v3/organizations/{organizationId}/billing-statements/{billingStatementId} |
See Organization billing statements for more information.
We have introduced a new API endpoint for recording an AP payment.
You can now record a bill payment made outside your BILL system. You can apply the recorded payment amount to one or more bills for a vendor.
Operation | API endpoint |
---|---|
Record AP payment | POST /v3/bills/record-payment |
See Record AP payments for more information.
We have introduced a new API endpoint for getting the current BILL foreign exchange rate.
You can now get the current BILL foreign exchange rate for a payment made to an international vendor. The BILL foreign exchange rate changes periodically. Use this endpoint to get the current exchange rate based on the payment amount and vendor payment currency.
Operation | API endpoint |
---|---|
Get BILL foreign exchange rate | GET /v3/payments/exchange-rate |
We have introduced a set of API endpoints for recurring invoice operations. A recurring invoice is a template for creating identical invoices for accepting recurring payments from a customer. Each invoice represents an amount that you are owed by a customer for goods and services that your organization provides.
Operation | API endpoint |
---|---|
Create a recurring invoice | POST /v3/recurring-invoices |
Get list of recurring invoices | GET /v3/recurring-invoices |
Get recurring invoice details | POST /v3/recurring-invoices/{recurringInvoiceId} |
Update a recurring invoice | PATCH /v3/recurring-invoices/{recurringInvoiceId} |
Replace a recurring invoice | PUT /v3/recurring-invoices/{recurringInvoiceId} |
Archive a recurring invoice | POST /v3/recurring-invoices/{recurringInvoiceId}/archive |
Restore a recurring invoice | POST /v3/recurring-invoices/{recurringInvoiceId}/restore |
See Recurring invoices for more information.
In the Bills API response, we have introduced the paidAmount
field. This value is the sum of all cleared payments and any credit amount applied to the bill.
See POST /v3/bills in the API reference for more information.
In the bills API endpoints, we have introduced the quantity
and price
fields at the line item level.
Field | Description |
---|---|
quantity | Bill line item unit quantity |
price | Bill line item unit price. For a bill in an international currency (not USD), this value is in the local currency. |
In the billLineItems
array, when you set amount
for a bill line item, BILL uses this value as the bill line item amount. You can now set quantity
and price
for BILL to calculate the bill line item amount
. For example, if quantity
is 2
and price
is 79.99
for a bill line item, BILL calculates and displays the line item amount
in the response as 159.98
(2
x 79.99
).
In addition, we have introduced the customerId
field at the line item level in the classifications
object. You can now tag a bill line item with a customerId
.
See POST /v3/bills in the API reference for more information.