Digiteal API API Reference
Welcome to the Digiteal technical documentation.
The Digiteal API contains 2 parts. We provide services that allow you to
- create invoices and store related documents
- handle payments
This reference contains the technical details of the rest services exposed by the Digiteal platform.
If you want a high level overview please consult the following page
API Endpoint
https://api.digiteal.eu/
Contact: support@digiteal.eu
Schemes: https
Version: 1.2.2
Auto payments
This API handles automatic payments performed through SDD mandates.
Request
Request an auto payment.
autoPaymentRequest
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"expectingDocumentAttached": true,
"iban": "BE40251230861709",
"language": "EN",
"purpose": "GDDS",
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Response Example (200 OK)
{
"comment": "A comment",
"originBankAccount": "BE40251230861709",
"paymentConfirmationDate": "2019-04-15",
"paymentID": "e529f8b4790f11e7b5a5be2e44b06b52",
"paymentRequestDate": "2019-04-30",
"status": "EXECUTED"
}
CreditNotes
This API concerns the credit notes.
Create
Create a credit note
data necessary to create the credit note
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"creationDate": "2019-12-31",
"creditNoteInternalId": "CreditNote1234",
"format": "QR",
"invoiceUUID": "e529f8b4790f11e7b5a5be2e44b06b52",
"language": "EN",
"secondaryLanguage": "NL",
"size": 600
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, text/plain
Response Headers (200 OK)
uuid |
unique identifier for the credit note |
string |
Integrators
This API is provided for generic integrator needs.
Get person/company
Email of the person/company
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"companyStatus": "PROD",
"email": "john.doe@yopmail.com",
"id": 12,
"personStatus": "OK",
"type": "COMPANY",
"vatNumber": "BE0000000097"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get complete company KYB information (only available to the integrator and the suppliers of the company) - available starting in 1.47
Iban of the company. Please use one of vatNumber, iban or identificationNumber.
Identification number of the company. Please use one of vatNumber, iban or identificationNumber (see the company identification number documentation)
VAT number of the company. Please use one of vatNumber, iban or identificationNumber.
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"canReceiveFunds": true,
"canSendFunds": true,
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"contractApprovalDate": "string (date)",
"creationDate": "2012-12-31",
"customerRelationship": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
},
"email": "my.company@yopmail.com",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"id": 1234,
"identificationNumber": "BE:VAT:BE0000000097",
"integratorId": 1001,
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"status": "PROD",
"ubos": [
{
"firstName": "Jean",
"lastName": "Dupont",
"pepRelated": false
}
],
"vatNumber": "BE0000000097"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get company
Get company registration status. This method does not require an authentication so that payment modules can access this information. Only validated identifiers will be considered when searching for the company. This implies that the VAT and identification numbers will only be considered when the KYB has been validated by Digiteal's compliance department and that the bank account will only be considered if it has been validated.
Iban of the company. Please use one of vatNumber, iban or identificationNumber.
Identification number of the company. Please use one of vatNumber, iban or identificationNumber (see the company identification number documentation)
VAT number of the company. Please use one of vatNumber, iban or identificationNumber.
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"canReceiveFunds": true,
"canSendFunds": true,
"companyName": "Your Telecom",
"email": "my.company@yopmail.com",
"ibans": [
"string"
],
"id": 1234,
"identificationNumber": "BE:VAT:BE0000000097",
"integratorId": 1001,
"paymentMethods": [
"string"
],
"status": "PROD",
"vatNumber": "BE0000000097"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get person
Get person registration status. Only validated email addresses will be used to find the person.
Email of the person
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"email": "john.doe@yopmail.com",
"id": 12,
"idDocumentValidityEnd": "31/12/2019",
"status": "OK"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Invoice Documents
This API allows you to manage the documents attached to invoices
Retrieve
Retrieve the documents related to a specific invoice referenced by the invoice internal identifier set by the issuer of the invoice
the internal invoice identifier of the issuer
OK
Response Content-Types: application/json
Response Example (200 OK)
[
{
"comment": "Invoice for May 2019",
"extension": "pdf",
"fileName": "Invoice1234.pdf",
"id": 12,
"mediaType": "application/pdf",
"url": "https://api.digiteal.eu/document/e529f8b4790f11e7b5a5be2e44b06b52",
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
]
Using the invoice UUID
This service adds a document to an invoice referenced by the invoice UUID set by DIgiteal
the document to attach to the invoice (JPG, PNG, PDF or RTF)
the name of the document file (please include only ASCII characters and at most one '.'). This name will be displayed to the customer.
a comment that should be attached to this document
the uuid of the invoice to which this document should be attached
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Response Headers (200 OK)
uuid |
the uuid of the document that has been created |
string |
Using the issuer id
This service adds a document to an invoice referenced by the invoice internal identifier set by the issuer of the invoice
the identifier of the invoice as defined by the issuer
the document to attach to the invoice (JPG, PNG, PDF or RTF)
an additional comment on the file
the file name (please include only ASCII characters and at most one '.'). This name will be shown to the customer
only necessary when you are calling the service as an integrator
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Response Headers (200 OK)
uuid |
the uuid of the attached document |
string |
Invoices
This API is responsible for handling invoices
Create/Update
This service creates or updates a response. Each invoice internal id must be unique per issuer. The invoice can be sent as DRAFT and can be updated as long as it stays DRAFT. Once PUBLISHED, the invoice becomes read only and no more updates can be made.
metadata of the invoice
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"dueDate": "2019-12-31",
"expectingDocumentAttached": true,
"format": "QR",
"iban": "BE40251230861709",
"imageFormat": "PNG",
"invoiceInternalId": "Bill1234",
"language": "EN",
"publicationStatus": "PUBLISHED",
"purpose": "GDDS",
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL",
"size": 600
}
The body contains the image in the requested format (binary PNG or BMP). If the selected format was NONE, the body contains a text/plain with the QR code text content.
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, image/png
Response Headers (200 OK)
deliveryMethod |
contains 'S2P' if the customer choose to receive this invoice through Digiteal. If this is the case, you should attach the invoice document (usually a PDF) to this invoice using the sendDoc operation. If it is something else, do not send the document to Digiteal. |
string |
uuid |
the uuid of the invoice that has been created |
string |
Generate QR
Generate QR for an existing invoice defined by the UUID of the invoice set by Digiteal. The response body will contain the binary BMP or PNG image of the QR code.
Type of the image you want to receive, default value = QR
Format of the image you want to receive, default value = PNG
Language of the QR image ot generate
Secondary language of the QR image to generate (usually for payment slips that can have multiple language labels)
Width of the QR image to generate
uuid
OK
Response Content-Types: image/png
KYC
This API enables the transfer of KYC information to pre-register persons and companies.
Create company
Pre-register a company or update missing company information if the company already exists.
Customer company KYB details
Request Content-Types: application/json
Request Example
{
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"customerCompany": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"creationDate": "2012-12-31",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"identificationNumber": "BE:VAT:BE0000000097",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"ubos": [
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
],
"vatNumber": "BE0000000097"
},
"customerInfo": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
}
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"canReceiveFunds": true,
"canSendFunds": true,
"companyName": "Your Telecom",
"email": "my.company@yopmail.com",
"ibans": [
"string"
],
"id": 1234,
"identificationNumber": "BE:VAT:BE0000000097",
"integratorId": 1001,
"paymentMethods": [
"string"
],
"status": "PROD",
"vatNumber": "BE0000000097"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get company contracts
Retrieve the latest contracts to be approved to become a Digiteal customer as a company. If you wish to use a fixed URL for those contracts, here they are:
Language of the requested contracts (EN, NL or FR)
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Response Example (200 OK)
[
{
"language": "en",
"name": "Personal data protection policy",
"url": "https://docs.digiteal.eu/Policy/Digiteal-Data_Privacy_Policy-EN-V1.1.pdf"
}
]
Get person contracts
Retrieve the latest contracts to be approved to become a Digiteal customer as a person. If you wish to use a fixed URL for those contracts, here they are:
Language of the requested contracts (EN, NL or FR)
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Response Example (200 OK)
[
{
"language": "en",
"name": "Personal data protection policy",
"url": "https://docs.digiteal.eu/Policy/Digiteal-Data_Privacy_Policy-EN-V1.1.pdf"
}
]
Send KYC doc
Send a KYC document to attach to a person/company
The company identification number of the company for which this information is provided, the person/company to which the document will be attached must be a customer of that company.
(no description)
The email of the person/company contact person to which the document should be added.
The file name
The VAT number of the company for which this information is provided, the person/company to which the document will be attached must be a customer of that company.
the type of document
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"comment": "Invoice for May 2019",
"extension": "pdf",
"fileName": "Invoice1234.pdf",
"id": 12,
"mediaType": "application/pdf",
"url": "https://api.digiteal.eu/document/e529f8b4790f11e7b5a5be2e44b06b52",
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Analyse ID doc
The document can be a passport, a driver's license or an identity card. The following file formats are supported: PNG, JPG and PDF. The document file and no private information will be stored. For the processing, the data will stay in the EU.
the expected side of the document
the document to analyze: JPG, PNG or PDF of a passport, id card, driver's license or VISA
the expected code of the country issuing the document represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
the expected type of the document
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"pages": [
{
"extractedInfo": {
"birthDay": "1990-12-31",
"birthPlace": "Bruxelles, BE",
"cardNumber": "591-9733362-96",
"firstName": "Jean",
"gender": "MALE",
"lastName": "Dupont",
"nationalIdentificationNumber": "90011538106",
"nationality": "BE",
"secondaryNames": "Francis René",
"validityEnd": "2030-12-31",
"validityStart": "2020-01-15"
},
"recognizedType": {
"countryCode": "BE",
"language": "FR",
"side": "FRONT",
"type": "ID_CARD"
}
}
]
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Set logo
Set the logo of a company
(no description)
(no description)
(no description)
(no description)
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"comment": "Invoice for May 2019",
"extension": "pdf",
"fileName": "Invoice1234.pdf",
"id": 12,
"mediaType": "application/pdf",
"url": "https://api.digiteal.eu/document/e529f8b4790f11e7b5a5be2e44b06b52",
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Create person
Pre-register a person or update missing person information if the person already exists.
Customer person KYC details
Request Content-Types: application/json
Request Example
{
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"customerInfo": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
},
"customerPerson": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
}
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"email": "john.doe@yopmail.com",
"id": 12,
"idDocumentValidityEnd": "31/12/2019",
"status": "OK"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Optin
This API is responsible for managing optins
Force an optin
The email address of the customer as known in Digiteal
The identifier used by the company for this customer
The VAT number of the company who's customer's optin is forced
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: text/plain
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
PEPPOL
This API is available to PEPPOL integrators.
Send document
Send an invoice/creditNote/application response through PEPPOL
(no description)
the document to send (a Standard Business Document: https://github.com/OpenPEPPOL/documentation/blob/master/TransportInfrastructure/PEPPOL-EDN-Business-Message-Envelope-1.2-2019-02-01.pdf)
The document sending request was successful.
Bad request.Errors can be: MISSING_DOCUMENT (the expected document was not attached), INVALID_DOCUMENT (the provided document is not valid, see the message for more details), RECIPIENT_NOT_IN_PEPPOL (the recipient is not in the SMP)
Response Content-Types: application/json
Response Example (200 OK)
{
"message": "All clear !",
"status": "OK"
}
Get participants
Get the list of all the participant identifiers registered by the requester
The requested PEPPOL participant
Response Content-Types: application/json
Response Example (200 OK)
{
"contact": {
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
},
"peppolIdentifier": "0208:0630675588",
"registrationDate": "2019-09-01"
}
Register participant
Register an participant (company or person) to receive PEPPOL invoices/credit notes through Digiteal
Participant to register
Request Content-Types: application/json
Request Example
{
"contact": {
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
},
"limitedToOutboundTraffic": "boolean",
"peppolIdentifier": "0208:0630675588"
}
The registration action was successful.
Bad registration request.Errors can be: REGISTER_ALREADY_REGISTERED_TO_DIGITEAL (the participant was already registered through Digiteal, the participant stays registered with Digiteal), REGISTER_ALREADY_REGISTERED_TO_OTHER_AP (the participant is already registered to another access point, please deregister from that access point and register again)
Response Content-Types: application/json
Response Example (200 OK)
{
"message": "All clear !",
"status": "OK"
}
Get registration status
Get the registration status of a PEPPOL participant (company or person)
The PEPPOL identifier for which the registration status is requested
The requested PEPPOL participant
Not Found
Response Content-Types: application/json
Response Example (200 OK)
{
"contact": {
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
},
"peppolIdentifier": "0208:0630675588",
"registrationDate": "2019-09-01"
}
Unregister participant
Unregister a participant (company or person) so that Digiteal will not transfer receives PEPPOL invoices/credit notes and transfer them through the PEPPOL integrator anymore
The PEPPOL identifier that should be unregistered.
The registration action was successful.
Bad registration request.Error can be: NOT_REGISTERD_TO_CALLER (the participant is not registered to the calling PEPPOL integrator
Response Content-Types: application/json
Response Example (200 OK)
{
"message": "All clear !",
"status": "OK"
}
Get supported document types
Get the supported document types of a PEPPOL participant through the Peppol network (not only the ones registered in Digiteal)
The PEPPOL identifier for which the support document types are requested.
The supported document types
Not Found
Response Content-Types: application/json
Response Example (200 OK)
{
"documentTypes": "urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##urn:www.cenbii.eu:transaction:biitrns010:ver2.0:extended:urn:www.peppol.eu:bis:peppol4a:ver2.0::2.1",
"peppolIdentifier": "0208:0630675588"
}
Pay button execution
This API is used to initiate payments from a button
Pay button image generation
This API is used to generate renderings for payment buttons
Payments
This API is responsible for handling interactive payment requests. If you wish to provide static payment links. Please refer to the payment buttons documentation.
Create a payment request.
Data related necessary to create the payment request with mandatory confirmationURL and errorURL
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"errorURL": "https://api.myservice.com/paymentError",
"expectingDocumentAttached": true,
"iban": "BE40251230861709",
"language": "EN",
"maxAmountInCents": 50000,
"minAmountInCents": 500,
"mobile": true,
"multiple": false,
"paymentInternalId": "Payment1234",
"paymentMethod": "BANCONTACT",
"purpose": "GDDS",
"qrCode": false,
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL",
"suggestedAmountInCents": 50000,
"validityInMinutes": 10
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, image/png
Response Headers (200 OK)
payment-url-intent |
Payment URL to redirect the customer to in a mobile device context. |
string |
payment-web-url |
Payment URL to redirect the customer to in a web context. |
string |
uuid |
UUID of the payment that has been created |
string (uuid) |
Create an invoice payment request.
contains the requesterID and the internal id of the invoice
Request Content-Types: application/json
Request Example
{
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"errorURL": "https://api.myservice.com/paymentError",
"invoiceInternalId": "Bill1234",
"language": "EN",
"requesterID": 12,
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, image/png
Response Headers (200 OK)
payment-url-intent |
Payment URL where the user should be redirected to in a mobile device context |
string |
payment-web-url |
Payment URL where the user should be redirected to in a web context |
string |
uuid |
UUID of the payment that has been created |
string (uuid) |
Create an SCT payment request
Input used to create an SCT payment
Request Content-Types: application/json
Request Example
{
"amountInCents": 100,
"creditorIban": "BE81429126789924",
"creditorReference": "000600232562",
"debtorIban": "BE81429126789924",
"executionDate": "2021-12-20",
"remittanceInfo": "Invoice 1"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"paymentID": "b0aecc22-05b9-11ec-9a03-0242ac130003",
"status": "EXECUTED"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Create a trusted payment collection request.
contains the trusted payment information
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"contributions": [
{
"amountInCents": 1234,
"transferId": "e529f8b4790f11e7b5a5be2e44b06b52"
}
],
"creditorReference": "RF84U6",
"creditorReferences": [
"string"
],
"errorURL": "https://api.myservice.com/paymentError",
"language": "EN",
"transferId": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIds": [
"string (uuid)"
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Response Headers (200 OK)
payment-url-intent |
Payment URL that the user should be redirected to in a mobile device context |
string |
payment-web-url |
Payment URL that the user should be redirected to in a web context |
string |
uuid |
UUID of the payment that has been created |
string (uuid) |
QR Code
This API is responsible for QR code generation
Generate
Create a QR code image.
amount expressed in cents that has to be paid
BIC number
The date the bill was created
The name of the Requester
The VAT number of the Requester. The requesterID, the requesterVAT or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
The internal identifier of the invoice as know by the issuer.
The structured reference used by the biller to reconcile the payment. This is also called the structured communication in Belgium. Both BBA (Belgium) and ISO (International) types are supported. It can be left empty if the remittanceInfo is defined
The currency of the amount to be paid based on the ISO 4217-alpha standard. The default value is EUR
City
Country (ISO 3166-1 alpha-2)
email address. This is important to provide so that we can match this customer to the DigiTeal registered users.
Client first name
street number
The id used by the requester his internal billing system. This is mandatory when creating an invoice
the mobile phone of the customer with the national prefix
Client last name or company name
street name of the client address
Client VAT number (if applicable) with the country code
Zipcode
True if the payment of this invoice should be performed through a PIS, false if it should not. Default is false.
The due date of the bill
Format of the image you want to receive, default value = payment_slip
IBAN number, if you have registered multiple IBAN numbers on your account then this field is required!
The language of the client (nl, fr or en)
(no description)
?languages=aaa&languages=bbb
True if you want to accept multiple payments with this description. Default value is true.
The internal identifier of the payment as known by the creditor
The purpose based on the ISO 20022 standard
An unstructured string that is used as communication in the payment. This information is only used if there is no creditorReference. It can be left empty if the creditorReference is defined
The email of the requester. The requesterID, the requesterVAT or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
The status of the payment. Accepted values are DRAFT and PUBLISHED (default).
A secondary language of the client
The width of the image to generate (maximum 4000)
Success
Response Content-Types: image/png
Response Example (200 OK)
"string (byte)"
Response Headers (200 OK)
status |
undefined |
string |
Refunds
This API enables refunds of totally executed payments.
Refund a payment
The details of the refund to be executed. The payment to refund must have been transferred to the creditor in order to be refunded.
Request Content-Types: application/json
Request Example
{
"amountInCents": 1234,
"currency": "EUR",
"paymentUUID": "e529f8b4790f11e7b5a5be2e44b06b52"
}
empty response body with the refund payment identifier in the uuid header
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, image/png
Response Example (200 OK)
"string (byte)"
Response Headers (200 OK)
uuid |
undefined |
string |
status |
undefined |
string |
SDD
This API enables the transfer of SDD including KYC information to pre-register persons and companies to process SDD for their provider.
Company mandate
Create an SDD mandate where the debtor is a company.
Company SDD details
Request Content-Types: application/json
Request Example
{
"complete": true,
"configuration": {
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
},
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"creationDate": "2012-12-31",
"creditorVatNumber": "BE0000000097",
"customerInternalId": "TEST12345",
"debtor": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"creationDate": "2012-12-31",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"identificationNumber": "BE:VAT:BE0000000097",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"ubos": [
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
],
"vatNumber": "BE0000000097"
},
"debtorIBAN": "BE40251230861709",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Person mandate
Create an SDD mandate where the debtor is a person.
Person SDD details
Request Content-Types: application/json
Request Example
{
"complete": true,
"configuration": {
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
},
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"creationDate": "2012-12-31",
"creditorVatNumber": "BE0000000097",
"customerInternalId": "TEST12345",
"debtor": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"debtorIBAN": "BE40251230861709",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"welcomeMessage": "We inform you that your SEPA mandate for YourTelecom is transferred to Digiteal, a Belgian company that is a partner of Belfius."
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Short link
This API is provided to manage short links.
Create short link
Short link request
Request Content-Types: application/json
Request Example
{
"longURL": "https://app.digiteal.eu/api/v1/payment-request/pay-button/execute?requesterVAT=BE0406729809&amountInCents=4000&iban=BE72000000001616&language=en&remittanceInfo=Urgency%20Fund&multiple=true&confirmationURL=https://api.myservice.com/paymentConfirmed&cancelURL=https://api.myservice.com/paymentCancelled&errorURL=https://api.myservice.com/paymentError"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"shortURL": "https://app.digiteal.eu/p/abcde"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Trusted payment
This API is available to trusted payment integrators and allows them to operate trusted payments with Digiteal.
Create confirmation-based
Create a new confirmation-based trusted payment
Data of the trusted payment to be created
Request Content-Types: application/json
Request Example
{
"actors": [
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
],
"bufferIBAN": "BE01234567890123",
"confirmedBuyer": true,
"delayToCollect": 60,
"hidePaymentDetails": true,
"notifyOfPaymentReceived": "boolean",
"projectName": "Corvette VIN 1234567890123456",
"requesterVAT": "BE0000000196",
"transferPayments": [
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"creditorReference": "RF84U6",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIDx64": "string"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get confirmation-based
Get a confirmation-based trusted payment
UUID of the trusted payment
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"actors": [
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
],
"availableAmountInCents": 15000000,
"bufferIBAN": "BE01234567890123",
"confirmedBuyer": true,
"delayToCollect": 60,
"hidePaymentDetails": true,
"notifyOfPaymentReceived": "boolean",
"projectName": "Corvette VIN 1234567890123456",
"requesterVAT": "BE0000000196",
"transferPayments": [
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
]
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Update confirmation-based
Update a confirmation-based trusted payment (only available before it has been confirmed by all relevant parties)
data related necessary to update the trusted payment
UUID of the trusted payment to update
Request Content-Types: application/json
Request Example
{
"actors": [
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
],
"bufferIBAN": "BE01234567890123",
"confirmedBuyer": true,
"delayToCollect": 60,
"hidePaymentDetails": true,
"notifyOfPaymentReceived": "boolean",
"projectName": "Corvette VIN 1234567890123456",
"requesterVAT": "BE0000000196",
"transferPayments": [
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Partial confirmation
Partial confirmation of a confirmation-based trusted payment (only available before it has been executed)
list of partial payments to perform
UUID of the trusted payment to update
Request Content-Types: application/json
Request Example
{
"requesterVAT": "BE0000000196",
"updates": [
{
"amountInCents": 5000000,
"communication": "A new communication",
"creditorIBAN": "BE01234567890123",
"reference": "Ref1234",
"subReference": "Ref1234 1/2"
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Update confirmation-based payments
Update a confirmation-based trusted payment (only available before it has been executed)
list of updates to perform
UUID of the trusted payment to update
Request Content-Types: application/json
Request Example
{
"requesterVAT": "BE0000000196",
"updates": [
{
"amountInCents": 5000000,
"communication": "A new communication",
"creditorIBAN": "BE01234567890123",
"reference": "Ref1234",
"subReference": "Ref1234 1/2"
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Confirm
Execute the trusted payment aka transfer the funds to the creditors
Data of the trusted payment to be executed
Request Content-Types: application/json
Request Example
{
"comment": "Glad to participate !",
"requesterVAT": "BE0000000196",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIDs": [
"string (uuid)"
],
"validate": true
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
New time-based
Create a new time-based trusted payment.
Data of the trusted payment to be created
Request Content-Types: application/json
Request Example
{
"amountInCents": 20000000,
"creditorPayments": [
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
],
"endDate": "31/12/2019",
"minumumAmountInCents": 10000000,
"notifyOfPaymentReceived": "boolean",
"projectName": "Crowd-lending for CompanyX"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"creditorReference": "RF84U6",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIDx64": "string"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Get time-based
Get a time-based trusted payment
UUID of the trusted payment
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"amountInCents": 20000000,
"availableAmountInCents": 15000000,
"creditorPayments": [
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
],
"endDate": "31/12/2019",
"minumumAmountInCents": 10000000,
"notifyOfPaymentReceived": "boolean",
"projectName": "Crowd-lending for CompanyX"
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Update time-based
Update a time-based trusted payment (only available before the campaign is completed)
data related necessary to update the trusted payment
UUID of the trusted payment to update
Request Content-Types: application/json
Request Example
{
"amountInCents": 20000000,
"creditorPayments": [
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
],
"endDate": "31/12/2019",
"minumumAmountInCents": 10000000,
"notifyOfPaymentReceived": "boolean",
"projectName": "Crowd-lending for CompanyX"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*
Webhook
This API enables the management of webhooks.
Get config
Retrieve the latest webhook configuration of company (password will not be sent).
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: application/json
Response Example (200 OK)
{
"identificationNumber": "BE:VAT:BE0000000097",
"login": "userLogin",
"password": "NotProvidedForSecurityReasons",
"vatNumber": "BE0000000097",
"webHooks": [
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}
]
}
Response Example (400 Bad Request)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (404 Not Found)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Response Example (500 Internal Server Error)
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
Update webhook
Create or update a webhook
Webhook info to create or update
Request Content-Types: application/json
Request Example
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Set complete config
Set the complete web hook configuration. Any previous webhooks will be deleted.
Configuration to set for the calling company
Request Content-Types: application/json
Request Example
{
"identificationNumber": "BE:VAT:BE0000000097",
"login": "userLogin",
"password": "NotProvidedForSecurityReasons",
"vatNumber": "BE0000000097",
"webHooks": [
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Set credentials
Only set the webHook configuration credentials.
Configuration to set (only credentials) for the calling company
Request Content-Types: application/json
Request Example
{
"identificationNumber": "BE:VAT:BE0000000097",
"login": "userLogin",
"password": "NotProvidedForSecurityReasons",
"vatNumber": "BE0000000097",
"webHooks": [
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}
]
}
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Delete webhook
Delete a webhook.
Webhook type to delete
Success
Bad request
Unauthorized
Forbidden
Not Found
Internal server error occured
Response Content-Types: */*, application/json
Schema Definitions
Actor: object
- decide: boolean
-
True if this actor should decide if this Digitrust should be executed or not. False if he does not decide. True by default.
- digitealIdentifier: integer (int64)
-
The Digiteal identifier of the person/company. Please only provide a single identifier in this entity: email, vatNumber, identificationNumber, mandateId or digitealIdentifier.
- email: string
-
The email address of the actor. Please only provide a single identifier in this entity: email, vatNumber, identificationNumber, mandateId or digitealIdentifier.
- iban: string
-
The IBAN of the actor. This IBAN can later be used in the payments.
- identificationNumber: string
-
Identification number of the actor. Please only provide a single identifier in this entity: email, vatNumber, identificationNumber, mandateId or digitealIdentifier (see the company identification number documentation)
- language: string
-
The language of this actor. Default value is EN.
- mandateId: integer (int64)
-
The Digiteal identifier of the mandate used to identity this actor. Please only provide a single identifier in this entity: email, vatNumber, identificationNumber, mandateId or digitealIdentifier.
- name: string
-
The name of the actor
- type: string BUYER, SELLER, _3RD_PARTY
-
The type of this actor.
- vatNumber: string
-
The VAT number of the actor. Please only provide a single identifier in this entity: email, vatNumber, identificationNumber, mandateId or digitealIdentifier.
Example
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
Address: object
Model representing an address
- city: string
-
City
- country: string
-
Country name
- countryCode: string
-
Country code represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
- houseNumber: string
-
House number
- streetName: string
-
Street name
- zipCode: string
-
Zip code
Example
{
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
}
AutoPaymentConfiguration: object
- executionType: string DUE_DATE, IMMEDIATE, ONE_WEEK_BEFORE_DUE_DATE
-
When should the automatic payment be executed
- periodicity: string MONTH, SEMESTER, TRIMESTER, YEAR
-
Periodicity of the automatic payment
- thresholdInCents: integer (int64)
-
Maximum allowed that will be allowed to withdraw.
Example
{
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
}
AutoPaymentRequest: object
Model representing the data necessary for requesting an auto payment
- amountInCents: integer
-
amount expressed in cents that has to be paid
- bic: string
-
BIC number
- creationDate: string (date)
-
The date the bill was emitted. The default value is today. The expected format is YYYY-MM-DD
- creditorReference: string
-
The structured reference used by the biller to reconcile the payment. This is also called the structured communication in Belgium. Both BBA (Belgium) and ISO (International) types are supported. It can be left empty if the remittanceInfo is defined
- currency: string
-
The currency of the amount to be paid based on the ISO 4217-alpha standard. The default value is EUR
- customerAddressCity: string (up to 250 chars)
-
City
- customerAddressCountry: string (up to 250 chars)
-
Country (ISO 3166-1 alpha-2)
- customerAddressNumber: string (up to 250 chars)
-
street number
- customerAddressStreet: string (up to 250 chars)
-
street name of the client address
- customerAddressZip: string (up to 20 chars)
-
Zipcode
- customerEmail: string (up to 255 chars)
-
email address. This is important to provide so that we can match this customer to the DigiTeal registered users.
- customerFirstName: string (up to 255 chars)
-
Client first name
- customerInternalId: string (up to 255 chars)
-
The id used by the requester his internal billing system. This is mandatory when creating an invoice
- customerLastName: string (up to 255 chars)
-
Client last name
- customerMobile: string (up to 255 chars)
-
the mobile phone of the customer with the national prefix
- customerVAT: string
-
Client VAT number (if applicable) with the country code
- expectingDocumentAttached: boolean
-
True if documents should be attached to this invoice, false if no document should be attached. Default is true.
- iban: string
-
IBAN number, if you have registered multiple IBAN numbers on your account then this field is required!
- language: string
-
The language of the client (NL, FR or EN)
- purpose: string
-
The purpose based on the ISO 20022 standard
- remittanceInfo: string (up to 140 chars)
-
An unstructured string that is used as communication in the payment. This information is only used if there is no creditorReference. It can be left empty if the creditorReference is defined
- requesterEmail: string
-
The email of the requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterID: integer
-
The id of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterIdentificationNumber: string
-
The national identification number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication (see the company identification number documentation)
- requesterVAT: string
-
The VAT number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- secondaryLanguage: string
-
A secondary language of the client
Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"expectingDocumentAttached": true,
"iban": "BE40251230861709",
"language": "EN",
"purpose": "GDDS",
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL"
}
AutoPaymentResult: object
Model representing the output of a auto payment
- comment: string
-
Comment
- originBankAccount: string
-
the bank account from where the money has been transferred
- paymentConfirmationDate: string
-
the date on which the payment has been confirmed
- paymentID: string
-
The unique identifier of the payment known by the requester
- paymentRequestDate: string
-
the date on which the payment request has been sent
- status: string EXECUTED, HIGH_RISK, NA, PLANNED, THRESHOLD_EXCEEDED
-
Status of the auto payment action. This can either be EXECUTED (the payment has been directly executed), PLANNED (the client has an active auto payment configuration and the threshold has not been exceeded), THRESHOLD_EXCEEDED (the limit set by the user has already been reached, the client has been notified of the issue), NA (not applicable, the client has no auto pay configuration) and HIGH_RISK (Digiteal evaluated that the payment is too risky to be executed automatically, for example because the amount is too high)
Example
{
"comment": "A comment",
"originBankAccount": "BE40251230861709",
"paymentConfirmationDate": "2019-04-15",
"paymentID": "e529f8b4790f11e7b5a5be2e44b06b52",
"paymentRequestDate": "2019-04-30",
"status": "EXECUTED"
}
CompanyCustomerKYCInfo: object
Complete KYC model representing a company customer of another company
- contractApproval: ContractApproval
-
Customer contrat approval
- customerCompany: CompanyKYCInfo
-
Customer company KYC information
- customerInfo: CustomerInfo
-
Information about the customer
Example
{
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"customerCompany": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"creationDate": "2012-12-31",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"identificationNumber": "BE:VAT:BE0000000097",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"ubos": [
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
],
"vatNumber": "BE0000000097"
},
"customerInfo": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
}
}
CompanyInfo: object
Model representing information about the company
- canReceiveFunds: boolean
-
The company can receive funds. It can do this once all the conditions to send funds are met, that the company has a paying profile and that there is at least one activated payment method.
- canSendFunds: boolean
-
The company can send funds. It can do this once the company has been validated and at least one IBAN is validated too.
- companyName: string
-
Name of the company
- email: string
-
contact email address of the company
- ibans: string[]
-
Verified IBANs of the bank accounts associated to the company.
-
string - id: integer (int64)
-
The Digiteal ID of the company
- identificationNumber: string
-
Identification number of the company (see the company identification number documentation)
- integratorId: integer (int64)
-
The Digiteal ID of the integrator company
- paymentMethods: string[]
-
Activated payment methods
-
string BANCONTACT, CARTE_BLEUE, DIRECT, IDEAL, INTERNAL, MAESTRO, MASTERCARD, STANDARD, VISA - status: string DEACTIVATED, NOT_ACTIVATED, NOT_FOUND, ON_HOLD, PROD
-
represents the status of the company within Digiteal: NONE = unknown, NOT_ACTIVATED = Digiteal's terms and conditions have not been accepted yet, ON_HOLD = not active as issuer , PROD = active as issuer
- vatNumber: string
-
VAT number of the concerned company
Example
{
"canReceiveFunds": true,
"canSendFunds": true,
"companyName": "Your Telecom",
"email": "my.company@yopmail.com",
"ibans": [
"string"
],
"id": 1234,
"identificationNumber": "BE:VAT:BE0000000097",
"integratorId": 1001,
"paymentMethods": [
"string"
],
"status": "PROD",
"vatNumber": "BE0000000097"
}
CompanyKYCInfo: object
Model representing the complete KYC information of a company
- address: Address
-
The main address of the company.
- companyName: string
-
Name of the company
- contact: PersonKYCInfo
-
Contact person of the company. This person must have the right to register the company in Digiteal. This person must either represent the company or have a delegation of power to register the company.
- creationDate: string (date)
-
The date when the company was created. The expected format is YYYY-MM-DD
- digitrustIntegratorIdentificationNumber: string
-
Identification number of the DigiTrust integrator of this company if any. This value overrides the digitrustIntegratorVATNumber so use one or the other (see the company identification number documentation)
- digitrustIntegratorVATNumber: string
-
The VAT number of the DigiTrust integrator of this company if any. This value is overridden by the digitrustIntegratorIdentificationNumber so use one or the other.
- ibans: string[]
-
IBANs of the bank accounts associated to the company. You must have verified that the company has access to these IBANs. If you are not sure, provide them in the ibansToValidate property.
-
string - ibansToValidate: string[]
-
IBANs of the bank accounts associated to the company. You do not need to have verified that the company has access to these IBANs, Digiteal will take care of that. If you are sure, provide them in the ibans property.
-
string - identificationNumber: string
-
Identification number of the company (either Vat number or Identification number should be provided) (see the company identification number documentation)
- integratorIdentificationNumber: string
-
Identification number of the invoice/payment integrator of this company if any. This value overrides the integratorVATNumber so use one or the other (see the company identification number documentation)
- integratorVATNumber: string
-
The VAT number of the invoice/payment integrator of this company if any. This value is overridden by the integratorIdentificationNumber so use one or the other.", exampl
- pack: string DISCOVER, GO, POC, START, UNKNOWN
-
The pack chosen by the company to register. The DISCOVER pack is free but it does not enable collecting funds. The first pack to enable collecting funds is the START pack.
- paymentMethods: string[]
-
Payment methods to activate. If you wish to activate PIS_STANDARD (PSD2 payment initiation), VISA, MASTERCARD, CARTE_BLEUE or MAESTRO, please contact support@digiteal.eu. By default, only DIGITEAL_STANDARD is actvated.
-
string BANCONTACT, DIGITEAL_STANDARD, IDEAL - sectors: Sector
-
Sectors where the person is active
-
Sector - settlementGrouping: string PER_TX, PER_DAY, PER_WEEK, PER_MONTH,
-
Settlement grouping strategy. This defines how the funds should be settled to the bank account of the creditor. PER_TX means that each transactions leads to a specific settlement. You will then have one line in your bank statement per transaction. PER_DAY, PER_WEEK and PER_MONTH means that the settlements will be grouped per day/week/month. Default is PER_TX.
- ubos: MinimalPersonKYCInfo
-
The UBOs of the company
-
MinimalPersonKYCInfo - vatNumber: string
-
VAT number of the company (either Vat number or Identification number should be provided)
Example
{
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"creationDate": "2012-12-31",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"identificationNumber": "BE:VAT:BE0000000097",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"ubos": [
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
],
"vatNumber": "BE0000000097"
}
CompanySDDConfiguration: object
Model representing the configuration of a company SDD mandate
- complete: boolean
-
Defines if the SDD configuration contains enough data to be evaluated by Digiteal's compliance dept. Default value is true.
- configuration: AutoPaymentConfiguration
-
Autopayment configuration that will defines the parameters of the SDD mandate. Here are the default parameters if no configuration was provided: Monthly, payment on request date, maximum 1000€.
- contractApproval: ContractApproval
-
Customer contract approval that defines when and how the customer approved the terms and conditions of Digiteal (see getCompanyContracts to get the terms and conditions).
- creationDate: string
-
The date when the original SDD mandate was created. The expected format is YYYY-MM-DD
- creditorVatNumber: string
-
VAT number of the SDD mandate holder (the creditor). The creditor must have an active Digiteal account with at least the START pack.
- customerInternalId: string
-
Identifier of the customer as defined by the creditor
- debtor: CompanyKYCInfo
-
SDD mandate client (the debtor)
- debtorIBAN: string
-
The IBAN from which the SDD mandate will be withdrawing money (aka debtor IBAN).
- notificationSettings: CustomerNotificationSettings
-
Notification settings for this customer (these will be used only if this is a new user of Digiteal)
- product: string DIGITRUST, INVOICING, PAYMENT, PEPPOL, TERMS_TECH, ZOFINANCIALS
-
Product for which this pre-registration is initiated. Default is INVOICING.
- returnURL: string
-
Defines the url where Digiteal has to redirect the user when the customer has set his password. Maximum length of 255 characters.
- transferID: string (uuid)
-
The unique identifier of the digitrust if this SDD is set up for digitrust pay-ins
- welcomeMessage: string
-
Specific welcome message that will be sent by email. Please be careful to send a message in the language of the customer.
Example
{
"complete": true,
&quoquot;configuration": {
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
},
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"creationDate": "2012-12-31",
"creditorVatNumber": "BE0000000097",
"customerInternalId": "TEST12345",
"debtor": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"creationDate": "2012-12-31",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"identificationNumber": "BE:VAT:BE0000000097",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"pack": "START",
"paymentMethods": [
"string"
],
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
"settlementGrouping": "PER_TX",
"ubos": [
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
],
"vatNumber": "BE0000000097"
},
"debtorIBAN": "BE40251230861709",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"welcomeMessage": "We inform you that your SEPA mandate for YourTelecom is transferred to Digiteal, a Belgian company that is a partner of Belfius."
}
ConfirmationBasedTransfer: object
Model representing the data necessary for creating a trusted payment when the release condition is 'CONFIRMATION'
- actors: Actor
-
List of actors participating in the transfer. There will typically be a buyer and a seller as actor but any combination can do. There should at least be one actor to receive the funds.
-
Actor - bufferIBAN: string
-
The IBAN of the buffer account to use to perform a direct payout to the creditor(s). This is only required if you wish to perform a direct payout to the creditor(s).
- confirmedBuyer: boolean
-
True if the buyer has confirmed he wants to buy, false otherwise (default is true).
- delayToCollect: integer (int32)
-
The number of calendar days after the transfer was confirmed on which the money will be withdrawn from the buyers account. This only applies if this transfer is linked to a buffer account. Default is 60 days.
- hidePaymentDetails: boolean
-
True if the details of the outgoing payments should not be displayed to the buyer, false otherwise. This is useful for example when there is a commission planned but you do not want this to be disclosed to the buyer.
- notifyOfPaymentReceived: boolean
-
Notifications should be sent when there is a pay-in, cancellation or success for this Digitrust. True by default.
- projectName: string
-
The name of the transfer
- requesterVAT: string
-
The VAT number of the Requester. The requesterVAT needs to be filled in if the transfer is created by an integrator in the name of the Requester.
- transferPayments: Payment
-
List of outgoing payments to perform when this transfer will be confirmed. There should at least be one payment.
-
Payment
Example
{
"actors": [
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
],
"bufferIBAN": "BE01234567890123",
"confirmedBuyer": true,
"delayToCollect": 60,
"hidePaymentDetails": true,
"notifyOfPaymentReceived": "boolean",
"projectName": "Corvette VIN 1234567890123456",
"requesterVAT": "BE0000000196",
"transferPayments": [
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
]
}
ConfirmationBasedTransferInfo: object
Model representing a confirmation-based trusted payment
- actors: Actor
-
List of actors participating in the transfer. There will typically be a buyer and a seller as actor but any combination can do. There should at least be one actor to receive the funds.
-
Actor - availableAmountInCents: integer (int64)
-
The amount of funds available for this trusted payment. Only funds that have reached Digiteal's segregated account are considered. Funds in flight are not.
- bufferIBAN: string
-
The IBAN of the buffer account to use to perform a direct payout to the creditor(s). This is only required if you wish to perform a direct payout to the creditor(s).
- confirmedBuyer: boolean
-
True if the buyer has confirmed he wants to buy, false otherwise (default is true).
- delayToCollect: integer (int32)
-
The number of calendar days after the transfer was confirmed on which the money will be withdrawn from the buyers account. This only applies if this transfer is linked to a buffer account. Default is 60 days.
- hidePaymentDetails: boolean
-
True if the details of the outgoing payments should not be displayed to the buyer, false otherwise. This is useful for example when there is a commission planned but you do not want this to be disclosed to the buyer.
- notifyOfPaymentReceived: boolean
-
Notifications should be sent when there is a pay-in, cancellation or success for this Digitrust. True by default.
- projectName: string
-
The name of the transfer
- requesterVAT: object
-
The VAT number of the Requester. The requesterVAT needs to be filled in if the transfer is created by an integrator in the name of the Requester.
- transferPayments: Payment
-
List of outgoing payments to perform when this transfer will be confirmed. There should at least be one payment.
-
Payment
Example
{
"actors": [
{
"decide": true,
"digitealIdentifier": 12345678,
"email": "john.doe@gmail.com",
"iban": "BE40251230861709",
"identificationNumber": "BE:VAT:BE0000000097",
"language": "EN",
"mandateId": 123456,
"name": "John Doe",
"type": "SELLER",
"vatNumber": "BE0000000097"
}
],
"availableAmountInCents": 15000000,
"bufferIBAN": "BE01234567890123",
"confirmedBuyer": true,
"delayToCollect": 60,
"hidePaymentDetails": true,
"notifyOfPaymentReceived": "boolean",
"projectName": "Corvette VIN 1234567890123456",
"requesterVAT": "BE0000000196",
"transferPayments": [
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
]
}
ConfirmationBasedTransferPaymentData: object
Model representing the update of transfer payments
- requesterVAT: object
-
The VAT number of the Requester. The requesterVAT needs to be filled in if the transfer execution is created by an integrator in the name of the Requester.
- updates: ConfirmationBasedTransferPaymentUpdate
-
The details of the updates to perform
-
ConfirmationBasedTransferPaymentUpdate
Example
{
"requesterVAT": "BE0000000196",
"updates": [
{
"amountInCents": 5000000,
"communication": "A new communication",
"creditorIBAN": "BE01234567890123",
"reference": "Ref1234",
"subReference": "Ref1234 1/2"
}
]
}
ConfirmationBasedTransferPaymentUpdate: object
Model representing the update of a transfer payment
- amountInCents: integer (int64)
-
The updated amount of the payment in cents. The currency is EUR.
- communication: string
-
The updated communiation to be used in this transfer. If no communication or a null communication are provided, the previous communication is kept.
- creditorIBAN: string
-
The IBAN of the creditor account. If no IBAN is provided, the creditor will not be updated.
- reference: string
-
The reference of the transfer payment to update
- subReference: string
-
The reference of the sub transfer payment to add if any (used to reference a partial payout)
Example
{
"amountInCents": 5000000,
"communication": "A new communication",
"creditorIBAN": "BE01234567890123",
"reference": "Ref1234",
"subReference": "Ref1234 1/2"
}
ContactPerson: object
Model representing a contact person
- email: string
-
Email address of the person
- firstName: string
-
First name
- language: string
-
Language of the person. Authorized values are EN, FR, NL. Default value is 'EN'
- lastName: string
-
First name
- phoneNumber: string
-
Phone number of the person
Example
{
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
}
ContractApproval: object
Digiteal Customer contract approval status. The contracts for a person are the general condition usage and the privacy policy. For a company, the general terms and conditions should also be approved.
- approvalDate: string (date)
-
The date when the customer approved the Digiteal contracts. The expected format is YYYY-MM-DD
- ipAddress: string
-
IP address of the customer when he approved the contracts
- userAgent: string
-
User agent of the customer when he approved the contracts
Example
{
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
}
ContractDetails: object
- language: string
-
The language of the response
- name: string
-
The localized name of the contract
- url: string
-
The URL of the contract
Example
{
"language": "en",
"name": "Personal data protection policy",
"url": "https://docs.digiteal.eu/Policy/Digiteal-Data_Privacy_Policy-EN-V1.1.pdf"
}
CreditNoteCreationRequest: object
Model representing the data necessary for creating a new credit note
- amountInCents: integer
-
amount expressed in cents that has to be paid
- creationDate: string (date)
-
The date the bill was emitted. The default value is today. The expected format is YYYY-MM-DD
- creditNoteInternalId: string
-
the internal identifier of the credit note as know to the emitter
- format: string BANNER, BANNER2, BANNER3, NONE, PAYMENT_SLIP, PAYMENT_SLIP_WITH_BANNER, PAYMENT_SLIP_WITH_QR, QR, QR_BE, QR_EXPLAINED, QR_NL, QR_TEXT, QR_URL
-
format of the image you want to receive, default value = QR
- invoiceUUID: string (uuid)
-
the UUID of the related invoice
- language: string
-
The language of the client (NL, FR or EN)
- secondaryLanguage: string
-
A secondary language of the client
- size: integer (int32)
-
Indicates the size of the image you want to receive in pixels.
Example
{
"amountInCents": 1234,
"creationDate": "2019-12-31",
"creditNoteInternalId": "CreditNote1234",
"format": "QR",
"invoiceUUID": "e529f8b4790f11e7b5a5be2e44b06b52",
"language": "EN",
"secondaryLanguage": "NL",
"size": 600
}
CustomerInfo: object
Model representing a customer of a company
- complete: boolean
-
Defines if the pre-registration contains enough data to be evaluated by Digiteal's compliance dept. Default value is true. The evaluation will only take place if the contract approval data is provided.
- customerId: string
-
Identifier of the customer used in the company
- notificationSettings: CustomerNotificationSettings
-
Notification settings for this customer (these will be used only if this is a new user of Digiteal)
- product: string DIGITRUST, INVOICING, PAYMENT, PEPPOL, TERMS_TECH, ZOFINANCIALS
-
Product for which this pre-registration is initiated. Default is INVOICING.
- returnURL: string
-
Defines the url where Digiteal has to redirect the user when the customer has set his password. Maximum length of 255 characters.
- vatNumber: string
-
VAT number of the provider company
- welcomeMessage: string
-
Specific welcome message that will be sent by email. Please be careful to send a message in the language of the customer.
Example
{
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
}
CustomerNotificationSettings: object
Model representing the notification settings of a customer
- autoPayment: boolean
-
Should we notify the user when an autopayment was performed (true by default)
- autoPaymentThreshold: boolean
-
Should we notify the user when an autopayment was not performed because it was above the threshold (true by default)
- invoice: boolean
-
Should we notify the user when he receives a new invoice (true by default)
- issuer: boolean
-
Should we notify the user when he has a new issuer (true by default)
- mail: boolean
-
Should we notify the user through email notifications (true by default)
- paymentIssue: boolean
-
Should we notify the user when a payment issue occured (true by default)
- push: boolean
-
Should we notify the user through push notifications (if he has installed the Digiteal app, true by default)
- reminder: boolean
-
Should we remind the user that he has an invoice pending payment (7 before the due date, 3 days before the due date and on the due date, true by default)
Example
{
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
}
DetailedCompanyInfo: object
Model representing detailed information about the company
- address: Address
-
The main address of the company.
- canReceiveFunds: boolean
-
The company can receive funds. It can do this once all the conditions to send funds are met, that the company has a paying profile and that there is at least one activated payment method.
- canSendFunds: boolean
-
The company can send funds. It can do this once the company has been validated and at least one IBAN is validated too.
- companyName: string
-
Name of the company
- contact: PersonKYCInfo
-
Contact person of the company. This person must have the right to register the company in Digiteal. This person must either represent the company or have a delegation of power to register the company.
- contractApprovalDate: string (date)
-
Customer contrat approval
- creationDate: string (date)
-
The date when the company was created. The expected format is YYYY-MM-DD
- customerRelationship: CustomerInfo
-
Information about the customer
- email: string
-
contact email address of the company
- ibans: string[]
-
Verified IBANs of the bank accounts associated to the company.
-
string - ibansToValidate: string[]
-
IBANs of the bank accounts associated to the company. You do not need to have verified that the company has access to these IBANs, Digiteal will take care of that. If you are sure, provide them in the ibans property.
-
string - id: integer (int64)
-
The Digiteal ID of the company
- identificationNumber: string
-
Identification number of the company (see the company identification number documentation)
- integratorId: integer (int64)
-
The Digiteal ID of the integrator company
- pack: string DISCOVER, GO, POC, START, UNKNOWN
-
The pack chosen by the company to register. The DISCOVER pack is free but it does not enable collecting funds. The first pack to enable collecting funds is the START pack.
- paymentMethods: string[]
-
Activated payment methods
-
string BANCONTACT, CARTE_BLEUE, DIRECT, IDEAL, INTERNAL, MAESTRO, MASTERCARD, STANDARD, VISA - status: string DEACTIVATED, NOT_ACTIVATED, NOT_FOUND, ON_HOLD, PROD
-
represents the status of the company within digiteal: NONE = unknown, NOT_ACTIVATED = Digiteal's terms and conditions have not been accepted yet, ON_HOLD = not active as issuer , PROD = active as issuer
- ubos: UBO
-
The UBOs of the company
-
UBO - vatNumber: string
-
VAT number of the concerned company
Example
{
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"canReceiveFunds": true,
"canSendFunds": true,
"companyName": "Your Telecom",
"contact": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"contractApprovalDate": "string (date)",
"creationDate": "2012-12-31",
"customerRelationship": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
},
"email": "my.company@yopmail.com",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"id": 1234,
"identificationNumber": "BE:VAT:BE0000000097",
"integratorId": 1001,
"pack": "START",
"paymentMethods": [
"string"
],
"status": "PROD",
"ubos": [
{
"firstName": "Jean",
"lastName": "Dupont",
"pepRelated": false
}
],
"vatNumber": "BE0000000097"
}
DocumentDetails: object
Model representing the details of an invoice document
- comment: string
-
document comment
- extension: string
- fileName: string
-
the filename of the document
- id: integer (int64)
-
the identifier of document
- mediaType: string
-
Also known as MIME type
- url: string
-
the location url of the document
- uuid: string
-
the uuid of the document
Example
{
"comment": "Invoice for May 2019",
"extension": "pdf",
"fileName": "Invoice1234.pdf",
"id": 12,
"mediaType": "application/pdf",
"url": "https://api.digiteal.eu/document/e529f8b4790f11e7b5a5be2e44b06b52",
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
ErrorMessage: object
Model representing the error output
- errorCode: string
-
error code indicating a specific error
- errorMessage: string
-
a more detailed message explaining the code.
- errorSubjects: string[]
-
subjects on which the error code applies
-
string - requestId: string
-
The request id (generated by the server if no 'correlation-id' provided as a request header)
Example
{
"errorCode": "INVALID_PARAMETER",
"errorMessage": "Error message",
"errorSubjects": [
"string"
],
"requestId": "Error message"
}
IDDocument: object
Model representing an identity document
- pages: IDDocumentPage
-
The pages of the identity document. For an image (JPG/PNG), there will be a single page. For a PDF, each page will be analyzed separately.
-
IDDocumentPage
Example
{
"pages": [
{
"extractedInfo": {
"birthDay": "1990-12-31",
"birthPlace": "Bruxelles, BE",
"cardNumber": "591-9733362-96",
"firstName": "Jean",
"gender": "MALE",
"lastName": "Dupont",
"nationalIdentificationNumber": "90011538106",
"nationality": "BE",
"secondaryNames": "Francis René",
"validityEnd": "2030-12-31",
"validityStart": "2020-01-15"
},
"recognizedType": {
"countryCode": "BE",
"language": "FR",
"side": "FRONT",
"type": "ID_CARD"
}
}
]
}
IDDocumentInfo: object
Model representing a page of an identity document
- birthDay: string (date)
-
Extracted date of birth. The format is YYYY-MM-DD.
- birthPlace: string
-
Extracted place of birth
- cardNumber: string
-
Extracted card number
- firstName: string
-
Extracted first name
- gender: string FEMALE, MALE, NA, UNKNOWN
-
The extracted gender of the person: MALE, FEMALE, UNKNOWN or NA
- lastName: string
-
Extracted last name
- nationalIdentificationNumber: string
-
Extracted national identification number.
- nationality: string
-
Extracted nationality represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
- secondaryNames: string
-
Extracted secondary names
- validityEnd: string (date)
-
Extracted end of validity date. The format is YYYY-MM-DD.
- validityStart: string (date)
-
Extracted start of validity date. The format is YYYY-MM-DD.
Example
{
"birthDay": "1990-12-31",
"birthPlace": "Bruxelles, BE",
"cardNumber": "591-9733362-96",
"firstName": "Jean",
"gender": "MALE",
"lastName": "Dupont",
"nationalIdentificationNumber": "90011538106",
"nationality": "BE",
"secondaryNames": "Francis René",
"validityEnd": "2030-12-31",
"validityStart": "2020-01-15"
}
IDDocumentPage: object
Model representing a page of an identity document
- extractedInfo: IDDocumentInfo
-
Extracted document information
- recognizedType: IDDocumentType
-
Recognized document type
Example
{
"extractedInfo": {
"birthDay": "1990-12-31",
"birthPlace": "Bruxelles, BE",
"cardNumber": "591-9733362-96",
"firstName": "Jean",
"gender": "MALE",
"lastName": "Dupont",
"nationalIdentificationNumber": "90011538106",
"nationality": "BE",
"secondaryNames": "Francis René",
"validityEnd": "2030-12-31",
"validityStart": "2020-01-15"
},
"recognizedType": {
"countryCode": "BE",
"language": "FR",
"side": "FRONT",
"type": "ID_CARD"
}
}
IDDocumentType: object
Model representing an identity document type
- countryCode: string
-
Country code represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
- language: string
-
Extracted language represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
- side: string BACK, FRONT
-
Side of document recognized
- type: string DRIVER_LICENSE, ID_CARD, OTHER, PASSPORT, VISA
-
Type of document recognized
Example
{
"countryCode": "BE",
"language": "FR",
"side": "FRONT",
"type": "ID_CARD"
}
InvoiceCreationRequest: object
Model representing the data necessary for creating a new invoice
- amountInCents: integer
-
amount expressed in cents that has to be paid
- bic: string
-
BIC number
- creationDate: string (date)
-
The date the bill was emitted. The default value is today. The expected format is YYYY-MM-DD
- creditorReference: string
-
The structured reference used by the biller to reconcile the payment. This is also called the structured communication in Belgium. Both BBA (Belgium) and ISO (International) types are supported. It can be left empty if the remittanceInfo is defined
- currency: string
-
The currency of the amount to be paid based on the ISO 4217-alpha standard. The default value is EUR
- customerAddressCity: string (up to 250 chars)
-
City
- customerAddressCountry: string (up to 250 chars)
-
Country (ISO 3166-1 alpha-2)
- customerAddressNumber: string (up to 250 chars)
-
street number
- customerAddressStreet: string (up to 250 chars)
-
street name of the client address
- customerAddressZip: string (up to 20 chars)
-
Zipcode
- customerEmail: string (up to 255 chars)
-
email address. This is important to provide so that we can match this customer to the DigiTeal registered users.
- customerFirstName: string (up to 255 chars)
-
Client first name
- customerInternalId: string (up to 255 chars)
-
The id used by the requester his internal billing system. This is mandatory when creating an invoice
- customerLastName: string (up to 255 chars)
-
Client last name
- customerMobile: string (up to 255 chars)
-
the mobile phone of the customer with the national prefix
- customerVAT: string
-
Client VAT number (if applicable) with the country code
- dueDate: string (date)
-
The date before which the payment must be performed. If it is provided, it can be used to show which bills are overdue or will soon be overdue. The payment slip will display a memo-date one week before the due date if that date is still in the future at generation time. The expected format is YYYY-MM-DD
- expectingDocumentAttached: boolean
-
True if documents should be attached to this invoice, false if no document should be attached. Default is true.
- format: string BANNER, BANNER2, BANNER3, NONE, PAYMENT_SLIP, PAYMENT_SLIP_WITH_BANNER, PAYMENT_SLIP_WITH_QR, QR, QR_BE, QR_EXPLAINED, QR_NL, QR_TEXT, QR_URL
-
Type of the image you want to receive, default value = QR
- iban: string
-
IBAN number, if you have registered multiple IBAN numbers on your account then this field is required!
- imageFormat: string BMP, PNG
-
Format of the image you want to receive, default value = PNG
- invoiceInternalId: string (up to 255 chars)
-
The internal identifier of the invoice as known by the issuer. It must be unique per issuer.
- language: string
-
The language of the client (NL, FR or EN)
- publicationStatus: string DRAFT, PUBLISHED
-
An invoice can have one of two statusses:PUBLISHED (default value) : if generated the payment request can no longer be modified DRAFT : if generated the payment request can still be updated.
- purpose: string
-
The purpose based on the ISO 20022 standard
- remittanceInfo: string (up to 140 chars)
-
An unstructured string that is used as communication in the payment. This information is only used if there is no creditorReference. It can be left empty if the creditorReference is defined
- requesterEmail: string
-
The email of the requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterID: integer
-
The id of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterIdentificationNumber: string
-
The national identification number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication (see the company identification number documentation)
- requesterVAT: string
-
The VAT number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- secondaryLanguage: string
-
A secondary language of the client
- size: integer (int32)
-
Indicates the size of the image you want to receive in pixels.
Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"dueDate": "2019-12-31",
"expectingDocumentAttached": true,
"format": "QR",
"iban": "BE40251230861709",
"imageFormat": "PNG",
"invoiceInternalId": "Bill1234",
"language": "EN",
"publicationStatus": "PUBLISHED",
"purpose": "GDDS",
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL",
"size": 600
}
InvoicePaymentRequest: object
Model representing the data necessary for requesting the payment of an invoice
- cancelURL: string
-
Defines the url where Digiteal has to redirect the user when the payment was cancelled. If not present, it will revert to the errorURL. Maximum length of 255 characters.
- confirmationURL: string
-
Defines the url where Digiteal has to redirect the user when the payment has been completed successfully. Maximum length of 255 characters.
- errorURL: string
-
Defines the url where Digiteal has to redirect the user when an error occurred during the payment. Maximum length of 255 characters.
- invoiceInternalId: string
-
The internal identifier of the invoice as know by the issuer.
- language: string
-
The language of the client (NL, FR or EN)
- requesterID: integer
-
The id of the Requester. Needs to be filled in if the payment is generated through another provider
- uuid: string
-
Uuid of the invoice as determined by Digiteal. If this value is used the invoiceInternalId are ignored.
Example
{
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"errorURL": "https://api.myservice.com/paymentError",
"invoiceInternalId": "Bill1234",
"language": "EN",
"requesterID": 12,
"uuid": "e529f8b4790f11e7b5a5be2e44b06b52"
}
MercuriusParticipantRegistrationRequest: object
A Mercurius participant to register
- certificate: string
-
The certificate to use to connect to the Mercurius platform
- peppolIdentifier: string
-
PEPPOL identifier
Example
{
"certificate": "string",
"peppolIdentifier": "0208:0630675588"
}
MinimalPersonKYCInfo: object
Model representing the minimal KYC information of a person
- birthDay: string (date)
-
The date the person was born. The person should be at least 16 years old. The expected format is YYYY-MM-DD.
- birthPlace: string
-
The place where the person was born (city and country).
- firstName: string
-
First name of the person
- gender: string FEMALE, MALE, NA, UNKNOWN
-
The gender of the person: MALE, FEMALE, UNKNOWN or NA
- lastName: string
-
Last name of the person
- pep: boolean
-
Is the person politically exposed ?
- pepCustomerExplanation: string
-
How is the person politically exposed ? This explanation should be provided only if the person is politically exposed.
Example
{
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"firstName": "John",
"gender": "MALE",
"lastName": "Doe",
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland"
}
Payment: object
- amountInCents: integer (int64)
-
The amount of the payment in cents. The currency is EUR.
- comment: string
-
A comment about this payment. This will not be visible to the creditor.
- communication: string
-
The communication that will be used in the payment. This will be visible in the bank statements of the creditor. Please use only ASCII characters here. Non ASCII will be simplified or removed to be sent through the banking channels.
- conditional: boolean
-
True if the payment should be executed only after all the deciding actors have agreed. Otherwise, the payment will be executed as soon as the funds have been collected, for example as an advance payment. Default is true.
- creditorEmail: string
-
The email address of the creditor. The default IBAN of the creditor will be used. Please only provide a single identifier in this entity: creditorEmail, creditorVatNumber, creditorIdentificationNumber or creditorIBAN.
- creditorIBAN: string
-
The IBAN of the creditor. This IBAN should be linked to one of the actors. Please only provide a single identifier in this entity: creditorEmail, creditorVatNumber, creditorIdentificationNumber or creditorIBAN.
- creditorIdentificationNumber: string
-
Identification number of the creditor. The default IBAN of the creditor will be used. Please only provide a single identifier in this entity: creditorEmail, creditorVatNumber, creditorIdentificationNumber or creditorIBAN (see the company identification number documentation)
- creditorVatNumber: string
-
The VAT number of the creditor. The default IBAN of the creditor will be used. Please only provide a single identifier in this entity: creditorEmail, creditorVatNumber, creditorIdentificationNumber or creditorIBAN.
- hidden: boolean
-
True if the payment should not be visible to the actors, for example in case of a commission that should not be disclosed to the customer. Otherwise, the payment details will be visible to all the actors.
- notifyOfPaymentReceived: boolean
-
Notifications should be sent when there is a pay-in, cancellation or success for this Digitrust. True by default.
- reference: string
-
A reference provided by the creator for this payment. This will not be visible to the creditor.
- subPayments: Payment
-
The optional sub payments that compose this payment. The amount of the sub payments will be deducted from this payment. So in case of a parent payment of 50€ and a subpayment of 20€. The payout for the parent payment will be of only 30€ (50€-20€).
-
Payment
Example
{
"amountInCents": 5000000,
"comment": "A comment",
"communication": "000600232562",
"conditional": true,
"creditorEmail": "john.doe@gmail.com",
"creditorIBAN": "BE40251230861709",
"creditorIdentificationNumber": "BE:VAT:BE0000000097",
"creditorVatNumber": "BE0000000097",
"hidden": false,
"notifyOfPaymentReceived": "boolean",
"reference": "Ref1234",
"subPayments": []
}
PaymentCreationRequest: object
Model representing the data necessary for creating a new payment request
- amountInCents: integer
-
amount expressed in cents that has to be paid
- bic: string
-
BIC number
- cancelURL: string
-
Defines the url where Digiteal has to redirect the user when the payment is cancelled (reverts to errorURL if it is not present). Maximum length of 255 characters.
- confirmationURL: string
-
Defines the url where Digiteal has to redirect the user when the payment has been completed successfully (mandatory in case of interactive payment). Maximum length of 255 characters.
- creationDate: string (date)
-
The date the bill was emitted. The default value is today. The expected format is YYYY-MM-DD
- creditorReference: string
-
The structured reference used by the biller to reconcile the payment. This is also called the structured communication in Belgium. Both BBA (Belgium) and ISO (International) types are supported. It can be left empty if the remittanceInfo is defined
- currency: string
-
The currency of the amount to be paid based on the ISO 4217-alpha standard. The default value is EUR
- customerAddressCity: string (up to 250 chars)
-
City
- customerAddressCountry: string (up to 250 chars)
-
Country (ISO 3166-1 alpha-2)
- customerAddressNumber: string (up to 250 chars)
-
street number
- customerAddressStreet: string (up to 250 chars)
-
street name of the client address
- customerAddressZip: string (up to 20 chars)
-
Zipcode
- customerEmail: string (up to 255 chars)
-
email address. This is important to provide so that we can match this customer to the DigiTeal registered users.
- customerFirstName: string (up to 255 chars)
-
Client first name
- customerInternalId: string (up to 255 chars)
-
The id used by the requester his internal billing system. This is mandatory when creating an invoice
- customerLastName: string (up to 255 chars)
-
Client last name
- customerMobile: string (up to 255 chars)
-
the mobile phone of the customer with the national prefix
- customerVAT: string
-
Client VAT number (if applicable) with the country code
- errorURL: string
-
Defines the url where Digiteal has to redirect the user when the payment has not been completed successfully (mandatory in case of interactive payment). Maximum length of 255 characters.
- expectingDocumentAttached: boolean
-
True if documents should be attached to this invoice, false if no document should be attached. Default is true.
- iban: string
-
IBAN number, if you have registered multiple IBAN numbers on your account then this field is required!
- language: string
-
The language of the client (NL, FR or EN)
- maxAmountInCents: integer
-
The maximum amount to pay (in cents, cannot be used at the same time as amountInCents)
- minAmountInCents: integer
-
The minimum amount to pay (in cents, cannot be used at the same time as amountInCents)
- mobile: boolean
-
True if this is a payment to be executed on a mobile device. False by default
- multiple: boolean
-
True if you want to accept multiple payments with this description. Default value is false.
- paymentInternalId: string
-
The internal identifier of the payment as known by the creditor
- paymentMethod: string BANCONTACT, CARTE_BLEUE, PIS_STANDARD, DIGITEAL_STANDARD, IDEAL, MAESTRO, MASTERCARD, VISA
-
The payment method that is to be used. If it is defined, only that payment method will be available. If left empty, all the payment methods supported by the creditor will be available to the user.
- purpose: string
-
The purpose based on the ISO 20022 standard
- qrCode: boolean
-
If true, the QR code (for Bancontact payment method), will be displayed for example to enable the payment by a third party and not the user.
- remittanceInfo: string (up to 140 chars)
-
An unstructured string that is used as communication in the payment. This information is only used if there is no creditorReference. It can be left empty if the creditorReference is defined
- requesterEmail: string
-
The email of the requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterID: integer
-
The id of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- requesterIdentificationNumber: string
-
The national identification number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication (see the company identification number documentation)
- requesterVAT: string
-
The VAT number of the Requester. The requesterID, the requesterVAT, the requesterIdentificationNumber or the requestorEmail needs to be filled in if the payment is generated through another provider or without authentication
- secondaryLanguage: string
-
A secondary language of the client
- suggestedAmountInCents: string
-
The suggested amount to pay (in cents, cannot be used at the same time as amountInCents)
- validityInMinutes: string (byte)
-
Defines the validity of the payment request in minutes. Default value 10min
Example
{
"amountInCents": 1234,
"bic": "GKCCBEBB",
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"creationDate": "2019-12-31",
"creditorReference": "000600232562",
"currency": "EUR",
"customerAddressCity": "Bruxelles",
"customerAddressCountry": "BE",
"customerAddressNumber": 14,
"customerAddressStreet": "Rue de la Paix",
"customerAddressZip": 1000,
"customerEmail": "john.doe@me.com",
"customerFirstName": "Jean",
"customerInternalId": "TEST12345",
"customerLastName": "Dujardin",
"customerMobile": "+32123456789",
"customerVAT": "BE0000000097",
"errorURL": "https://api.myservice.com/paymentError",
"expectingDocumentAttached": true,
"iban": "BE40251230861709",
"language": "EN",
"maxAmountInCents": 50000,
"minAmountInCents": 500,
"mobile": true,
"multiple": false,
"paymentInternalId": "Payment1234",
"paymentMethod": "BANCONTACT",
"purpose": "GDDS",
"qrCode": false,
"remittanceInfo": "Invoice 1",
"requesterEmail": "requestor@company.com",
"requesterID": 1234,
"requesterIdentificationNumber": "BE:VAT:BE0000000097",
"requesterVAT": "BE0000000196",
"secondaryLanguage": "NL",
"suggestedAmountInCents": 50000,
"validityInMinutes": 10
}
PeppolParticipantRegistrationRequest: object
A PEPPOL participant (either a company or a person) to register
- contact: ContactPerson
-
Contact person that Digiteal will contact in case of a registration error
- limitedToOutboundTraffic: boolean
-
Only register the participant for outbound traffic (no document type will be registered)
- peppolIdentifier: string
-
PEPPOL identifier
Example
{
"contact": {
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
},
"limitedToOutboundTraffic": "boolean",
"peppolIdentifier": "0208:0630675588"
}
PeppolRegisteredParticipant: object
A registered PEPPOL participant (either a company or a person)
- contact: ContactPerson
-
Contact person that Digiteal will contact in case of a registration error
- peppolIdentifier: string
-
PEPPOL identifier
- registrationDate: string
-
Date of the registration within Digiteal for this particular PEPPOL integrator
Example
{
"contact": {
"email": "john.doe@gmail.com",
"firstName": "John",
"language": "EN",
"lastName": "Doe",
"phoneNumber": "+32 1234567"
},
"peppolIdentifier": "0208:0630675588",
"registrationDate": "2019-09-01"
}
PeppolResult: object
Response from a PEPPOL action
- message: string
-
Message associated with the action
- status: string ALREADY_REGISTERED_TO_DIGITEAL, ALREADY_REGISTERED_TO_OTHER_AP, ENTITY_NOT_REGISTERED, INVALID_DOCUMENT, MISSING_DOCUMENT, NOT_REGISTERED_TO_CALLER, OK, RECIPIENT_NOT_IN_PEPPOL, UNEXPECTED_ERROR, UNSUPPORTED_PEPPOL_IDENTIFIER_TYPE
-
Status of the action
Example
{
"message": "All clear !",
"status": "OK"
}
PersonCustomerKYCInfo: object
Complete KYC model representing a person customer of another company
- contractApproval: ContractApproval
-
Customer contrat approval
- customerInfo: CustomerInfo
-
Information about the customer
- customerPerson: PersonKYCInfo
-
Customer person KYC information
Example
{
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"customerInfo": {
"complete": true,
"customerId": "Customer1234",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"vatNumber": "BE0000000097",
"welcomeMessage": "YourTelecom invites you to use Digiteal to pay all your invoices in one click."
},
"customerPerson": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
}
}
PersonInfo: object
Model representing information about the person
- email: string
-
email address of the person
- id: integer (int64)
-
The Digiteal ID of the company
- idDocumentValidityEnd: string (date)
-
The date the id document will expire. None if the date is unknown or no id document was provided. Format: dd/MM/yyyy
- status: string ACTIVATED, COMPANY, DEACTIVATED, EXPIRED, NOT_ACTIVATED, NOT_FOUND, OK, PENDING, UNKNOWN
-
represents the status of the person within Digiteal: NOT_FOUND: No user with this email address registered in Digiteal, COMPANY: This email address is linked to a company, NOT_ACTIVATED: his email address has not been confirmed, ACTIVATED: his email address has been confirmed but he did not finish the KYC, DEACTIVATED: he deleted his account in Digiteal, PENDING: he finished his KYC and his information is being reviewed by Digiteal, OK: His KYC has been checked, he is ready to perform payments, EXPIRED: His KYC information has expired.
Example
{
"email": "john.doe@yopmail.com",
"id": 12,
"idDocumentValidityEnd": "31/12/2019",
"status": "OK"
}
PersonKYCInfo: object
Model representing the complete KYC information of a person
- address: Address
-
Address of residence of the person
- birthDay: string (date)
-
The date the person was born. The person should be at least 16 years old. The expected format is YYYY-MM-DD.
- birthPlace: string
-
The place where the person was born (city and country).
- digitrustIntegratorIdentificationNumber: string
-
Identification number of the DigiTrust integrator of this person if any. This value overrides the digitrustIntegratorVATNumber so use one or the other (see the company identification number documentation)
- digitrustIntegratorVATNumber: string
-
The VAT number of the DigiTrust integrator of this person if any. This value is overridden by the digitrustIntegratorIdentificationNumber so use one or the other.
- email: string
-
Email address of the person
- firstName: string
-
First name of the person
- gender: string FEMALE, MALE, NA, UNKNOWN
-
The gender of the person: MALE, FEMALE, UNKNOWN or NA
- ibans: string[]
-
IBANs of the bank accounts associated to the person. You must have verified that the person has access to these IBANs. If you are not sure, provide them in the ibansToValidate property.
-
string - ibansToValidate: string[]
-
IBANs of the bank accounts associated to the person. You do not need to have verified that the person has access to these IBANs, Digiteal will take care of that. If you are sure, provide them in the ibans property.
-
string - idDocumentValidityEnd: string (date)
-
Date of the end of validity of the provided id documents of the person
- integratorIdentificationNumber: string
-
Identification number of the invoice/payment integrator of this person if any. This value overrides the integratorVATNumber so use one or the other (see the company identification number documentation)
- integratorVATNumber: string
-
The VAT number of the invoice/payment integrator of this person if any. This value is overridden by the integratorIdentificationNumber so use one or the other.
- language: string
-
Language of the person. Authorized values are EN, FR, NL. Default value is 'EN'
- lastName: string
-
Last name of the person
- nationalities: string[]
-
Nationalities of the person. The nationalities are represented by the two letter country codes as defined in ISO 3166-1 alpha-2.
-
string - pep: boolean
-
Is the person politically exposed ?
- pepCustomerExplanation: string
-
How is the person politically exposed ? This explanation should be provided only if the person is politically exposed.
- sectors: Sector
-
Sectors where the person is active
-
Sector
Example
{
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
}
PersonSDDConfiguration: object
Model representing the configuration of a personal SDD mandate
- complete: boolean
-
Defines if the SDD configuration contains enough data to be evaluated by Digiteal's compliance dept. Default value is true.
- configuration: AutoPaymentConfiguration
-
Autopayment configuration that will defines the parameters of the SDD mandate. Here are the default parameters if no configuration was provided: Monthly, payment on request date, maximum 1000€.
- contractApproval: ContractApproval
-
Customer contract approval that defines when and how the customer approved the terms and conditions of Digiteal (see getCompanyContracts to get the terms and conditions).
- creationDate: string
-
The date when the original SDD mandate was created. The expected format is YYYY-MM-DD
- creditorVatNumber: string
-
VAT number of the SDD mandate holder (the creditor). The creditor must have an active Digiteal account with at least the START pack.
- customerInternalId: string
-
Identifier of the customer as defined by the creditor
- debtor: PersonKYCInfo
-
SDD mandate client (the debtor)
- debtorIBAN: string
-
The IBAN from which the SDD mandate will be withdrawing money (aka debtor IBAN).
- notificationSettings: CustomerNotificationSettings
-
Notification settings for this customer (these will be used only if this is a new user of Digiteal)
- product: string DIGITRUST, INVOICING, PAYMENT, PEPPOL, TERMS_TECH, ZOFINANCIALS
-
Product for which this pre-registration is initiated. Default is INVOICING.
- returnURL: string
-
Defines the url where Digiteal has to redirect the user when the customer has set his password. Maximum length of 255 characters.
- transferID: string (uuid)
-
The unique identifier of the digitrust if this SDD is set up for digitrust pay-ins
- welcomeMessage: string
-
Specific welcome message that will be sent by email. Please be careful to send a message in the language of the customer.
Example
{
"complete": true,
"configuration": {
"executionType": "IMMEDIATE",
"periodicity": "MONTH",
"thresholdInCents": 100000
},
"contractApproval": {
"approvalDate": "2019-11-30",
"ipAddress": "string",
"userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36"
},
"creationDate": "2012-12-31",
"creditorVatNumber": "BE0000000097",
"customerInternalId": "TEST12345",
"debtor": {
"address": {
"city": "Bruxelles",
"country": "Belgique",
"countryCode": "BE",
"houseNumber": 15,
"streetName": "Rue de la Loi",
"zipCode": 1000
},
"birthDay": "1990-12-31",
"birthPlace": "Cook, NZ",
"digitrustIntegratorIdentificationNumber": "BE:VAT:BE0000000097",
"digitrustIntegratorVATNumber": "BE0000000097",
"email": "john.doe@gmail.com",
"firstName": "John",
"gender": "MALE",
"ibans": [
"string"
],
"ibansToValidate": [
"string"
],
"idDocumentValidityEnd": "2030-12-31",
"integratorIdentificationNumber": "BE:VAT:BE0000000097",
"integratorVATNumber": "BE0000000097",
"language": "EN",
"lastName": "Doe",
"nationalities": [
"string"
],
"pep": true,
"pepCustomerExplanation": "Prime minister of New Zeland",
"sectors": [
{
"details": "Part-time",
"type": "STUDIES"
}
]
},
"debtorIBAN": "BE40251230861709",
"notificationSettings": {
"autoPayment": true,
"autoPaymentThreshold": true,
"invoice": true,
"issuer": true,
"mail": true,
"paymentIssue": true,
"push": true,
"reminder": true
},
"product": "INVOICING",
"returnURL": "https://www.myportal.com/digitealRegistrationConfirmed",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"welcomeMessage": "We inform you that your SEPA mandate for YourTelecom is transferred to Digiteal, a Belgian company that is a partner of Belfius."
}
RefundRequest: object
- amountInCents: integer
-
Amount expressed in cents to be refunded.
- currency: string
-
The currency of the amount to be refunded based on the ISO 4217-alpha standard. The default value is EUR
- paymentUUID: string (uuid)
-
Uuid of the payment to refund.
Example
{
"amountInCents": 1234,
"currency": "EUR",
"paymentUUID": "e529f8b4790f11e7b5a5be2e44b06b52"
}
SctPaymentRequestInput: object
Model representing the data necessary for creating a new SCT payment
- amountInCents: integer
-
Represents amount of the payment. The value is in cents and it must be positive
- creditorIban: string
-
Represents the creditor's iban. It must be a valid IBAN
- creditorReference: string
-
The structured reference used to reconcile the payment. This is also called the structured communication in Belgium. Both BBA (Belgium) and ISO (International) types are supported. It can be left empty if the remittanceInfo is defined
- debtorIban: string
-
Represents the debtor's iban. It must be a valid IBAN
- executionDate: string
-
Represents the date when the payment should be executed. It must use the ISO format and can not be in the past. By default, the payment will be executed ASAP.
- remittanceInfo: string
-
An unstructured string that is used as communication in the payment. This information is only used if there is no creditorReference. It can be left empty if the creditorReference is defined
Example
{
"amountInCents": 100,
"creditorIban": "BE81429126789924",
"creditorReference": "000600232562",
"debtorIban": "BE81429126789924",
"executionDate": "2021-12-20",
"remittanceInfo": "Invoice 1"
}
SctPaymentRequestResponse: object
Model representing the response when creating a new SCT payment
- paymentID: string (uuid)
-
Represents the payment's ID
- status: string EXECUTED, PLANNED
-
Status of the created payment
Example
{
"paymentID": "b0aecc22-05b9-11ec-9a03-0242ac130003",
"status": "EXECUTED"
}
Sector: object
Model representing the sector of a company/person
- details: string
-
The name of the sector if OTHER was chosen or details about the chosen sector.
- type: string ACCOUNTANT, AGRIBUSINESS, ARCHITECT, ART_SALES, BAILIFF, BANK, BUSINESS_SERVICES, CARWASH, CHEMISTRY, COMPUTER, CONSTRUCTION, DIAMONDS, DOCTOR, EDUCATION, ELECTRONICS, ENERGY, E_GAMING, GAMES_CHANCE, HEALTH, HORECA, LAWYER, LIBERAL_PROFESSION, MACHINERY, METALLURGY, NOTARY, OTHER, PHARMACEUTICAL, PHONE_SHOP, PLASTIC, PUBLIC, PUBLISHING, RETIREE, STUDIES, TAXIS, TELECOM, TEXTILE, TRADE, TRADING_ON_INTERNET, TRANSPORT, USED_PARTS, WOOD
-
Type of sector
Example
{
"details": "Part-time",
"type": "STUDIES"
}
ShortLinkRequest: object
Model representing the a short link request
- longURL: string
-
Long URL of max 1024 characters that must contain "digiteal.eu/api/v1/payment-request/pay-button/execute".
Example
{
"longURL": "https://app.digiteal.eu/api/v1/payment-request/pay-button/execute?requesterVAT=BE0406729809&amountInCents=4000&iban=BE72000000001616&language=en&remittanceInfo=Urgency%20Fund&multiple=true&confirmationURL=https://api.myservice.com/paymentConfirmed&cancelURL=https://api.myservice.com/paymentCancelled&errorURL=https://api.myservice.com/paymentError"
}
ShortLinkResponse: object
Model representing the a short link response
- shortURL: string
-
Short URL
Example
{
"shortURL": "https://app.digiteal.eu/p/abcde"
}
SupportedPeppolDocumentTypes: object
The document types supported by a PEPPOL participant in the network
- documentTypes: string[]
-
Document type identifiers
-
string - peppolIdentifier: string
-
PEPPOL identifier
Example
{
"documentTypes": "urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##urn:www.cenbii.eu:transaction:biitrns010:ver2.0:extended:urn:www.peppol.eu:bis:peppol4a:ver2.0::2.1",
"peppolIdentifier": "0208:0630675588"
}
TimeBasedTransfer: object
Model representing the data necessary for creating a trusted payment when the release condition is 'MINIMUM_AMOUNT_BEFORE_END_DATE'
- amountInCents: integer (int64)
-
The maximum amount of the trusted payment. If this amount is reached the total amount will be transferred to the creditor.
- creditorPayments: TimeBasedTransferPayment
-
This list contains the details of the outgoing payments that will be wired when the minimum requirements are met. At least one should be present.
-
TimeBasedTransferPayment - endDate: string (date)
-
The end date of the trusted payment. If the amount requirements are not met before this date the transfer is canceled and the clients are reimbursed. Format: dd/MM/yyyy
- minumumAmountInCents: integer (int64)
-
The minimum amount of the trusted payment. If this amount is reached on the end date of the trusted payment the total amount will be transferred to the creditor.
- notifyOfPaymentReceived: boolean
-
Notifications should be sent when there is a pay-in, cancellation or success for this Digitrust. True by default.
- projectName: string
-
Project name of the trusted payment
Example
{
"amountInCents": 20000000,
"creditorPayments": [
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
],
"endDate": "31/12/2019",
"minumumAmountInCents": 10000000,
"notifyOfPaymentReceived": "boolean",
"projectName": "Crowd-lending for CompanyX"
}
TimeBasedTransferInfo: object
Model representing the data of a trusted payment when the release condition is 'MINIMUM_AMOUNT_BEFORE_END_DATE'
- amountInCents: integer (int64)
-
The maximum amount of the trusted payment. If this amount is reached the total amount will be transferred to the creditor.
- availableAmountInCents: integer (int64)
-
The amount of funds available for this trusted payment. Only funds that have reached Digiteal's segregated account are considered. Funds in flight are not.
- creditorPayments: TimeBasedTransferPayment
-
This list contains the details of the outgoing payments that will be wired when the minimum requirements are met. At least one should be present.
-
TimeBasedTransferPayment - endDate: string (date)
-
The end date of the trusted payment. If the amount requirements are not met before this date the transfer is canceled and the clients are reimbursed. Format: dd/MM/yyyy
- minumumAmountInCents: integer (int64)
-
The minimum amount of the trusted payment. If this amount is reached on the end date of the trusted payment the total amount will be transferred to the creditor.
- notifyOfPaymentReceived: boolean
-
Notifications should be sent when there is a pay-in, cancellation or success for this Digitrust. True by default.
- projectName: string
-
Project name of the trusted payment
Example
{
"amountInCents": 20000000,
"availableAmountInCents": 15000000,
"creditorPayments": [
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
],
"endDate": "31/12/2019",
"minumumAmountInCents": 10000000,
"notifyOfPaymentReceived": "boolean",
"projectName": "Crowd-lending for CompanyX"
}
TimeBasedTransferPayment: object
Model representing the payment to the creditor of a time-based trusted payment
- communication: string
-
Communication associated with this payment
- creditorIBAN: string
-
IBAN value of the creditor on which the the amount will be wired when the minimum requirements are met.
- percentage: number
-
Percentage of the trusted payment that will be transferred to this creditor. Default is 100. The percentage can contain at most 6 numbers behind the decimal point
Example
{
"communication": "commission",
"creditorIBAN": "BE40251230861709",
"percentage": 100
}
TransferCreationResult: object
Model representing the result of a digitrust creation
- creditorReference: string
-
The creditor reference. Use this creditor reference when adding (wire transfer) an amount for this digitrust.
- transferID: string (uuid)
-
The unique identifier of the digitrust
- transferIDx64: string
Example
{
"creditorReference": "RF84U6",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIDx64": "string"
}
TransferExecutionData: object
Model representing the data necessary to execute the digitrust
- comment: string
-
optional field for a comment
- requesterVAT: string
-
The VAT number of the Requester. The requesterVAT needs to be filled in if the transfer execution is created by an integrator in the name of the Requester.
- transferID: string (uuid)
-
The transfer unique identifier received upon creation
- transferIDs: string[]
-
The transfer unique identifiers received upon creation
-
string (uuid) - validate: boolean
-
Boolean indicating if you want to execute the transfer (true) or cancel the transfer(false). Canceling will reimburse the clients.
Example
{
"comment": "Glad to participate !",
"requesterVAT": "BE0000000196",
"transferID": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIDs": [
"string (uuid)"
],
"validate": true
}
TrustedPaymentContribution: object
Model representing the data necessary for describing a contribution to a trusted payment.
- amountInCents: integer
-
Amount expressed in cents that has to be paid. If this is not provided for a confirmation-based trusted payment, the total amount of the trusted payment will be requested.
- transferId: string (uuid)
-
Uuid of the trusted payment as determined by Digiteal. If this value is used the creditor reference(s) are ignored.
Example
{
"amountInCents": 1234,
"transferId": "e529f8b4790f11e7b5a5be2e44b06b52"
}
TrustedPaymentRequest: object
Model representing the data necessary for requesting the collection of a trusted payment.
- amountInCents: integer
-
Amount expressed in cents that has to be paid. If this is not provided for a confirmation-based trusted payment, the total amount of the trusted payment will be requested.
- cancelURL: string
-
Defines the url where Digiteal has to redirect the user when the payment was cancelled. If not present, it will revert to the errorURL. Maximum length of 255 characters.
- confirmationURL: string
-
Defines the url where Digiteal has to redirect the user when the payment has been completed successfully. Maximum length of 255 characters.
- contributions: TrustedPaymentContribution
-
Contributions to the trusted payments as determined. If this value is used the creditor reference(s), transferId and transferIds are ignored. Available since 1.42.
-
TrustedPaymentContribution - creditorReference: string
-
Creditor reference of the trusted payment as determined by Digiteal. This will not be used if the transferId(s) is/are provided.
- creditorReferences: string[]
-
Creditor references of the trusted payment as determined by Digiteal. This will not be used if the transferId(s) is/are provided.
-
string - errorURL: string
-
Defines the url where Digiteal has to redirect the user when an error occurred during the payment. Maximum length of 255 characters.
- language: string
-
The language of the client (NL, FR or EN)
- transferId: string (uuid)
-
Uuid of the trusted payment as determined by Digiteal. If this value is used the creditor reference(s) are ignored.
- transferIds: string[]
-
Uuids of the trusted payment as determined by Digiteal. If this value is used the creditor reference(s) and transferId are ignored.
-
string (uuid)
Example
{
"amountInCents": 1234,
"cancelURL": "https://api.myservice.com/paymentCancelled",
"confirmationURL": "https://api.myservice.com/paymentConfirmed",
"contributions": [
{
"amountInCents": 1234,
"transferId": "e529f8b4790f11e7b5a5be2e44b06b52"
}
],
"creditorReference": "RF84U6",
"creditorReferences": [
"string"
],
"errorURL": "https://api.myservice.com/paymentError",
"language": "EN",
"transferId": "e529f8b4790f11e7b5a5be2e44b06b52",
"transferIds": [
"string (uuid)"
]
}
UBO: object
Model representing information about a UBO
- firstName: string
-
The first name of the UBO.
- lastName: string
-
The last name of the UBO
- pepRelated: boolean
-
True if the UBO is a PEP or PEP related
Example
{
"firstName": "Jean",
"lastName": "Dupont",
"pepRelated": false
}
UserInfo: object
Model representing information about a person or a company
- companyStatus: string DEACTIVATED, NOT_ACTIVATED, NOT_FOUND, ON_HOLD, PROD
-
represents the status of the company within digiteal: NONE = unknown, NOT_ACTIVATED = Digiteal's terms and conditions have not been accepted yet, ON_HOLD = not active as issuer , PROD = active as issuer
- email: string
-
email address of the person/company
- id: integer (int64)
-
The Digiteal ID of the company
- personStatus: string ACTIVATED, COMPANY, DEACTIVATED, EXPIRED, NOT_ACTIVATED, NOT_FOUND, OK, PENDING, UNKNOWN
-
represents the status of the person within Digiteal: NOT_FOUND: No user with this email address registered in Digiteal, COMPANY: This email address is linked to a company, NOT_ACTIVATED: his email address has not been confirmed, ACTIVATED: his email address has been confirmed but he did not finish the KYC, DEACTIVATED: he deleted his account in Digiteal, PENDING: he finished his KYC and his information is being reviewed by Digiteal, OK: His KYC has been checked, he is ready to perform payments, EXPIRED: His KYC information has expired.
- type: string COMPANY, NONE, PERSON
-
COMPANY, PERSON or NONE if this email is not linked to a user that confirmed his email address
- vatNumber: string
-
VAT number of the concerned company
Example
{
"companyStatus": "PROD",
"email": "john.doe@yopmail.com",
"id": 12,
"personStatus": "OK",
"type": "COMPANY",
"vatNumber": "BE0000000097"
}
WebHookConfigurationInfo: object
Model representing information about a webhook configuration
- identificationNumber: string
-
Identification number of the company for whom the webhooks are configured (if any). This information should not be added to the calls made to configure the webhooks because the webhook configuration will always be attached to the caller through the credentials he used to connect. It will only be present in the data returned by Digiteal. (see the company identification number documentation)
- login: string
-
Login used to call the webhooks (in the HTTP Basic Auth). If no login/password is provided or if the webhook is sent by email then this will not be used.
- password: string
-
Password used to call the webhooks (in the HTTP Basic Auth). If no login/password is provided or if the webhook is sent by email then this will not be used.
- vatNumber: string
-
VAT number of the company for whom the webhooks are configured (if any). This information should not be added to the calls made to configure the webhooks because the webhook configuration will always be attached to the caller through the credentials he used to connect. It will only be present in the data returned by Digiteal.
- webHooks: WebHookInfo
-
Webhooks
-
WebHookInfo
Example
{
"identificationNumber": "BE:VAT:BE0000000097",
"login": "userLogin",
"password": "NotProvidedForSecurityReasons",
"vatNumber": "BE0000000097",
"webHooks": [
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}
]
}
WebHookInfo: object
Model representing information about a webhook
- type: string
-
Type of webhook to configure.
- url: string
-
URL called by the webhook. For initial setup and testing purpose, you can also set to receive the webhook as an email using a URL starting with "mailto:".
Example
{
"type": "PAYMENT_INITIATED",
"url": "https://myIntegrator.com/myApp/paymentInitiated"
}