Payment requester API API Reference

API that needs to be implemented by the payment requester to receive notifications

API Endpoint
http://localhost:8180/
Contact: support@digiteal.atlassian.net
Version: 1.0

Paths

notify of a company change

POST /v1/api/payment-notification/company

companyNotification

Request Content-Types: application/json
Request Example
{
  "changeType": "string",
  "executionTimestamp": "string",
  "id": "integer (int64)",
  "integratorVAT": "string",
  "name": "string",
  "trustedPaymentIntegratorVAT": "string",
  "vat": "string"
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

notify an auto pay configuration creation or change

POST /v1/api/payment-notification/config-change

autoPayConfiguration

Request Content-Types: application/json
Request Example
{
  "changeType": "string",
  "clientID": "string",
  "currency": "string",
  "executionTimestamp": "string",
  "maxAmount": "integer (int64)",
  "paymentDate": "string",
  "periodicity": "string",
  "requesterID": "string",
  "requesterVAT": "string"
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

notify a confirmed payment

POST /v1/api/payment-notification/confirmation

paymentConfirmationNotification

Request Content-Types: application/json
Request Example
{
  "originBankAccount": "string",
  "paidAmountInCents": "integer (int64)",
  "paymentConfirmationDate": "string",
  "paymentID": "string"
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

notify an error occured during payment

POST /v1/api/payment-notification/error
paymentID: string
in query

The unique identifier of the payment known by the requester

errorType: string TECHNICAL_ERROR, SECURITY_ISSUE, CANCELED
in query

The type of error that occured. Possible errors are technical error, client canceled payment during the flow, a security issue occured (pin code blocked, ...)

message: string
in query

Detailed message concerning the error

200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

notify of an invoice change

POST /v1/api/payment-notification/invoice

invoiceNotification

Request Content-Types: application/json
Request Example
{
  "amountInCents": "integer (int64)",
  "changeType": "string",
  "comment": "string",
  "creditNoteAmountInCents": "integer (int64)",
  "creditNoteUUID": "string",
  "currency": "string",
  "customerEmail": "string",
  "customerFirstName": "string",
  "customerInternalId": "string",
  "customerName": "string",
  "customerVAT": "string",
  "documentExtension": "string",
  "documentFileName": "string",
  "documentUUID": "string",
  "executionTimestamp": "string",
  "internalId": "string",
  "issuerId": "integer (int64)",
  "issuerName": "string",
  "issuerVAT": "string",
  "status": "string",
  "uuid": "string"
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

notify a transfer of funds

POST /v1/api/payment-notification/transfer-of-funds

transferOfFundsNotification

Request Content-Types: application/json
Request Example
{
  "bankTransactionID": "string",
  "errorCode": "string",
  "errorMessage": "string",
  "executionTimestamp": "string",
  "originBankAccount": "string",
  "paymentRequestInformation": {
    "amountInCents": "integer (int64)",
    "clientID": "string",
    "creditorReference": "string",
    "currency": "string",
    "destinationBankAccount": "string",
    "paymentID": "string",
    "paymentRequestDate": "string",
    "paymentRequestDuedate": "string",
    "purpose": "string",
    "remittanceInfo": "string",
    "requestorID": "integer (int64)",
    "requestorVAT": "string"
  },
  "paymentStatus": "string",
  "transferID": "string"
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal server error occured

Response Content-Types: */*

Schema Definitions

InvoiceNotification: object

Model representing invoice notification

amountInCents: integer (int64)

Total amount of the invoice expressed in cents

changeType: string PUBLISHED, READ, PAID, COMMENTED, UNPAID, INVOICE_DOCUMENT_ADDED, CREDIT_NOTE_PUBLISHED, CREDIT_NOTE_DOCUMENT_ADDED

Type of change to the invoice

comment: string

Comment of the customer on the invoice

creditNoteAmountInCents: integer (int64)

the amount of the credit note in cents

creditNoteUUID: string

UUID of the credit note

currency: string

Currency of the payment to be performed linked to this invoice

customerEmail: string

Customer email

customerFirstName: string

First name of the customer

customerInternalId: string

Customer internal Id (as definied by the issuer)

customerName: string

Name of the customer (last name for an individual)

customerVAT: string

VAT number of the customer

documentExtension: string

Extension of the document attached to the invoice

documentFileName: string

File name of the document attached to the invoice

documentUUID: string

UUID of the document attached to the invoice

executionTimestamp: string

the execution timestamp of the notification (format yyyy-MM-dd hh:mm:ss)

internalId: string

Identifier of the invoice as provided by the issuer

issuerId: integer (int64)

Identifier of the issuer (as defined by Digiteal)

issuerName: string

Name of the issuer

issuerVAT: string

VAT number of the issuer

status: string

Status of the invoice

uuid: string

UUID of the invoice

Example
{
  "amountInCents": "integer (int64)",
  "changeType": "string",
  "comment": "string",
  "creditNoteAmountInCents": "integer (int64)",
  "creditNoteUUID": "string",
  "currency": "string",
  "customerEmail": "string",
  "customerFirstName": "string",
  "customerInternalId": "string",
  "customerName": "string",
  "customerVAT": "string",
  "documentExtension": "string",
  "documentFileName": "string",
  "documentUUID": "string",
  "executionTimestamp": "string",
  "internalId": "string",
  "issuerId": "integer (int64)",
  "issuerName": "string",
  "issuerVAT": "string",
  "status": "string",
  "uuid": "string"
}

TransferOfFundsNotification: object

Model representing transfer of fund notification

bankTransactionID: string

The unique identifier of the payment known by the requester

errorCode: string

Error code indication

errorMessage: string

Detailed error message

executionTimestamp: string

the execution timestamp of the notification (format yyyy-MM-dd hh:mm:ss)

originBankAccount: string

the bank account from where the money has been transferred

paymentRequestInformation: PaymentRequestInformation

represents the basic invoice information

paymentStatus: string INITIATED, WITHDRAWAL_ERROR, WITHDRAWAL_SUCCESS, REIMBURSMENT_FROM_DIGITEAL, REIMBURSMENT_FROM_REQUESTOR, TRANSFERRED

the status of the payment

transferID: string

The unique identifier of the trusted transfer known by the requester

Example
{
  "bankTransactionID": "string",
  "errorCode": "string",
  "errorMessage": "string",
  "executionTimestamp": "string",
  "originBankAccount": "string",
  "paymentRequestInformation": {
    "amountInCents": "integer (int64)",
    "clientID": "string",
    "creditorReference": "string",
    "currency": "string",
    "destinationBankAccount": "string",
    "paymentID": "string",
    "paymentRequestDate": "string",
    "paymentRequestDuedate": "string",
    "purpose": "string",
    "remittanceInfo": "string",
    "requestorID": "integer (int64)",
    "requestorVAT": "string"
  },
  "paymentStatus": "string",
  "transferID": "string"
}

CompanyNotification: object

Model representing a company notification

changeType: string CREATED, VALIDATED, UPDATED, PUT_ON_HOLD, CHANGED_INTEGRATOR, CHANGED_TRUSTED_PAYMENT_INTEGRATOR, DELETED

Describes the change on the company

executionTimestamp: string

the execution timestamp of the notification (format yyyy-MM-dd hh:mm:ss)

id: integer (int64)

The Digiteal ID of the company

integratorVAT: string

The VAT number of the integrator

name: string

The name of the company

trustedPaymentIntegratorVAT: string

The VAT number of the trusted payment integrator

vat: string

The VAT number of the company

Example
{
  "changeType": "string",
  "executionTimestamp": "string",
  "id": "integer (int64)",
  "integratorVAT": "string",
  "name": "string",
  "trustedPaymentIntegratorVAT": "string",
  "vat": "string"
}

PaymentConfirmationNotification: object

Model representing payment request information

originBankAccount: string

the bank account from where the money has been transferred

paidAmountInCents: integer (int64)

the paid amount in cents

paymentConfirmationDate: string

the date on which the payment has been confirmed

paymentID: string

The unique identifier of the payment known by the requester

Example
{
  "originBankAccount": "string",
  "paidAmountInCents": "integer (int64)",
  "paymentConfirmationDate": "string",
  "paymentID": "string"
}

AutoPayConfiguration: object

Model representing the settings of an auto pay configuration

changeType: string CREATE, SUSPEND, CANCEL, UPDATE, ACTIVATE

describes the action that has to be taken on the auto pay configuration

clientID: string

client id (known to the requestor) of the person

currency: string

the currency of the payment (ISO 4217 Currency Codes)

executionTimestamp: string

the execution timestamp of the notification (format yyyy-MM-dd hh:mm:ss)

maxAmount: integer (int64)

The maximum allowed amount for the automatic payment (in cents)

paymentDate: string DUE_DATE, ONE_WEEK_BEFORE_DUE_DATE, IMMEDIATE

defines when the payment will be executed

periodicity: string YEAR, SEMESTER, TRIMESTER, MONTH

the periodicity of the invoice

requesterID: string

the id of the requester that issued the invoice

requesterVAT: string

the VAT number of the requester that issued the invoice

Example
{
  "changeType": "string",
  "clientID": "string",
  "currency": "string",
  "executionTimestamp": "string",
  "maxAmount": "integer (int64)",
  "paymentDate": "string",
  "periodicity": "string",
  "requesterID": "string",
  "requesterVAT": "string"
}

PaymentRequestInformation: object

Model representing payment request information

amountInCents: integer (int64)

the amount of the invoice in cents

clientID: string

client id (known to the requestor) of the person

creditorReference: string

The reference used by the biller to reconcile the payment. This is also called the structured communication in Belgium. It can be left empty if the remittanceInfo is defined

currency: string

the currency of the payment (ISO 4217 Currency Codes)

destinationBankAccount: string

the IBAN to which the payment has been executed

paymentID: string

The unique identifier of the payment known by the requester

paymentRequestDate: string

the date on which the invoice has been sent

paymentRequestDuedate: string

the due date of the invoice

purpose: string

The purpose based on the ISO 20022 standard

remittanceInfo: string

An unstructured string that is used as communication in the payment. This information is only used if there is nol creditorReference. It can be left empty if the creditorReference is defined

requestorID: integer (int64)

the id of the requester that issued the invoice

requestorVAT: string

the VAT number of the requester that issued the invoice

Example
{
  "amountInCents": "integer (int64)",
  "clientID": "string",
  "creditorReference": "string",
  "currency": "string",
  "destinationBankAccount": "string",
  "paymentID": "string",
  "paymentRequestDate": "string",
  "paymentRequestDuedate": "string",
  "purpose": "string",
  "remittanceInfo": "string",
  "requestorID": "integer (int64)",
  "requestorVAT": "string"
}