Finance Clearing API

1. Introduction

The HORISEN Finance Clearing API is used by HORISEN applications for Invoice Clearing, establishing available payment types, etc.

This API belongs to the Finance domain. Subject Domain in the endpoint URL is:

https://api.horisen.pro/finance/sit/v1

It supports OAuth 2.0 authentication. An example of how to implement OAuth 2.0 and obtain access token as well as an example of using HORISEN API service, is available on OAuth2 Authentication Guidelines page.

2. Methods Overview

2.1 Invoice

The endpoint to work with invoices.

GET/payable-invoices
Returns a list of all payable Invoices.Read More

2.2 Clearing

Endpoints to work with invoice clearing records.

GET/invoices/{invoiceid}/clearingrecords
Returns a list of all invoice ClearingRecords for a given invoiceId.Read More
POST/invoices/{invoiceid}/clearingrecords
Adds an invoice ClearingRecord for a given InvoiceId.Read More
GET/invoices-by-number/{invoiceNumber}/clearingrecords
Returns a list of all invoice ClearingRecords for a given invoiceNumber.Read More
POST/invoices-by-number/{invoiceNumber}/clearingrecords
Adds an invoice ClearingRecord for a given invoiceNumber.Read More
GET/invoices-by-uid/{invoiceUid}/clearingrecords
Returns a list of invoice ClearingRecords for a given invoiceUid.Read More
POST/invoices-by-uid/{invoiceUid}/clearingrecords
Adds an invoice ClearingRecord for a given invoiceUid.Read More

2.3 PaymentType

Endpoint to work with payment types.

GET/payment-types
Returns a list of Payment Types.Read More

2.4 PlatformOwnerBankAccounts

Endpoints to work with data of platform owner bank accounts.

GET/platform-owner-bank-accounts
Returns a list of bank accounts of a platform owner or a co-owner.Read More
POST/platform-owner-bank-accounts
Creates a new bank account record.Read More
GET/platform-owner-bank-accounts/{id}
Returns a bank account for a given ID.Read More
PUT/platform-owner-bank-accounts/{id}
Updates a bank account data for a given ID.Read More
DELETE/platform-owner-bank-accounts/{id}
Deletes a bank account data for a given ID.Read More

3. Method Details

3.1 Invoice

The endpoint to work with invoices.

GET/payable-invoices
Returns a list of all payable invoices.Up
Method Overview

The method returns a list of payable invoices.

Payable invoices are invoices whose status is 'approved' and whose payment status is 'open'.

This endpoint accepts query parameters for filtering payable invoices. For more information, refer to URL Filtering Guidelines page.

URL Parameters
Name Type Description
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: custName, custShortName, invNumber, invDate, invDueDate, overDueDate, total, totalUnpaid, totalPaid, invType, invTypeName, invPeriod, invPeriodStart, invPeriodEnd, invoicingDate, invoicingDatePolicy, classCodeName, currency, id, disputeStatus, statusDt, dataSourceCodeName, custID, processingStatus, collectionLeadId, collectionMode, vat, amountNoVat, amountVat, domainCodeName, custCountry, nettingInvoiceStatus, nettingInvoicePaymentStatus, rounding, dtsSelectorId, dtsSelectorCodeName, invUid, custPOBox, docsDeliveryStatus, selfBilling, customerType, domainName, syncStatus, syncStatusDt, syncMode, collectionLeadNumber, ownerId, ownerBpName, ownerBpBriefName.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values, representing the beginning and the end of the range.
  • Operator can be omitted and in that case it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
q string (query) General search criteria.

Available fields: custShortName, custName, invNumber, invDate, invoicingDate, invoicingDatePolicy, invDueDate, invTypeName, invPeriod, isputeStatus, ownerId, ownerBpName, ownerBpBriefName.

sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.

Sorting available fields: custName, custShortName, invNumber, invDate, invDueDate, overDueDate, total, totalUnpaid, totalPaid, invType, invTypeName, invPeriod, invPeriodStart, invPeriodEnd, invoicingDate, invoicingDatePolicy, classCodeName, currency, id, disputeStatus, statusDt, dataSourceCodeName, custID, processingStatus, collectionLeadId, collectionMode, vat, amountNoVat, amountVat, domainCodeName, custCountry, nettingInvoiceStatus, nettingInvoicePaymentStatus, rounding, dtsSelectorId, dtsSelectorCodeName, invUid, custPOBox, docsDeliveryStatus, selfBilling, customerType, domainName, syncStatus, syncStatusDt, syncMode, collectionLeadNumber, ownerId, ownerBpName, ownerBpBriefName.

