Update a bill
Update a bill. Only the fields you send change. Line items and amounts can only change while the bill is draft or rejected.
Authorizations
User API key authentication. Create a key under Settings → API keys in the Slash dashboard (https://app.slash.com/global-settings/api-keys) and send the x-legal-entity header naming the legal entity to act on with every request. Keys scoped to a legal entity are rejected with 403 user_api_key_required.
Headers
The legal entity to act on. Required on every request; a user API key can act on any legal entity its user has access to.
^le_[a-zA-Z0-9]+$Path Parameters
Bill id with the bill_ prefix.
Body
Partial update. An omitted field is left unchanged; null clears a clearable field. lineItems, tax, and discount are financial fields and are rejected with bill_amounts_locked once the bill has a payment that is not canceled or rejected.
The vendor contact. null clears it. Changing the vendor also clears destinationId unless you send one or the current destination belongs to the new vendor.
"le_c_2rj4l7hmrrrcv"
The destination the bill should be paid to. null clears it.
"le_contact_destination_2rj4l7hmrrrcv"
The user responsible for the bill.
"u_2rj4l7hmrrrcv"
The vendor's invoice number. null clears it.
255Invoice date as YYYY-MM-DD. null clears it.
Due date as YYYY-MM-DD. null clears it.
Replaces the line items. Lines sent with an id are updated in place; lines without one are appended; existing lines whose ids are omitted are removed.
1Tax added to the line totals, in the bill's currency.
Discount taken off the line totals, in the bill's currency.
Free-text notes. null clears them.
5000Response
The updated bill.
Money your legal entity owes a vendor. status and amounts.outstanding are derived from the bill's payments and cannot be set directly.
Bill id with the bill_ prefix.
"bill_2rj4l7hmrrrcv"
Derived from the bill's payments. draft until a payment exists; pending_approval while a payment awaits approval; rejected when the latest approval was rejected; scheduled when a payment is scheduled; payment_pending while a payment is in flight; partially_paid when settled payments cover part of the total; paid when they cover all of it; payment_failed when the latest payment failed or was returned.
draft, pending_approval, rejected, scheduled, payment_pending, paid, payment_failed, partially_paid How the bill entered Slash. api for bills created through this API, manual for the dashboard, email for the accounts-payable inbox, carrier_account for bills pulled from a connected carrier portal. Carrier bills are read-only over the API.
manual, email, carrier_account, api Uppercase ISO 4217 currency code shared by every amount on the bill.
^[A-Z]{3}$"USD"
Every amount is in currency, in minor units.
Line items in display order.
Documents attached to the bill, readable at GET /v2/documents/{documentId}.
Payments linked to the bill, oldest first.
When the bill was created.
The vendor contact, readable at GET /v2/contacts/{contactId}.
"le_c_2rj4l7hmrrrcv"
The destination the bill is expected to be paid to, readable at GET /v2/destinations/{destinationId}.
"le_contact_destination_2rj4l7hmrrrcv"
The user responsible for the bill. Absent for bills that arrived by email and have not been assigned.
"u_2rj4l7hmrrrcv"
The vendor's invoice number.
"INV-4471"
Invoice date as YYYY-MM-DD.
"2026-09-01"
Due date as YYYY-MM-DD.
"2026-10-01"
Free-text notes visible to your organization.