Need Help?


Getting Started

BILLIVING API gives you programmatic access to our services. With just few lines of code you're able to create & send invoices to your customers from any application (i.e. your online store, your CRM etc.). Our API is based on REST principles making it simple for you to develop and test your application.


API Endpoint

The API endpoint confirms to the following format:{entity}
Although the endpoint exists both as HTTP and HTTPS we encourage you to use the secured version in order to protect your HTTP requests.



BILLIVING API uses basic authentication via headers. To obtain an Authentication Token log into your account and go to Settings > API Integration. The credentials string should be the Base64-encoded version of the string in the following format: {ApiToken:Any Char}.

So here are some useful examples:
AngularJS example: AngularJS Basic Http Authentication
C# example: C# Basic Http Authentication


Testing Your First EndPoint

The following is a simple GET endpoint that returns the supported documents in our system (this endpoint does not require authentication):
Follow this link to test it:

Need further help? Contact our support team.



GET v1/account

Retrieve account information

POST v1/account

Create a new account (contact us for ApplicationId)


GET v1/affiliates/accounts

Retrieve affiliate child accounts

POST v1/affiliates

Create new affiliate

GET v1/affiliates

Retrieve affiliate information


GET v1/bankaccounts

Retrieve a collection of bank accounts

GET v1/bankaccounts/{id}

Retrieve bank account information

POST v1/bankaccounts

Add a new bank account

PUT v1/bankaccounts/{id}

Update bank account

DELETE v1/bankaccounts/{id}

Delete bank account


POST v1/clients/{id}/archive

Archive a client

POST v1/clients

Create a new client

DELETE v1/clients/{id}

Delete a client

GET v1/clients/{id}

Retrieve a single client

GET v1/clients/defaults

Retreives client defaults

