Bill
Integration with Bill.com API
Create an employee
Create an employee
Create a new employee.
Archive a vendor
Archive a vendor
Archive an existing vendor. in the response, the archived
field is set as true
. you can restore an archived vendor with post /v3/vendors/\{vendorid\}/restore
. there is no change when you archive an archived vendor.
Api login as user
Api login as user
The loginasuser endpoint allows partners to authenticate and log in as a specific user within a designated organization in the bill system. this powerful feature enables partners to access and interact with an organization’s account on behalf of a particular user, facilitating seamless integration and support. it should be used when a partner needs to perform actions or access information as if they were the specified user within the organization. this endpoint requires careful use and proper authorization, as it effectively allows impersonation of a user. while it supports mfa for enhanced security, partners should ensure they have explicit permission from the organization and user before utilizing this functionality.
Check app health
Check app health
Retrieve app details, such as version and deployment location.
Create an accounting class
Create an accounting class
Create a new accounting class.
Archive a user
Archive a user
Archive an existing user. in the response, the archived
field is set as true
.” you can restore an archived user with post /v3/users/\{userid\}/restore
. there is no change when you archive an archived user.
Archive an item
Archive an item
Archive an existing item. in the response, the archived
field is set as true
.
Create a chart of accounts
Create a chart of accounts
Create a new chart of accounts.
Create a bulk payment
Create a bulk payment
This endpoint allows you to create and process multiple bill payments in a single api call. it streamlines the payment process for businesses by enabling batch processing of payments to one or multiple vendors. the endpoint supports various funding sources, including bank accounts, credit/debit cards, bill balance (wallet), and ap cards. it offers flexibility in payment scheduling, delivery methods, and transaction tracking. use this endpoint when you need to efficiently manage and execute multiple payments simultaneously, reducing the number of individual api calls and simplifying your payment workflows. note that certain parameters may be required based on the chosen funding source, and there are specific rules for vendor and bill identification that must be followed.
Create a customer
Create a customer
Create a new customer. see customers in the guides section for more information, sample requests, and responses.
Delete a budget
Delete a budget
Delete an existing budget.
Create custom field values
Create custom field values
Create new custom field values.
Create an image upload url for a reimbursement
Create an image upload url for a reimbursement
Create an image upload url that can be used to upload receipts for reimbursements.
Create a user
Create a user
Create a new user. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. see organizations and users in the guides section for more information, sample requests, and responses.
Delete a card
Delete a card
Delete an existing card.
Create a reimbursement
Create a reimbursement
Create a reimbursement
Delete a custom field
Delete a custom field
Delete a custom field.
Delete custom field values
Delete custom field values
Delete custom fields. values cannot be assigned to current or future transactions. the values will remain assigned to past transactions.
Delete a member from a budget
Delete a member from a budget
Delete a member from a budget
Delete customer connection
Delete customer connection
Delete an existing network connection with a customer. in addition, use this endpoint to cancel a pending customer connection invite. you can send a new connection invitation after an existing connection or invitation is canceled. note: if the invited customer does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Delete a vendor bank account
Delete a vendor bank account
Delete the existing vendor bank account for a vendor. to update vendor bank account information, you must first delete the existing vendor bank account (with delete /v3/vendors/\{vendorid\}/bank-account
), and then create a new vendor bank account (with post /v3/vendors/\{vendorid\}/bank-account
) with the updated information.
Delete a reimbursement
Delete a reimbursement
Delete a specified reimbursement.
Create a recurring bill
Create a recurring bill
Create a recurring bill. see recurring bills in the guides section for more information, sample requests, and responses.
Delete vendor connection
Delete vendor connection
Delete an existing network connection with a vendor. in addition, use this endpoint to cancel a pending vendor connection invite. you can send a new connection invitation after an existing connection or invitation is canceled. note: if the invited vendor does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Delete a user
Delete a user
Delete an existing user.
Get a single member for a budget
Get a single member for a budget
Get a single member for a budget
Get accounting class details
Get accounting class details
Get details about an existing accounting class.
Get api session details
Get api session details
Get details about your current api session. this includes information about the current organization id, user id, and mfa status of the organization.
Get attachment details
Get attachment details
Get details about an attachment. from the response, use downloadlink
in a get request to download the attachment. curl '{downloadlink}&sessionid={session id}' --output {attachment name}
Generate mfa challenge
Generate mfa challenge
Generates a multi-factor authentication (mfa) challenge for enhanced security in the bill api. this endpoint initiates the mfa process by creating a challenge that the user must respond to with their authentication token. it provides the option to use either the primary or a backup mfa device for generating the challenge. this tool should be used when implementing mfa flows in your application, particularly before sensitive operations like accessing billing information or making payments. the generated challenge is typically time-sensitive and should be responded to promptly for successful authentication.
Get audit trail details for a vendor
Get audit trail details for a vendor
Get audit trail details about changes made to a vendor object. the audit trail lists records for each create and edit operation. see getting audit trail details in the guides section for more information, sample requests, and responses.
Create a vendor
Create a vendor
Creates a new vendor in the bill.com system with comprehensive details for invoicing and payment processing. this endpoint allows you to set up a vendor’s basic information, address, payment preferences, tax details, and auto-pay settings. it’s particularly useful when onboarding new suppliers or updating existing vendor information en masse. the endpoint requires at minimum the vendor’s name and address, but allows for extensive customization of payment terms, currencies, and automated payment rules. note that enabling auto-pay features requires additional authentication through mfa. use this endpoint when you need to add new vendors to your bill.com account or update existing vendors with new information.
Accept network invitation
Accept network invitation
Accept a network invitation that was sent to the organization by a vendor or customer. when the invitation is accepted, the organization is connected with the vendor or customer in the bill network. see bill network in the guides section for more information, sample requests, and responses.
Get bank account details
Get bank account details
Get details about an existing bank account.
Api partner login
Api partner login
Authenticates a partner user and initiates a session with the bill api. this endpoint should be used at the beginning of any integration session to obtain necessary authentication tokens or session identifiers. it verifies the partner’s credentials and grants access to other api endpoints. the login process is a prerequisite for accessing any protected resources or performing operations within the bill system. note that this endpoint does not provide any financial or account information directly; it only establishes an authenticated session.
Get chart of accounts details
Get chart of accounts details
Get details about an existing chart of accounts.
Get card funding purpose
Get card funding purpose
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.
Api logout
Api logout
Sign out of your bill developer account. in response, the current sessionid
expires and your api session is terminated. you will be required to sign in again with /v3/login
before you can make another api call.
Add phone for mfa setup
Add phone for mfa setup
Sets up multi-factor authentication (mfa) for a user account in the bill api. this endpoint allows users to configure their preferred method of receiving authentication tokens, enhancing account security. it should be used when a user wants to enable mfa or update their existing mfa settings. the setup process requires providing a phone number, selecting between voice calls or text messages for token delivery, and specifying if it’s a primary or backup device. this endpoint is crucial for implementing a robust security layer but does not handle the actual authentication process or token validation.
Get check image data
Get check image data
Get images of an existing check sent to a vendor. from the response, use downloadlink
in a get request to download the front and back images of the check. curl '{downloadlink}&sessionid={session id}' --output {check name}
Get card account details
Get card account details
Get details about an existing card account.
Add phone for risk verification
Add phone for risk verification
Add a phone number for the currently signed-in user. bill requires the signed-in user to have a linked phone number for initiating risk verification for the organization. you can check whether a phone number has been added for the user with get /v3/risk-verifications/phone
. after you add a phone number with this endpoint, you can initiate risk verification for the organization with post /v3/risk-verifications
.
Get card details
Get card details
Get details about an existing card.
Get customer invitation status
Get customer invitation status
Get the status of an existing invitation sent with post /v3/network/invitation/customer/\{customerid\}
. when the customer accepts the invitation, your organization is connected with the customer. note: if the invited customer does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Get customer details
Get customer details
Get details about an existing customer.
Get bill details
Get bill details
Get details about an existing bill.
Api login
Api login
Sign in to your bill developer account. in the response, your api session is created and a bill-generated sessionid
is available. use the sessionid
in all subsequent api calls to confirm that you are in a signed-in session. to create an mfa-trusted api session, set remembermeid
and device
in addition to the required fields. see mfa setup for information about the bill mfa process. you can sign out with post /v3/logout
. if your api session is inactive for 35 minutes, the session expires and you are automatically signed out. see api partner login for information about the additional permissions you get with the api partner login. note: this section is about authentication for working with the bill v3 api. see authentication with spend & expense api token for information about authentication for the spend & expense api endpoints.
Create a vendor bank account
Create a vendor bank account
Create a vendor bank account for an existing vendor. to update vendor bank account information, you must first delete the existing vendor bank account (with delete /v3/vendors/\{vendorid\}/bank-account
), and then create a new vendor bank account (with post /v3/vendors/\{vendorid\}/bank-account
) with the updated information. note: when you add vendor bank account information, bill requires 2 business days to complete a one-time verification of the bank account. payments sent to the vendor are processed after the one-time verification is complete. see get list of vendor payment options to get details about vendor payment options and payment process dates.
Get custom field details
Get custom field details
Get details about a custom field.
Get department details
Get department details
Get details about an existing department.
Get budget details
Get budget details
Get details about an existing budget.
Get employee details
Get employee details
Get details about an existing employee.
Create a vendor card
Create a vendor card
Create a new vendor card.
Get document upload status
Get document upload status
Get status of a document upload. use this endpoint to identify when a document upload is complete. * at the start of the document upload process (in progress
), bill generates an uploadid
for the document. the value begins with 0du
. * when the document upload is complete (uploaded
), bill generates a documentid
for the document. the value begins with 00h
.
Archive a customer
Archive a customer
Archive an existing customer. in the response, the archived
field is set as true
. you can restore an archived customer with post /v3/customers/\{customerid\}/restore
. there is no change when you archive an archived customer.
Get custom field value
Get custom field value
Get details about a custom fields values.
Get document details
Get document details
Get details about a document associated with a bill. from the response, use downloadlink
in a get request to download the document. curl '{downloadlink}&sessionid={session id}' --output {document name}
Approve or deny a reimbursement
Approve or deny a reimbursement
Approve or deny a reimbursement.
Archive a bank account user
Archive a bank account user
Archive an existing bank account user. in the response, the archived
field is set as true
and the bank account user verificationstatus
is set as unverified
.
Archive an accounting class
Archive an accounting class
Archive an existing accounting class. in the response, the archived
field is set as true
.
Archive a department
Archive a department
Archive an existing department. in the response, the archived
field is set as true
.
Create an item
Create an item
Create a new item.
Create custom field
Create custom field
Create a new custom field.
Archive a bank account
Archive a bank account
Archive an existing bank account. in the response, the archived
field is set as true
. archiving a bank account at bill has a set of requirements. * bank account status: the bank account status
must be set as verified
. you can verify the bank account with post /v3/funding-accounts/banks/\{bankaccountid\}/verify
. * bank account user status: the bank account user verificationstatus
must be set as verified
. to begin the verification process, nominate a bank account user with post /v3/funding-accounts/banks/users
.
Archive multiple departments
Archive multiple departments
Archive multiple departments with one api request. in the response, the archived
field is set as true
.
Archive multiple employees
Archive multiple employees
Archive multiple employees with one api request. in the response, the archived
field for each object is set as true
.
Archive a bill
Archive a bill
Archive an existing bill. in the response, the archived
field is set as true
. you can restore an archived bill with post /v3/bills/\{billid\}/restore
. there is no change when you archive an archived bill.
Archive a job
Archive a job
Archive an existing job. in the response, the archived
field is set as true
.
Create a bank account
Create a bank account
Create a new bank account. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. bill sends an email notification for informing you about changes to your funding accounts. note: when you create a bank account, bill sends a test ach payment to the bank account to confirm whether the account details are accurate. in the response, three fields are set to their default values. * the bank account status
is set as pending
. you can verify the bank account with post /v3/funding-accounts/banks/\{bankaccountid\}/verify
. * the payables
and receivables
values are set as false
. to update these values, update the bank account with patch /v3/funding-accounts/banks/\{bankaccountid\}
. see bank account setup (v3 api) in the guides section for more information, sample requests, and responses.
Archive a recurring bill
Archive a recurring bill
Archive a recurring bill. in the response, the archived
field is set as true
. you can restore an archived recurring bill with post /v3/recurringbills/\{recurringbillid\}/restore
. there is no change when you archive an archived recurring bill. when a recurring bill is modified, all future bills are automatically changed.
Create a department
Create a department
Create a new department.
Create a job
Create a job
Create a new job.
Archive a location
Archive a location
Archive an existing location. in the response, the archived
field is set as true
.
Create an invoice
Create an invoice
Create a new invoice. see invoices in the guides section for more information, sample requests, and responses.
Create a location
Create a location
Create a new location.
Create a bill
Create a bill
Create a new bill. see bills in the guides section for more information, sample requests, and responses.
Archive mutliple chart of accounts
Archive mutliple chart of accounts
Archive multiple chart of accounts with one api request. in the response, the archived
field for each object is set as true
.
Archive an invoice
Archive an invoice
Archive an existing invoice. in the response, the archived
field is set as true
. you can restore an archived invoice with post /v3/invoices/\{invoiceid\}/restore
. there is no change when you archive an archived invoice.
Archive an employee
Archive an employee
Archive an existing employee. in the response, the archived
field is set as true
.
Archive multiple locations
Archive multiple locations
Archive multiple locations with one api request. in the response, the archived
field for each object is set as true
.
Archive multiple jobs
Archive multiple jobs
Archive multiple jobs with one api request. in the response, the archived
field for each object is set as true
.
Create an organization
Create an organization
Create a new organization. this operation requires partner-level permissions. * a sessionid
header value generated with api partner login * an appkey
header value see organizations for bill partners in the guides section for more information, sample requests, and responses.
Archive a chart of accounts
Archive a chart of accounts
Archive an existing chart of accounts. in the response, the archived
field is set as true
.
Archive multiple items
Archive multiple items
Archive multiple items with one api request. in the response, the archived
field for each object is set as true
.
Create a budget
Create a budget
Create a new budget for a company.
Cancel a payment
Cancel a payment
Cancel an existing payment. you can attempt to cancel a payment with post /v3/payments/\{paymentid\}/cancel
based on a set of conditions. see <a href=“https://help.bill.com/hc/en-us/articles/115005898063”>payment cancelation and void cut-off timing</a> in the bill help center to learn about the bill cancel payment process and timing. if the conditions are not met, you cannot cancel the payment. at that point, you can attempt to void the payment with post /v3/payments/\{paymentid\}/void
.
Create a payment
Create a payment
Create a payment. see get list of vendor payment options to get details about vendor payment options and payment process dates. note: creating a payment requires an mfa-trusted api session. see mfa setup for information about the bill mfa process. see payments in the guides section for more information, sample requests, and responses.
Archive multiple accounting classes
Archive multiple accounting classes
Archive multiple accounting classes with one api request. in the response, the archived
field for each object is set as true
.
Get current user details
Get current user details
Get details about the current user.
Get funding account permissions
Get funding account permissions
Get the funding account permissions available for the current organization and current organization user.
Get list of bank account users
Get list of bank account users
Get a list of bank account user objects. in the response, if the bank account user verificationstatus
is set as nominated
, user verification must be completed before the user can pay with the specified bank account. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page.
Get list of vendor payment options
Get list of vendor payment options
Get a list of vendor payment options available based on the funding account options available in the signed-in user’s bill organization and on the payment methods accepted by a vendor. see vendor payment options in the guides section for more information, sample requests, and responses.
Get invoice details
Get invoice details
Get details about an existing invoice.
Get item details
Get item details
Get details about an existing item.
Get location details
Get location details
Get details about an existing location.
Get transaction custom field details
Get transaction custom field details
Get details about existing transaction custom fields
Get list of organization industries
Get list of organization industries
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.
Get risk verification details
Get risk verification details
Get risk verification details for an existing organization.
Get list of employees
Get list of employees
Get a list of employee objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of organizations
Get list of organizations
Get a list of organization objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples. this operation requires partner-level permissions. * a sessionid
header value generated with api partner login * an appkey
header value
Get international payments configuration
Get international payments configuration
Get international payments (not usd) configuration that is required for compliance with international payment rules of a vendor country and vendor bank account. this information is based on vendor country, bill currency, and vendor account type. use this endpoint for getting information before creating an international vendor. in the response, the required paymentpurpose
and regulatoryfields
information is retrieved for the vendor. note: if you are adding paymentpurpose
and regulatoryfields
information after creating an international vendor, use get /v3/vendors/\{vendorid\}/configuration
to get the required configuration for your created vendor. see creating an international vendor for more information on how to set paymentpurpose
and regulatoryfields
.
Get list of bills
Get list of bills
Get a list of bill objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of documents
Get list of documents
Get a list of documents associated with a bill. from the response, use downloadlink
in a get request to download the document. curl '{downloadlink}&sessionid={session id}' --output {document name}
Get list of vendor attachments
Get list of vendor attachments
Get a list of attachments associated with a vendor. from the response, use downloadlink
in a get request to download the attachment. curl '{downloadlink}&sessionid={session id}' --output {attachment name}
Get job details
Get job details
Get details about an existing job.
Get vendor details
Get vendor details
Get details about an existing vendor.
Get vendor invitation status
Get vendor invitation status
Get the status of an existing invitation sent with post /v3/network/invitation/vendor/\{vendorid\}
. when the vendor accepts the invitation, your organization is connected with the vendor. note: if the invited vendor does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Get list of recurring bills
Get list of recurring bills
Get a list of recurring bill objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of payments
Get list of payments
Get a list of payment objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Initiate risk verification for an organization
Initiate risk verification for an organization
Initiate risk verification for an organization. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. note: you must add a phone number for the signed-in user (with post /v3/risk-verifications/phone
) before you can initiate risk verification. bill partners must add a phone number for a created user with post /v3/partner/risk-verifications/\{userid\}/phone
. as a bill partner, when you create an organization and then create a user for that organization, it is important that you initiate risk verification with post /v3/risk-verifications
. bill performs a kyc/kyb (know you customer/know your business) check based on the provided organization information. bill sends an email notification for risk verficiation. when the check is complete, bill approves the organization for bill ap and ar operations.
Get transaction custom field value details
Get transaction custom field value details
Get details about an existing transaction custom field and values
Get list of invoices
Get list of invoices
Get a list of invoice objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get organization details
Get organization details
Get details about an existing organization. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. see organizations and users in the guides section for more information, sample requests, and responses.
Invite a customer in the bill network
Invite a customer in the bill network
Send an invitation to connect a customer created in your organization with a customer in the network. bill sends an invitation email to the customer email address. when the customer accepts the invitation, the customer in your organization is connected with the invited customer. if the invited customer does not respond, delete the invitation (with delete /v3/network/invitation/customer/\{customerid\}
) before sending a new invitation. note: if the invited customer does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Restore an archived customer
Restore an archived customer
Restore an archived customer. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored customers. there is no change when you restore a restored customer.
Get transaction details
Get transaction details
Get details about an existing transaction.
Invite a vendor in the bill network
Invite a vendor in the bill network
Send an invitation to connect a vendor created in your organization with a vendor in the network. bill sends an invitation email to the vendor email address. when the vendor accepts the invitation, the vendor in your organization is connected with the invited vendor. if the invited vendor does not respond, delete the invitation (with delete /v3/network/invitation/vendor/\{vendorid\}
) before sending a new invitation. note: if the invited vendor does not respond to an invitation for 60 days, the invitation expires. see bill network in the guides section for more information, sample requests, and responses.
Restore an archived bill
Restore an archived bill
Restore an archived bill. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored bills. there is no change when you restore a restored bill.
Restore an archived chart of accounts
Restore an archived chart of accounts
Restore an archived chart of accounts. in the response, the archived
field is set as false
.
Get list of invoice attachments
Get list of invoice attachments
Get a list of attachments associated with an invoice. from the response, use downloadlink
in a get request to download the attachment. curl '{downloadlink}&sessionid={session id}' --output {attachment name}
Restore an archived accounting class
Restore an archived accounting class
Restore an archived accounting class. in the response, the archived
field is set as false
.
Replace a recurring bill
Replace a recurring bill
Update the number of line items in a recurring bill. you can also update other recurring bill details. you can use the put operation to add, remove, or replace the number of line items in a recurring bill. a set of rules apply with the put operation. * when you add a new line item, a new line item id
is generated in the bill. * when you omit an existing line item id
, the line item is removed from the bill. when a recurring bill is modified, all future bills are automatically changed.
Mfa step up for api session
Mfa step up for api session
Set your current api session as mfa trusted. ideally, when you sign in with post /v3/login
, set remembermeid
and device
in your request to generate an mfa-trusted api session. in case you sign in without remembermeid
and device
in your request, you can use this post /v3/mfa/step-up
endpoint to mark the current api session as mfa trusted.
Get organization price plan details
Get organization price plan details
Get the bill price plan details for an existing organization. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. a bill price plan for an organization provides a range of information, including monthly subscription fees and the terms and conditions for additional charges in the price plan.
Restore an archived employee
Restore an archived employee
Restore an archived employee. in the response, the archived
field is set as false
.
Restore an archived item
Restore an archived item
Restore an archived item. in the response, the archived
field is set as false
.
Restore an archived invoice
Restore an archived invoice
Restore an archived invoice. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored invoices. there is no change when you restore a restored invoice.
Restore an archived department
Restore an archived department
Restore an archived department. in the response, the archived
field is set as false
.
Restore an archived job
Restore an archived job
Restore an archived job. in the response, the archived
field is set as false
.
Nominate a bank account user
Nominate a bank account user
Nominate a bank account user. when you nominate a user, bill performs a set of operations. * the bank account user verificationstatus
is set as nominated
. * bill sends the user an email asking them to sign in to the bill web app and complete identity verification. after user identity verification is successful, the bank account user verificationstatus
is set as verified
and the user can pay with the specified bank account. note: the bank account status
must be set as verified
before you can nominate bank account users.
Get user details
Get user details
Get details about a existing user.
Restore an archived recurring bill
Restore an archived recurring bill
Restore an archived recurring bill. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored recurring bills. there is no change when you restore a restored recurring bill. when a recurring bill is modified, all future bills are automatically changed.
Get list of budgets
Get list of budgets
Get a list of budget objects for the current user’s company.
Restore an archived location
Restore an archived location
Restore an archived location. in the response, the archived
field is set as false
.
Get pan jwt
Get pan jwt
Get a jwt token for retrieving a card’s pan (full account number). the jwt token contains all the information required for retrieving details about a virtual card (16-digit pan, cvv, and expiration date). the jwt token lifespan is 5 minutes. you can convert the retrieved jwt token to get the related virtual card details with post https://app-dev-sandbox.divvy.co/de/rest/pan
. curl --location --request post 'https://app-dev-sandbox.divvy.co/de/rest/pan' --header 'content-type: application/json' --data-raw '{"token":"{jwt token}"}'
note: use post https://api.divvy.co/de/rest/pan
in the production environment.
Get list of items
Get list of items
Get a list of item objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of cards
Get list of cards
Get a list of card objects.
Get payment details
Get payment details
Get details about an existing payment.
Get user role details
Get user role details
Get details about an existing user role.
Restore an archived user
Restore an archived user
Restore an archived user. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored users. there is no change when you restore a restored user.
Restore multiple accounting classes
Restore multiple accounting classes
Restore multiple accounting classes with one api request. in the response, the archived
field for each object is set as false
.
Restore multiple chart of accounts
Restore multiple chart of accounts
Restore multiple chart of accounts with one api request. in the response, the archived
field for each object is set as false
.
Record ar payment
Record ar payment
Record an invoice payment received outside your bill system. apply the recorded payment amount to one or more invoices for a customer. any recorded unapplied amount is an overpayment and is available as a customer balance in your bill system. see recording an ar payment in the guides section for more information, sample requests, and responses.
Get vendor bank account details
Get vendor bank account details
Get details about an existing vendor bank account.
Get phone status for risk verification
Get phone status for risk verification
Check whether a phone number has been added for the currently signed-in user. bill requires the signed-in user to have a linked phone number for initiating risk verification for the organization. in the response, if hasphone
is false
, you can add a phone number for the user with post /v3/risk-verifications/phone
. after you add a phone number, you can initiate risk verification for the organization with post /v3/risk-verifications
.
Search for an organization in the bill networks
Search for an organization in the bill networks
Search for a customer, vendor, or verified national vendor. you can search in the bill network and verified national vendor network. when you search in the bill network, there are two name
requirements for getting search results. * your search term must have a minimum of three characters. * your search term must be a complete word. you will not get search results when your search term is a partial word. when you search in the verified national vendor network, search results are based on both a complete and partial match on name
and ziporpostalcode
. you can further filter your search by the billing statement accountnumber
with the vendor. for example, your verizon internet bill account number. see bill network in the guides section for more information, sample requests, and responses.
Retrieve customer attachments
Retrieve customer attachments
Retrieves all attachments associated with a specific customer in the bill api. this endpoint allows businesses to fetch documents, invoices, or any other files that have been uploaded and linked to a particular customer account. it should be used when there’s a need to access or review all attachment files for a given customer, such as during auditing, customer service inquiries, or account management tasks. the endpoint returns a collection of attachment metadata and potentially the attachment contents, depending on the api’s implementation. it does not modify any data and is typically used for read-only operations. note that this endpoint focuses on customer-specific attachments and may not include system-wide or non-customer-related files.
Send an invoice
Send an invoice
Send an invoice to a customer email address. you can send the invoice to multiple email addresses. see invoices in the guides section for more information, sample requests, and responses.
Restore multiple employees
Restore multiple employees
Restore multiple employees with one api request. in the response, the archived
field for each object is set as false
.
Restore multiple departments
Restore multiple departments
Restore multiple departments with one api request. in the response, the archived
field is set as false
.
Get list of card accounts
Get list of card accounts
Get a list of card account objects.
Get recurring bill details
Get recurring bill details
Get details about an existing recurring bill.
Restore multiple locations
Restore multiple locations
Restore multiple locations with one api request. in the response, the archived
field for each object is set as false
.
Get vendor configuration
Get vendor configuration
Get international payments (not usd) configuration after vendor creation. this configuration is required for compliance with international payment rules of a vendor country and vendor bank account. in the response, the required paymentpurpose
and regulatoryfields
information is retrieved for the vendor. note: if you are adding paymentpurpose
and regulatoryfields
information during international vendor creation, use get /v3/vendors/configuration/international-payments
to get the required configuration before vendor creation. see creating an international vendor for more information on how to set paymentpurpose
and regulatoryfields
.
Restore multiple items
Restore multiple items
Restore multiple items with one api request. in the response, the archived
field for each object is set as false
.
Update an employee
Update an employee
Update details about an existing employee.
Update an accounting class
Update an accounting class
Update details about an existing accounting class.
Get reimbursement details
Get reimbursement details
Get details about a specified reimbursement.
Update an invoice
Update an invoice
Update details about an invoice line item. you can also update other invoice details. you can use the patch operation to modify line item details, such as amount
, quantity
, and description
. the invoice line item id
does not change with a patch operation.
Get list of card account users
Get list of card account users
Get a list of card account user objects. in the response, if the card account user verificationstatus
is set as nominated
, user verification must be completed before the user can pay with the specified card account. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page.
Update an item
Update an item
Update details about an existing item.
Update an organization
Update an organization
Update details about an existing organization. the currently signed-in user must have the administrator
user role in the bill organization to perform this operation. see organizations and users in the guides section for more information, sample requests, and responses.
Get list of ap cards
Get list of ap cards
Get a list of ap card objects. with the ap card, you can earn rewards simply by paying your bills. the ap card is a payment method that enables you to send fast payments with no transaction fees or annual fees. you can use the ap card with any vendor who accepts virtual card payments. see ap card frequently asked questions (faqs) in the bill help to learn more about ap card.
Update a bank account
Update a bank account
Update details about an existing bank account. this operation follows a set of rules. * bank account status
requirement: the bank account status
must be set as verified
before you can update any details about the bank account. you can verify the bank account with post /v3/funding-accounts/banks/\{bankaccountid\}/verify
. * update field restrictions: you cannot update the routingnumber
, accountnumber
, and account type
values for a bank account. if you want to update any of these values, create a new bank account with post /v3/funding-accounts/banks
.
Update a customer
Update a customer
Update details about an existing customer.
Replace a bill
Replace a bill
Update the number of line items in a bill. you can also update other bill details. you can use the put operation to add, remove, or replace the number of line items in a bill. a set of rules apply with the put operation. * when you add a new line item, a new line item id
is generated in the bill. * when you omit an existing line item id
, the line item is removed from the bill.
Update a chart of accounts
Update a chart of accounts
Update details about an existing chart of accounts.
Restore multiple jobs
Restore multiple jobs
Restore multiple jobs with one api request. in the response, the archived
field for each object is set as false
.
Replace an invoice
Replace an invoice
Update the number of line items in an invoice. you can also update other invoice details. you can use the put operation to add, remove, or replace the number of line items in an invoice. a set of rules apply with the put operation. * when you add a new line item, a new line item id
is generated in the invoice. * when you omit an existing line item id
, the line item is removed from the invoice.
Update a bill
Update a bill
Update details about a bill line item. you can also update other bill details. you can use the patch operation to modify line item details, such as amount
and description
. the bill line item id
does not change with a patch operation.
Get list of bank accounts
Get list of bank accounts
Get a list of bank account objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Update a budget
Update a budget
Update details about an existing budget.
Update a custom field and values on a transaction
Update a custom field and values on a transaction
Update a custom field and values on a transaction.
Get list of jobs
Get list of jobs
Get a list of job objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of members for a budget
Get list of members for a budget
Get a list of members for a budget.
Get list of accounting classes
Get list of accounting classes
Get a list of accounting class objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of locations
Get list of locations
Get a list of location objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of mfa phone numbers
Get list of mfa phone numbers
Get a list of phone numbers that have been added for setting up mfa in the current organization.
Get list of user roles
Get list of user roles
Get a list of user role objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of transactions
Get list of transactions
Get a list of transaction objects.
Get list of users
Get list of users
Get a list of user objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of departments
Get list of departments
Get a list of department objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Restore an archived vendor
Restore an archived vendor
Restore an archived vendor. in the response, the archived
field is set as false
. you can perform any valid bill operation on restored vendors. there is no change when you restore a restored vendor.
Get list of chart of accounts
Get list of chart of accounts
Get a list of chart of accounts objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of customers
Get list of customers
Get a list of customer objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of custom fields
Get list of custom fields
Get list of custom fields.
Get list of values for custom field
Get list of values for custom field
Get list of values for custom field.
Get list of vendors
Get list of vendors
Get a list of vendor objects. by default, you get 20 results on one page of results. set max
in your request to get up to 100 results on one page. see search operations with lists in the guides section for filtering, sorting, and pagination examples.
Get list of reimbursements
Get list of reimbursements
Get a list of reimbursement objects.
Validate phone for mfa setup
Validate phone for mfa setup
Validates the setup of multi-factor authentication (mfa) for a user’s account in the bill api. this endpoint is used as the final step in the mfa setup process, confirming that the user has successfully received and can provide the validation token sent to their registered phone number. it should be called immediately after the user receives the mfa setup token via the specified method (voice call or sms). the endpoint ensures that the mfa setup is correctly configured and functional, adding an extra layer of security to the user’s account. it’s important to note that this endpoint does not actually enable mfa; it only validates the setup process.
Update budget member funds
Update budget member funds
Add a member to a budget or update an existing member of the budget
Update a job
Update a job
Update details about an existing job.
Upload bill document
Upload bill document
Upload a document for an existing bill. note: when you upload a document, it takes a few minutes for bill to complete the upload process. you can get the document upload status with get /v3/documents/upload-status
. see documents and attachments in the guides section for more information, sample requests, and responses.
Update a department
Update a department
Update details about an existing department.
Update transaction
Update transaction
Update a transaction
Update a vendor card
Update a vendor card
Update a new vendor card.
Void a payment
Void a payment
Void an existing payment. void a bill payment that has started processing and cannot be canceled (with post /v3/payments/\{paymentid\}/cancel
). you can attempt to void payments made both with bill (online) and outside bill (offline). ### void a payment made with bill (online) in your /post /v3/payments/\{paymentid\}/void
request: * set paymentid
as the bill-generated id of the payment. the value begins with stp
. * set type
as the void payment request type * set reason
as the reason for voiding the payment see can i cancel or void a payables payment? in the bill help center to learn about the bill void payment process and timing in the production environment.
Update a location
Update a location
Update details about an existing location.
Verify a bank account
Verify a bank account
Verifies a bank account by initiating a small deposit transaction. this endpoint is used to confirm the validity and ownership of a bank account before it can be used for funding or receiving payments. it simulates a micro-deposit process commonly used in financial systems for account verification. the api requires specifying a deposit amount, which must be between 0.99. this verification step is crucial for ensuring the security and accuracy of financial transactions within the bill payment system. note that in the sandbox environment, using a deposit amount of $0.50 will always result in a successful verification, allowing for easy testing and integration.
Update a vendor
Update a vendor
Update details about an existing vendor. ### requirements for enabling vendor payments vendor address details are required for paying a vendor by check or for inviting the vendor to join the bill network. * line1
* city
* ziporpostalcode
* country
* payeename
note: you cannot add or update vendor bank account information with this endpoint. you can add and manage vendor bank account information with a dedicated set of endpoints. * create a vendor bank account: post /v3/vendors/\{vendorid\}/bank-account
* get vendor bank account details: get /v3/vendors/\{vendorid\}/bank-account
* delete a vendor bank account: delete /v3/vendors/\{vendorid\}/bank-account
Update a reimbursement
Update a reimbursement
Update a reimbursement
Update custom field details
Update custom field details
Update settings for a custom field.
Update a list of budget members in a budget
Update a list of budget members in a budget
Update a list of budget members in a budget.
Validate mfa challenge
Validate mfa challenge
Validates a multi-factor authentication (mfa) challenge in the bill api. this endpoint is used to complete the mfa process by verifying the token sent to the user’s registered phone number. it should be called after initiating an mfa challenge with the ‘post /v3/mfa/challenge’ endpoint. the function provides options for remembering the device or machine for an extended period, enhancing user convenience for trusted devices while maintaining security. it’s crucial for implementing secure, two-factor authentication flows in applications integrated with the bill api.
Update a user
Update a user
Update details about an existing user.
Upload invoice attachment
Upload invoice attachment
Upload an attachment for an invoice. note: when you upload an attachment, it takes a few minutes for bill to complete the upload process. see documents and attachments in the guides section for more information, sample requests, and responses.
Upload customer attachment
Upload customer attachment
Upload an attachment for an existing customer. note: when you upload an attachment, it takes a few minutes for bill to complete the upload process. see documents and attachments in the guides section for more information, sample requests, and responses.
Update a recurring bill
Update a recurring bill
Update details about a recurring bill line item. you can also update other recurring bill details. you can use the patch operation to modify line item details, such as amount and description. the recurring bill line item id
does not change with a patch operation. when a recurring bill is modified, all future bills are automatically changed.
Upload vendor attachment
Upload vendor attachment
Upload an attachment for an existing vendor. note: when you upload an attachment, it takes a few minutes for bill to complete the upload process. see documents and attachments in the guides section for more information, sample requests, and responses.