Finance Clearing API
1. Introduction
The HORISEN Finance Clearing API is used by HORISEN applications in financial transactions to facilitate the clearing process. Clearing is the process of reconciling and confirming details of a financial transaction between the parties involved. The API can be used to verify the details of a financial transaction, or to process payments, ensuring that transactions are properly recorded and matched between different systems.
The API 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
The API endpoints described in the following sections: Invoice, Clearing and Payment Type, can be used to retrieve a list of payable invoices with details, to perform clearing operations on invoices, e.g. updating an invoice status, and retrieving a list of supported payment types that can be used to pay invoices.
The API endpoints belong to the Finance domain. The subject domain of an endpoint URL is:
https://api{separator}{platform_domain}/finance/sit/v1
Note: A domain is presented with placeholders as https://api{separator}{platform_domain}
, where {separator}
can be a dot (.) or a hyphen (-). Please, replace it with your actual platform domain name.
2.1 Invoices
This endpoint allows retrieving a list of payable invoices, which are invoices that have not been paid yet.
2.2 Invoice Clearing
These endpoints allow performing operations with invoices clearing records.
2.3 Payment Type
This endpoint allows retrieving a list of payment types that can be used to pay invoices.
2.4 Platform Owner Bank Accounts
The endpoints described within this section, provide functionality to manage Platform Owner Bank Accounts, allowing to create, retrieve, update or delete bank accounts data.
The following API endpoints belong to the Settings domain. The subject domain of an endpoint URL is:
https://api{separator}{platform_domain}/settings/v1
Note: A domain is presented with placeholders as https://api{separator}{platform_domain}
, where {separator}
can be a dot (.) or a hyphen (-). Please, replace it with your actual platform domain name.
3. Methods Details
The API endpoints described in the following sections: Invoice, Clearing and Payment Type, can be used to retrieve a list of payable invoices with details, to perform clearing operations on invoices, e.g. updating an invoice status, and retrieving a list of supported payment types that can be used to pay invoices.
The API endpoints belong to the Finance domain. The subject domain of an endpoint URL is:
https://api{separator}{platform_domain}/finance/sit/v1
Note: A domain is presented with placeholders as https://api{separator}{platform_domain}
, where {separator}
can be a dot (.) or a hyphen (-). Please, replace it with your actual platform domain name.
3.1 Invoices
This endpoint allows retrieving a list of payable invoices, which are invoices that have not been paid yet.
Method Overview
The method returns a list of payable invoices.
Payable invoices are invoices whose status is 'approved' and whose payment status is 'open'.
Authorization privilege needed for this endpoint: finance-invoices.view.
Optional: privilege used in this endpoint is finance-invoices-own.view.
This endpoint accepts query parameters for filtering payable invoices. For more information, refer to URL Filtering Guidelines page.
Parameters
Name | Type | Description |
---|---|---|
page_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
q | string (query) | General search criteria. Available fields: custShortName, custName, invNumber, invDate, invoicingDate, invoicingDatePolicy, invDueDate, invTypeName, invPeriod, disputeStatus, 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 | 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": "2024-02-29",
"invoicingDate": "2024-02-29",
"invoicingDatePolicy": "delivery",
"invNumberFix": "string",
"invNumberNum": 0,
"invNumber": "string",
"invPeriod": "string",
"invDueDate": "2024-02-29",
"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": "2024-02-29T13:52:05.633Z",
"statusDt": "2024-02-29T13:52:05.633Z",
"deliveryDate": "2024-02-29",
"invPeriodStart": "2024-02-29",
"invPeriodEnd": "2024-02-29",
"docsDeliveryStatus": "string",
"docsDeliveryStatusDate": "2024-02-29T13:52:05.633Z",
"docsDeliveryDlrStatus": "string",
"docsDeliveryDlrStatusDate": "2024-02-29T13:52:05.633Z",
"classCodeName": "string",
"classDomain": "string",
"classArea": "string",
"lang": "string",
"paymentStatus": "none",
"paymentStatusDate": "2024-02-29T13:52:05.633Z",
"disputeStatus": "string",
"disputeStatusDate": "2024-02-29T13:52:05.633Z",
"dataSourceId": 0,
"dataSourceCodeName": "string",
"nettingInvoiceId": 0,
"nettingInvoiceNumber": "string",
"selfBilling": "yes",
"domainId": 0,
"domainCodeName": "string",
"domainName": "string",
"domainProduct": 0,
"accountManagerId": 0,
"accountManagerName": "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,
"billingBalance": {
"id": 0,
"name": "string",
"resourceUrl": "string"
},
"billingTypeName": "string",
"smsCount": 0,
"syncStatus": "none",
"syncStatusDt": "2024-02-29T13:52:05.633Z",
"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",
"documentSync": {}
}
],
"meta": {
"pagination": {}
}
}
Error Response Unexpected Error: Default
{
"Code": 0,
"Message": "string"
}
3.2 Invoice Clearing
These endpoints allow performing operations with invoices clearing records.
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 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.
Parameters
Name | Type | Description |
---|---|---|
invoiceid (required) | integer (path) | Invoice ID to get Clearing Records. |
page_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
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 | 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"
}
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 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 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 clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, payment will be automatically applied to billing balance.
Minimal JSON body parameters
{
"clearingTypeId": 2,
"recordDate": "2016-08-05",
"paymentTypeId": 1,
"amountIncrement": 0,
"paidAmount": 10,
"paymentReference": "string"
}
Parameters
Name | Type | Description |
---|---|---|
invoiceID (required) | string (path) | Invoice ID to get. |
post data (required) | object (body) | Post data. If status is used, it must be in (active, deleted). recordDate must be in format 2006-01-02. |
Data Parameters
Clearing Record post data object example
{
"clearingTypeId": 0,
"recordDate": "2021-03-11",
"paymentTypeId": 0,
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"bankAccountId": 0
}
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"
}
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.
List of all InvoiceClearingRecords is returned that belongs to InvoiceClearing.
InvoiceClearing is created when 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 data 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.
Parameters
Name | Type | Description |
---|---|---|
invoiceNumber (required) | string (path) | Invoice number to get Clearing Records. 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_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
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 | 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"
}
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 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 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 clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, payment will be automatically applied to billing balance.
Minimal JSON body parameters
{
"clearingTypeId": 2,
"recordDate": "2016-08-05",
"paymentTypeId": 1,
"amountIncrement": 0,
"paidAmount": 10,
"paymentReference": "string"
}
Parameters
Name | Type | Description |
---|---|---|
invoiceNumber (required) | string (path) | Invoice number to get Clearing Records. 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) | Post data. The recordDate must be in format 2006-01-02. |
Post Data Parameters
{
"clearingTypeId": 0,
"recordDate": "2021-03-11",
"paymentTypeId": 0,
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"bankAccountId": 0
}
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"
}
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 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.
Parameters
Name | Type | Description |
---|---|---|
invoiceUid (required) | string (path) | Invoice UID to get Clearing Records. |
page_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
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 | 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"
}
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 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 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 clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, payment will be automatically applied to billing balance.
Minimal Json body parameters
{
"clearingTypeId": 2,
"recordDate": "2016-08-05",
"paymentTypeId": 1,
"amountIncrement": 0,
"paidAmount": 10,
"paymentReference": "string"
}
Parameters
Name | Type | Description |
---|---|---|
invoiceUID (required) | integer (path) | Invoice UID to get Clearing Records. |
post data (required) | object (body) | Post data. If it is used, status must be in (active, deleted). The recordDate must be in format YYYY-MM-DD. |
Post Data Parameters
{
"clearingTypeId": 0,
"recordDate": "2021-03-11",
"paymentTypeId": 0,
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"bankAccountId": 0
}
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"
}
Method Overview
The method returns an invoice clearing record with given recordid, which belongs to invoice identified with invoiceid.
Authorization privilege needed for this endpoint: finance-invoices.view.
Optional: privilege used in this endpoint is finance-invoices-own.view.
Parameters
Name | Type | Description |
---|---|---|
invoiceid (required) | integer (path) | Invoice ID. |
recordid (required) | integer (path) | ID of invoiceClearingRecord to get. |
Responses
Code | Description | Links |
---|---|---|
200 | InvoiceClearingRecord returned successfully. | No links |
default | Unexpected Error. | No links |
Success Response 200: InvoiceClearingRecord returned successfully
{
"id": 0,
"clearingId": 0,
"clearingTypeId": 0,
"clearingTypeCodeName": "string",
"recordDate": "2024-01-23",
"paymentTypeId": 0,
"paymentTypeName": "string",
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"status": "string",
"statusDate": "2024-01-23T12:32:51.796Z",
"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"
}
Method Overview
The method updates an existing InvoiceClearingRecord.
Authorization privilege needed for this endpoint:
- finance-invoices.manage or
- finance-cust-invoices.manage or
- finance-supplier-invoices.manage or
- finance-netting-invoices.manage.
After this operation, requested invoice clearing record will be marked as 'canceled' and new clearing record will be created and returned instead of the original.
InvoiceClearing value will be recalculated.
Canceled clearing records will be listed in the clearing records list, unlike deleted credit records, which are not listed.
If clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, payment will be applied to billing balance. When corrected payment value is less than original payment value, it may happen that applying payment change will result in block balance, because funds are already spent. In that case the following error with HTTP status code 409 will be returned.
{
"error":
{
"code": "CHANGE_PAYMENT_BLOCK_BALANCE",
"message": "after delete of edit payment balance will be blocked because of insufficient funds available"
}
}
If the API user still wants to edit a payment, the same API call should be used but with the parameter force=yes
, effectively forcing the payment deletion.
Parameters
Name | Type | Description |
---|---|---|
invoceid (required) | integer (path) | Invoice ID. |
recordid (required) | integer (path) | ID of invoiceClearingRecord to update. |
force | string (query) | Forces edit of a payment for customer invoices even if operation will lead to customer balance blocking. Available values: yes, no. Default value: no. |
corrected clearing record data (required) | object (body) | Corrects clearing record date for a clearing. See below an example. |
Example object for correcting clearing record date for a clearing:
{
"clearingTypeId": 0,
"recordDate": "2024-01-23",
"paymentTypeId": 0,
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"revokeUserId": "string",
"revokeUserName": "string",
"revokeComment": "string",
"bankAccountId": 0
}
Responses
Code | Description | Links |
---|---|---|
200 | InvoiceClearingRecord updated successfully. | No links |
default | Unexpected Error. | No links |
Success Response 200: InvoiceClearingRecord updated successfully
{
"id": 0,
"clearingId": 0,
"clearingTypeId": 0,
"clearingTypeCodeName": "string",
"recordDate": "2024-01-23",
"paymentTypeId": 0,
"paymentTypeName": "string",
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"status": "string",
"statusDate": "2024-01-23T12:44:02.373Z",
"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"
}
Method Overview
The method deletes an invoice clearing record with given recordid.
Authorization privilege needed for this endpoint:
- finance-invoices.manage or
- finance-cust-invoices.manage or
- finance-supplier-invoices.manage or
- finance-netting-invoices.manage.
Deletion of Invoice Clearing records performs logical delete. Record's status will be set to delete
. After this, clearing record will not be presented when listing.
InvoiceClearing value will be recalculated.
If clearing record represents payment and invoice document class code name is CUSTOMER_INVOICE, deleting payment will be applied to billing balance resulting decreasing balance amount and increasing unpaid amount. It may happen that applying payment change will result in blocking balance, because the funds are already spent. In that case, the following error with HTTP status code 409 and body will be returned:
{
"error":
{
"code": "CHANGE_PAYMENT_BLOCK_BALANCE",
"message": "after delete of edit payment balance will be blocked because of insufficient funds available"
}
}
If the API user still wants to delete a payment, the same API call should be used but with the parameter force=yes
effectively forcing the payment deletion. In that case, after a payment is deleted, balance and account will be blocked for use because of insufficient funds.
Parameters
Name | Type | Description |
---|---|---|
invoceid (required) | integer (path) | Invoice ID. |
recordid (required) | integer (path) | ID of invoiceClearingRecord to be deleted. |
force | string (query) | Forces deletion of a payment for customer invoices, even if operation will lead to customer balance blocking. Available values: yes, no. Default value: no. |
Responses
Code | Description | Links |
---|---|---|
200 | InvoiceClearingRecord deleted successfully. | No links |
default | Unexpected Error. | No links |
Success Response 200: InvoiceClearingRecord deleted successfully
Error Response Unexpected Error: Default
{
"Code": 0,
"Message": "string"
}
3.3 Payment Type
This endpoint allows retrieving a list of payment types that can be used to pay invoices.
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.
Parameters
Name | Type | Description |
---|---|---|
page_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
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 | 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 Platform Owner Bank Accounts
The endpoints described within this section, provide functionality to manage Platform Owner Bank Accounts, allowing to create, retrieve, update or delete bank accounts data.
The following API endpoints belong to the Settings domain. The subject domain of an endpoint URL is:
https://api{separator}{platform_domain}/settings/v1
Note: A domain is presented with placeholders as https://api{separator}{platform_domain}
, where {separator}
can be a dot (.) or a hyphen (-). Please, replace it with your actual platform domain name.
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.
Parameters
Name | Type | Description |
---|---|---|
all | string (query) | Returns all data for a given criteria. Available values: yes, no. Default value: no. |
page_number | integer (query) | Page number. Default value: 1. |
page_size | integer (query) | Page size. Default value: 10. |
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.
|
Responses
Code | Description | Links |
---|---|---|
200 | 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"
}
Method Overview
The method creates a new bank account record.
Authorization privilege needed for this endpoint: biz-core.manage.
Parameters
Name | Type | Description |
---|---|---|
post data (required) | object (body) | Post data. Bank account data. An example is given below. |
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 | 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"
}
Method Overview
The method returns a bank account data for a given ID.
Authorization privilege needed for this endpoint: biz-core.view.
Parameters
Name | Type | Description |
---|---|---|
id (required) | integer (path) | Bank account ID. |
Responses
Code | Description | Links |
---|---|---|
200 | 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"
}
Method Overview
The method updates a bank account data for a given ID.
Authorization privilege needed for this endpoint: biz-core.manage.
Parameters
Name | Type | Description |
---|---|---|
id (required) | integer (path) | Bank account ID. |
put data (required) | object (body) | Bank account data to be updated. An example is given below. |
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 | 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"
}
Method Overview
The method deletes a bank account record for a given ID.
Authorization privilege needed for this endpoint: biz-core.manage.
Parameters
Name | Type | Description |
---|---|---|
id (required) | integer (path) | Bank account ID. |
Responses
Code | Description | Links |
---|---|---|
200 | 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 and describe data related to the Finance Clearing API.
4.1 InvoiceCollection
InvoiceCollection object properties:
Name | Type | Description |
---|---|---|
data (required) | array | Array of Invoice objects. |
meta (required) | object | CollectionMeta object. |
4.2 Invoice
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. |
domainProduct | integer | Domain product. |
accountManagerId | integer | Account manager ID. |
accountManagerName | string | Account manager 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 | Synchronization 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. |
documentSync | object | An arbitrary JSON object, holding the document synchronization data. It is returned if syncStatus is done, error, misc, exported or invalid. Example: "documentSync": { "propertyA": "value A", "propertyB": "value B" }. |
4.3 BillingBalance
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. |
4.4 InvoiceClearingRecordCollection
InvoiceClearingRecordCollection object properties:
Name | Type | Description |
---|---|---|
data (required) | array | Array of InvoiceClearingRecord objects. |
meta (required) | object | CollectionMeta object. |
4.5 InvoiceClearingRecord
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. |
4.6 InvoiceClearingRecordPost
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. |
4.7 InvoiceClearingRecordUpdate
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
{
"clearingTypeId": 0,
"recordDate": "2024-01-23",
"paymentTypeId": 0,
"amountIncrement": 0,
"paidAmount": 0,
"paymentReference": "string",
"comment": "string",
"revokeUserId": "string",
"revokeUserName": "string",
"revokeComment": "string",
"bankAccountId": 0
}
4.8 PaymentTypeCollection
PaymentTypeCollection object properties:
Name | Type | Description |
---|---|---|
data (required) | array | Array of PaymentType objects. |
meta (required) | object | CollectionMeta object. |
4.9 PaymentType
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": {}
}
}
4.10 BankAccountCollection
BankAccountCollection object properties:
Name | Type | Description |
---|---|---|
data (required) | array | Array of BankAccount objects. |
meta (required) | object | CollectionMeta object. |
4.11 BankAccount
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
}
}
}
4.12 PlatformOwnerBankAccountPost
PlatformOwnerBankAccountPost object properties:
Note: accountNumber
is required field if accountType
is account number and iban
is required if accountType
is iban. isDefaultPerCurrency
determines an account that will be default for same bizPartnerId
and currency
. Only one account can be default. It's set automatically.
Name | Type | Description |
---|---|---|
name (required) | string | Bank Account name. maxLength: 100. |
bizBankId (required) | integer | Bank ID. maxLength: 10. |
currency (required) | integer | Currency. maxLength: 5. |
accountNumber (required) | string | Account number. maxLength: 40. |
iban (required) | 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. |
swiftBic | string | Bank account SWIFT/BIC code. maxLength: 30. |
accountType (required) | string | Account type. Possible values: account number, iban. |
coOwnerId | integer | Co-Owner ID. maxLength: 10. |
4.13 PlatformOwnerBankAccountPut
PlatformOwnerBankAccountPut object properties:
Note: accountNumber
is required field if accountType
is account number and iban
is required if accountType
is iban. isDefaultPerCurrency
determines an account that will be default for same bizPartnerId
and currency
. Only one account can be default. It's set automatically.
Name | Type | Description |
---|---|---|
name (required) | string | Bank Account name. maxLength: 100. |
bizBankId (required) | integer | Bank ID. maxLength: 10. |
currency (required) | integer | Currency. maxLength: 5. |
accountNumber (required) | string | Account number. maxLength: 40. |
iban (required) | 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. |
swiftBic | string | Bank account SWIFT/BIC code. maxLength: 30. |
accountType (required) | string | Account type. Possible values: account number, iban. |
4.14 Error
Error object properties:
Name | Type | Description |
---|---|---|
code (required) | integer($int32) | Error code. |
message (required) | string | Error message. |
JSON Example
{
"Code": 0,
"Message": "string"
}
4.15 CollectionMeta
CollectionMeta object properties:
Name | Type | Description |
---|---|---|
pagination (required) | object | CollectionMetaPagination object. |
4.16 CollectionMetaPagination
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. |
4.17 CollectionMetaPaginationLinks
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"
}
}
}