GET v1/clients?FreeText={FreeText}&StatusId={StatusId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of clients

POST v1/clients/{id}/restore

Restore a deleted/archived client

PUT v1/clients/{id}

Update a client

POST v1/clients/import

Import clients from file

PUT v1/clients/{id}/tovendor

Convert a client to vendor


GET v1/definitions/doctypes

Retrieve a collection of document types

GET v1/definitions/currencies

Retrieve a collection of supported currencies

GET v1/definitions/languages

Retrieve a collection of supported languages

GET v1/definitions/countries

Retrieve a collection of countries

GET v1/definitions/duedays

Retrieve a collection of supported due days

GET v1/definitions/paystatus

Retrieve a collection of pay status

GET v1/definitions/status

Retrieve a collection of statuses (used for all entities, i.e.: clients, invoices etc.)

GET v1/definitions/dateformats

Retrieve a collection of date formats

GET v1/definitions/paymentmethods

Retrieve a collection of payment methods (i.e.: cash, check, credit-card etc.)

GET v1/definitions/recurfrequency

Retrieve a collection of frequency (i.e.: weekly, monthly, yearly etc.)

GET v1/definitions/style/templates

Retrieve template style collection


POST v1/estimates/{id}/archive

Archive an estimate

POST v1/estimates/{id}/clone/{docType}

Clone estimate to any document type

POST v1/estimates

Create a new estimate

DELETE v1/estimates/{id}

Delete an estimate

GET v1/estimates/{id}

Retrieve a single estimate

GET v1/estimates?OrganizationName={OrganizationName}&VendorName={VendorName}&Id={Id}&RefNo={RefNo}&DateFrom={DateFrom}&DateTo={DateTo}&Status={Status}&PayStatus={PayStatus}&CompanyId={CompanyId}&FreeText={FreeText}&ClientId={ClientId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of estimates

POST v1/estimates/{id}/restore

Restore a deleted/archived estimate

POST v1/estimates/{id}/send

Send an estimate using a predefined template

PUT v1/estimates/{id}

Update an existing estimate

POST v1/estimates/{id}/view-reset

Set as unviewed

GET v1/estimates/{id}/mail

Retrieve mail template for the selected estimate in HTML format

GET v1/estimates/{id}/mail/text

Retrieve mail template for the selected estimate in text format

POST v1/estimates/{id}/mail

Send customized e-mail for a specific estimate

GET v1/estimates/defaults

Retreive estimate defaults


POST v1/invoices/{id}/archive

Archive an invoice

POST v1/invoices/{id}/clone/{docType}

Clone invoice to any document type

POST v1/invoices

Create a new invoice

DELETE v1/invoices/{id}

Delete an invoice

GET v1/invoices/{id}

Retrieve a single invoice

GET v1/invoices?OrganizationName={OrganizationName}&VendorName={VendorName}&Id={Id}&RefNo={RefNo}&DateFrom={DateFrom}&DateTo={DateTo}&Status={Status}&PayStatus={PayStatus}&CompanyId={CompanyId}&FreeText={FreeText}&ClientId={ClientId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of invoices

GET v1/invoices/clients/{key}?OrganizationName={OrganizationName}&VendorName={VendorName}&Id={Id}&RefNo={RefNo}&DateFrom={DateFrom}&DateTo={DateTo}&Status={Status}&PayStatus={PayStatus}&CompanyId={CompanyId}&FreeText={FreeText}&ClientId={ClientId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of invoices for a specific client

POST v1/invoices/{id}/restore

Restore a deleted invoice

POST v1/invoices/{id}/send

Send an invoice using a predefined template

PUT v1/invoices/{id}

Update an existing invoice

POST v1/invoices/{id}/view-reset

Set as unviewed

GET v1/invoices/defaults

Retreive invoice defaults

GET v1/invoices/{id}/mail

Retrieve mail template for the selected invoice

GET v1/invoices/{id}/mail/text

Retrieve mail template for the selected invoice in text format

POST v1/invoices/{id}/mail

Send customized e-mail for a specific invoice

POST v1/invoices/recurring

Create a new recurring profile

GET v1/invoices/recurring/defaults

Retreives recurring invoice defaults

PUT v1/invoices/recurring/{id}

Update an existing recurring profile

GET v1/invoices/recurring?StatusId={StatusId}&OrganizationName={OrganizationName}

Retreive a collection of recurring profiles

GET v1/invoices/recurring/{id}

Retrieve a recurring profile

DELETE v1/invoices/recurring/{id}

Delete recurring profile

POST v1/invoices/recurring/{id}/clone/{docType}

Clone purchase order to any document type

POST v1/invoices/recurring/{id}/archive

Archive recurring profile

POST v1/invoices/recurring/{id}/restore

Restore recurring profile

POST v1/invoices/lineitems/import

Import line items

POST v1/invoices/import

No documentation available.


POST v1/login/authenticate

Login Authentication

POST v1/login/reset-password

Reset Password


DELETE v1/messages/{id}

Delete a message

POST v1/messages/{id}/unread

Set message to unread

POST v1/messages/{id}/archive

Archive a message

POST v1/messages/{id}/restore

Restore a message


POST v1/payments

Create a new payment for a specified invoice

PUT v1/payments/{id}

Update an existing invoice payment

GET v1/payments?DocId={DocId}&OrganizationName={OrganizationName}&PaymentMethodId={PaymentMethodId}&DateFrom={DateFrom}&DateTo={DateTo}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of payments for a specified invoice


GET v1/products/{id}

Retrieve an existing product

GET v1/products?FreeText={FreeText}&StatusId={StatusId}&ItemId={ItemId}&CategoryId={CategoryId}&Published={Published}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of products

POST v1/products

Add new product

PUT v1/products/{id}

Update an existing product

POST v1/products/{id}/pictures

Upload product pictures

GET v1/products/discounts

Retrieves catalog discounts

PUT v1/products/discounts

Updates catalog discounts

DELETE v1/products/{id}

Delete an existing product

POST v1/products/{id}/archive

Archive a product

POST v1/products/{id}/restore

Restore a product

POST v1/products/{id}/publish

Publish a product

POST v1/products/{id}/unpublish

Unpublish a product

GET v1/products/{id}/pictures?Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of product pictures

DELETE v1/products/{id}/pictures/{thumbnail}

Delete a product picture

GET v1/products/categories?Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of product categories

DELETE v1/products/categories/{id}

Delete a product category

GET v1/products/categories/{id}

Retrieve an existing product category

POST v1/products/categories

Create a new product category

PUT v1/products/categories/{id}

Update an existing product category


GET v1/profile/companies/default

Retrieve default company information

PUT v1/profile/companies/{id}/default

Set company as default

GET v1/profile/companies/{id}

Retrieve company information

POST v1/profile/companies

Create a new company

PUT v1/profile/companies/{id}

Update a company

DELETE v1/profile/companies/{id}/logo

Delete existing logo

DELETE v1/profile/companies/{id}

Delete a company

GET v1/profile/companies

Retrieve a collection of companies

GET v1/profile/users/notifications

Retrieve a collection of user notifications

PUT v1/profile/users/notifications

Update user notifications

PUT v1/profile/users/password

Update user password

GET v1/profile/users/default

Retrieve default user information

POST v1/profile/users/{id}/default

Set selected user as your default user

PUT v1/profile/users/{id}

Update user information

POST v1/profile/users

Create new user

GET v1/profile/users

Retrieve a collection of users

GET v1/profile/users/{id}

Retrieve user information

DELETE v1/profile/users/{id}

Delete an existing user account


POST v1/purchaseorders/{id}/archive

Archive a purchase order

POST v1/purchaseorders/{id}/clone/{docType}

Clone purchase order to any document type

POST v1/purchaseorders

Create a new purchase order

DELETE v1/purchaseorders/{id}

Delete a purchase order

GET v1/purchaseorders/{id}

Retrieve a single purchase order

GET v1/purchaseorders?OrganizationName={OrganizationName}&VendorName={VendorName}&Id={Id}&RefNo={RefNo}&DateFrom={DateFrom}&DateTo={DateTo}&Status={Status}&PayStatus={PayStatus}&CompanyId={CompanyId}&FreeText={FreeText}&ClientId={ClientId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of purchase orders

POST v1/purchaseorders/{id}/restore

Restore a deleted purchase order

POST v1/purchaseorders/{id}/send

Send a purchase order using a predefined template

PUT v1/purchaseorders/{id}

Update an existing purchase order

POST v1/purchaseorders/{id}/view-reset

Set as unviewed

GET v1/purchaseorders/{id}/mail

Retrieve mail template for the selected purchase order

GET v1/purchaseorders/{id}/mail/text

Retrieve mail template for the selected purchase order in text format

POST v1/purchaseorders/{id}/mail

Send customized e-mail for a specific purchase order

GET v1/purchaseorders/defaults

Retreive purchase order defaults


GET v1/reports/accountsummary

Dashboard data

GET v1/reports/taxsummary?Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Tax summary report

GET v1/reports/paymentscollected?Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Payments collected report

GET v1/reports/revenuebyclient?Search={Search}&Year={Year}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Revenue by client report

GET v1/reports/itemsales?ItemId={ItemId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Item sales report

GET v1/reports/revenuebyuser?UserId={UserId}&Year={Year}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Revenue by user report


POST v1/resellers/dashboard/logo

Upload dashboard logo

GET v1/resellers/dashboard/logo

Retrieve dashboard logo

DELETE v1/resellers/dashboard/logo

Delete dashboard logo

GET v1/resellers/accounts

Retrieve reseller child accounts

POST v1/resellers

Create new reseller

PUT v1/resellers

Update reseller information

GET v1/resellers

Retrieve reseller information

POST v1/resellers/mail/test

Send test message

PUT v1/resellers/pricing

Update reseller pricing

GET v1/resellers/pricing

Get reseller pricing

GET v1/resellers/pricing/domain

Get reseller pricing based on domain/subdomain


GET v1/settings

Retrieve account settings

PUT v1/settings

Update settings

PUT v1/settings/EarlyPaymentDiscount

Update early payment discount settings

POST v1/settings/logo

Upload logo

GET v1/settings/apikey

Retrieve api key

POST v1/settings/apikey/activate

Activate api key

GET v1/settings/mail

Retrieve mail settings

PUT v1/settings/mail

Update mail settings

GET v1/settings/mail/templates

Retrieve a collection of mail templates

GET v1/settings/mail/templates/{id}

Retrieve an existing mail template

PUT v1/settings/mail/templates/{id}

Update a mail template

POST v1/settings/mail/templates/{id}/restore

Restore mail template defaults

POST v1/settings/mail/templates

Create a mail template

POST v1/settings/taxes

Add a new tax

PUT v1/settings/taxes/{id}

Update tax

DELETE v1/settings/taxes/{id}

Delete tax

GET v1/settings/taxes

Retrieves a collection of taxes

PUT v1/settings/style/template/{id}

Update template style

GET v1/settings/style/template

Retrieve template style


GET v1/subdomain/categories

Retrieve a collection of product categories

GET v1/subdomain/products?FreeText={FreeText}&StatusId={StatusId}&ItemId={ItemId}&CategoryId={CategoryId}&Published={Published}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of products

GET v1/subdomain/products/{id}

Retrieve an existing product

GET v1/subdomain/settings

Retrieve subdomain settings

PUT v1/subdomain/settings

Update subdomain settings

GET v1/subdomain/gateway/paypal

Retrieve PayPal information


POST v1/vendors/invite

Send vendor invitation to a list of recipients

POST v1/vendors/{id}/archive

Archive a vendor

POST v1/vendors

Create a new vendor

DELETE v1/vendors/{id}

Delete a vendor

GET v1/vendors/{id}

Retrieve a single vendor

GET v1/vendors/defaults

Retreives vendor defaults

GET v1/vendors?FreeText={FreeText}&StatusId={StatusId}&Skip={Skip}&Top={Top}&OrderBy={OrderBy}&Count={Count}&FileType={FileType}&From={From}&To={To}

Retrieve a collection of vendors

POST v1/vendors/{id}/restore

Restore a deleted/archived vendor

PUT v1/vendors/{id}

Update a vendor

PUT v1/vendors/{id}/toclient

Convert a vendor to client

POST v1/vendors/import

Import vendors from file