Responses
Code Description Links
200 A list of invoices. No links
default Unexpected Error. No links
Success Response 200: List of invoices
{
  "data": [
    {
      "id": 0,
      "invUid": "string",
      "instanceID": 0,
      "custID": 0,
      "custName": "string",
      "custShortName": "string",
      "custAttn": "string",
      "custAddress": "string",
      "custAddress2": "string",
      "custPost": "string",
      "custCity": "string",
      "custCountry": 0,
      "custPOBox": "string",
      "customerType": "string",
      "custVatNumber": "string",
      "invType": 0,
      "invTypeName": "string",
      "templateID": 0,
      "invDate": "2021-03-11",
      "invoicingDate": "2021-03-11",
      "invoicingDatePolicy": "delivery",
      "invNumberFix": "string",
      "invNumberNum": 0,
      "invNumber": "string",
      "invPeriod": "string",
      "invDueDate": "2021-03-11",
      "overDueDate": 0,
      "ownerVatNumber": "string",
      "currency": 0,
      "currencyCode": "string",
      "amountNoVat": 0,
      "amountVat": 0,
      "vatPercent": 0,
      "vat": 0,
      "rounding": 0,
      "total": 0,
      "totalUnpaid": 0,
      "totalPaid": 0,
      "vatInPrice": 0,
      "vatInTotal": 0,
      "status": "draft",
      "insertDt": "2021-03-11T08:24:24.459Z",
      "statusDt": "2021-03-11T08:24:24.459Z",
      "deliveryDate": "2021-03-11",
      "invPeriodStart": "2021-03-11",
      "invPeriodEnd": "2021-03-11",
      "docsDeliveryStatus": "string",
      "docsDeliveryStatusDate": "2021-03-11T08:24:24.459Z",
      "docsDeliveryDlrStatus": "string",
      "docsDeliveryDlrStatusDate": "2021-03-11T08:24:24.459Z",
      "classCodeName": "string",
      "classDomain": "string",
      "classArea": "string",
      "lang": "string",
      "paymentStatus": "none",
      "paymentStatusDate": "2021-03-11T08:24:24.459Z",
      "disputeStatus": "string",
      "disputeStatusDate": "2021-03-11T08:24:24.459Z",
      "dataSourceId": 0,
      "dataSourceCodeName": "string",
      "nettingInvoiceId": 0,
      "nettingInvoiceNumber": "string",
      "selfBilling": "yes",
      "domainId": 0,
      "domainCodeName": "string",
      "domainName": "string",
      "disputeNextId": 0,
      "collectionMode": "none",
      "collectionLeadId": 0,
      "collectionLeadNumber": "string",
      "collectionLeadNettingInvoiceId": 0,
      "collectionLeadNettingInvoiceNumber": "string",
      "collectionLeadNettingInvoiceStatus": "string",
      "collectionLeadNettingInvoicePaymentStatus": "string",
      "collectionLeadNettingInvoiceTotal": "string",
      "collectionLeadNettingInvoiceTotalPaid": "string",
      "collectionLeadNettingInvoiceTotalUnpaid": "string",
      "processingStatus": "none",
      "comment": "string",
      "nettingInvoiceStatus": "draft",
      "nettingPaymentStatus": "none",
      "nettingTotal": 0,
      "nettingTotalUnpaid": 0,
      "nettingTotalPaid": 0,
      "dtsSelectorId": 0,
      "dtsSelectorCodeName": "string",
      "sitInvoiceEmailImportId": 0,
      "billingTypeName": "string",
      "smsCount": 0,
      "syncStatus": "none",
      "syncStatusDt": "2021-03-11T08:24:24.460Z",
      "syncMode": "disabled",
      "reminderStatus": "enabled",
      "domesticCurrency": 0,
      "domesticCurrencyCode": "string",
      "domesticCurrencyAmountNoVAT": 0,
      "domesticCurrencyAmountVAT": 0,
      "domesticCurrencyTotal": 0,
      "domesticCurrencyRounding": 0,
      "domesticCurrencyRate": 0,
      "industryName": "string",
      "ownerName": "string",
      "ownerId": 0,
      "ownerBpName": "string",
      "ownerBpBriefName": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}

3.2 Clearing

Endpoints to work with invoice clearing records.

GET/invoices/{invoiceid}/clearingrecords
Returns a list of all invoice ClearingRecords for a given invoiceId.Up
Method Overview

The method returns a list of all invoice clearing records for a given invoice ID.

Returned InvoiceClearingRecords belong to InvoiceClearing.
InvoiceClearing is created when an Invoice status is changed to 'approved' and payment status is set to 'open'.
By default, only clearing records with 'active' status will be returned.

Authorization privilege needed for this endpoint: finance-invoices.view.
Optional: the privilege used in this endpoint: finance-invoices-own.view.

This endpoint accepts query parameters for filtering described on URL Filtering Guidelines page.

If clearing records with other statuses should be returned, it should be used query parameter status with operator in and value containing a comma separated list of statuses (in(status)=active,canceled). For the time being, only 'active' and 'canceled' status are available as clearing record status values.

URL Parameters
Name Type Description
invoiceid (required) integer (path) An invoice ID to get ClearingRecords.
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: custName, custShortName, invNumber, invDate, invDueDate, overDueDate, total, totalUnpaid, totalPaid, invType, invTypeName, invPeriod, invPeriodStart, invPeriodEnd, invoicingDate, invoicingDatePolicy, classCodeName, currency, id, disputeStatus, statusDt, dataSourceCodeName, custID, processingStatus, collectionLeadId, collectionMode, vat, amountNoVat, amountVat, domainCodeName, custCountry, nettingInvoiceStatus, nettingInvoicePaymentStatus, rounding, dtsSelectorId, dtsSelectorCodeName, invUid, custPOBox, docsDeliveryStatus, selfBilling, customerType, domainName, syncStatus, syncStatusDt, syncMode, collectionLeadNumber, ownerId, ownerBpName, ownerBpBriefName.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values representing the beginning and the end of a range.
  • Operator can be omitted and in that case it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
q string (query) General search criteria.

Available fields: status, paymentReference, comment, revokeUserId, revokeUserName, revokeComment, clearingTypeCodeName, paymentTypeName, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic.

sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.

Sorting available fields: id, clearingId, clearingTypeId, clearingTypeCodeName, recordDate, paymentTypeId, paymentTypeName, amountIncrement, paidAmount, paymentReference, comment, status, statusDate, bankAccountId, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic, revokeUserId, revokeUserName, revokeComment.

Responses
Code Description Links
200 A list of InvoiceClearingRecords. No links
default Unexpected Error. No links
Success Response 200: List of InvoiceClearingRecords
{
  "data": [
    {
      "id": 0,
      "clearingId": 0,
      "clearingTypeId": 0,
      "clearingTypeCodeName": "string",
      "recordDate": "2021-03-11",
      "paymentTypeId": 0,
      "paymentTypeName": "string",
      "amountIncrement": 0,
      "paidAmount": 0,
      "paymentReference": "string",
      "comment": "string",
      "status": "string",
      "statusDate": "2021-03-11T10:35:26.862Z",
      "revokeUserId": "string",
      "revokeUserName": "string",
      "revokeComment": "string",
      "bankAccountId": 0,
      "bankAccountName": "string",
      "bankAccountNumber": "string",
      "bankAccountIban": "string",
      "bankAccountSwiftBic": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
POST/invoices/{invoiceid}/clearingrecords
Adds an invoice ClearingRecord for a given InvoiceId.Up
Method Overview

The method adds an invoice clearing record for a given invoice ID.

Authorization privilege needed for this endpoint:
- finance-invoices.manage or
- finance-cust-invoices.manage or
- finance-supplier-invoices.manage or
- finance-netting-invoices.manage.

InvoiceClearing is created when an invoice status is changed to 'approved' and payment status is set to 'open'.
Approved supplier invoices with payment status 'on-hold', do not have clearing created. Clearing record for supplier invoice is created when a supplier invoice is approved for payment.
Invoice clearing record can not be added if an invoice does not have clearing created.
When totalUnpaid is 0, invoice.paymentStatus is set to 'closed'.

clearingType type can be:
1 - Invoice = amount increment, is auto-generated when an invoice status is changed to 'approved',
2 - Payment = paidAmount - must be <> 0,
3 - Interest = amount increment - must be <> 0,
4 - Reminder = amount increment - must be <> 0.

paymentType type can be:
1 - Bank Transfer,
2 - Credit Card,
3 - PayPal,
4 - Cash.

If paymentType is '1 - Bank Transfer', bankAccountId greater than 0 must be sent, in other cases it should not be sent or can be 0.

status is set to 'active'.
comment is set to name of clearingType if omitted.
recordDate must be in format 2006-01-02.

If the clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, the payment will be automatically applied to billing balance.

Data Parameters
{
  "clearingTypeId": 0,
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "bankAccountId": 0
}
URL Parameters
Name Type Description
invoiceID (required) string (path) An invoice ID to get ClearingRecords.
post data&nbsp(required) object&nbsp(body) If it is used, the status must be in (active,deleted). The recordDate must be in format YYYY-MM-DD.
Responses
Code Description Links
200 InvoiceClearingRecord added. No links
default Unexpected Error. No links
Success Response 200: InvoiceClearingRecord added
{
  "id": 0,
  "clearingId": 0,
  "clearingTypeId": 0,
  "clearingTypeCodeName": "string",
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "paymentTypeName": "string",
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "status": "string",
  "statusDate": "2021-03-11T10:11:27.765Z",
  "revokeUserId": "string",
  "revokeUserName": "string",
  "revokeComment": "string",
  "bankAccountId": 0,
  "bankAccountName": "string",
  "bankAccountNumber": "string",
  "bankAccountIban": "string",
  "bankAccountSwiftBic": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
GET/invoices-by-number/{invoiceNumber}/clearingrecords
Returns a list of all invoice ClearingRecords for a given invoiceNumber.Up
Method Overview

The method returns a list of all invoice clearing records for a given invoice number.

Authorization privilege needed for this endpoint: finance-invoices.view.
Optional privilege used in this endpoint: finance-invoices-own.view.

Returned InvoiceClearingRecords belong to InvoiceClearing.
InvoiceClearing is created when an Invoice status is changed to 'approved' and payment status is set to 'open'.
By default, only clearing records with active status will be returned.

This endpoint accepts query parameters for filtering described on URL Filtering Guidelines page.

If clearing records with other statuses should be returned, it should be used query parameter status with operator in and value containing a comma separated list of statuses (in(status)=active,canceled). For the time being, only 'active' and 'canceled' status are available as clearing record status values.

URL Parameters
Name Type Description
invoiceNumber (required) string (path) An invoice number to get ClearingRecords.
If the invoice number contains slashes, it must be encoded.
Example: For invoiceNumber = 00033/E/2021 value 00033%2FE%2F2021 should be in URL as invoiceNumber parameter (/ = %2F).
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: id, clearingId, clearingTypeId, clearingTypeCodeName, recordDate, paymentTypeId, paymentTypeName, amountIncrement, paidAmount, paymentReference, comment, status, statusDate, bankAccountId, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic, revokeUserId, revokeUserName, revokeComment.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values representing the beginning and the end of a range.
  • Operator can be omitted and in that case, it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
q string (query) General search criteria.

Available fields: status, paymentReference, comment, revokeUserId, revokeUserName, revokeComment, clearingTypeCodeName, paymentTypeName, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic.

sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.

Sorting available fields: id, clearingId, clearingTypeId, clearingTypeCodeName, recordDate, paymentTypeId, paymentTypeName, amountIncrement, paidAmount, paymentReference, comment, status, statusDate, bankAccountId, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic, revokeUserId, revokeUserName, revokeComment.

Responses
Code Description Links
200 A list of InvoiceClearingRecords. No links
default Unexpected Error. No links
Success Response 200: List of InvoiceClearingRecords
{
  "data": [
    {
      "id": 0,
      "clearingId": 0,
      "clearingTypeId": 0,
      "clearingTypeCodeName": "string",
      "recordDate": "2021-03-11",
      "paymentTypeId": 0,
      "paymentTypeName": "string",
      "amountIncrement": 0,
      "paidAmount": 0,
      "paymentReference": "string",
      "comment": "string",
      "status": "string",
      "statusDate": "2021-03-11T10:50:05.688Z",
      "revokeUserId": "string",
      "revokeUserName": "string",
      "revokeComment": "string",
      "bankAccountId": 0,
      "bankAccountName": "string",
      "bankAccountNumber": "string",
      "bankAccountIban": "string",
      "bankAccountSwiftBic": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
POST/invoices-by-number/{invoiceNumber}/clearingrecords
Adds an invoice ClearingRecord for a given invoiceNumber.Up
Method Overview

The method adds an invoice clearing record for a given invoice number.

Authorization privilege needed for this endpoint:
- finance-invoices.manage or
- finance-cust-invoices.manage or
- finance-supplier-invoices.manage or
- finance-netting-invoices.manage.

InvoiceClearing is created when an Invoice status is changed to 'approved' and payment status is set to 'open'.
Approved supplier invoices with payment status 'on-hold', do not have clearing created. Clearing record for supplier invoice is created when a supplier invoice is approved for payment.
Invoice clearing record can not be added if an invoice does not have clearing created.
When totalUnpaid is 0, invoice.paymentStatus is set to 'closed'.

clearingType type can be:
1 - Invoice = amount increment, is auto-generated when an invoice status is changed to 'approved',
2 - Payment = paidAmount - must be <> 0,
3 - Interest = amount increment - must be <> 0,
4 - Reminder = amount increment - must be <> 0.

paymentType type can be:
1 - Bank Transfer,
2 - Credit Card,
3 - PayPal,
4 - Cash.

If paymentType is '1 - Bank Transfer', bankAccountId greater than 0 must be sent, in other cases it should not be sent or can be 0.

status is set to 'active'.
comment is set to name of clearingType if omitted.
recordDate must be in format 2006-01-02.

If the clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, the payment will be automatically applied to billing balance.

Data Parameters
{
  "clearingTypeId": 0,
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "bankAccountId": 0
}
URL Parameters
Name Type Description
invoiceNumber (required) string (path) An invoice number to get ClearingRecords.
If the invoice number contains slashes, it must be encoded.
Example: For invoiceNumber = 00033/E/2021 value 00033%2FE%2F2021 should be in URL as invoiceNumber parameter (/ = %2F).
post data (required) object (body) The recordDate must be in format YYYY-MM-DD.
Responses
Code Description Links
200 InvoiceClearingRecord added. No links
default Unexpected Error. No links
Success Response 200: InvoiceClearingRecord added
{
  "id": 0,
  "clearingId": 0,
  "clearingTypeId": 0,
  "clearingTypeCodeName": "string",
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "paymentTypeName": "string",
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "status": "string",
  "statusDate": "2021-03-11T10:56:49.498Z",
  "revokeUserId": "string",
  "revokeUserName": "string",
  "revokeComment": "string",
  "bankAccountId": 0,
  "bankAccountName": "string",
  "bankAccountNumber": "string",
  "bankAccountIban": "string",
  "bankAccountSwiftBic": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
GET/invoices-by-uid/{invoiceUid}/clearingrecords
Returns a list of invoice ClearingRecords for a given invoiceUid.Up
Method Overview

The method returns a list of invoice clearing records for a given invoice UID.

Authorization privilege needed for this endpoint: finance-invoices.view.
Optional privilege used in this endpoint: finance-invoices-own.view.

Returned InvoiceClearingRecords belong to InvoiceClearing.
InvoiceClearing is created when an Invoice status is changed to 'approved' and payment status is set to 'open'.
By default, only clearing records with active status will be returned.

This endpoint accepts query parameters for filtering described on URL Filtering Guidelines page.

If clearing records with other statuses should be returned, it should be used query parameter status with operator in and value containing a comma separated list of statuses (in(status)=active,canceled). For the time being, only 'active' and 'canceled' status are available as clearing record status values.

URL Parameters
Name Type Description
invoiceUid (required) string (path) An invoice UID to get ClearingRecords.
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: id, clearingId, clearingTypeId, clearingTypeCodeName, recordDate, paymentTypeId, paymentTypeName, amountIncrement, paidAmount, paymentReference, comment, status, statusDate, bankAccountId, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic, revokeUserId, revokeUserName, revokeComment.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values representing the beginning and the end of a range.
  • Operator can be omitted and in that case it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
q string (query) General search criteria.

Available fields: status, paymentReference, comment, revokeUserId, revokeUserName, revokeComment, clearingTypeCodeName, paymentTypeName, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic.

sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.

Sorting available fields: id, clearingId, clearingTypeId, clearingTypeCodeName, recordDate, paymentTypeId, paymentTypeName, amountIncrement, paidAmount, paymentReference, comment, status, statusDate, bankAccountId, bankAccountName, bankAccountNumber, bankAccountIban, bankAccountSwiftBic, revokeUserId, revokeUserName, revokeComment.

Responses
Code Description Links
200 A list of InvoiceClearingRecords. No links
default Unexpected Error. No links
Success Response 200: List of InvoiceClearingRecords
{
  "data": [
    {
      "id": 0,
      "clearingId": 0,
      "clearingTypeId": 0,
      "clearingTypeCodeName": "string",
      "recordDate": "2021-03-11",
      "paymentTypeId": 0,
      "paymentTypeName": "string",
      "amountIncrement": 0,
      "paidAmount": 0,
      "paymentReference": "string",
      "comment": "string",
      "status": "string",
      "statusDate": "2021-03-11T12:19:07.845Z",
      "revokeUserId": "string",
      "revokeUserName": "string",
      "revokeComment": "string",
      "bankAccountId": 0,
      "bankAccountName": "string",
      "bankAccountNumber": "string",
      "bankAccountIban": "string",
      "bankAccountSwiftBic": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
POST​/invoices-by-uid/{invoiceUid}/clearingrecords
Adds an invoice ClearingRecord for a given invoiceUid.Up
Method Overview

The method adds an invoice clearing record for a given invoice UID.

Authorization privilege needed for this endpoint:
- finance-invoices.manage or
- finance-cust-invoices.manage or
- finance-supplier-invoices.manage or
- finance-netting-invoices.manage.

InvoiceClearing is created when an Invoice status is changed to 'approved' and payment status is set to 'open'.
Approved supplier invoices with payment status 'on-hold', do not have clearing created. Clearing record for supplier invoice is created when a supplier invoice is approved for payment.
Invoice clearing record can not be added if an invoice does not have clearing created.
When totalUnpaid is 0, invoice.paymentStatus is set to 'closed'.

clearingType type can be:
1 - Invoice = amount increment, is auto-generated when an invoice status is changed to 'approved',
2 - Payment = paidAmount - must be <> 0,
3 - Interest = amount increment - must be <> 0,
4 - Reminder = amount increment - must be <> 0.

paymentType type can be:
1 - Bank Transfer,
2 - Credit Card,
3 - PayPal,
4 - Cash.

If paymentType is '1 - Bank Transfer', bankAccountId greater than 0 must be sent, in other cases it should not be sent or can be 0.

status is set to 'active'.
comment is set to name of clearingType if omitted.
recordDate must be in format 2006-01-02.

If the clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, the payment will be automatically applied to billing balance.

Data Parameters
{
  "clearingTypeId": 0,
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "bankAccountId": 0
}
URL Parameters
Name Type Description
invoiceUID (required) integer (path) An invoice UID to get ClearingRecords.
post data (required) object (body) If it is used, the status must be in (active,deleted). The recordDate must be in format YYYY-MM-DD.
Responses
Code Description Links
200 InvoiceClearingRecord added. No links
default Unexpected Error. No links
Success Response 200: InvoiceClearingRecord added
{
  "id": 0,
  "clearingId": 0,
  "clearingTypeId": 0,
  "clearingTypeCodeName": "string",
  "recordDate": "2021-03-11",
  "paymentTypeId": 0,
  "paymentTypeName": "string",
  "amountIncrement": 0,
  "paidAmount": 0,
  "paymentReference": "string",
  "comment": "string",
  "status": "string",
  "statusDate": "2021-03-11T12:26:30.255Z",
  "revokeUserId": "string",
  "revokeUserName": "string",
  "revokeComment": "string",
  "bankAccountId": 0,
  "bankAccountName": "string",
  "bankAccountNumber": "string",
  "bankAccountIban": "string",
  "bankAccountSwiftBic": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}

3.3 PaymentType

Endpoint to work with payment types.

GET​/payment-types
Returns a list of Payment TypesUp
Method Overview

The method returns a list of all available payment types.

Authorization privilege needed for this endpoint: finance-invoices.view.
Optional privilege used in this endpoint: finance-invoices-own.view.

This endpoint accepts query parameters for filtering described on URL Filtering Guidelines page.

URL Parameters
Name Type Description
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: id, name, status, statusDt.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values representing the beginning and the end of a range.
  • Operator can be omitted and in that case it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
q string (query) General search criteria.

Available fields: name, status.

sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.

Sorting available fields: id, name, status, statusDt.

Responses
Code Description Links
200 A list of Payment Types. No links
default Unexpected Error. No links
Success Response 200: List of Payment Types
{
  "data": [
    {
      "id": 0,
      "name": "string",
      "status": "active",
      "statusDt": "2021-03-11T12:29:43.054Z"
    }
  ],
  "meta": {
    "pagination": {}
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}

3.4 PlatformOwnerBankAccounts

Endpoints for working with data of platform owner bank accounts.

GET/platform-owner-bank-accounts
Returns a list of bank accounts of a platform owner or a co-owner.Up
Method Overview

The method returns a list of bank accounts of a platform owner or a co-owner.

Authorization privilege needed for this endpoint: biz-core.view.

This endpoint accepts query parameters for filtering described on URL Filtering Guidelines page.

When co-owners are enabled on the platform level, coOwnerId parameter should be sent. If coOwnerId is not sent, bank accounts for platform owner will be returned. If co-owners are disabled, coOwnerId should not be sent.

URL Parameters
Name Type Description
all string (query) Returns all data for a given criteria.
Available values: yes, no. The default value: no.
page_size integer (query) A page size. The default value: 10.
page_number integer (query) A page number. The default value: 1.
paging string (query) Paging options in form of &paging=page_num page_size e.g. paging=1,10.
sort string (query) Sorting options in form of sort=-attribute1,attribute2,-attribute3.
operator(fieldName) string (query) Search criteria by using the following operators: isnull, isnotnull, isempty, isnotempty, eq, neq, startswith, contains, endswith, doesnotcontain, lt, lte, gt, gte, in, notin, between, notbetween, and the following attributes: id, coOwnerId, bizPartnerId, bizPartnerName, bizPartnerBriefName, bizBankId, bizBankName, currency, currencyCode, currencyName, accountNumber, iban, isDefaultPerCurrency, status, name, swiftBic, accountType, countryName, ownerId, ownerBpName, ownerBpBriefName.

  • If the operator is one of isnull, isnotnull, isempty, isnotempty, the field value can be omitted.
  • If the operator is in or notin, the field value must be a comma separated list of values.
  • If the operator is between or notbetween, the field value must be a comma separated list of two values representing the beginning and the end of a range.
  • Operator can be omitted and in that case it will be treated as operator is eq (Example: fieldName=fieldValue).
  • Example: startswith(clientName)=hor, starts with hor in field 'clientName'.
  • If fieldName is 'q' and operator is eq or omitted, the field value will be used in general search across multiple attributes.
Responses
Code Description Links
200 A list of bank accounts. No links
default Unexpected Error. No links
Success Response 200: List of bank accounts
{
  "data": [
    {
      "id": 0,
      "bizPartnerId": 0,
      "bizPartnerName": "string",
      "bizPartnerBriefName": "string",
      "bizBankId": 0,
      "bizBankName": "string",
      "currency": 0,
      "currencyCode": "string",
      "currencyName": "string",
      "accountNumber": "string",
      "iban": "string",
      "isDefaultPerCurrency": "yes",
      "status": "active",
      "statusDt": "2021-03-11T12:56:00.268Z",
      "name": "string",
      "swiftBic": "string",
      "accountType": "account number",
      "countryName": "string",
      "ownerId": 0,
      "ownerBpName": "string",
      "ownerBpBriefName": "string"
    }
  ],
  "meta": {
    "pagination": {
      "total": 0,
      "count": 0,
      "perPage": 0,
      "currentPage": 0,
      "totalPages": 0
    }
  }
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
POST/platform-owner-bank-accounts
Creates a new bank account record.Up
Method Overview

The method creates a new bank account record.

Authorization privilege needed for this endpoint: biz-core.manage.

URL Parameters
Name Type Description
post data (required) object (body) Post data object example.

Post data object example:

{
  "name": "string",
  "bizBankId": 0,
  "currency": 0,
  "accountNumber": "string",
  "iban": "string",
  "isDefaultPerCurrency": "yes",
  "swiftBic": "string",
  "accountType": "account number",
  "coOwnerId": 0
}
Responses
Code Description Links
200 A bank account record created. No links
default Unexpected Error. No links
Success Response 200: Bank account record created
{
  "id": 0,
  "bizPartnerId": 0,
  "bizPartnerName": "string",
  "bizPartnerBriefName": "string",
  "bizBankId": 0,
  "bizBankName": "string",
  "currency": 0,
  "currencyCode": "string",
  "currencyName": "string",
  "accountNumber": "string",
  "iban": "string",
  "isDefaultPerCurrency": "yes",
  "status": "active",
  "statusDt": "2021-12-14T14:17:31.795Z",
  "name": "string",
  "swiftBic": "string",
  "accountType": "account number",
  "countryName": "string",
  "ownerId": 0,
  "ownerBpName": "string",
  "ownerBpBriefName": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
GET/platform-owner-bank-accounts/{id}
Returns a bank account for a given ID.Up
Method Overview

The method returns a bank account for a given ID.

Authorization privilege needed for this endpoint: biz-core.view.

URL Parameters
Name Type Description
id (required) integer (path) A bank account ID.
Responses
Code Description Links
200 A bank account data are returned. No links
default Unexpected Error. No links
Success Response 200: Bank account data
{
  "id": 0,
  "bizPartnerId": 0,
  "bizPartnerName": "string",
  "bizPartnerBriefName": "string",
  "bizBankId": 0,
  "bizBankName": "string",
  "currency": 0,
  "currencyCode": "string",
  "currencyName": "string",
  "accountNumber": "string",
  "iban": "string",
  "isDefaultPerCurrency": "yes",
  "status": "active",
  "statusDt": "2021-12-14T14:31:23.497Z",
  "name": "string",
  "swiftBic": "string",
  "accountType": "account number",
  "countryName": "string",
  "ownerId": 0,
  "ownerBpName": "string",
  "ownerBpBriefName": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
PUT/platform-owner-bank-accounts/{id}
Updates a bank account data for a given ID.Up
Method Overview

The method updates a bank account data for a given ID.

Authorization privilege needed for this endpoint: biz-core.manage.

URL Parameters
Name Type Description
id (required) integer (path) A bank account ID.
put data (required) object (body) Put data object example

Put data object example:

{
  "name": "string",
  "bizBankId": 0,
  "currency": 0,
  "accountNumber": "string",
  "iban": "string",
  "isDefaultPerCurrency": "yes",
  "swiftBic": "string",
  "accountType": "account number"
}
Responses
Code Description Links
200 A bank account updated successfully. No links
default Unexpected Error. No links
Success Response 200: Bank account updated successfully
{
  "id": 0,
  "bizPartnerId": 0,
  "bizPartnerName": "string",
  "bizPartnerBriefName": "string",
  "bizBankId": 0,
  "bizBankName": "string",
  "currency": 0,
  "currencyCode": "string",
  "currencyName": "string",
  "accountNumber": "string",
  "iban": "string",
  "isDefaultPerCurrency": "yes",
  "status": "active",
  "statusDt": "2021-12-14T14:36:14.664Z",
  "name": "string",
  "swiftBic": "string",
  "accountType": "account number",
  "countryName": "string",
  "ownerId": 0,
  "ownerBpName": "string",
  "ownerBpBriefName": "string"
}
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}
DELETE/platform-owner-bank-accounts{id}
Deletes a bank account data for a given ID.Up
Method Overview

The method deletes a bank account record for a given ID.

Authorization privilege needed for this endpoint: biz-core.manage.

URL Parameters
Name Type Description
id (required) integer (path) A bank account ID.
Responses
Code Description Links
200 A bank account deleted successfully. No links
default Unexpected Error. No links
Success Response 200: Bank account deleted successfully
Error Response Unexpected Error: Default
{
  "Code": 0,
  "Message": "string"
}

4. Data Models

Data Models define the structure of a JSON document.

4.1 Data

Data describe all the data related to the Finance Clearing API.

InvoiceCollection object properties:

Name Type Description
data (required) array An array of Invoice objects.
meta (required) object CollectionMeta object.

Invoice object properties:

Name Type Description
id integer Invoice ID.
invUid string Invoice UID.
instanceID integer Instance ID.
custID integer Customer ID.
custName string Customer name.
custShortName string Customer short name.
custAttn string Customer Attn. data.
custAddress string Customer address.
custAddress2 string Customer address2.
custPost string Customer address postcode.
custCity string Customer address city.
custCountry integer Customer address country.
custPOBox string Customer address PO Box.
customerType string Customer type.
custVatNumber string Customer VAT number.
invType integer Invoice type.
invTypeName string Invoice type name.
templateID integer Template ID.
invDate string($date) Invoice date.
invoicingDate string($date) Invoicing date.
invoicingDatePolicy string Possible values: delivery, creation, approval.
invNumberFix string The fixed part of the invoice number, based on this field system will define next invoice number.
invNumberNum integer The invoice number (variable part) - it counts invoices for the same invNumberFix.
invNumber string Invoice number.
invPeriod string Invoice period.
invDueDate string($date) Invoice due date.
overDueDate integer Number of days over due date.
ownerVatNumber string Owner VAT number.
currency integer Currency.
currencyCode string Currency code.
amountNoVat number($float) Invoice amount without VAT (net amount). It can be negative when selfBilling is 'yes'.
amountVat number($float) Invoice amount including VAT. It can be negative when selfBilling is 'yes'.
vatPercent number($float) VAT percent.
vat number($float) Value added tax.
rounding number($float) Difference between an invoice total and amount including VAT value.
total number($float) Invoice gross amount. It can be negative when selfBilling is 'yes'.
totalUnpaid number($float) Invoice unpaid amount.
totalPaid number($float) Invoice paid amount.
vatInPrice integer VAT in price.
vatInTotal integer VAT in total.
status string Invoice status. Possible values: draft, approved, rejected, deleted, misc, canceled, archived, imported.
insertDt string($date-time) Date and time of insertion.
statusDt string($date-time) Date and time of status.
deliveryDate string($date) Delivery date.
invPeriodStart string($date) Start of invoice period.
invPeriodEnd string($date) End of invoice period.
docsDeliveryStatus string Document delivery status.
docsDeliveryStatusDate string($date-time) Document delivery status date and time.
docsDeliveryDlrStatus string Status of DLR.
docsDeliveryDlrStatusDate string($date-time) DLR status date and time.
classCodeName string Class code name.
classDomain string Class domain.
classArea string Class area.
lang string Language.
paymentStatus string Possible values: none, open, on-hold, closed.
paymentStatusDate string($date-time) Payment status date and time.
disputeStatus string DisputeStatus indicates whether the invoice is in dispute process or not.
disputeStatusDate string($date-time) Dispute status date and time.
dataSourceId integer Data source ID.
dataSourceCodeName string Data source code name.
nettingInvoiceId integer Netting statement ID.
nettingInvoiceNumber string Netting statement number.
selfBilling string Indicator if an invoice is a credit note or not. If value is yes', when the document is in netting statement, it indicates that the document is in favor of a buyer, but issued by the seller. Also, if the document class is CREDIT_DEBIT_NOTE, it indicates that the document is a credit note, which is also in favor of buyer, but issued by the seller. Possible values: yes, no.
domainId integer Domain ID.
domainCodeName string Domain code name.
domainName string Domain name.
disputeNextId integer Dispute ID.
collectionMode string Document collection mode. If member, the document is member of a collection. If lead, the document is a collection lead. By default collection mode is none, which indicates that the document is not a member of a collection nor collection lead. Possible values: none, member, lead.
collectionLeadId integer If document is a member of collection, this value contains id of collection lead document.
collectionLeadNumber string If document is a member of collection, this value contains number of collection lead document.
collectionLeadNettingInvoiceId integer Netting statement ID of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoiceNumber string Netting statement number of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoiceStatus string Netting statement status of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoicePaymentStatus string Netting statement payment status of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoiceTotal string Netting statement total amount of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoiceTotalPaid string Netting statement total paid amount of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
collectionLeadNettingInvoiceTotalUnpaid string Netting statement total unpaid amount of collection lead. Returned when collection lead to whom current invoice belongs to, is a netting statement's member.
processingStatus string Indicates processing status of document if document has been assigned recalculation task(s) or some other kind of processing tasks. Possible values: none, scheduled, running, done, canceled.
comment string Description or comment in case invoice is a credit or debit note. Comment is not available when the invoice list is returned as a result of request, regardless of invoice class code name.
nettingInvoiceStatus string If invoice netting statement's member, this property contains netting statement status. Possible values: draft, approved, rejected, deleted, misc, canceled, archived.
nettingPaymentStatus string If invoice is netting statement's member, this property is netting's payment status. Possible values: none, open, closed.
nettingTotal number($float) If invoice is netting statement's member, this property is netting's gross amount. It can be negative when selfBilling is 'yes'.
nettingTotalUnpaid number($float) If invoice is netting statement's member this property is netting's unpaid amount.
nettingTotalPaid number($float) If invoice is netting statement's member this property is netting's paid amount.
dtsSelectorId integer ID reference to DTS selector, e.g. for part-payment invoice.
dtsSelectorCodeName string DTS selector code name.
sitInvoiceEmailImportId integer ID of an invoice email import.
billingBalance object BillingBalance object.
billingTypeName string Required and returned for control invoice.
smsCount integer Amount of messages. Required and returned for postpaid and control invoices.
syncStatus string SyncStatus is an invoice synchronization status. Possible values: none, waiting, syncing, done, error, misc, exported.
syncStatusDt string($date‑time) Synchronization status date and time.
syncMode string Synchronisation mode. Possible values: disabled, primary, secondary.
reminderStatus string Reminder status. Possible values: enabled, disabled, open, closed, misc.
domesticCurrency integer Domestic currency.
domesticCurrencyCode string Domestic currency code.
domesticCurrencyAmountNoVAT number($float) Invoice amount in domestic currency without VAT.
domesticCurrencyAmountVAT number($float) Invoice amount in domestic currency with VAT.
domesticCurrencyTotal number($float) Invoice total amount in domestic currency.
domesticCurrencyRounding number($float) Invoice rounding, difference between domestic currency total and domestic currency amount with VAT.
domesticCurrencyRate number($float) Domestic currency rate is used to calculate domestic currency amounts.
industryName string Industry name.
ownerName string Owner name.
ownerId integer Owner ID.
ownerBpName string Owner business partner name.
ownerBpBriefName string Owner business partner brief name.

BillingBalance object properties:

BillingBalance is Invoice Condition which an invoice is associated to.

Name Type Description
id integer The ID is the unique key for the Invoice Condition.
name string The Invoice Condition name.
resourceUrl string Billing API URL that should be used to load billing balance resource.
JSON example
{
  "data": [
    {
      "id": 0,
      "invUid": "string",
      "instanceID": 0,
      "custID": 0,
      "custName": "string",
      "custShortName": "string",
      "custAttn": "string",
      "custAddress": "string",
      "custAddress2": "string",
      "custPost": "string",
      "custCity": "string",
      "custCountry": 0,
      "custPOBox": "string",
      "customerType": "string",
      "custVatNumber": "string",
      "invType": 0,
      "invTypeName": "string",
      "templateID": 0,
      "invDate": "2021-03-11",
      "invoicingDate": "2021-03-11",
      "invoicingDatePolicy": "delivery",
      "invNumberFix": "string",
      "invNumberNum": 0,
      "invNumber": "string",
      "invPeriod": "string",
      "invDueDate": "2021-03-11",
      "overDueDate": 0,
      "ownerVatNumber": "string",
      "currency": 0,
      "currencyCode": "string",
      "amountNoVat": 0,
      "amountVat": 0,
      "vatPercent": 0,
      "vat": 0,
      "rounding": 0,
      "total": 0,
      "totalUnpaid": 0,
      "totalPaid": 0,
      "vatInPrice": 0,
      "vatInTotal": 0,
      "status": "draft",
      "insertDt": "2021-03-11T08:24:24.459Z",
      "statusDt": "2021-03-11T08:24:24.459Z",
      "deliveryDate": "2021-03-11",
      "invPeriodStart": "2021-03-11",
      "invPeriodEnd": "2021-03-11",
      "docsDeliveryStatus": "string",
      "docsDeliveryStatusDate": "2021-03-11T08:24:24.459Z",
      "docsDeliveryDlrStatus": "string",
      "docsDeliveryDlrStatusDate": "2021-03-11T08:24:24.459Z",
      "classCodeName": "string",
      "classDomain": "string",
      "classArea": "string",
      "lang": "string",
      "paymentStatus": "none",
      "paymentStatusDate": "2021-03-11T08:24:24.459Z",
      "disputeStatus": "string",
      "disputeStatusDate": "2021-03-11T08:24:24.459Z",
      "dataSourceId": 0,
      "dataSourceCodeName": "string",
      "nettingInvoiceId": 0,
      "nettingInvoiceNumber": "string",
      "selfBilling": "yes",
      "domainId": 0,
      "domainCodeName": "string",
      "domainName": "string",
      "disputeNextId": 0,
      "collectionMode": "none",
      "collectionLeadId": 0,
      "collectionLeadNumber": "string",
      "collectionLeadNettingInvoiceId": 0,
      "collectionLeadNettingInvoiceNumber": "string",
      "collectionLeadNettingInvoiceStatus": "string",
      "collectionLeadNettingInvoicePaymentStatus": "string",
      "collectionLeadNettingInvoiceTotal": "string",
      "collectionLeadNettingInvoiceTotalPaid": "string",
      "collectionLeadNettingInvoiceTotalUnpaid": "string",
      "processingStatus": "none",
      "comment": "string",
      "nettingInvoiceStatus": "draft",
      "nettingPaymentStatus": "none",
      "nettingTotal": 0,
      "nettingTotalUnpaid": 0,
      "nettingTotalPaid": 0,
      "dtsSelectorId": 0,
      "dtsSelectorCodeName": "string",
      "sitInvoiceEmailImportId": 0,
      "billingTypeName": "string",
      "smsCount": 0,
      "syncStatus": "none",
      "syncStatusDt": "2021-03-11T08:24:24.460Z",
      "syncMode": "disabled",
      "reminderStatus": "enabled",
      "domesticCurrency": 0,
      "domesticCurrencyCode": "string",
      "domesticCurrencyAmountNoVAT": 0,
      "domesticCurrencyAmountVAT": 0,
      "domesticCurrencyTotal": 0,
      "domesticCurrencyRounding": 0,
      "domesticCurrencyRate": 0,
      "industryName": "string",
      "ownerName": "string",
      "ownerId": 0,
      "ownerBpName": "string",
      "ownerBpBriefName": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}

InvoiceClearingRecordCollection object properties:

Name Type Description
data (required) array An array of InvoiceClearingRecord objects.
meta (required) object CollectionMeta object.

InvoiceClearingRecord object properties:

Name Type Description
id integer Invoice ID.
clearingId integer Clearing ID.
clearingTypeId integer Clearing type ID.
clearingTypeCodeName string Clearing type code name.
recordDate string($date) Clearing record date.
paymentTypeId integer Payment type ID.
paymentTypeName string Payment type name.
amountIncrement number($float) Amount increment.
paidAmount number($float) Paid amount.
paymentReference string Payment reference.
comment string Comment.
status string Clearing record status.
statusDate string($date‑time) Status date.
revokeUserId string Revoke user ID.
revokeUserName string Revoke username.
revokeComment string Comment on revocation.
bankAccountId integer Reference to bank account which money was received or paid to.
bankAccountName string Bank account name.
bankAccountNumber string Bank account number.
bankAccountIban string Bank account IBAN.
bankAccountSwiftBic string Bank account SWIFT/BIC code.

InvoiceClearingRecordPost object properties:

Name Type Description
clearingTypeId integer Clearing type ID.
recordDate string($date) Clearing record date.
paymentTypeId integer Payment type ID.
amountIncrement number($float) Amount increment.
paidAmount number($float) Paid amount.
paymentReference string Payment reference.
comment string Comment.
bankAccountId integer Reference to bank account which money was received or paid to.

InvoiceClearingRecordUpdate object properties:

Name Type Description
clearingTypeId integer Clearing type ID.
recordDate string($date) Clearing record date.
paymentTypeId integer Payment type ID.
amountIncrement number($float) Amount increment.
paidAmount number($float) Paid amount.
paymentReference string Payment reference.
comment string Comment.
revokeUserId string Revoke user ID.
revokeUserName string Revoke username.
revokeComment string Comment on revocation.
bankAccountId integer Reference to bank account which money was received or paid to.
JSON Example
{
  "data": [
    {
      "id": 0,
      "clearingId": 0,
      "clearingTypeId": 0,
      "clearingTypeCodeName": "string",
      "recordDate": "2021-03-11",
      "paymentTypeId": 0,
      "paymentTypeName": "string",
      "amountIncrement": 0,
      "paidAmount": 0,
      "paymentReference": "string",
      "comment": "string",
      "status": "string",
      "statusDate": "2021-03-11T12:19:07.845Z",
      "revokeUserId": "string",
      "revokeUserName": "string",
      "revokeComment": "string",
      "bankAccountId": 0,
      "bankAccountName": "string",
      "bankAccountNumber": "string",
      "bankAccountIban": "string",
      "bankAccountSwiftBic": "string"
    }
  ],
  "meta": {
    "pagination": {}
  }
}

PaymentTypeCollection object properties:

Name Type Description
data (required) array An array of PaymentType objects.
meta (required) object CollectionMeta object.

PaymentType object properties:

Name Type Description
id integer Payment type ID.
name string Payment type name.
status string Payment status. Possible values: active, inactive.
statusDt string($date‑time) Date and time of payment status.
JSON example
{
  "data": [
    {
      "id": 0,
      "name": "string",
      "status": "active",
      "statusDt": "2021-03-11T12:29:43.054Z"
    }
  ],
  "meta": {
    "pagination": {}
  }
}

BankAccountCollection object properties:

Name Type Description
data (required) array An array of BankAccount objects.
meta (required) object CollectionMeta object.

BankAccount object properties:

Name Type Description
id integer Bank account ID.
bizPartnerId integer Business partner ID. maxLength: 10.
bizPartnerName string Business partner name.
bizPartnerBriefName string Business partner brief name.
bizBankId integer Bank ID. maxLength: 10.
bizBankName string Bank name.
currency integer Currency. maxLength: 5.
currencyCode string Currency code.
currencyName string Currency name.
accountNumber string Account number. maxLength: 40.
iban string Account IBAN. maxLength: 50.
isDefaultPerCurrency string Determines if an account will be default for bizPartnerId and currency. Only one account can be default. Possible values: yes, no.
status string Bank account status.
statusDt string($date‑time) Bank account status date and time.
name string Bank account name.
swiftBic string Bank account SWIFT/BIC code. maxLength: 30.
accountType string Account type. Possible values: account number, iban.
countryName string Country name.
ownerId integer Owner ID.
ownerBpName string Owner business partner name.
ownerBpBriefName string Owner business partner brief name.
JSON example
{
  "data": [
    {
      "id": 0,
      "bizPartnerId": 0,
      "bizPartnerName": "string",
      "bizPartnerBriefName": "string",
      "bizBankId": 0,
      "bizBankName": "string",
      "currency": 0,
      "currencyCode": "string",
      "currencyName": "string",
      "accountNumber": "string",
      "iban": "string",
      "isDefaultPerCurrency": "yes",
      "status": "active",
      "statusDt": "2021-03-11T12:56:00.268Z",
      "name": "string",
      "swiftBic": "string",
      "accountType": "account number",
      "countryName": "string",
      "ownerId": 0,
      "ownerBpName": "string",
      "ownerBpBriefName": "string"
    }
  ],
  "meta": {
    "pagination": {
      "total": 0,
      "count": 0,
      "perPage": 0,
      "currentPage": 0,
      "totalPages": 0
    }
  }
}

Error object properties:

Name Type Description
code (required) integer($int32) Error code.
message (required) string Error message.
JSON Example
{
  "Code": 0,
  "Message": "string"
}

4.2 Meta

Meta contains data for the number of rows and pages that have been received for a given API call.

CollectionMeta object properties:

Name Type Description
pagination (required) object CollectionMetaPagination object.

CollectionMetaPagination object properties:

Name Type Description
total (required) integer Total number of rows.
count (required) integer A number of rows in the current page.
perPage (required) integer The maximum rows per page.
currentPage (required) integer The current page number.
totalPages (required) integer Total number of pages.
links (required) object CollectionMetaPaginationLinks object.

CollectionMetaPaginationLinks object properties:

Name Type Description
first string Link to the first page.
last string Link to the last page.
prev string Link to the previous page.
next string Link to the next page.
JSON example
"meta": {
    "pagination": {
      "total": 0,
      "count": 0,
      "perPage": 0,
      "currentPage": 0,
      "totalPages": 0,
      "links": {
        "first": "string",
        "last": "string",
        "prev": "string",
        "next": "string"
      }
    }
  }