swagger: '2.0'
info:
description: 'The current set of APIs will be available in Q2 2026 on Worldline Global Issuing Platforms.
Additional APIs are under construction and planned to be available in 2026.'
version: 2.41.1
title: Worldline Card Issuing - AccountState Account API
contact: {}
host: sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/card-issuing
basePath: /api/v2
schemes:
- https
tags:
- name: Account
description: Account Api Controller
paths:
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}:
get:
tags:
- Account
summary: Retrieve account by external reference
operationId: retrieveAccountByIssuerExtRef
description: "The \"retrieve account\" API allows the account details to be retrieved.\nThe main input fields are:\n- The issuer ID\n- The account for which the detail is requested: It can be provided by using the account reference or the issuer external account reference \n\nIt is also possible to request some additional data by using the embedded fields.\n\nIn return, the interface provides generic account information (mainly master data). For credit cards, payment mode, the due amount calculation is provided back."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- childrenAccountIdentifiers
- insuranceContracts
- loyaltyPoints
- selectedModels
- statusHistory
- rootAccount
- hierarchyOperationStatusHistory
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityAccount'
security:
- basic: []
deprecated: false
patch:
tags:
- Account
summary: Update account parameters by external reference
description: 'The "update account parameters" API allows the list of pre-defined parameters (attributes) of an account to be updated.
The main input fields requested by the API are:
- The issuer ID
- The account for which updates are required: It can be provided by using the account reference or the issuer external account reference
- Parameters to be updated
The account information can be initially retrieved by using the retrieve Account API.
The updated parameters should be consistent with the initial product configuration defined in the system.
(e.g a change of closure calendar is accepted only if the provided calendar reference is allowed in the product definition).
This API is used for example to change the IBAN, closure date.'
operationId: modifyAccountByIssuerExtRef
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- in: body
name: body
required: true
schema:
$ref: '#/definitions/ModifyAccountRequest'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityModifyAccountResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/account-guarantor:
get:
tags:
- Account
summary: Retrieve account guarantor for an account by external reference
operationId: retrieveAccountGuarantorByIssuerExtRef
description: 'The API allows information on the account guarantor to be retrieved.
The main input fields are:
- The issuer ID
- The account for which information is requested.
It is also possible to request additional data like addresses by using the embedded fields.
The API response contains :
- either customer information if the contract owner is a person
- or company information if the contract owner is a company.'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- addressIdentifiers
- addresses
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContractMember'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/account-history:
get:
tags:
- Account
summary: Retrieve list of historic updates of an account by external reference
description: "The API allows the account update history of an account to be retrieved.\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which information is requested : It can be provided by using the account reference or the issuer account external reference.\nA start date and an end date can be provided in order to limit the search of the history.\nIn response, the interface provides a list of changes with the effective date of the update."
operationId: listAccountHistoryByIssuerExtRef
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: periodStartDateTime
in: query
required: false
type: string
description: 'Format : yyyy-MM-ddTHH:mm:ssZ'
- name: periodEndDateTime
in: query
required: false
type: string
description: 'Format : yyyy-MM-ddTHH:mm:ssZ'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListAccountHistory'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/account-owner:
get:
tags:
- Account
summary: Retrieve account owner for an account by external reference
operationId: retrieveAccountOwnerByIssuerExtRef
description: 'The API allows information on the account owner to be retrieved.
The main input fields are:
- The issuer ID
- The account for which information is requested.
It is also possible to request additional data like addresses by using the embedded fields.
The API response contains :
- either customer information if the contract owner is a person
- or company information if the contract owner is a company'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- addressIdentifiers
- addresses
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContractMember'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/balance:
get:
tags:
- Account
summary: Retrieve financial information by external reference
operationId: retrieveAccountBalanceByIssuerExtRef
description: "The API allows financial information of an account to be retrieved (not relevant for a debit card).\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which information is requested.\nIn response, different information is returned, such as account balance, sum of all operations (scheme operations, fees, ect) posted to the account (accepted amount), current open to buy amount (credit and prepaid accounts only)."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityAccountBalance'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/contract:
get:
tags:
- Account
summary: Retrieve contract for an account by external reference
operationId: retrieveContractForAccountByIssuerExtRef
description: "The API enables the consumer contract data for a given account to be retrieved.\nThe main input fields are:\n•\tThe issuer ID\n•\tThe account for which information is requested.\n\nIt is also possible:\n- to request additional data like accounts, cardContracts by using the embedded fields.\n- to return only identifiers related to the embedded resources"
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: relatedResourceIdentifiersOnly
in: query
description: "If relatedResourceIdentifiersOnly is true, the API returns only identifiers related to the embedded resources (for example, if embedded fields cardContracts.cards are requested and relatedResourceIdentifiersOnly is true, only cardContractIdentifier in CardContract and cardIdentifier in Card will be returned). \nIf relatedResourceIdentifiersOnly is false, the API returns all resource information (for example, if embedded fields cardContracts.cards are requested and relatedResourceIdentifiersOnly is false, all information in CardContract and all information in Card will be returned).\nBy default, relatedResourceIdentifiersOnly is false."
required: false
default: false
type: boolean
- name: relatedResourceBaseInfoOnly
in: query
description: 'relatedResourceBaseInfoOnly (cannot be used with relatedResourceIdentifiersOnly):
If relatedResourceBaseInfoOnly is true, the API returns only main information related to the embedded resources (for example, if embedded fields accounts and cardContracts are requested and relatedResourceBaseInfoOnly is true, only main information of Account and Card Contract will be returned).
The main information is as follows :
- For Account: accountIdentifier, root, status, accountOwnerIdentifier and accountGuarantorIdentifier
- For Card Contract: cardContractIdentifier, cardHolderIdentifier and status
- For Card: cardIdentifier, pan, maskedPan, expiryDate, panSequenceNumber, status, externalStatus, panReference and blockingReason
- For Customer: customerIdentifier, courtesyTitle, firstName and lastName
If relatedResourceBaseInfoOnly is false, the API returns all resource information (for example, if embedded fields accounts and cardContracts are requested and relatedResourceBaseInfoOnly is false, all information in Account and all information in CardContract will be returned).
By default, relatedResourceBaseInfoOnly is false.'
required: false
default: false
type: boolean
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- advertisementFlags
- deliveryChannel
- legitimacyDocuments
- contractFees
- accountIdentifiers
- accounts
- cardContractIdentifiers
- cardContracts
- cardContracts.cards
- dataAnalysisFlags
- contractCustomerIdentifiers
- contractCustomers
- addonSubscriptions
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContract'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/corporate-contract:
get:
tags:
- Account
summary: Retrieve corporate contract for an account by external reference (beta)
operationId: retrieveCorporateContractForAccountByIssuerExtRef
description: "The API allows the corporate contract detail of an account to be retrieved. \n\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which the corporate contract information is requested: It can be provided by using the account reference or the issuer account external reference. \n\nIt is also possible to request some additional data, such as list of corporate contract entities (limited to 100), list of all customers (limited to 100), list of all companies (limited to 100), list of corporate employee accounts (limited to 100), root account linked to this corporate contract, by using the embedded fields.\n\nIn return, the interface provides the corporate contract details."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- corporateContractEntities
- contractCustomers
- contractCompanies
- corporateEmployeeAccounts
- rootAccount
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCorporateContract'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/credit-limit:
get:
tags:
- Account
summary: Retrieve account credit limit by external reference
operationId: retrieveAccountCreditLimitByIssuerExtRef
description: The API allows the permanent credit limit for a given account to be retrieved.
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCreditLimit'
security:
- basic: []
deprecated: false
put:
tags:
- Account
summary: Update account credit limit by external reference
operationId: modifyCreditLimitByIssuerExtRef
description: The API allows the permanent credit limit for a given account to be updated.
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- in: body
name: body
required: false
schema:
$ref: '#/definitions/ModifyCreditLimitRequest'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityModifyCreditLimitResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/credit-transfers:
get:
tags:
- Account
summary: List outgoing credit transfers for an account by external reference
operationId: listCreditTransfersByIssuerAccExtRef
description: "The API allows the list of credit transfers posted for an account to be retrieved.\nThis API applies to the credit cards domain.\nA credit transfer can be posted to an account to pay the due amount (for eg, self-payer).\nThe input parameters are:\n- The issuer ID \n- The involved account: it can be provided by using the account reference or the issuer external account reference,\n- Optionally the search period (start date / end date),\n\nIt is also possible to filter the reimbursement operations (on demand, cyclic, daily, on transaction or on contract termination)."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: reimbursementTriggers
in: query
description: 'reimbursementTriggers - Parameter to filter reimbursement operations
Available values : ON_DEMAND, CYCLIC (related to monthly cycle closure), DAILY, ON_TRANSACTION, ON_TERMINATION (on contract termination)'
required: false
type: array
items:
type: string
collectionFormat: multi
- name: periodStartDateTime
in: query
description: 'Period start date of credit transfers to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: periodEndDateTime
in: query
description: 'Period end date credit transfers to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListCreditTransfer'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/direct-debits:
get:
tags:
- Account
summary: List direct debits for an account by external reference
operationId: listDirectDebitsByIssuerAccExtRef
description: 'The API allows the list of sepa and non sepa direct debit notes generated from an account to repay its due amount to be retrieved.
This API applies to the credit cards domain.
This API applies to the credit cards domain.
The input parameters are:
- The issuer ID
- The involved account: it can be provided by using the account reference or the issuer external account reference,
- Optionally the search period (start date / end date),
It is also possible to filter the payment operations (on demand, cyclic or on transaction).'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: paymentTriggers
in: query
description: 'paymentTriggers - Parameter to filter payment operations
Available values : ON_DEMAND, CYCLIC (related to monthly cycle closure), ON_TRANSACTION'
required: false
type: array
items:
type: string
collectionFormat: multi
- name: periodStartDateTime
in: query
description: 'Period start date of direct debit to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: periodEndDateTime
in: query
description: 'Period end date direct debit to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListDirectDebit'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/cancel-delinquency:
post:
tags:
- Account
summary: Cancel account delinquency by external reference
description: "An account is in delinquency situation (the required minimum payment is overdue)\nThe API allows the delinquency situation of an account to be cancelled.\nAs an input, the account identifier is provided by using:\n•\tthe account reference generated by WL\n•\tor the issuer external account reference\nOptionally, the required overdue minimum payment can be cancelled. \nAs a result :\n•\tthe account is no more in delinquency situation\n•\tthe amount due (required overdue minimum payment) is cancelled if this has been requested."
operationId: cancelAccountDelinquencyByExtRef
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: issuerAccountExternalReference
in: path
description: issuerAccountExternalReference
required: true
type: string
- name: issuerId
in: path
description: issuerId
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- in: body
name: requestBody
description: requestBody
required: false
schema:
$ref: '#/definitions/CancelAccountDelinquencyRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCancelAccountDelinquencyResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/turnover-information:
get:
tags:
- Account
summary: Retrieve turnover information for an account by external reference (beta)
operationId: retrieveTurnoverInformationByExtRef
description: The API returns current and historical turnover information of an account (for a monthly or annual turnover).
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityTurnoverInformation'
security:
- basic: []
deprecated: true
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/turnovers:
get:
tags:
- Account
summary: Retrieve list of turnover for an account by external reference
operationId: listTurnoverByExtRef
description: "This API returns a list of turnovers with the possibility to return only one type of turnover by providing the turnoverType as query parameter .\nFor each type of turnover, current turnover and historical data are returned.\nThe possible turnovers are : \n•\tthe turnover related to membership fee management (turnoverType=MEMBERSHIP_FEE). \nThis turnover :\n- is optional (depends on product configuration)\n- can be used for membership fee reimbursement (if any)\n- is calculated for a period based on the membership fee anniversary date \n\n•\tthe default turnover (turnoverType=DEFAULT)\nThis turnover :\n- is optional (depends on product configuration)\n- can be communicated to cardholder in statement\n- is used for automatic account setup fee reimbursement, if any. \n- is calculated for a period based on Account anniversary date or the contract anniversary date (depends on product configuration)"
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: turnoverType
in: query
description: 'turnoverType : DEFAULT, MEMBERSHIP_FEE. If the parameter is not provided, all turnovers are returned (if available)'
required: false
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityTurnover'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/temporary-credit-limits:
get:
tags:
- Account
summary: List temporary credit limits for an account by external reference
operationId: listTemporaryCreditLimitForAccountByIssuerExtRef
description: 'The API allows the temporary credit limits for a given account to be retrieved.
It is possible to request either only the active temporary credit limit or the history of temporary limits for the account.'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: issuerAccountExternalReference
in: path
description: Issuer Account External Reference
required: true
type: string
- name: all
in: query
description: By default return only active temporary Credit Limits
required: false
type: boolean
default: false
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListTemporaryCreditLimit'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/create-mandate:
post:
x-wl-idempotent: true
tags:
- Account
summary: Create mandate by external reference
description: "The API allows to create a SEPA mandate for the given account by using issuer account external reference or the account reference (generated by WL). \n- For SEPA mandate successful creation in mandate management system, the Iban, Iban owner name and mandate signature date are to be provided. As a result, mandate is created in \"Active\" status and is ready to be used.\n- It is also possible to attach an existing SEPA mandate (explicitly created in mandate management system in advance) to a given account. To succeed, unique mandate reference (UMR) is to be provided as an input. As a result, mandate is attached if exists in mandate management system and is in \"Active\" status.\n\nA mandate is an authorization that a debtor gives to a creditor in order to take payments from their customers bank accounts.\n\nIdempotency is managed by the API; that is, if the request with the same WL-Correlation-ID is sent multiple times, it will be executed only once. The response will be retrieved directly from our system."
operationId: createMandateByIssuerExtRef
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: issuerAccountExternalReference
in: path
description: issuerAccountExternalReference
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: issuerId
required: true
type: string
- in: body
name: requestBody
description: requestBody
required: true
schema:
$ref: '#/definitions/CreateMandateRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCreateMandateResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/external-accounts/{issuerAccountExternalReference}/cancel-mandate:
post:
tags:
- Account
summary: Cancel mandate by external reference
description: "The API allows to cancel SEPA mandate for the given account by using issuer account external reference or the account reference (generated by WL). \nThe SEPA mandate can be cancelled immediately or in the future at a date provided by the issuer.\n- For immediate cancellation, mandate is “Revoked” immediately in mandate management system.\n- For scheduled cancellation, mandate is not “Revoked” until the cancellation date is reached in mandate management system."
operationId: cancelMandateByIssuerExtRef
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: issuerAccountExternalReference
in: path
description: issuerAccountExternalReference
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: issuerId
required: true
type: string
- in: body
name: requestBody
description: requestBody
required: true
schema:
$ref: '#/definitions/CancelMandateRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCancelMandateResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}:
get:
tags:
- Account
summary: Retrieve account
operationId: retrieveAccount
description: "The \"retrieve account\" API allows the account details to be retrieved.\nThe main input fields are:\n- The issuer ID\n- The account for which the detail is requested: It can be provided by using the account reference or the issuer external account reference \n\nIt is also possible to request some additional data by using the embedded fields.\n\nIn return, the interface provides generic account information (mainly master data). For credit cards, payment mode, the due amount calculation is provided back."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- childrenAccountIdentifiers
- insuranceContracts
- loyaltyPoints
- selectedModels
- statusHistory
- rootAccount
- hierarchyOperationStatusHistory
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityAccount'
security:
- basic: []
deprecated: false
patch:
tags:
- Account
summary: Update account parameters
description: 'The "update account parameters" API allows the list of pre-defined parameters (attributes) of an account to be updated.
The main input fields requested by the API are:
- The issuer ID
- The account for which updates are required: It can be provided by using the account reference or the issuer external account reference
- Parameters to be updated
The account information can be initially retrieved by using the retrieve Account API.
The updated parameters should be consistent with the initial product configuration defined in the system.
(e.g a change of closure calendar is accepted only if the provided calendar reference is allowed in the product definition).
This API is used for example to change the IBAN, closure date.'
operationId: modifyAccount
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- in: body
name: body
required: true
schema:
$ref: '#/definitions/ModifyAccountRequest'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityModifyAccountResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/account-guarantor:
get:
tags:
- Account
summary: Retrieve account guarantor for an account
operationId: retrieveAccountGuarantor
description: 'The API allows information on the account guarantor to be retrieved.
The main input fields are:
- The issuer ID
- The account for which information is requested.
It is also possible to request additional data like addresses by using the embedded fields.
The API response contains :
- either customer information if the contract owner is a person
- or company information if the contract owner is a company.'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- addressIdentifiers
- addresses
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContractMember'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/account-history:
get:
tags:
- Account
summary: Retrieve list of historic updates of an account
description: "The API allows the account update history of an account to be retrieved.\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which information is requested : It can be provided by using the account reference or the issuer account external reference.\nA start date and an end date can be provided in order to limit the search of the history.\nIn response, the interface provides a list of changes with the effective date of the update."
operationId: listAccountHistory
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: periodStartDateTime
in: query
required: false
type: string
description: 'Format : yyyy-MM-ddTHH:mm:ssZ'
- name: periodEndDateTime
in: query
required: false
type: string
description: 'Format : yyyy-MM-ddTHH:mm:ssZ'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListAccountHistory'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/account-owner:
get:
tags:
- Account
summary: Retrieve account owner for an account
operationId: retrieveAccountOwner
description: 'The API allows information on the account owner to be retrieved.
The main input fields are:
- The issuer ID
- The account for which information is requested.
It is also possible to request additional data like addresses by using the embedded fields.
The API response contains :
- either customer information if the contract owner is a person
- or company information if the contract owner is a company.'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- addressIdentifiers
- addresses
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContractMember'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/cancel-delinquency:
post:
tags:
- Account
summary: Cancel account delinquency
description: "An account is in delinquency situation (the required minimum payment is overdue)\nThe API allows the delinquency situation of an account to be cancelled.\nAs an input, the account identifier is provided by using:\n•\tthe account reference generated by WL\n•\tor the issuer external account reference\nOptionally, the required overdue minimum payment can be cancelled. \nAs a result :\n•\tthe account is no more in delinquency situation\n•\tthe amount due (required overdue minimum payment) is cancelled if this has been requested."
operationId: cancelAccountDelinquency
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: accountReference
in: path
description: accountReference
required: true
type: string
- name: issuerId
in: path
description: issuerId
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- in: body
name: requestBody
description: requestBody
required: false
schema:
$ref: '#/definitions/CancelAccountDelinquencyRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCancelAccountDelinquencyResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/turnover-information:
get:
tags:
- Account
summary: Retrieve turnover information for an account (beta)
operationId: retrieveTurnoverInformation
description: The API returns current and historical turnover information of an account (for a monthly or annual turnover).
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: accountReference
in: path
description: accountReference
required: true
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityTurnoverInformation'
security:
- basic: []
deprecated: true
/issuers/{issuerId}/accounts/{accountReference}/turnovers:
get:
tags:
- Account
summary: Retrieve list of turnover for an account
operationId: listTurnover
description: "This API returns a list of turnovers with the possibility to return only one type of turnover by providing the turnoverType as query parameter .\nFor each type of turnover, current turnover and historical data are returned.\nThe possible turnovers are : \n•\tthe turnover related to membership fee management (turnoverType=MEMBERSHIP_FEE). \nThis turnover :\n- is optional (depends on product configuration)\n- can be used for membership fee reimbursement (if any)\n- is calculated for a period based on the membership fee anniversary date \n\n•\tthe default turnover (turnoverType=DEFAULT)\nThis turnover :\n- is optional (depends on product configuration)\n- can be communicated to cardholder in statement\n- is used for automatic account setup fee reimbursement, if any. \n- is calculated for a period based on Account anniversary date or the contract anniversary date (depends on product configuration)"
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: accountReference
in: path
description: accountReference
required: true
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: turnoverType
in: query
description: 'turnoverType : DEFAULT, MEMBERSHIP_FEE. If the parameter is not provided, all turnovers are returned (if available)'
required: false
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityTurnover'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/balance:
get:
tags:
- Account
summary: Retrieve financial information
operationId: retrieveAccountBalance
description: "The API allows financial information of an account to be retrieved (not relevant for a debit card).\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which information is requested.\nIn response, different information is returned, such as account balance, sum of all operations (scheme operations, fees, ect) posted to the account (accepted amount), current open to buy amount (credit and prepaid accounts only)."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityAccountBalance'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/contract:
get:
tags:
- Account
summary: Retrieve contract for an account
operationId: retrieveContractForAccount
description: "The API enables the consumer contract data for a given account to be retrieved.\nThe main input fields are:\n•\tThe issuer ID\n•\tThe account for which information is requested.\n\nIt is also possible:\n- to request additional data like accounts, cardContracts by using the embedded fields.\n- to return only identifiers related to the embedded resources"
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: relatedResourceIdentifiersOnly
in: query
description: "If relatedResourceIdentifiersOnly is true, the API returns only identifiers related to the embedded resources (for example, if embedded fields cardContracts.cards are requested and relatedResourceIdentifiersOnly is true, only cardContractIdentifier in CardContract and cardIdentifier in Card will be returned). \nIf relatedResourceIdentifiersOnly is false, the API returns all resource information (for example, if embedded fields cardContracts.cards are requested and relatedResourceIdentifiersOnly is false, all information in CardContract and all information in Card will be returned).\nBy default, relatedResourceIdentifiersOnly is false."
required: false
default: false
type: boolean
- name: relatedResourceBaseInfoOnly
in: query
description: 'relatedResourceBaseInfoOnly (cannot be used with relatedResourceIdentifiersOnly):
If relatedResourceBaseInfoOnly is true, the API returns only main information related to the embedded resources (for example, if embedded fields accounts and cardContracts are requested and relatedResourceBaseInfoOnly is true, only main information of Account and Card Contract will be returned).
The main information is as follows :
- For Account: accountIdentifier, root, status, accountOwnerIdentifier and accountGuarantorIdentifier
- For Card Contract: cardContractIdentifier, cardHolderIdentifier and status
- For Card: cardIdentifier, pan, maskedPan, expiryDate, panSequenceNumber, status, externalStatus, panReference and blockingReason
- For Customer: customerIdentifier, courtesyTitle, firstName and lastName
If relatedResourceBaseInfoOnly is false, the API returns all resource information (for example, if embedded fields accounts and cardContracts are requested and relatedResourceBaseInfoOnly is false, all information in Account and all information in CardContract will be returned).
By default, relatedResourceBaseInfoOnly is false.'
required: false
default: false
type: boolean
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- advertisementFlags
- deliveryChannel
- legitimacyDocuments
- contractFees
- accountIdentifiers
- accounts
- cardContractIdentifiers
- cardContracts
- cardContracts.cards
- dataAnalysisFlags
- contractCustomerIdentifiers
- contractCustomers
- addonSubscriptions
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityContract'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/corporate-contract:
get:
tags:
- Account
summary: Retrieve corporate contract for an account (beta)
operationId: retrieveCorporateContractForAccount
description: "The API allows the corporate contract detail of an account to be retrieved. \n\nThe main input fields requested by the API are:\n•\tThe issuer ID\n•\tThe account for which the corporate contract information is requested: It can be provided by using the account reference or the issuer account external reference. \n\nIt is also possible to request some additional data, such as list of corporate contract entities (limited to 100), list of all customers (limited to 100), list of all companies (limited to 100), list of corporate employee accounts (limited to 100), root account linked to this corporate contract, by using the embedded fields.\n\nIn return, the interface provides the corporate contract details."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: embed
in: query
description: Embedded Fields
required: false
type: array
items:
type: string
enum:
- corporateContractEntities
- contractCustomers
- contractCompanies
- corporateEmployeeAccounts
- rootAccount
collectionFormat: multi
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCorporateContract'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/credit-limit:
get:
tags:
- Account
summary: Retrieve account credit limit
operationId: retrieveAccountCreditLimit
description: The API allows the permanent credit limit for a given account to be retrieved.
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCreditLimit'
security:
- basic: []
deprecated: false
put:
tags:
- Account
summary: Update account credit limit
operationId: modifyCreditLimit
description: The API allows the permanent credit limit for a given account to be updated.
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- in: body
name: body
required: false
schema:
$ref: '#/definitions/ModifyCreditLimitRequest'
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityModifyCreditLimitResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/credit-transfers:
get:
tags:
- Account
summary: List outgoing credit transfers for an account
operationId: listCreditTransfers
description: "The API allows the list of credit transfers posted for an account to be retrieved.\nThis API applies to the credit cards domain.\nA credit transfer can be posted to an account to pay the due amount (for eg, self-payer).\nThe input parameters are:\n- The issuer ID \n- The involved account: it can be provided by using the account reference or the issuer external account reference,\n- Optionally the search period (start date / end date),\n\nIt is also possible to filter the reimbursement operations (on demand, cyclic, daily, on transaction or on contract termination)."
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: reimbursementTriggers
in: query
description: 'reimbursementTriggers - Parameter to filter reimbursement operations
Available values : ON_DEMAND, CYCLIC (related to monthly cycle closure), DAILY, ON_TRANSACTION, ON_TERMINATION (on contract termination)'
required: false
type: array
items:
type: string
collectionFormat: multi
- name: periodStartDateTime
in: query
description: 'Period start date of credit transfers to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: periodEndDateTime
in: query
description: 'Period end date credit transfers to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListCreditTransfer'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/direct-debits:
get:
tags:
- Account
summary: List direct debits for an account
operationId: listDirectDebits
description: 'The API allows the list of sepa and non sepa direct debit notes generated from an account to repay its due amount to be retrieved.
This API applies to the credit cards domain.
The input parameters are:
- The issuer ID
- The involved account: it can be provided by using the account reference or the issuer external account reference,
- Optionally the search period (start date / end date),
It is also possible to filter the payment operations (on demand, cyclic or on transaction).'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: paymentTriggers
in: query
description: 'paymentTriggers - Parameter to filter payment operations
Available values : ON_DEMAND, CYCLIC (related to monthly cycle closure), ON_TRANSACTION'
required: false
type: array
items:
type: string
collectionFormat: multi
- name: periodStartDateTime
in: query
description: 'Period start date of direct debit to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: periodEndDateTime
in: query
description: 'Period end date direct debit to include (format : yyyy-MM-ddTHH:mm:ssZ)'
required: false
type: string
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListDirectDebit'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/temporary-credit-limits:
get:
tags:
- Account
summary: List temporary credit limits for an account
operationId: listTemporaryCreditLimitForAccount
description: 'The API allows the temporary credit limits for a given account to be retrieved.
It is possible to request either only the active temporary credit limit or the history of temporary limits for the account.'
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: Issuer ID
required: true
type: string
- name: accountReference
in: path
description: Account Reference
required: true
type: string
- name: all
in: query
description: By default return only active temporary Credit Limits
required: false
type: boolean
default: false
responses:
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityListTemporaryCreditLimit'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/create-mandate:
post:
x-wl-idempotent: true
tags:
- Account
summary: Create mandate
description: "The API allows to create a SEPA mandate for the given account by using issuer account external reference or the account reference (generated by WL). \n- For SEPA mandate successful creation in mandate management system, the Iban, Iban owner name and mandate signature date are to be provided. As a result, mandate is created in \"Active\" status and is ready to be used.\n- It is also possible to attach an existing SEPA mandate (explicitly created in mandate management system in advance) to a given account. To succeed, unique mandate reference (UMR) is to be provided as an input. As a result, mandate is attached if exists in mandate management system and is in \"Active\" status.\n\nA mandate is an authorization that a debtor gives to a creditor in order to take payments from their customers bank accounts.\n\nIdempotency is managed by the API; that is, if the request with the same WL-Correlation-ID is sent multiple times, it will be executed only once. The response will be retrieved directly from our system."
operationId: createMandate
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: accountReference
in: path
description: accountReference
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: issuerId
required: true
type: string
- in: body
name: requestBody
description: requestBody
required: true
schema:
$ref: '#/definitions/CreateMandateRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCreateMandateResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/accounts/{accountReference}/cancel-mandate:
post:
tags:
- Account
summary: Cancel mandate
description: "The API allows to cancel SEPA mandate for the given account by using issuer account external reference or the account reference (generated by WL). \nThe SEPA mandate can be cancelled immediately or in the future at a date provided by the issuer.\n- For immediate cancellation, mandate is “Revoked” immediately in mandate management system.\n- For scheduled cancellation, mandate is not “Revoked” until the cancellation date is reached in mandate management system."
operationId: cancelMandate
consumes:
- application/json
produces:
- application/json
parameters:
- name: WL-Correlation-ID
in: header
required: false
type: string
- name: WL-Origin
in: header
required: false
type: string
- name: WL-Username
in: header
required: false
type: string
- name: accountReference
in: path
description: accountReference
required: true
type: string
- name: filter
in: query
description: Filtered Fields
required: false
type: array
items:
type: string
collectionFormat: multi
- name: issuerId
in: path
description: issuerId
required: true
type: string
- in: body
name: requestBody
description: requestBody
required: true
schema:
$ref: '#/definitions/CancelMandateRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ApiResponseEntityCancelMandateResponse'
'400':
description: Bad request
schema:
$ref: '#/definitions/BadRequestErrorApiResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/UnauthorizedErrorApiResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ForbiddenErrorApiResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/NotFoundErrorApiResponse'
'500':
description: Internal server error
schema:
$ref: '#/definitions/InternalServerErrorErrorApiResponse'
'502':
description: Bad gateway
schema:
$ref: '#/definitions/BadGatewayErrorApiResponse'
security:
- basic: []
deprecated: false
definitions:
CustomerIdentifier:
type: object
description: Identification of the updated customer either by Issuer customer external reference or by customer reference
properties:
customerReference:
type: string
description: Reference computed internally by our system
issuerCustomerExternalReference:
type: string
description: Reference provided by the Issuer
title: CustomerIdentifier
CardIdentifier:
type: object
description: Identification of the card either by Issuer card external reference or by card reference
properties:
cardReference:
type: string
description: 'Reference of the card generated by our system, unique per platform.
This reference is calculated sequentially by an internal algorithm on 16 digits (e.g. 2000000000096013).'
issuerCardExternalReference:
type: string
description: 'External reference of the card provided by the issuer or calculated by the system if the external reference generation algorithm is configured for the issuer.
This reference is unique per issuer and may be used to carry out research and find information.'
title: CardIdentifier
CancelMandateRequest:
type: object
required:
- cancellationReason
properties:
cancellationDate:
type: string
format: date-time
description: 'SEPA mandate cancellation date.
A date in the future can be provided (mandate is cancelled when the date is reached), otherwise defaults to the current date (mandate is cancelled immediately).'
cancellationReason:
type: string
description: 'SEPA mandate cancellation reason
List of mandate possible cancelation reasons:
(RECEIVED_FINAL,USER_ACTION,
OBSCOLESCENCE,
REFUSED,
REVOCATION_ASKED_BY_DEBTOR,
REVOCATION_ASKED_BY_CREDITOR,
DELETION_ASKED_BY_DEBTOR,
DELETION_ASKED_BY_CREDITOR)'
validateMandate:
type: boolean
description: Deprecated field – not to be used
cancelMandateOnExternalSystem:
type: boolean
description: Deprecated field – not to be used
title: CancelMandateRequest
CorporateContractFee:
type: object
allOf:
- $ref: '#/definitions/ContractFee'
- properties:
entityIdentifierMembershipFeePosting:
description: The corresponding entity identifier for Membership Fee posting
allOf:
- $ref: '#/definitions/FeePostingEntityIdentifier'
entityIdentifierAccountSetupFeePosting:
description: The corresponding entity identifier for Account Setup Fee posting
allOf:
- $ref: '#/definitions/FeePostingEntityIdentifier'
description: Specify the corporate contract Fee
title: CorporateContractFee
ContractMember:
type: object
properties:
issuerId:
type: string
description: DEPRECATED Replaced by customer
customerIdentifier:
description: DEPRECATED Replaced by customer
allOf:
- $ref: '#/definitions/CustomerIdentifier'
active:
type: boolean
description: DEPRECATED Replaced by customer
birthDate:
type: string
format: date-time
description: DEPRECATED Replaced by customer
birthPlace:
type: string
description: DEPRECATED Replaced by customer
commercialStatus:
type: string
description: DEPRECATED Replaced by customer
courtesyTitle:
type: string
description: DEPRECATED Replaced by customer
customerClass:
type: string
description: DEPRECATED Replaced by customer
doNotContact:
type: boolean
description: DEPRECATED Replaced by customer
employee:
type: boolean
description: DEPRECATED Replaced by customer
employerAddress:
type: string
description: DEPRECATED Replaced by customer
employerName:
type: string
description: DEPRECATED Replaced by customer
firstName:
type: string
description: DEPRECATED Replaced by customer
lastName:
type: string
description: DEPRECATED Replaced by customer
maidenName:
type: string
description: DEPRECATED Replaced by customer
correspondenceName:
type: string
description: DEPRECATED Replaced by customer
maritalStatus:
type: string
description: DEPRECATED Replaced by customer
monthlySalary:
type: string
description: DEPRECATED Replaced by customer
nationality:
type: string
description: DEPRECATED Replaced by customer
offlineRiskCategory:
type: string
description: DEPRECATED Replaced by customer
onlineRiskCategory:
type: string
description: DEPRECATED Replaced by customer
partnerExternalReference:
type: string
description: DEPRECATED Replaced by customer
picture:
type: string
description: DEPRECATED Replaced by customer
preferredCorrespondanceLanguage:
type: string
description: DEPRECATED Replaced by customer
preferredCorrespondenceLanguage:
type: string
description: DEPRECATED Replaced by customer
profession:
type: string
description: DEPRECATED Replaced by customer
secondFirstName:
type: string
description: DEPRECATED Replaced by customer
secretAnswer:
type: string
description: DEPRECATED Replaced by customer
secretQuestion:
type: string
description: DEPRECATED Replaced by customer
sex:
type: string
description: DEPRECATED Replaced by customer
specificFields:
type: object
description: DEPRECATED Replaced by customer
additionalProperties:
type: string
url1:
type: string
description: DEPRECATED Replaced by customer
url2:
type: string
description: DEPRECATED Replaced by customer
vatCountry:
type: string
description: DEPRECATED Replaced by customer
vatNumber:
type: string
description: DEPRECATED Replaced by customer
addressIdentifiers:
type: array
description: DEPRECATED Replaced by customer
items:
$ref: '#/definitions/AddressIdentifier'
addresses:
type: array
description: DEPRECATED Replaced by customer
items:
$ref: '#/definitions/Address'
vulnerabilities:
description: DEPRECATED Replaced by customer
type: array
items:
$ref: '#/definitions/Vulnerability'
vulnerabilityIndicator:
type: boolean
description: DEPRECATED Replaced by customer
vulnerabilityNote:
type: string
description: DEPRECATED Replaced by customer
contactIdentifiers:
type: array
description: DEPRECATED Replaced by customer
items:
$ref: '#/definitions/ContactIdentifier'
contacts:
type: array
description: DEPRECATED Replaced by customer
items:
$ref: '#/definitions/Contact'
customer:
description: Customer data only if the customer is a person.
allOf:
- $ref: '#/definitions/Customer'
company:
description: Company data only if the customer is a company.
allOf:
- $ref: '#/definitions/Company'
title: ContractMember
ModifyAccountRequestAccountModel:
type: object
properties:
type:
type: string
description: "Type of an account model\nPossible values:\n•\teventFeeModel\n•\ttransactionFeeModel\n•\tmarkupFeeModel\n•\trestrictionModel\n•\tdebitInterestModel\n•\tinterestModel\n•\tdirectDebitAmountModel\n•\taccountAmountDueModel \n•\tstatementModel"
reference:
type: string
description: 'Reference of the new model to be selected
Refer to AccountModel.reference'
originalModelReference:
type: string
description: "Reference of the current model to be changed\nMust be provided for the following models. :\n•\tmarkupFeeModel\n•\ttransactionFeeModel"
title: ModifyAccountRequest.AccountModel
CreditLimit:
type: object
properties:
creditLimitAmount:
description: Credit limit amount allowed by the issuer (mandatory)
allOf:
- $ref: '#/definitions/Amount'
startDate:
type: string
format: date-time
description: Date when the permanent credit limit is active.
title: CreditLimit
CancelAccountDelinquencyResponse:
type: object
required:
- accountIdentifier
- delinquent
properties:
accountIdentifier:
$ref: '#/definitions/AccountIdentifier'
delinquent:
type: boolean
description: Indicates the delinquency situation of the account (the account must no more be delinquent (false))
title: CancelAccountDelinquencyResponse
AccountHistory:
type: object
required:
- issuerId
- accountIdentifier
- effectiveDate
properties:
issuerId:
description: Issuer identifier (unique per platform)
type: string
accountIdentifier:
description: 'Refer to Account.accountIdentifier '
allOf:
- $ref: '#/definitions/AccountIdentifier'
effectiveDate:
description: Indicates the date when the update is processed
type: string
format: date-time
accountHierarchySpecificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to an account hierarchy that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
amountDueFixedAmount:
description: Refer to Account.amountDueFixedAmount attribute
allOf:
- $ref: '#/definitions/Amount'
amountDueMinAmount:
description: Refer to Account.amountDueMinAmount attribute
allOf:
- $ref: '#/definitions/Amount'
amountDuePercentage:
description: Refer to Account.amountDuePercentage attribute
type: string
bic:
description: Refer to Account.bic attribute
type: string
closureCalendarReference:
description: Refer to Account.closureCalendar attribute
type: string
directDebitFixedAmount:
description: Refer to Account.directDebitFixedAmount attribute
allOf:
- $ref: '#/definitions/Amount'
directDebitPercentage:
description: Refer to Account.directDebitPercentage attribute
type: string
greaterOrLesserAmountDue:
description: Refer to Account.greaterOrLesserAmountDue attribute
type: string
iban:
description: Refer to Account.iban attribute
type: string
ibanOwnerName:
description: Refer to Account.ibanOwnerName attribute
type: string
overlimitContribution:
type: string
description: DEPRECATED
paymentMode:
type: string
description: Refer to Account.paymentMode attribute
secondIban:
type: string
description: Refer to Account.secondIban attribute
selectedModels:
type: array
description: Refer to Account.selectedModels
items:
$ref: '#/definitions/AccountModel'
spareChangeSaving:
type: boolean
description: Refer to Account.spareChangeSaving attribute
accountGuarantorIdentifier:
description: Refer to Account.accountGuarantorIdentifier attribute
allOf:
- $ref: '#/definitions/CustomerIdentifier'
sepaIndicator:
type: boolean
description: Refer to AccountHistory.sepaIndicator attribute
finalClosingDate:
type: string
format: date-time
description: Refer to AccountHistory.finalClosingDate attribute
noOtbCheck:
type: boolean
description: Refer to Account.noOtbCheck attribute
resetCreditLimit:
type: boolean
description: Refer to Account.resetCreditLimit attribute
sepaMandate:
type: boolean
description: Refer to Account.sepaMandate attribute
sepaMandateStatus:
type: string
description: Refer to Account.sepaMandateStatus attribute
sepaMandateUmr:
type: string
description: Refer to Account.sepaMandateUmr
sepaCreditorId:
type: string
description: Refer to Account.sepaCreditorId
title: AccountHistory
ModifyCreditLimitResponse:
type: object
required:
- creditLimitAmount
properties:
creditLimitAmount:
description: Permanent credit limit amount allowed by the issuer
allOf:
- $ref: '#/definitions/Amount'
title: ModifyCreditLimitResponse
Customer:
type: object
required:
- onlineRiskCategory
- offlineRiskCategory
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
customerIdentifier:
description: Unique identifier. Refer to Customer Identifier data type for detail information
allOf:
- $ref: '#/definitions/CustomerIdentifier'
active:
type: boolean
description: DEPRECATED
birthDate:
type: string
format: date-time
description: Birth date of Person Customer (conditional depending on the card profile configuration). If present, the value can be subject to a validation process if a specific rule has been configured at issuer level.
birthPlace:
type: string
description: 'Birth Place of Person Customer (optional).
Free text'
commercialStatus:
type: string
description: Defines the commercial status of a Person Customer among a list of possible values configured per issuer. One of the possible values can be set as default value (eg. Normal, Address Only, Bankruptcy, Active Customer). (mandatory)
courtesyTitle:
type: string
description: Courtesy Title of Person Customer (optional). Free text. If present, the value can be subject to a validation process if a specific rule has been configured at issuer level.
customerClass:
type: string
description: for future use (optional)
doNotContact:
type: boolean
description: if the Person Customer does not want to be contacted by the issuer set to 'true' otherwise to be set to 'false'. If not provided, value is NULL(optional)
employee:
type: boolean
description: Flag indicating if the Person Customer is an employee of the issuer. If not provided, value is NULL(optional)
employerAddress:
type: string
description: 'Employer''s Address of Person Customer (optional).
Free text'
employerName:
type: string
description: 'Employer''s Name of Person Customer. (optional).
Free text'
firstName:
type: string
description: First Name of Person Customer (mandatory)
lastName:
type: string
description: Last Name of Person Customer (mandatory)
maidenName:
type: string
description: Maiden Name of Person Customer (optional)
correspondenceName:
type: string
description: Correspondence Name of Person Customer (optional).
maritalStatus:
type: string
description: Marital Status of Person Customer. Free text (optional)
monthlySalary:
type: string
description: Average monthly salary of Person Customer (optional)
nationality:
type: string
description: Nationality of Person Customer(optional). Free text.
offlineRiskCategory:
type: string
description: 'Categorizes the person for offline risk management. List of possible values is defined per Issuer (eg.Business, Student, Teenager, Standard). '
onlineRiskCategory:
type: string
description: 'Categorizes the person for online risk management. List of possible values is defined per Issuer (eg.Business, Student, Teenager, Standard) (mandatory) '
partnerExternalReference:
type: string
description: External Reference provided by the issuer (optional)
picture:
type: string
description: 'Picture reference of the Person Customer (eg url, filename). Free text.
(optional)'
preferredCorrespondanceLanguage:
type: string
description: Deprecated
preferredCorrespondenceLanguage:
type: string
description: Preferred correspondence language of the Person Customer (optional). Free text but ISO639-1 code is recommended (e.g. ‘nl’,’fr’,’de’,’en’). If present, the value can be subject to a validation process if a specific rule has been configured at issuer level.
profession:
type: string
description: 'Profession of Person Customer. Free text.
(optional)'
secondFirstName:
type: string
description: Second First Name of Person Customer (optional)
secretAnswer:
type: string
description: Answer to Secret Question for security (optional)
secretQuestion:
type: string
description: Secret Question for security (optional)
sex:
type: string
description: Gender of Person Customer (optional). Free text. If present, the value can be subject to a validation process if a specific rule has been configured at issuer level.
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a customer that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
url1:
type: string
description: First URL of the Person Customer (optional)
url2:
type: string
description: Second URL of the Person Customer (optional)
vatCountry:
type: string
description: 'Tax country. Useful if Person is indeed a company.
(optional)'
vatNumber:
type: string
description: 'Tax number. Useful if Person is indeed a company.
(optional)'
addressIdentifiers:
type: array
description: 'List of active address references whatever their type (MAIL, EMAIL, PHONE). The address can be a temporary address if it is active at the time of the request.
At least, the main postal address reference should be retrieved (mandatory)
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AddressIdentifier'
addresses:
type: array
description: 'List of active addresses whatever their type (MAIL, EMAIL, PHONE). See the Address''s datatype for the detail list of the attributes
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Address'
vulnerabilities:
description: List of vulnerabilities applicable to the customer.
type: array
items:
$ref: '#/definitions/Vulnerability'
vulnerabilityIndicator:
type: boolean
description: indicates if the client is vulnerable
vulnerabilityNote:
type: string
description: note about the client's vulnerability (free text)
contactIdentifiers:
type: array
description: 'List of contact references of the customer.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/ContactIdentifier'
contacts:
type: array
description: 'List of contacts of the customer.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Contact'
lastUpdateDate:
type: string
format: date-time
description: Indicates the date when the update is processed
title: Customer
ProductIdentifier:
type: object
properties:
issuerProductExternalReference:
type: string
description: Product External Reference provided by the issuer
productReference:
type: string
description: Reference of the product in our system, unique per platform
title: ProductIdentifier
AccountStatusHistory:
type: object
properties:
status:
type: string
description: Status of the account on the particular statusDate (optional)
statusDate:
type: string
format: date-time
description: Date of the account status change (optional)
reason:
type: string
description: Reason the status has been set (optional)
title: AccountStatusHistory
InsurancePackageIdentifier:
type: object
description: Unique identifier of the insurance contract package
properties:
insurancePackageReference:
type: string
description: Reference of the insurance package
title: InsurancePackageIdentifier
TemporaryCreditLimit:
type: object
properties:
temporaryCreditLimitIdentifier:
description: Unique identifier of the temporary credit limit
allOf:
- $ref: '#/definitions/TemporaryCreditLimitIdentifier'
activationStartTime:
type: string
format: date-time
description: Start date of the temporary credit limit (mandatory)
activationEndTime:
type: string
format: date-time
description: End date of the temporary credit limit (mandatory)
temporaryCreditLimitAmount:
description: Active temporary credit limit (it means that current date is between start date to end date) (mandatory)
allOf:
- $ref: '#/definitions/Amount'
title: TemporaryCreditLimit
CycleInformation:
type: object
description: Dates related to the closure calendar for the open closure cycle
properties:
cycleStartDate:
type: string
format: date-time
description: Date when the cycle is opened
cycleClosureDate:
type: string
format: date-time
description: Date when the open cycle is closed
statementGenerationDate:
type: string
format: date-time
description: Date when the statement is produced for the cycle
directDebitIssuingDate:
type: string
format: date-time
description: Direct debit issuing date of the cycle
directDebitDueDate:
type: string
format: date-time
description: Direct debit due date of the cycle
gracePeriodEndDate:
type: string
format: date-time
description: Grace period end date of the cycle
dueDateForSelfPayer:
type: string
format: date-time
description: Due date for self payer of the cycle
cycleDueDate:
type: string
format: date-time
description: Due date of the cycle, used for monitoring process (delinquency)
statementEffectiveStartDate:
type: string
format: date
description: "Effective start date of the statement period.\n\t\t\t\t\tExample :\n\t\tCycle closure is on 28th of each month at 20.00 PM\n\t\tIf closure on 28/08,\n\t\t- For August Statement: statementEffectiveStartDate = 29/07/2025 and statementEffectiveEndDate = 28/08/2025]\n\t\t- For September Statement : statementEffectiveStartDate = 29/08/2025 and statementEffectiveEndDate = 28/09/2025"
statementEffectiveEndDate:
type: string
format: date
description: "Effective end date of the statement period.\n\t\t\t\t\tExample :\n\t\tCycle closure is on 28th of each month at 20.00 PM\n\t\tIf closure on 28/08,\n\t\t- For August Statement: statementEffectiveStartDate = 29/07/2025 and statementEffectiveEndDate = 28/08/2025]\n\t\t- For September Statement : statementEffectiveStartDate = 29/08/2025 and statementEffectiveEndDate = 28/09/2025"
title: CycleInformation
ContractModel:
type: object
properties:
reference:
type: string
description: Model Reference
type:
type: string
description: 'Type of model
Possible values:
- ACCOUNT_SETUP_FEE
- MEMBERSHIP_FEE'
description: Model containing predefined configuration for fee generation applicable on a contract
title: ContractModel
EncryptedPan:
type: object
properties:
encryptedValue:
type: string
publicKeyIdentifier:
type: string
title: EncryptedPan
PinInheritanceExternalCardIdentifier:
type: object
properties:
pinInheritanceExternalCardReference:
type: string
description: Reference of the external card used when the card is only known by the PIN management module (used in migration context)
title: PinInheritanceExternalCardIdentifier
ContactIdentifier:
type: object
properties:
contactReference:
type: string
description: Contact identifier (unique per company)
title: ContactIdentifier
DataAnalysisFlags:
type: object
properties:
person:
type: boolean
description: Flag indicating person data related to the contract can be used for person data analysis (true) or not (false). Default value is false.
default: false
paymentTransaction:
type: boolean
description: Flag indicating if payment transactions related to the contract can be used for payment transactions data analysis (true) or not (false). Default value is false.
default: false
exchangeThirdParties:
type: boolean
description: Flag indicating if contract data can be exchanged between third parties (true) or not (false). Default value is false.
default: false
description: Specify which data analysis flags are enabled (person, paymentTransaction, exchangeThirdParties, etc.)
title: DataAnalysisFlags
ApiResponseEntityListAccountHistory:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
type: array
description: Response data
items:
$ref: '#/definitions/AccountHistory'
description: Issuer response entity
title: ApiResponseEntityListAccountHistory
Order:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
orderType:
type: string
description: 'The order can correspond to a card, a PIN mailer or a TAN mailer.
Possible values are : CardOrder, PinMailerOrder, TanMailerOrder'
orderIdentifier:
description: 'Unique identifier of the order (mandatory)
Refer to OrderIdentifier data type for detail information'
allOf:
- $ref: '#/definitions/OrderIdentifier'
currentExternalStatus:
type: string
description: 'Current external status of the order (optional)
The list of external statuses is configurable per issuer.
The external status can be used to follow the card producing status for the card order e.g. received, embossed, sent, etc.'
currentExternalStatusDate:
type: string
format: date-time
description: Modification date of the last external status of the order (optional)
currentInternalStatus:
type: string
description: 'Current internal status of the order (mandatory)
Possible values: are: CREATED, CONFIRMED, ORDERED, REJECTED, CANCELLED, FINISHED, ORDERABLE'
currentInternalStatusDate:
type: string
format: date-time
description: Last modification date of the internal status of the order (optional)
sendingMode:
type: string
description: 'Code identifying the desired sending mode for the order (mandatory)
Example: Normal, Urgent, Ultra Urgent'
deliveryChannel:
type: string
description: 'Code of the delivery channel for the card
The list of delivery channels is configurable per Issuer.'
deliveryType:
type: string
description: 'Indicates whether the delivery of the card should be to branch or customer (instead of the one from the distribution rule of the card product) (optional)
Possible values: CUSTOMER (the card is to be delivered to the customer address, BRANCH (the card is to be delivered to the bank branch)'
orderReason:
type: string
description: 'Reason why the order is done (mandatory)
Possible values are: CARD_RENEWAL, PIN_CARD_RENEWAL, FIRST_CARD_ISSUE, FIRST_PIN_CARD_ISSUE, CARD_REPLACEMENT, PIN_CARD_REPLACEMENT, PIN_REMINDER, PIN_REORDER, TAN_REQUEST'
statusHistory:
type: array
description: 'List of order status history data
Refer to OrderStatusHistory data type for detail information.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/OrderStatusHistory'
cardProducer:
type: string
description: 'It is the card producer or embosser.
It is present if it is different than the default one (defined in the card profile) and was provided when requesting the card creation.
The list of allowed card producer is configurable per issuer.'
pinMailerEditor:
type: string
description: 'It is the PIN mailer printer.
It is present if it is different than the default one (defined in the card profile) and was provided when requesting the card/PIN creation.
The list of allowed PIN mailer editors is configurable by issuer.'
deliveryBranchCode:
type: string
description: 'Code of the delivery branch (mandatory only if card delivery type is BRANCH)
The list of issuer branches is configurable per Issuer.
The branch code is used to access a preconfigured Postal address (configured in the system).'
customDeliveryAddressee:
type: string
description: "Custom postal address to send the order \n Depending on countries, the address format (mainly for line1, line 2, line3, line4 and line5) can have specific conditions such as length restriction. The customer should contact WL to check the address format and have more information."
customDeliveryAddress:
description: 'Custom postal address to send the order
Depending on countries, the address format (mainly for line1, line 2, line3, line4 and line5) can have specific conditions such as length restriction. The customer should contact WL to check the address format and have more information.'
allOf:
- $ref: '#/definitions/MailAddress'
customDeliveryPhone:
description: 'Custom phone to send the card.
NOT USED'
allOf:
- $ref: '#/definitions/PhoneNumber'
customDeliveryEmail:
description: 'Custom email to send the card.
NOT USED'
allOf:
- $ref: '#/definitions/EmailAddress'
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to an order that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
card:
description: 'Card information related to the order.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/Card'
cardIdentifier:
description: Unique identifier of the card
allOf:
- $ref: '#/definitions/CardIdentifier'
embossingFileName:
type: string
description: Embossing file name in CardOrder
tanOrigin:
type: string
description: Origin of the TAN request, e.g. GUI. (free text)
tanBackupMethod:
type: string
description: The backup method that should be applied for TAN mailer order.
tanExpiryDate:
type: string
format: date-time
description: Expiry date of the TAN, date until which the TAN can used (mandatory for TanMailerOrder)
tanStatus:
type: string
description: 'Status of the TAN (mandatory for TanMailerOrder)
Possible values: CREATED, FAILED, ACTIVE, USED, EXPIRED'
freeTanMailerCounter:
type: integer
description: Number of free TAN requests (optional)
tanUsageDate:
type: string
format: date-time
description: Date when the TAN was used to change the PIN (optional)
free:
type: boolean
description: Indicates if the operation is free (true) or not (false). Default value is false (mandatory)
tanValue:
type: string
description: Clear value of the TAN (mandatory for TanMailerOrder)
feeConditions:
type: array
description: Conditions of the fee generation (if fee configured in the product) (optional)
items:
$ref: '#/definitions/FeeCondition'
notExtractedReason:
type: string
description: In case the order will not be extracted because of invalid customer address, then it will be indicated in this field
notExtractedUpdateDate:
type: string
format: date-time
description: The last update date of notExtractedReason field
waitingPin:
type: boolean
format: date-time
description: 'This flag is used only for a card order or a PIN mailer order.
- If this flag is true, the PIN is waiting to be provided by the cardholder (the mode “Self Selected Pin” is activated in the PIN production model). Depending on the configuration, after x days, the card is extracted with a default PIN if the cardholder has not provided a PIN.
- If this flag is false, the PIN is not waiting to be provided , e.g. the PIN has been generated by PMM or provided by the cardholder.'
title: Order
ForbiddenErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/ForbiddenResponseMetadata'
title: ForbiddenErrorApiResponse
CancelAccountDelinquencyRequest:
type: object
properties:
cancelAmountDue:
type: boolean
description: Indicates if the amount due (required overdue minimum payment) must be cancelled (true). By default, value is false.
default: false
title: CancelAccountDelinquencyRequest
Card:
type: object
required:
- issuerId
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
cardIdentifier:
description: Identification of the card either by Issuer card external reference or by card reference
allOf:
- $ref: '#/definitions/CardIdentifier'
encryptedPan:
description: This field returns the encrypted PAN and the public key identifier if the encryption is activated on the platform.
allOf:
- $ref: '#/definitions/EncryptedPan'
pan:
type: string
description: "Primary Account Number (PAN) also called card number (mandatory) \n It is calculated by our system from the BIN range associated to the card product or provided by the issuer."
maskedPan:
type: string
description: "Masked Primary Account Number (PAN) of the card (optional). \nExample: 445442******0275\nThe mask is defined per platform."
panReference:
type: string
description: "Reference related to the PAN\nCards having the same PAN have the same PAN reference.\nPAN reference is generated in the system according to the following algorithm : \n1 (VISA) or 2 (MCI) + 3 last digit of issuer + UUID (without the -)\nExample : 1006f041ae6814bf4f068aa501141c85d57d"
expiryDate:
type: string
description: 'Card expiry date (mandatory)
Format is MMYY (month and year)'
panSequenceNumber:
type: string
description: PAN sequence number is a number (usually from 1 to N) that allows identifying either cards with same PAN or cards with same PAN and same Expiry date
status:
type: string
description: "Current status of the card (mandatory) \n Possible values: CREATED, ACTIVE, BLOCKED, DEACTIVATED, CANCELLED\n Status of the card (mandatory)\n The card status is changing during its life cycle according to business processes in the system.\n Possible values are :\n CREATED : The first status when the card is created. The card is not usable.\n ACTIVE : Card is active and ready for authorizations processing\n Examples of business processes triggering this status: contract creation request as per product configuration, card activation request, contract creation after a product change request.\n BLOCKED : card is blocked permanently (final status) or temporarily. Related authorizations are declined.\n DEACTIVATED : Card is deactivated (final status) and related authorizations are declined\n Examples of business processes triggering this status: contract closing request, card contract closing, contract closure after a product change request. Card was in ACTIVE status previously.\n CANCELLED : Card is cancelled (final status). Card has never been activated.\n Examples of business processes triggering this status: contract closing request, card contract closing, contract closure after a product change request. Card was in CREATED status previously."
statusDate:
type: string
format: date-time
description: Last card status change date (mandatory)
externalStatus:
type: string
description: 'External status of the card
Possible values are:
- IN_PROGRESS (it implies the card has not registered in all the WL systems)
- CREATED (it implies the card is registered in all the WL systems and ready for use)
- ERROR (the synchronization process between WL systems is failed)'
statusHistory:
type: array
description: 'List of card status history
Refer to resource CardStatusHistory for detail information
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardStatusHistory'
embossingName:
type: string
description: 'First line of the name embossed on the physical card (mandatory)
It can be provided by the issuer or calculated by our system (if allowed within card Technology and Application model and depending on the selected embossing name calculation algorithm)'
embossingName2ndLine:
type: string
description: 'Second line of the name embossed on the physical card, optional, can be provided only in addition to the first line.
It can be provided by the issuer or calculated by our system (if embossing name is required within card Technology and Application model and depending on the selected embossing name calculation algorithm)'
embossingLine5:
type: string
description: 'Specific additional embossing line that can be used by the issuer (mandatory only if required within card Technology and Application model)
It is sent out to the embosser with card order.'
artwork:
type: string
description: Artwork (card design) used for the physical card (mandatory)
permanentlyBlocked:
type: boolean
description: Indicates if the card is permanently blocked (true) or not (false). Default value is false
emergencyCard:
type: boolean
description: This attribute indicates if the card is an emergency card (scheme emergency card service).
emergencyCashAdvance:
type: boolean
description: Deprecated - Not used
renewed:
type: boolean
description: Indicates if the card is renewed (true) or not (false). Default value is false
replaced:
type: boolean
description: Indicates if the card is replaced (true) or not (false). Default value is false
replacementReason:
type: string
description: 'Reason for replacing a card (mandatory only if the card is replaced)
The list of replacing reasons is configurable per issuer (For example, LOST, STOLEN, FRAUDULENT …)'
blockingReason:
type: string
description: 'Reason for blocking a card (mandatory only if card status is blocked)
The list of blocking reasons is configurable per issuer (For example, LOST, STOLEN, FRAUDULENT …)'
pinInheritanceCardIdentifier:
description: Identifier of the card from which the PIN is inherited (card is known in the issuing system).
allOf:
- $ref: '#/definitions/PinInheritanceCardIdentifier'
pinInheritanceCardReference:
type: string
description: Deprecated
pinInheritanceExternalCardIdentifier:
description: Identifier of the external card used when the card is only known by the PIN management module.
allOf:
- $ref: '#/definitions/PinInheritanceExternalCardIdentifier'
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a card that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
renewedBy:
description: 'Card identifier of the new card created during the renewal process.
Relevant information for the renewed card.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/CardIdentifier'
replacementBy:
description: 'Card identifier of the new card created during the replacement process.
Relevant information for the replaced card.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/CardIdentifier'
renewedFor:
description: 'Card identifier of the renewed card.
Relevant information for the new card created during the renewal process.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/CardIdentifier'
replacementFor:
description: 'Card identifier of the replaced card.
Relevant information for the new card created during the replacement process.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/CardIdentifier'
cardContractIdentifier:
description: Card Contract Identifier
allOf:
- $ref: '#/definitions/CardContractIdentifier'
cardContract:
description: 'Card Contract
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/CardContract'
orderIdentifiers:
type: array
description: 'Order Identifiers
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/OrderIdentifier'
orders:
type: array
description: 'List of orders linked to the Card
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Order'
isCardDigitalizationAllowed:
type: boolean
description: "Indicates if the digitalization of the card is allowed (true) or not (false, default value). \nThis attribute is returned during wallets (e.g. GooglePay, ApplePay) enrollment process to e.g. the Issuer TSP (in case the card digitalization is not allowed then the Issuer TSP should decline the enrollment)."
default: false
multiCardInfo:
description: Multi card set if the card belongs to a multi card set
allOf:
- $ref: '#/definitions/MultiCardInfo'
cardScheme:
type: string
description: 'Card scheme to which the BIN of the card is belonging '
virtual:
type: boolean
description: Indicates if the card is physical or virtual
contactlessEnabled:
type: boolean
description: Indicates if the chip contactless capability enabled or not
technologyType:
type: string
description: "Technology of the card (code/short name)\nPossible values are : \n- VIRTUAL\n- EMV\n- MAGSTRIPE\n- EMV_MAGSTRIPE\n- CONTACT_ONLY (contact only for EMV card with magstripe)\n- DUAL_INTERFACE (contact+contactless for EMV card with magstripe)"
techAndAppModelName:
type: string
description: Technology and application model name of the card
photoReference:
type: string
description: Reference of the photo sent to the embosser and retrieved from the card contract during the card order extraction (optional).
pictureReference:
type: string
description: Reference of the picture sent to the embosser and retrieved from the card contract during the card order extraction (optional).
logoReference:
type: string
description: 'Reference of the company logo sent to the embosser and retrieved from the card contract during the card order extraction (optional).
Relevant only for corporate cards.'
dispatchCode:
type: string
description: If present the dispatch code is sent to the embosser. The dispatch code defines the corporate card orders delivery address which is known and managed by the embosser (Corporate cards only). If not present the standard process is applied to retrieve the card delivery address.
automaticDeactivationDate:
type: string
format: date-time
description: Date when the card is deactivated automatically (x days after its replacement if the feature is enabled).
contractType:
type: string
description: "Indicates if the card is a consumer (private) or corporate card. \n Possible values: \n CORPORATE \nCONSUMER "
enum:
- CORPORATE
- CONSUMER
cardDeactivationRuleOverride:
type: string
description: 'Indicates which card deactivation rule is enabled for the card. It overrides the product card deactivation rule Possible value : FIRST_APPROVED_AUTHO (1st approved online authorization)'
partnerExternalCardReference:
type: string
description: This reference is generated by our system using rules define with the issuer that needs it.
recovered:
type: boolean
description: Indicates if the card is recovered (true) or not (false). Default value is false.
recoveryDate:
type: string
format: date-time
description: Date when the card was recovered. Only relevant if the card is recovered.
lastSavingMeasureCode:
type: string
description: 'Indicates the last saving measure applied (a saving measure is used to forbid some actions or remove the forbidding. For example: block the card replacement, the card renewal, the PIN mailer reprint)'
title: Card
ModifyAccountHierarchyOperationStatus:
type: object
x-wl-patch-request: true
properties:
paymentsBlocking:
type: boolean
description: The issuer can block/unblock online payments for all accounts of the account hierarchy.
reimbursementsBlocking:
type: boolean
description: The issuer can block/unblock online reimbursements for all accounts of the account hierarchy.
authorizationsBlocking:
type: boolean
description: The issuer can block/unblock authorizations for all accounts of the account hierarchy.
blockingReason:
type: string
description: If at least one blocking (flag is true) is requested, the blocking reason must be provided (configured at issuer level).Not to be provided if the 3 blocking flags are not requested (flags are false).
comment:
type: string
description: The issuer can provide a comment (free text).
description: The issuer can update blocking information for the account hierarchy.
title: ModifyAccountRequest.HierarchyOperationStatus
FeeCondition:
type: object
properties:
description:
type: string
description: Conditions of the fee generation for the event (optional)
operationType:
type: string
description: 'Contains the type of the operation on which the criteria applies
For example: PinOrderIssuing - PIN_REQUEST (optional)'
criteria:
type: string
description: 'Criteria of the fee condition
For example:
(counter[''ALL''] - counter[''IVR''] ) > 1 => If the condition is successfull, one Fee is allocated (optional)'
title: FeeCondition
FeePostingEntityIdentifier:
type: object
properties:
postingEntityAccountIdentifier:
description: The account identifier of the entity on which Membership Fee or Account setup Fee will be posted
allOf:
- $ref: '#/definitions/AccountIdentifier'
postingEntityCompanyExternalReference:
type: string
description: The external reference of the entity, provided by the Company, on which Membership Fee or Account setup Fee will be posted
postingEntityLevel:
type: integer
description: The corporate entitity level number on which Membership Fee or Account setup Fee will be posted
title: FeePostingEntityIdentifier
ApiResponseEntityListCreditTransfer:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
type: array
description: Response data
items:
$ref: '#/definitions/CreditTransfer'
description: Issuer response entity
title: ApiResponseEntityListCreditTransfer
DirectDebitStatusHistory:
type: object
properties:
status:
type: string
description: 'Status of the direct debit transfer on the particular status date '
statusDate:
type: string
format: date-time
description: Date of the direct debit status change
username:
type: string
description: Name of the user who requested to create or cancel the direct debit
origin:
type: string
description: Origin used when the direct debit was requested or cancelled.
title: DirectDebitStatusHistory
MailAddress:
type: object
required:
- country
properties:
typeCode:
type: string
description: Deprecated field
line1:
type: string
description: Address line 1 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line2:
type: string
description: Address line 2 (optional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line3:
type: string
description: Address line 3 (optional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line4:
type: string
description: Address line 4 (optional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line5:
type: string
description: Address line 5 (optional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
buildingNumber:
type: string
description: Building number of the address (optional)
boxNumber:
type: string
description: Box number of the address (optional)
streetName:
type: string
description: Street name of the address (optional)
postCode:
type: string
description: Zip Code of the address (optional)
townName:
type: string
description: 'City corresponding to the address '
countrySubdivision:
type: string
description: Subdivision of the country (optional)
country:
type: string
description: Code of the country (mandatory). Free text. The value can be subject to a validation process if a specific rule has been configured at issuer level. The value can be optional if a specific rule has been configured.
countryName:
type: string
description: Country Name of the address. Free text
courtesyTitle:
type: string
description: Courtesy title of the address. Free text
title: MailAddress
AccountOutgoingCreditTransferFeature:
type: object
properties:
periodicOctAllowed:
type: boolean
description: "This field indicates if the issuer can override the periodic OCT option. \nTo override the option, the reimbursement model attached to the contract must be configured to accept the change of the default choice."
periodicOctType:
type: string
description: "This field indicates the periodic OCT type \nPossibles values:\n- DAILY (OCT can be triggered on a daily basis if account is in credit position)\n- CYCLIC (OCT can be triggered at cycle closure date if account is in credit position).\nIt can be overridden if the reimbursement model accepts the change of the default choice."
enum:
- DAILY
- CYCLIC
periodicMaxThreshold:
description: 'Threshold amount used for generating the periodic OCT. When the account balance is greater than the threshold, the OCT amount will be equal to the (account credit balance - threshold amount). Ex: threshold is 10.000€ and credit balance is : 15.000€: the OCT amount is 5.000€.
The threshold amount can be overridden if the reimbursement model accepts the change of the default threshold.'
allOf:
- $ref: '#/definitions/Amount'
octOnContractTerminationAllowed:
type: boolean
description: 'This field indicates the "OCT on contract termination" option
The option can be modified if it is allowed within the reimbursement model to change the default choice.'
octOnAccountTerminationAllowed:
type: boolean
description: 'This field indicates the option to generate an OCT when card account is closed.
The option can be modified if it is allowed within the reimbursement model to change the default choice.'
octOnContractSuspensionAllowed:
type: boolean
description: 'This field indicates if an Outgoing Credit Transfer is required or not when the contract is suspended.
The value is initialized from the product and can be overridden if this is allowed by the product (in reimbursement model).'
octOnDemandAllowed:
type: boolean
description: "This field indicates the \"OCT on demand\" option. \nThe option can be modifed if it is allowed within the reimbursement model to change the default choice."
octOnDemandLimitType:
type: string
description: 'This field indicates the limit type of the "OCT on demand" option.
Possible values:
- BALANCE (= a customer can only request an OCT in case of account in credit position)
- OTB (open-to-buy) (=a customer can request an OCT from its current Open-to-buy (so from its credit limit allowed by the issuer)
The limit type can be modified if it is allowed within the reimbursement model.'
enum:
- OTB
- BALANCE
octOnContractTerminationType:
type: string
enum:
- CONTRACT_TERMINATION
- ACCOUNT_CLOSING
description: Specify OctFeature (periodicOct, periodicOctType, periodicOctMaxThreshold, etc.)
title: AccountOutgoingCreditTransferFeature
BadGatewayErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/BadGatewayResponseMetadata'
title: BadGatewayErrorApiResponse
InternalServerErrorErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/InternalServerErrorResponseMetadata'
title: InternalServerErrorErrorApiResponse
InternalServerErrorResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 500
description: HTTP status code
statusMessage:
type: string
example: Internal server error
description: Executed REST API status message
title: InternalServerErrorResponseMetadata
NotFoundErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/NotFoundResponseMetadata'
title: NotFoundErrorApiResponse
CorporateContractLevel:
type: object
properties:
level:
type: string
description: Level number in the company organization (e.g. 1 corresponding to the company, 2 corresponding to country)
example: '1'
levelDescription:
type: string
description: Description of the level in the company organization (e.g. Company for level 1, Country for level 2)
description: Specify the level in the company organization
title: CorporateContractLevel
ProductExtensionIdentifier:
properties:
issuerProductExtensionExternalReference:
description: External reference of the product extension provided by the issuer and defined for a product (e.g. it can be used when adding cards and accounts to a contract )
type: string
title: ProductExtensionIdentifier
type: object
CorporateEmployeeAccount:
type: object
properties:
accountIdentifier:
description: Identifier of the employee account
allOf:
- $ref: '#/definitions/AccountIdentifier'
account:
description: 'List of all accounts (with account data) linked to the employee.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/Account'
parentCompanyEntityExternalReference:
type: string
description: "Entity external reference of the parent account \nEmpty for the root"
cardContracts:
type: array
description: 'List of all cardContracts (with cardContract data) belonging to this corporate contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardContract'
customerIdentifiers:
type: array
description: List of customers (only identifiers) belonging to this corporate employee account as e.g. account owner, cardholder.
items:
$ref: '#/definitions/CustomerIdentifier'
customers:
type: array
description: 'List of customers (with customer data) belonging to this corporate employee account as e.g. account owner, cardholder.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Customer'
parentAccountIdentifier:
description: Account identifier of the parent account. Each card account is linked to a parent account of the hierarchy (entity)
allOf:
- $ref: '#/definitions/AccountIdentifier'
companyEntityExternalReference:
type: string
description: External reference of the entity used for the employee account
advertisementFlags:
description: Specify possible channels used to provide advertisements (email, letter, phone, statement, sms) for the employee account
allOf:
- $ref: '#/definitions/AdvertisementFlags'
deliveryChannel:
description: 'Specify the channel for letter delivery used for the employee account
Possible values: WEB, LETTER, LETTER_AND_WEB'
allOf:
- $ref: '#/definitions/DeliveryChannel'
postingAccountForMembershipFee:
type: string
description: DEPRECATED
postingAccountForAccountSetupFee:
type: string
description: DEPRECATED
waiveFee:
type: boolean
description: Indicates if contract related fees, membership fee and account setup fee, are waived (true) or not (false, by default) for this employee account.
default: false
corporateProductType:
type: string
description: 'Type indicating if the account represents an employee, a company or an intermediate
Possible values: EMPLOYEE, COMPANY, INTERMEDIARY'
contractFee:
description: Contract Fee Models used for the account (Account setup fee and/or Membership fee models).
allOf:
- $ref: '#/definitions/CorporateContractFee'
entityIdentifierMembershipFeePosting:
description: DEPRECATED
allOf:
- $ref: '#/definitions/FeePostingEntityIdentifier'
entityIdentifierAccountSetupFeePosting:
description: DEPRECATED
allOf:
- $ref: '#/definitions/FeePostingEntityIdentifier'
description: Specify the corporate employee account
title: CorporateEmployeeAccount
CreateMandateResponse:
type: object
properties:
accountIdentifier:
description: Refer to Account.accountIdentifier
allOf:
- $ref: '#/definitions/AccountIdentifier'
sepaMandateStatus:
type: string
description: Refer to Account.sepaMandateStatus
sepaMandateUir:
type: string
description: Refer to Account.sepaMandateUir
sepaMandateUmr:
type: string
description: Refer to Account.sepaMandateUmr
title: CreateMandateResponse
AddressUsage:
type: object
required:
- addressUsageName
- serviceCode
properties:
addressUsageName:
type: string
example: STATEMENT_SENDING
description: The business process for which the address usage is defined such as CARD_DELIVERY, PIN_MAILER_DELIVERY, STATEMENT_DELIVERY.
entityReference:
type: string
description: 'This corresponds to the application domain of the address. It can be eg a card contract reference, card account reference. It is an optional field.
It enables to have the same usage address for the same customer applied to different addresses (one cardholder with 2 card contracts: card delivery address usage is assigned to main postal address for contract A and card delivery address usage is also assigned to office postal address for contract B.'
serviceCode:
type: string
example: ACCOUNT_SERVICE
description: 'The Service for which the address usage is defined : CARD_SERVICE, ACCOUNT_SERVICE, …'
title: AddressUsage
ActiveCreditLimit:
type: object
properties:
creditLimitAmount:
description: "Current credit limit amount that the customer can spend - either temporary (if there is temporary credit limit) or permanent (conditional, pay later). \nThe credit limit amount is always in debit position."
allOf:
- $ref: '#/definitions/Amount'
startDate:
type: string
format: date-time
description: Date when the current credit limit (temporary or permanent) becomes active.
endDate:
type: string
format: date-time
description: Only filled if the active credit limit is a temporary one. It is the date when the current temporary credit limit becomes inactive and is replaced by the next active credit limit (permanent or temporary credit limit).
title: ActiveCreditLimit
MultiCardInfo:
type: object
properties:
multiCardReference:
type: string
description: Main card reference
samePin:
type: boolean
description: Indicate if multi card set shares same PIN
multiCards:
type: array
description: List of multi cards
items:
$ref: '#/definitions/MultiCard'
title: MultiCardInfo
AccountModel:
type: object
properties:
type:
type: string
description: "Type of an account model\nPossible values:\n•\teventFeeModel\n•\ttransactionFeeModel\n•\tmarkupFeeModel\n•\trestrictionModel\n•\tdebitInterestModel\n•\tinterestModel\n•\tdirectDebitAmountModel\n•\taccountAmountDueModel \n•\tstatementModel"
reference:
type: string
description: Reference to the particular model that has been selected in selectedModels
originalModelReference:
type: string
description: DEPRECATED
title: AccountModel
Turnover:
type: object
required:
- rootAccountIdentifier
- issuerId
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
rootAccountIdentifier:
description: Identifier of the root account
allOf:
- $ref: '#/definitions/AccountIdentifier'
turnoverType:
type: string
description: "The type of turonver : \n- DEFAULT \n- MEMBERSHIP_FEE"
currentTurnoverAmount:
description: The amount of the current Turnover (amount/exponent/currency values). It can be a montthly or an annual turnover.
allOf:
- $ref: '#/definitions/Amount'
nextAnniversaryDate:
format: date-time
type: string
description: "Next anniversary date. \n If turnoverTpe = MEMBERSHIP_FEE \n If annual turnover, the membership fee booking date of the next year is returned \n If monthly turnover, the membership fee booking date of the next month is returned \n If turnoverTpe = DEFAULT \n The anniversary date of account or the contract of the next year is returned (annual turnover) "
previousPeriodTurnovers:
description: "Turnover information for the 5 last periods. \n If annual turnover, the turnover of the 5 previous years is returned \n If monthly turnover, the turnover of the 5 previous months is returned"
type: array
items:
$ref: '#/definitions/PreviousPeriodTurnover'
title: Turnover
AccountHierarchyModel:
type: object
properties:
type:
type: string
description: 'Model type of the account hierarchy
Possible value:
• reimbursementModel.'
reference:
type: string
description: Reference to the particular model that has been selected in hierarchySelectedModels.
title: AccountHierarchyModel
ExternalRestriction:
type: object
required:
- externalRestrictionIdentifier
properties:
externalRestrictionIdentifier:
description: Reference value for external restriction (Velocity limit) (mandatory)
allOf:
- $ref: '#/definitions/ExternalRestrictionIdentifier'
maximumAmount:
description: Maximum amount of provided velocity limit (optional)
allOf:
- $ref: '#/definitions/Amount'
minimumAmount:
description: Minimum amount of provided velocity limit (optional)
allOf:
- $ref: '#/definitions/Amount'
maximumCount:
type: integer
description: Maximum count of transaction to be done using velocity limit
priority:
type: string
description: In case multiple overrides with overlapping activation times are existing this information is used to resolve this situation by applying the overrides one by one starting with the one with lowest priority. The priority needs to be unique across all overrides associated with a velocity check and an account
title: ExternalRestriction
HierarchyOutgoingCreditTransferFeature:
type: object
properties:
periodicOct:
type: boolean
description: "This field indicates if the issuer can override the periodic OCT option. \nTo override the option, the reimbursement model attached to the contract must be configured to accept the change of the default choice.\n"
periodicOctType:
type: string
description: "This field indicates the periodic OCT type \nPossibles values:\n- DAILY (OCT can be triggered on a daily basis if account is in credit position)\n- CYCLIC (OCT can be triggered at cycle closure date if account is in credit position).\nIt can be overridden if the reimbursement model accepts the change of the default choice."
enum:
- DAILY
- CYCLIC
periodicMaxThreshold:
description: 'Threshold amount used for generating the periodic OCT. When the account balance is greater than the threshold, the OCT amount will be equal to the (account credit balance - threshold amount). Ex: threshold is 10.000€ and credit balance is : 15.000€: the OCT amount is 5.000€.
The threshold amount can be overridden if the reimbursement model accepts the change of the default threshold.'
allOf:
- $ref: '#/definitions/Amount'
octOnContractTerminationAllowed:
type: boolean
description: 'This field indicates the "OCT on contract termination" option
The option can be modified if it is allowed within the reimbursement model to change the default choice.'
octOnAccountTerminationAllowed:
type: boolean
description: 'This field indicates the option to generate an OCT when card account is closed
The option can be modified if it is allowed within the reimbursement model to change the default choice.'
octOnContractSuspensionAllowed:
type: boolean
description: 'This field indicates if an Outgoing Credit Transfer is required or not when the contract is suspended.
The value is initialized from the product and can be overridden if this is allowed by the product (in reimbursement model).'
octOnDemandAllowed:
type: boolean
description: "This field indicates the \"OCT on demand\" option. \nThe option can be modified if it is allowed within the reimbursement model to change the default choice."
octOnDemandLimitType:
type: string
description: 'This field indicates the limit type of the "OCT on demand" option.
Possible values:
- BALANCE (= a customer can only request an OCT in case of account in credit position)
- OTB (open-to-buy) (=a customer can request an OCT from its current Open-to-buy (so from its credit limit allowed by the issuer)
The limit type can be modified if it is allowed within the reimbursement model.'
enum:
- OTB
- BALANCE
octOnContractTerminationType:
type: string
enum:
- CONTRACT_TERMINATION
- ACCOUNT_CLOSING
description: Specify OctFeature (periodicOct, periodicOctType, periodicOctMaxThreshold, etc.)
title: HierarchyOutgoingCreditTransferFeature
AddOnSubscription:
type: object
properties:
addonReference:
type: string
description: Reference of the add-on service.
subscriptionDate:
type: string
description: Date of subscription to the add-on.
format: date-time
serviceTypeReference:
type: string
description: Reference of the type of add-on service.
parameters:
type: array
description: List of add-on service parameters
items:
$ref: '#/definitions/AddOnServiceParameter'
accountIdentifier:
description: The identifier of the account on which the subscription has been done
allOf:
- $ref: '#/definitions/AccountIdentifier'
cardContractIdentifier:
description: The identifier of the card contract on which the subscription has been done
allOf:
- $ref: '#/definitions/CardContractIdentifier'
title: AddOnSubscription
DeliveryChannel:
type: object
properties:
contractLetterType:
type: string
description: "Delivery channel used for card contract letters (optional) \nPossible values: EMAIL, WEB, LETTER, LETTER_AND_WEB, PUSH and MOBILE_APP"
enum:
- EMAIL
- WEB
- LETTER
- LETTER_AND_WEB
- PUSH
- MOBILE_APP
example: LETTER
disputeLetterType:
type: string
description: "Delivery channel used for dispute letters (optional) \nPossible values: EMAIL, WEB, LETTER, LETTER_AND_WEB, PUSH and MOBILE_APP"
enum:
- EMAIL
- WEB
- LETTER
- LETTER_AND_WEB
- PUSH
- MOBILE_APP
example: LETTER
statementType:
type: string
description: "Delivery channel used for statements (optional) \nPossible values: EMAIL, WEB, LETTER, LETTER_AND_WEB, PUSH and MOBILE_APP"
enum:
- EMAIL
- WEB
- LETTER
- LETTER_AND_WEB
- PUSH
- MOBILE_APP
example: LETTER
description: Specify the channel for letter delivery used for this contract
title: DeliveryChannel
AccountIdentifier:
type: object
properties:
accountReference:
type: string
description: Account reference is to identify the Account calculated by the system (algorithm is configurable per issuer). Either the account number or the issuerAccountExternalReference is provided, or, if both are provided then only the account number is used.
issuerAccountExternalReference:
type: string
description: Issuer account external reference is to identify the Account. Either the account number or the issuerAccountExternalReference is provided, or, if both are provided then only the account number is used. Algorithm configurable by issuer, can be generated by the system if there is an externalReferenceGeneratorAlgorithm.
title: AccountIdentifier
ApiResponseEntityContract:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/Contract'
description: Issuer response entity
title: ApiResponseEntityContract
CreditTransfer:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
creditTransferIdentifier:
description: Unique Credit Transfer Identifier
allOf:
- $ref: '#/definitions/CreditTransferIdentifier'
accountIdentifier:
description: Account identifier linked to the credit transfer
allOf:
- $ref: '#/definitions/AccountIdentifier'
creationDate:
type: string
format: date-time
description: Creation date of the OCT
amount:
description: OCT amount
allOf:
- $ref: '#/definitions/Amount'
statusHistory:
description: 'History of credit transfer changes.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
type: array
items:
$ref: '#/definitions/CreditTransferStatusHistory'
ibanOwnerName:
type: string
description: Refer to Account.ibanOwnerName
iban:
type: string
description: Refer to Account.iban
bic:
type: string
description: Refer to Account.bic
sci:
type: string
description: SEPA Creditor Identifier (for SEPA OCT)
dueDate:
type: string
format: date-time
description: New due date if it was recomputed on SPS side (present when due date was recomputed. Valid for SEPA OCT only)
sepaIndicator:
type: boolean
description: Indicates if OCT is SEPA or not
octType:
type: string
description: "F, for OCT types using the credit balance only \nK, for OCT types using the OTB"
remittanceInfo:
type: string
description: "Based on a template defined at product level per product reference \nIf such template is not defined then Remittance information is empty\nIf template is defined for transaction type as F and K (see OCT type) then the field is built based on it. \nIts content depends on the free text and dynamic fields present."
rejectionCode:
type: string
description: Rejection code received throughout OCT processing lifecycle
rejectionReason:
type: string
description: Rejection reason received throughout OCT processing lifecycle
status:
type: string
description: The status of the OCT
eventSource:
type: string
description: Source of an event that triggers an update of OCT
cancellationDate:
type: string
format: date-time
description: The date when the OCT order was canceled
reimbursementTrigger:
type: string
description: "Indicates how the reimbursement is triggered \nThe possible values are :\n- ON_DEMAND\n- CYCLIC (related to monthly cycle closure)\n- DAILY\n- ON_TRANSACTION\n- ON_TERMINATION (on contract termination)"
reimbursementReason:
type: string
description: "Reason why the reimbursement is triggered \nThe list of possible reimbursement reasons is configurable per issuer."
title: CreditTransfer
ApiResponseEntityCancelAccountDelinquencyResponse:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
data:
description: Response data
allOf:
- $ref: '#/definitions/CancelAccountDelinquencyResponse'
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntityCancelAccountDelinquencyResponse
description: Issuer response entity
EmailAddress:
type: object
required:
- email
properties:
email:
type: string
description: 'Email address of the Customer (mandatory). The email address should have the following format: aaa@bbb.ccc
aaa, bbb, ccc are character string.'
title: EmailAddress
InsuranceContract:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
insuranceContractIdentifier:
description: Unique identifier of the insurance contract
allOf:
- $ref: '#/definitions/InsuranceContractIdentifier'
accountIdentifier:
description: The account linked to the insurance contract
allOf:
- $ref: '#/definitions/AccountIdentifier'
lastInsuranceEventCode:
type: string
description: Last insurance event code
lastInsuranceEventDate:
type: string
format: date-time
description: Last event date
insuranceEvents:
type: array
description: 'The list of insurance events linked to this contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/InsuranceEvent'
status:
type: string
description: Status of insurance contract
validFrom:
type: string
format: date-time
description: From when the contract is valid
accountOwnerBirthDate:
type: string
format: date-time
description: Owner's birth date
insurancePackage:
allOf:
- $ref: '#/definitions/InsuranceContractPackage'
title: InsuranceContract
AccountBalance:
type: object
properties:
acceptedAmount:
description: "The sum of all operations (scheme operations, fees, ect) considered for the current Open-to-buy of the account (certain operations can be excluded as per credit limit configuration) . \nThe accepted amount can be in credit or debit position."
allOf:
- $ref: '#/definitions/Amount'
accountBalance:
description: "The sum of all operations (scheme operations, fees, ect) posted to the account. \nThe account balance can be in credit or debit position."
allOf:
- $ref: '#/definitions/Amount'
activeCreditLimitAmount:
description: DEPRECATED
allOf:
- $ref: '#/definitions/Amount'
authorizedAmount:
description: Not used – deprecated
allOf:
- $ref: '#/definitions/Amount'
currentCycleStartDate:
type: string
format: date-time
description: The start date of the current cycle.
externalReservedAmount:
description: "The current amount reserved by the autorisation system (issuing Front Office) for the account (credit limit) . \nThe reserved amount can be in credit or debit position."
allOf:
- $ref: '#/definitions/Amount'
openToBuy:
description: "Available amount for spending at a given time. \nIt is calculated as following : Active credit limit amount – External reserved amount (authorized amount but not yet posted) – accepted amount + sum of payments\nThe open-to-buy can be in credit or debit position."
allOf:
- $ref: '#/definitions/Amount'
pastAmountDue:
description: "Sum of amount due from the previous cycles not paid. \nThe past amount due is always in debit position."
allOf:
- $ref: '#/definitions/Amount'
prevailingOpenToBuy:
description: 'Lowest Open-To-Buy (OTB) among the OTB of the input account and the OTB of the root account (conditional, pay later)
The prevailing open-to-buy can be in credit or debit position.'
allOf:
- $ref: '#/definitions/Amount'
previousCycleBalance:
description: "Balance of the previous cyclic closure (calculated from the second cycle, pay later).\n The previous cycle balance can be in credit or debit position."
allOf:
- $ref: '#/definitions/Amount'
remainingAmountDue:
description: "Minimum amount due calculated at cycle closure.Is dicreased during the following cycle with incoming payments and optionally with credit operations (ex. reversal, credit voucher).\n The value is always in debit position."
allOf:
- $ref: '#/definitions/Amount'
liableBalance:
description: 'The liable balance is only returned for a paying account (not relevant for a non paying-account).
It is the sum of all account balances paid by this paying account, including itself.
The liable balance can be in credit or debit position.
E.g. root account is the paying account, 2 card accounts having the root account as paying account
- Transaction 70€ posted to card account A:
root account balance = 0 / liable balance = 70€
card account A balance = 70€, card account B balance = 0€
- Transaction 100€ posted to root
root account balance = 100€ / liable balance = 170€
card account A balance = 70€, card account B balance = 0€
- Transaction 50€ posted to card acct B = 50€
root account balance = 100€ / liable balance = 220€ (= 100 + 70 + 50)
card account A balance = 70€, card account B balance = 50€'
allOf:
- $ref: '#/definitions/Amount'
reservedAmount:
description: 'Offline Reservation for an account used to block funds
Relevant for any account having a credit limit. It participates to decrease the Open To Buy.
In case of several offline reservations on an account, this field will contain the sum.
Any offline reservation creation/cancellation on the account will update the Offline Reservation.
Example :
Creation of Offline reservation OR1 of 200€ => Offline reservation = 200€
Creation of Offline reservation OR2 of 100€ => Offline reservation = 300€
Cancellation of Offline reservation OR1 => Account total offline reservation = 100€'
allOf:
- $ref: '#/definitions/Amount'
activeCreditLimit:
description: Current credit limit that can be temporary or permanent.
allOf:
- $ref: '#/definitions/ActiveCreditLimit'
title: AccountBalance
CardContract:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
cardContractIdentifier:
description: Identification of the card contract either by Issuer card contract external reference or by card contract reference
allOf:
- $ref: '#/definitions/CardContractIdentifier'
cardTemplateReference:
type: string
description: Card template reference used for card contract creation
cardTypeCode:
type: string
description: Scheme card type from the card profile
cardTypeLabel:
type: string
description: Scheme card type label from the card profile
status:
type: string
description: 'Status of the card contract (mandatory)
The status of the card contract is changing during its life cycle according to business processes in the system.
Possible values are :
- CREATED : The first status when the card contract is created. Related card is not activated.
- ACTIVE : The card contract is active. Related card is activated as per product configuration
Examples of business processes triggering this status: contract creation request, contract creation after a product change request.
- CLOSED : The card contract is closed and the associated card is deactivated/cancelled (if not already permanently blocked). Card renewal and card replacement are not possible.
Examples of business processes triggering this status: contract closing request, card contract closing request, contract closure after a product change request.'
openingDate:
type: string
format: date-time
description: Creation date of the card contract (mandatory)
activationDate:
type: string
format: date-time
description: Date when the card contract becomes active in our system
closingDate:
type: string
format: date-time
description: Closing date of the card contract (present only in case of card contract is already closed or card contract closing is scheduled)
closingComment:
type: string
description: 'Comment associated with the card contract closing action (optional)
Free text'
closingReason:
type: string
description: Indicates the reason for closing the card contract (present only in case of card contract is already closed or card contract closing is scheduled) Free text
closingDelayType:
type: string
description: 'The closing type of the card contract (present only in case of card contract is already closed or card contract closing is scheduled)
The closing type can be:
IMMEDIATE (at current date)
SCHEDULED (at future date, greater than the current date)
SCHEDULED_EXP_DATE (at the expiration date of active card)'
trustedAuthenticationReference:
type: string
description: 'Unique reference generated by card management system used as trusted authentication credential
It is related to a card. Same reference is used in case of card renewal/replacement.
Used for ACS enrolment (3D Secure)'
newCardRenewalAllowed:
type: boolean
description: "Indicates if the renewal is allowed for a card (true) or not (false). \nDefault value is true."
blockingRenewalReasonCode:
type: string
description: 'Reason for blocking the renewal of a card (optional)
The list of renewal blocking reasons is configurable per issuer (For example : LOST, CREDIT_RISK, FRAUDULENT …)'
newCardReplacementAllowed:
type: boolean
description: 'Indicates if the replacement is allowed for a card (true) or not (false). Default value is false '
blockingReplacementReasonCode:
type: string
description: Reason for blocking the replacement of a card (optional) The list of replacement blocking reasons is configurable per issuer (For example, CONTRACT_SUSPENSION …)
blockingPinReorderReasonCode:
type: string
description: 'Mandatory reason to be set for blocking a pin reorder
The list of blocking reasons for pin reorder is configurable per issuer (For example, CONTRACT_SUSPENSION …)'
newPinReorderAllowed:
type: boolean
description: The pin reorder process can be blocked (blocking pin reorder reason code must be provided) or not.
blockingPinReminderReasonCode:
type: string
description: 'Mandatory reason to be set for blocking pin reminder
The list of blocking reasons for pin reminder is configurable per issuer (For example, CONTRACT_SUSPENSION …)'
newPinReminderAllowed:
type: boolean
description: The pin reminder process can be blocked (blocking pin reminder reason code must be provided) or not.
issuerBranchCode:
type: string
description: 'The Branch code (optional)
By default, the value is NO_BRANCH.'
artwork:
type: string
description: Artwork (card design) defined for the card contract (mandatory)
forcedEmbossingName:
type: string
description: First line of the name to be embossed on the next physical card if provided by the issuer (optional)
forcedEmbossingName2ndLine:
type: string
description: 'The second line of the name to be embossed on the physical card if provided by the issuer (optional)
Can be present (optional) only if first line of forced embossing name is present and if embossing name calculation algorithm accepts a second line.'
schemeDeclarationOptOut:
type: boolean
description: DEPRECATED
schemeReportDeclarationBehavior:
type: string
description: 'The issuer can indicate if the card events are reported to the scheme. Relevant only if the ABU-VAU program is enabled. If the ABU-VAU program is disabled, the use of this attribute generates an error. Possible values are: OPT_IN: the card events are reported to the scheme, OPT_OUT: the card events are not reported to the scheme. If the ABU-VAU program is enabled and the attribute is empty, the default value set on card product is applied.'
principalSupplementaryCardIndicator:
type: string
description: 'Indicates if it is a Principal card or an additional card (mandatory)
Possible values: PRINCIPAL, SUPPLEMENTARY'
productCategory:
type: string
description: 'Defines the category of the product (mandatory)
The list of product categories is configurable per issuer (e.g. CREDIT, DEBIT, PREPAID)'
productCategoryLabel:
type: string
description: 'Label of the product category (optional)
Example: IMMEDIATE_DEBIT_DEBIT, REVOLVING_CREDIT_CREDIT, DIFFERED_DEBIT_CREDIT'
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a card contract that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
productIdentifier:
description: Identifier of the product used to create the contract to which the card contract is belonging. It corresponds also to the identifier of the product used to create the card contract if the card contract is created from the product directly.
allOf:
- $ref: '#/definitions/ProductIdentifier'
productExtensionIdentifier:
description: "Identifier of the product extension used to create the card contract. \n Relevant if the card contract is created from a product extension."
allOf:
- $ref: '#/definitions/ProductExtensionIdentifier'
selectedModels:
type: array
description: 'List of models linked to the card contract
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardContractModel'
cardClass:
type: string
description: 'Information provided by the issuer to categorize cards within a contract.
The list of allowed card classes is defined by the issuer at its convenience according to its own business rules (e.g special conditions on fees for example) and is configured at product level to be controlled at card creation.'
cardIdentifiers:
type: array
description: 'Card Identifiers
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardIdentifier'
cards:
type: array
description: 'List of cards linked to the card contract. See the Card''s datatype for the detail list of the attributes
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Card'
cardHolderIdentifier:
description: Card Holder Identifier
allOf:
- $ref: '#/definitions/CustomerIdentifier'
vipFlag:
type: boolean
default: false
description: "Indicates if the holder of the priority pass is a VIP or not. This information is used to determine the priority pass fees to apply. \n if true, VIP fees are applied. \n If false, standard fees are applied. \n By default, the value is false."
contractIdentifier:
description: Contract Identifier
allOf:
- $ref: '#/definitions/ContractIdentifier'
relatedAccounts:
type: array
description: 'List of posting accounts linked to a card contract
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AccountRelation'
cardProfileDescription:
type: string
description: Description of the card profile linked to a card
originalCardContractIdentifier:
description: CardContract Identifier of the original cardContract in case of ProductChange
allOf:
- $ref: '#/definitions/CardContractIdentifier'
changedCardContractIdentifier:
description: CardContract Identifier of the new cardContract in case of ProductChange
allOf:
- $ref: '#/definitions/CardContractIdentifier'
photoReference:
type: string
description: Reference of a cardholder photo used to personalise the card (free text), e.g. URL where object is stored, a reference (optional).
pictureReference:
type: string
description: Reference of an image used to personalise the card (free text), e.g. URL where object is stored, a reference (optional).
cardProfileReference:
type: string
description: Reference of the card profile.
mainCardIndicator:
type: boolean
description: Indicates whether the card is the main one or not for a mutli cards product
logoReference:
type: string
description: For a corporate card a logo reference can be provided (free text), e.g. alphanumeric value, numeric value, URL where the logo is stored. This logo reference is sent to the embosser with the card order data.
cardContractGroupReference:
type: string
description: Unique reference to group card contracts calculated by the system if required by the product configuration
contractType:
type: string
description: "Indicates if it is a consumer (private) or corporate card. \n Possible values: \n CORPORATE \n CONSUMER"
enum:
- CORPORATE
- CONSUMER
deviceTokensNumber:
type: integer
description: Indicates the number of device tokens on the card attached to the card contract
commercialProductReference:
type: string
description: Commercial reference of the card profile linked to a card
commercialProductDescription:
type: string
description: Commercial description of the card profile linked to a card
merchantTokensNumber:
type: integer
description: Indicates the number of merchant tokens on the card attached to the card contract
authorizationDataValidation:
description: Cardholder data defined at card contract level and used by the Front Office for verification (AVS/ANI)
allOf:
- $ref: '#/definitions/AuthorizationDataValidation'
contactCenters:
type: array
items:
$ref: '#/definitions/ContactCenter'
clickToPayEnrollment:
type: string
description: 'Indicates if the card enrollment in Click to Pay service is requested or not.
Possible values are :
- OPT_IN : enrollment of the card in Click to Pay service is requested.
- OPT_OUT : enrollment of the card in Click to Pay service is not requested.
Relevant only if the Click to Pay feature is enabled.'
title: CardContract
ApiResponseEntityContractMember:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/ContractMember'
description: Issuer response entity
title: ApiResponseEntityContractMember
ExternalVelocityLimitIdentifier:
type: object
properties:
externalVelocityLimitReference:
description: Reference value for external Velocity limit (mandatory)
type: string
title: ExternalVelocityLimitIdentifier
AddressVersionIdentifier:
type: object
properties:
addressVersionReference:
type: string
description: 'Identifies the version of the address
A new version of the address is created when a change is done on the address.'
title: AddressVersionIdentifier
OrderIdentifier:
type: object
description: Order reference calculated by our system
properties:
orderReference:
type: string
description: 'The reference of the order in our system, unique per platform
This reference is calculated from an algorithm configurable per issuer (currently a unique algorithm is defined).
The reference is composed of the creation date of the order (YYYYMMDD) + a sequence number of 16 digits (e;g; 202203212000000000097002, where 20220321 is the date when the order is created)'
title: OrderIdentifier
ModifyHierarchyOutgoingCreditTransferFeature:
type: object
x-wl-patch-request: true
properties:
periodicOct:
type: boolean
description: The issuer can override the periodic OCT option, if it is possible within the reimbursement model to change the default choice.
periodicOctType:
type: string
description: 'The issuer can override the periodic OCT type if allowed within the reimbursement model.
Possibles values:
- DAILY (OCT can be triggered on a daily basis if account is in credit position)
- CYCLIC (OCT can be triggered at cycle closure date if account is in credit position)'
enum:
- DAILY
- CYCLIC
periodicMaxThreshold:
description: 'The issuer can override the maximum threshold amount used for generating the periodic OCT if the change is allowed within the reimbursement model. When the account balance is greater than the threshold, the OCT amount will be equal to the (account credit balance - threshold amount). Ex: thresold is 10.000€ and credit balance is : 15.000€: the OCT amount is 5.000€.'
allOf:
- $ref: '#/definitions/Amount'
octOnContractTerminationAllowed:
type: boolean
description: The issuer can override the "OCT on contract termination" option if it is allowed within the reimbursement model to change the default choice.
octOnAccountTerminationAllowed:
type: boolean
description: The issuer can override the option to generate an OCT when card contract closing if it is allowed within the reimbursement model.
octOnContractSuspensionAllowed:
type: boolean
description: The issuer can enable or disable the Outgoing Credit Transfer generation on contract suspension, if the override of the option is allowed by the product (in reimbursement model).
octOnDemandAllowed:
type: boolean
description: The issuer can override the "OCT on demand" option if it is allowed within the reimbursement model to change the default choice.
octOnDemandLimitType:
type: string
description: 'The issuer can override the limit type of the "OCT on demand" option if allowed within the reimbursement model.
Possible values:
- BALANCE (= a customer can only request an OCT in case of account in credit position)
- OTB (open-to-buy) (=a customer can request an OCT from its current Open-to-buy (so from its credit limit allowed by the issuer)'
enum:
- OTB
- BALANCE
octOnContractTerminationType:
type: string
enum:
- CONTRACT_TERMINATION
- ACCOUNT_CLOSING
description: Specify OctFeature (periodicOct, periodicOctType, periodicOctMaxThreshold, etc.)
title: ModifyHierarchyOutgoingCreditTransferFeature
ApiResponseEntityModifyCreditLimitResponse:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/ModifyCreditLimitResponse'
description: Issuer response entity
title: ApiResponseEntityModifyCreditLimitResponse
ExternalRestrictionIdentifier:
type: object
properties:
externalRestrictionReference:
type: string
title: ExternalRestrictionIdentifier
UnauthorizedErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/UnauthorizedResponseMetadata'
title: UnauthorizedResponseMetadata
CreateMandateRequest:
type: object
properties:
debtorAddressType:
type: string
description: Deprecated field - not to be used
debtorEmail:
type: string
description: 'SEPA debtor e-mail '
debtorId:
type: string
description: Deprecated field - not to be used
debtorName:
type: string
description: Deprecated field - not to be used
debtorPhoneNumber:
type: string
description: SEPA debtor phone number
debtorPostalAddress:
allOf:
- $ref: '#/definitions/SepaMandateMailAddress'
description: Address lines 1 and 2, street name, building number, post code, town name, country and country subdivision can be provided in certain cases - refer to SEPA rules when debtor's address is required.
mandateContractId:
type: string
description: Mandate underlying contract identifier (external reference) used by the issuer. E.g., if the mandate is set up along with the contract creation, it may contain the application number, etc.
mandateNatureType:
type: string
description: "SEPA mandate nature type. PAPER_MANDATE is taken as a default.\nList of mandate possible nature types (for future usage only, not to be used):\nCOMPUTING_MIGRATION_NO_SIGNATURE, COMPUTING_MIGRATION_WITH_SIGNATURE, FR_MIGRATION_DOMESTIC_FILES, \nMANDATE_FROMDIGITALIZATION, e_MANDATE, SIGNATURE_MANDATE, MYBANK_e_MANDATE, IDEAL_e_MANDATE"
mandateSignCity:
type: string
description: SEPA mandate city of signature
mandateSignDate:
type: string
format: date-time
description: The mandate signature date has to be provided except if the SEPA mandate UMR is provided (comes from another system).
sepaMandateUmr:
type: string
description: Unique reference to identify the SEPA mandate. Can be provided to our system if mandate is created explicitly by another system.
sepaMandateUir:
type: string
description: 'Deprecated field - not to be used
Unique internal reference of the given mandate. Not to be overridden, as there is a risk for an internal business process.'
sepaCreditorId:
type: string
description: 'Deprecated field - not to be used
Will be retrieved from the product itself '
debtorIban:
type: string
description: 'Deprecated field - not to be used
iban has been introduced instead.'
iban:
type: string
description: 'Customer (debtor) Iban used for the repayments via sepa direct debit.
Has to be provided except if the SEPA mandate UMR is provided (comes from another system).'
secondIban:
type: string
description: Deprecated field - not to be used
debtorBic:
type: string
description: 'Deprecated field - not to be used
bic has been introduced instead.'
bic:
type: string
description: Customer (debtor) Bic used for the repayments via sepa direct debit.
validateMandate:
type: boolean
description: 'Deprecated field - not to be used
Not to be overridden, as there is a risk for an internal business process.'
ibanOwnerName:
type: string
description: 'Customer (debtor) Iban owner name used for the repayments via sepa direct debit.
Has to be provided except if the SEPA mandate UMR is provided (comes from another system).'
title: CreateMandateRequest
DirectDebit:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
directDebitIdentifier:
description: Unique identifier of the Direct Debit
allOf:
- $ref: '#/definitions/DirectDebitIdentifier'
overPaymentAccountIdentifier:
description: 'Identifier of the overpayment account '
allOf:
- $ref: '#/definitions/AccountIdentifier'
payingAccountIdentifier:
description: Identifier of the paying account
allOf:
- $ref: '#/definitions/AccountIdentifier'
sci:
type: string
description: SEPA Creditor Identifier (for SEPA DD)
mandateUmr:
type: string
description: Unique Mandate Reference (for SEPA DD)
amount:
description: Direct Debit due amount
allOf:
- $ref: '#/definitions/Amount'
sepaIndicator:
type: boolean
description: Indicates if DD is SEPA or no
creationDate:
type: string
format: date-time
description: Creation Date of the DD
extractType:
type: string
description: Extract type
status:
type: string
description: DD Status
dueDate:
type: string
format: date-time
description: Due date
sequenceType:
type: string
description: Sequence type
remittanceInfo:
type: string
description: Remittance info
rejectionReason:
type: string
description: Rejection Reason (if SDD is rejected)
debtorBankFee:
description: Debtor Bank Fee
allOf:
- $ref: '#/definitions/Amount'
creditorBankFee:
description: Creditor Bank Fee
allOf:
- $ref: '#/definitions/Amount'
cancellationDate:
type: string
format: date-time
description: The date when the Direct Debit order was canceled
statusHistory:
description: 'Debtor Bank Fee.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
type: array
items:
$ref: '#/definitions/DirectDebitStatusHistory'
paymentTrigger:
type: string
description: "Indicates how the payment is triggered \nThe possible values are :\n- ON_DEMAND\n- CYCLIC (related to monthly cycle closure)\n- ON_TRANSACTION"
paymentReason:
type: string
description: "Reason why the payment is triggered \nThe list of possible payment reasons is configurable per issuer."
title: DirectDebit
ApiResponseEntityListTemporaryCreditLimit:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
type: array
description: Response data
items:
$ref: '#/definitions/TemporaryCreditLimit'
description: Issuer response entity
title: ApiResponseEntityListTemporaryCreditLimit
CorporateContract:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
contractIdentifier:
description: Identification of the corporate contract either by Issuer contract external reference or by contract reference.
allOf:
- $ref: '#/definitions/ContractIdentifier'
closingComment:
type: string
description: 'Comment associated with the corporate contract closing action (optional)
Free text.'
closingDate:
type: string
format: date-time
description: Closing date of the corporate contract (present only in case of contract is already closed or contract closing is scheduled)
closingReason:
type: string
description: 'Indicates the reason for closing the contract (present only if the contract is already closed or if the contract closing is scheduled)
(free text)'
closureDelayType:
type: string
description: "The closing type of the contract (present only in case of contract is already closed or contract closing is scheduled)\nThe provided closing type corresponds to the value provided in the close corporate contract API request.\nPossible values :\n- IMMEDIATE \n- SCHEDULED"
signatureDate:
type: string
format: date-time
description: Date when the corporate contract was signed (mandatory if the contract is in SIGNED status)
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a corporate contract that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
status:
type: string
description: 'Current status of the corporate contract in our system (mandatory)
Possible values:
SIGNED: the contract was signed, e.g. by the customer, the issuer after N days (no automatic process in our system)
CLOSED:The contract is permanently closed (final status)'
statusDate:
type: string
format: date-time
description: Date when the current status of the corporate contract was set.
contractOwnerIdentifier:
description: Identifier of the contract owner. It can be a customer or a company.
allOf:
- $ref: '#/definitions/CustomerIdentifier'
contractCustomers:
type: array
description: 'List of all customers (with customer data) belonging to this corporate contract as e;g. contract owner, account owner, account guarantor, or cardholder.
This list of customers can not exceed a limit of occurrences (100).
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Customer'
contractCompanies:
type: array
description: 'List of all companies (with company data) belonging to this corporate contract as e.g. contract owner or account owner.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Company'
rootAccountIdentifier:
description: Identifier of the root account (in the account hierarchy) linked to this corporate contract
allOf:
- $ref: '#/definitions/AccountIdentifier'
productIdentifier:
description: Identifier of the product which the corporate contract is based on
allOf:
- $ref: '#/definitions/ProductIdentifier'
customerIdentifier:
type: array
description: List of all customers (identifiers only) belonging to this corporate contract as e.g. contract owner, account owner, account guarantor, or cardholder.
items:
$ref: '#/definitions/CustomerIdentifier'
statementDuplicatedForCompany:
type: boolean
description: Indicates if the company receives a duplicate for statement generated by other paying accounts in the corporate contract
default: false
logoReference:
type: string
description: Reference of the logo to be present on card in the corporate contract (can be replaced by another logo when requesting to create a card from this contract).
dispatchCode:
type: string
description: Disptach code to be used by the embosser to send the cards for the corporate contract
hierarchyDefaultResetCreditLimit:
type: boolean
description: Indicates, for a corporate contract only, the default value at contract level to be applied for each account if the Open-to-buy should be reset to its maximum Credit limit at Authorization system side as soon as an account cycle is closed. Of course the amount due (minimum payment amount) is considered as to be repaid by the customer by our solution.
default: false
postingAccountForMembershipFee:
type: string
description: "Indicates if the membership fees have to be posted to employee card accounts, interemdiate entity account or to the root (as default value, usually paid by the company) for the corporate contract.\nPossible values:\n- ROOT_ACCOUNT \n- CARD_ACCOUNT\n- ENTITY_ACCOUNT"
postingAccountForAccountSetupFee:
type: string
description: "Indicates if the account setup fees have to be posted to employee card accounts, interemdiate entity account or to the root (as default value, usually paid by the company) for the corporate contract.\nPossible values:\n- ROOT_ACCOUNT \n- CARD_ACCOUNT\n- ENTITY_ACCOUNT"
feeReimbursementAtCardContractClosing:
type: boolean
description: "Parameter used to specify if membership fee has to be reimbursed in case of card contract closing. \nBy default, the issuer parameter is used (but can be customized at contract level)."
corporateContractLevels:
type: array
description: List of all levels of a company organization belonging to the corporate contract
items:
$ref: '#/definitions/CorporateContractLevel'
corporateContractEntities:
type: array
description: 'List of all entities of a company organization (company itself, divisions, departments, …) belonging to the corporate contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CorporateContractEntity'
corporateEmployeeAccounts:
type: array
description: 'List of employee accounts that belong to a corporate contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CorporateEmployeeAccount'
rootAccount:
description: 'The root account linked to the corporate contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/Account'
postingEntityLevelForMembershipFee:
type: integer
description: Defines the corresponding Entity level of the corporate contract on which the Membership fee will be posted (if fees have to be posted to the interemdiate entity account)
postingEntityLevelForAccountSetupFee:
type: integer
description: Defines the corresponding Entity level of the corporate contract on which the Account Setup fee will be posted (if fees have to be posted to the interemdiate entity account)
numberOfFreeCardsMembershipFee:
type: integer
format: int32
description: Number of cards for which membership fee is not generated (optional)
numberOfFreeCardsAccountSetupFee:
type: integer
format: int32
description: Number of cards for which account setup fee is not generated (optional)
title: CorporateContract
ProductChangeInformation:
type: object
description: Only if a product change is triggered by card replacement. Represents product change information
properties:
targetProductIdentifier:
description: Target product of the product change identified either by the Issuer Product External Reference or the Product Reference.
allOf:
- $ref: '#/definitions/ProductIdentifier'
closingReason:
type: string
description: 'Closing reason used at the contract termination.
Free text'
feeReimbursementAtCardContractClosing:
type: boolean
description: Indicates whether the membership & account setup fees shall be reimbursed for the old contract at the contract termination (per card contract)
cardCreationSendingMode:
type: string
description: 'Sending mode used for all physical cards ordered in the contract
Same value as provided in the Product change request'
pinMailerSendingMode:
type: string
description: 'Sending mode used for all PIN mailers created for the contract
Same value as provided in the Product change request'
cardChanges:
type: array
description: 'List of card changes requested during the product change (optional).
Same value as provided in the Product change request '
items:
$ref: '#/definitions/CardChange'
productChangeTrigger:
type: string
description: "This field indicates when the product change is triggered once the product change request is received. \nIt depends of the product change configuration.\nPossible values are : \n- IMMEDIATE\n- ON_RENEWAL"
productChangeReference:
type: string
description: External reference of the configured Product Change definition used for the product change.
productChangeStatus:
type: string
description: 'Status of the product change
Possible values are :
- PENDING (for scheduled product change, date not reached)
- PROCESSED (for immediate product change, or scheduled product change when date is reached)
- CANCELLED (When a scheduled product change is cancelled before the scheduled product change date is reached)'
futureChangeDate:
type: string
format: date-time
description: "Future date of the product change. \nCalculated by the system in case of product change on renewal (= anticipated card renewal date (when only one card) or first anticipated card renewal date within the contract when contract has several cards).\nUTC time zone.\nFormat: \"yyyy-MM-dd'T'HH:mm:ssZ\""
productChangeStatusDate:
type: string
format: date-time
description: 'Date the status of the product change was last updated.
UTC time zone.
Format: "yyyy-MM-dd''T''HH:mm:ssZ"'
title: ChangeProductResponse.ProductChangeInformation
ApiResponseEntityCreateMandateResponse:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/CreateMandateResponse'
title: ApiResponseEntityCreateMandateResponse
CardContractIdentifier:
type: object
description: Identification of the card contract either by Issuer card contract external reference or by card contract reference
properties:
cardContractReference:
type: string
description: 'The reference of the card contract in our system, unique per platform
This reference is calculated from an algorithm (currently a unique algorithm ''DefaultCardContractReferenceAlgorithm'' referenced in the card profile version).
The reference is composed of the issuerId + a sequence number of 16 digits (e;g; 100042000000000095003, where 10004 is the issuerId)'
issuerCardContractExternalReference:
type: string
description: 'The external reference of the card contract provided by the issuer
This reference is unique per issuer and may be used to carry out research and find information.'
title: CardContractIdentifier
Account:
type: object
required:
- accountHierarchyReference
- accountProfileReference
- iban
- root
- status
- statusDate
- workingCurrencyCode
- workingMode
- accountOwnerIdentifier
- contractIdentifier
- rootAccountIdentifier
- accountTemplateReference
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
accountIdentifier:
description: Account references known in the system
allOf:
- $ref: '#/definitions/AccountIdentifier'
root:
type: boolean
description: Indicates if the account is a root account (true) or not (false).
accountBalance:
description: Current account balance
allOf:
- $ref: '#/definitions/Amount'
accountClosingType:
type: string
description: Specified closing type for account. Possible values are SCHEDULED_CLOSING and FORCED_CLOSING.
bic:
type: string
description: BIC or Bank Identification Code (optional)
status:
type: string
description: 'Current status of the account
Possible values:
AWAITING_SIGNATURE: The first status when an account is created (contract is also in AWAITING_SIGNATURE status). No operation can be processed on an account when in this state
ACTIVE: The account has been activated and is ACTIVE. Operation processing can be done in this state
BEING-CLOSED: The closing process is started, the account will be permanently closed depending on certain rules, such as after xx days, no ongoing disputes.
CLOSED: The account is permanently closed (final status), no possible activity (e.g. operations posting)'
statusDate:
type: string
format: date-time
description: The date when the status of an account has been changed for the last time
statusHistory:
type: array
description: 'Refer to AccountStatusHistory data subresource
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AccountStatusHistory'
closingDueDate:
type: string
format: date-time
description: DEPRECATED
exclusiveCurrency:
type: boolean
description: 'Defines if the working currency is exclusive or not (conditional). If the account currency is exclusive then only operation with the account currency can be posted on the account. Otherwise currency conversion is performed to post the amount (ex. account currency is USD and exclusive, the operation in EUR cannot be posted on the account, and in the opposite, the account currency is USD and not exclusive, the operation in EUR can be posted on the account after conversion). '
activationDate:
type: string
format: date-time
description: Date on which Account is activated
finalClosingDate:
type: string
format: date-time
description: Date at which the status of the account is changed to CLOSED
iban:
type: string
description: International Bank Account Number of the customer (debtor). E.g Can be used for repayment via Direct Debit.
secondIban:
type: string
description: Debtor second IBAN (can be used for specific business processes if needed)
ibanOwnerName:
type: string
description: Iban owner’s name, can be different from the account owner’s name
name:
type: string
description: The name of the account provided by the issuer at creation time or by default, the account template reference which was used to create the account
paymentMode:
type: string
description: "The payment mode the customer uses (mandatory, pay later). \nThe values are:\n- CARDHOLDER_DETERMINED: customer repays its debt by itself (fund transfer to the issuer)\n- AUTOPAYMENT: customer repays its debt via Direct Debit (issued by issuer and paid automatically after X days)\n- DIRECTDEBIT_WITH_CONFIRMATION : customer repays its debt via Direct Debit but payment is confirmed by issuer"
scheduledClosingDate:
type: string
format: date-time
description: Date at which account should be set to BEING_CLOSED status (conditional). Mandatory when scheduledClosingDateType Is MANUAL.
scheduledClosingDateType:
type: string
description: 'Type of scheduled Closing Date (conditional) Mandatory for SCHEDULED_CLOSING:
Value =
- MANUAL
- NEXT_CYCLIC_CLOSURE_DATE
- ANNUAL_FEE_DUE_DATE
- NOW_DATE'
workingCurrencyCode:
type: string
description: The Currency Code fixed in the current account (EUR for Euro, USD for dollar...)
originalWorkingMode:
type: string
description: not used – deprecated
workingMode:
type: string
description: 'It is the working mode of the account (Pay before/Pay later/Pay now) '
subscriptionSwitch:
type: boolean
description: Not used – deprecated
toBeSwitched:
type: boolean
description: Not used – deprecated
lastSubscriptionFeeDate:
type: string
format: date-time
description: The date of the previous charge for subscription
nextSubscriptionFeeDate:
type: string
format: date-time
description: The date of the next charge for subscription
accountHierarchyReference:
type: string
description: Identifier of Account Hierarchy
structureType:
type: string
description: 'The issuer can provide this field for e.g. the root account, for information only (no check, no related business process), to indicate if the contract contains a single card only or can have several cards.
Possible values are:
FAMILY : the contract can have 1 or several cards
REGULAR : the contract can have a single card only'
dunningCaseStatus:
type: string
description: 'Status of the Dunning Case (optional, pay later):
- ACTIVE
- CLOSED'
collectionCaseStatus:
type: string
description: 'Status of the Collection Case (optional, pay later):
- ACTIVE
- CLOSED'
sepaIndicator:
type: boolean
description: Indicates whether the payment processing channel is SEPA for direct debit and credit transfer
sepaCreditorId:
type: string
description: SEPA Creditor Identifier (conditional). Mandatory if sepaMandate=True (pay later)
sepaMandate:
type: boolean
description: Indicates whether SEPA mandate exists (mandatory, pay later). If true then sepaCreditorId, sepaMandateUir, sepaMandateUmr and sepaMandateStatus attributes are mandatory.
sepaMandateUmr:
type: string
description: SEPA Unique Mandate Reference (conditional, pay later). Mandatory if sepaMandate=True
sepaMandateUir:
type: string
description: SEPA Unique Internal Reference (conditional, pay later). Mandatory if sepaMandate=True
sepaMandateStatus:
type: string
description: SEPA Mandate Status (conditional, pay later). Mandatory if sepaMandate=True
originalPaymentMode:
type: string
description: Previous paymentMode when paymentMode has been modified (optional, pay later)
accountMembershipNumber1:
type: string
description: 1st membership number
accountMembershipNumber2:
type: string
description: 2nd membership number
amountDueMinAmount:
description: Minimum amount due defined at paying account level that overrides the default value defined in the accountAmountDue model when the amount due algorithm of the model is "Amount due percentage" (optional, pay later account)
allOf:
- $ref: '#/definitions/Amount'
amountDueFixedAmount:
description: Fixed amount due applied at paying account level that overrides the default value defined in the accountAmountDue model when the amount due algorithm of the model is “Amount Due fixed amount” (optional, pay later account)
allOf:
- $ref: '#/definitions/Amount'
greaterOrLesserAmountDue:
type: string
description: "Possible values : \n- GREATER (the highest amount between the amount due calculated and the minimum amount due defined is considered)\n- LESSER (the lowest amount is considered between the amount due calculated and the minimum amount due defined)\nUseful for credit cards and partial payer"
directDebitAlgorithmReference:
type: string
description: 'DEPRECATED
Replaced by DirectDebitAmountDue model.'
directDebitFixedAmount:
description: Used to calculate the Direct Debit Amount (conditional, pay later). Mandatory if Direct Debit Algorithm requires Fixed Amount. If directDebitAlgorithm= DirectDebit Fixed Amount Standard, DirectDebit Fixed Amount Debit. Only, DirectDebit Fixed Amount in the Direct debit Amount Model
allOf:
- $ref: '#/definitions/Amount'
directDebitPercentage:
type: string
description: Used to calculate the Direct Debit Amount (conditional, pay later). In case if the Direct Debit Algorithm is selected, the percentage is used to calculate direct debit amount instead of the amount due conditions (eg. amount due = 30% of the statement balance, and for direct debit algorithm, the direct debit percentage is 70%).
creditInstalmentBalance:
description: The current balance of the credit instalment on the account (optional)
allOf:
- $ref: '#/definitions/Amount'
gracePeriodType:
type: string
description: 'The type of grace period for debit interest calculation (optional, pay later)
Possible values:
NEXT_CYCLE_GRACE_DATE
NO_GRACE_PERIOD_USED'
noGraceOnTheFirstCycle:
type: boolean
description: Indicates if no grace period is set for the first cycle (optional, pay later)
accountAmountDueAlgorithmName:
type: string
description: 'DEPRECATED
Replaced by Account amount due model.'
amountDuePercentage:
type: string
description: Percentage of the balance to be claimed defined at paying account level that overrides the default value defined in the accountAmountDue model when the amount due algorithm of the model is "Amount due percentage" (optional, pay later account).
amountDueCalculationLevel:
type: string
description: "DEPRECATED\nShows the level on which the amount due is calculated (optional, pay later). Values: \nACCOUNT_LEVEL, \nCOMPONENT_LEVEL "
creditBureauContractFlag:
type: boolean
description: This information specifies if the Credit Bureau part of the contract has been signed by the credit card owner (optional, pay later)
loyaltyPoints:
type: array
description: 'When the account has loyalty points, value of the balance in point at the end of the closure cycle (optional).
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/LoyaltyPoint'
insuranceContracts:
type: array
description: 'List of insurance contracts linked to an account (optional, pay later)
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/InsuranceContract'
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to an account that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
accountHierarchySpecificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to an account hierarchy that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} like {"costCenter":"445475","brand":"VIS","acc_struct":"PRIV","statement_type":"ST1","paymentCode":"01","statementMailingCode":"ORD"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
productIdentifier:
description: Identifier of the product used to create the contract to which the account is belonging. It corresponds also to the identifier of the product used to create the account if the account is created from the product directly.
allOf:
- $ref: '#/definitions/ProductIdentifier'
productExtensionIdentifier:
description: "Identifier of the product extension used to create the account. \nRelevant if the account is created from a product extension."
allOf:
- $ref: '#/definitions/ProductExtensionIdentifier'
selectedModels:
type: array
description: "The models depends on the account type.\n\nFor a PayNow account\nEvent Fee Model: Defines fees which are triggered by Account events (ex: balance enquiry fee, statement fee, fee for returned payment)\nTransaction Fee Model: Defines fees which apply to particular transactions at the moment they are processed\nMarkup Fee Model: Defines fees which apply to particular transactions at the moment they are processed (used more particurlarly for foreign transactions)\n\nPayLater account\nEvent Fee Model: Defines fees which are triggered by Account events (ex: balance enquiry fee, statement fee, fee for returned payment)\nTransaction Fee Model: Defines fees which apply to particular transactions at the moment they are processed\nMarkup Fee Model: Defines fees which apply to particular transactions at the moment they are processed (used more particurlarly for foreign transactions)\nRestriction Model: Used to manage the credit limit \nStatement Model: Used to define the kind of statement\nDebit Interest Model: Used to define the algorithm and conditions for the calcul of debit interests\nInterest Model: Used to define the algorithm and conditions for the calcul of credit interests\nAccount Amount Due Model: Used to define the algorithm at account level for the amount due calculation (part of issuer terms and conditions)\nDirect Debit Amount Model: Used to define the algorithm for the direct debit amount calculation (part of customer terms and conditions)\nReimbursement Model - Used to configure and apply OCT different features in case of credit balance (per account hierarchy)\nRetrocession Rule Model: Used to configure different rules based on which there will be a sender and received operations cretaed, for the transactions meeting the rule criteria\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._"
items:
$ref: '#/definitions/AccountModel'
accountProfileReference:
type: string
description: Reference to the Account profile which stores allowed configuration elements (e.g. list of available closure calendar)
accountTemplateReference:
type: string
description: Reference of the account template used to instantiate this account
closureCalendar:
type: string
description: External reference of the closure calendar linked to the account (contains all dates of Issuer's cycle, used to realize its processing) (mandatory).
overlimitContribution:
type: string
description: DEPRECATED
spareChangeSaving:
type: boolean
description: Indicates if the function Spare Change Savings (Keep the change) is applied on the account. (credit account only)
childrenAccountIdentifiers:
type: array
description: 'Identifier of children accounts (if exist). Reference to accountIdentifier
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AccountIdentifier'
rootAccountIdentifier:
description: "The AccountIdentifier data type consist of two parameters:\n1. accountReference - Account number is to identify the Account on which reimbursement is made.\n2. issuerAccountExternalReference - External issuer account reference is to identify the Account. \n\nThe root account is either the account number or the issuerAccountExternalReference, or, if both are provided then only the account number is used. The account should exist and it should be a pay Later Account."
allOf:
- $ref: '#/definitions/AccountIdentifier'
rootAccount:
description: 'Root account data only if the account is not the root account (i.e. flag root is false, otherwise root account data are not returned)
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
allOf:
- $ref: '#/definitions/Account'
parentAccountIdentifier:
description: Account reference and issuer account external reference (optional) of the parent account. Is empty if it is a root account. Mandatory if not root account
allOf:
- $ref: '#/definitions/AccountIdentifier'
payingAccountIdentifier:
description: The account reference of paying account
allOf:
- $ref: '#/definitions/AccountIdentifier'
accountOwnerIdentifier:
description: Account owner reference
allOf:
- $ref: '#/definitions/CustomerIdentifier'
accountGuarantorIdentifier:
description: Guarantor of an account
allOf:
- $ref: '#/definitions/CustomerIdentifier'
contractIdentifier:
description: OPC contract Identifier
allOf:
- $ref: '#/definitions/ContractIdentifier'
delinquent:
type: boolean
description: Indicates if the account is delinquent (true) or not (false) (optional, only used for pay later)
originalAccountIdentifier:
description: 'In case the account was created from a product change, account number of original account
In case the account was created from a product change or employee reallocation, account number of original account.'
allOf:
- $ref: '#/definitions/AccountIdentifier'
changedAccountIdentifier:
description: 'in case the account had a product change, account number of new account created
In case the account had a product change or employee reallocation took place, account number of new account created'
allOf:
- $ref: '#/definitions/AccountIdentifier'
payingAccountType:
type: string
description: 'Indicates for corporate contract only if the account is paid by the root account, a parent entity account or the account itself
Possible values:
ROOT_PAYS
ENTITY_PAYS
ITSELF_PAYS
E.g. A corporate contract can have cards paid by the company (ROOT_PAYS, usually the root account is the company account), and/or paid by the intermediate entities (ENTITY_PAYS), and/or paid by cardholders them-selves (ITSELF_PAYS).'
enum:
- ROOT_PAYS
- ITSELF_PAYS
- ENTITY_PAYS
companyEntityExternalReference:
type: string
description: This is the reference of an entity (e.g. cost center, department, division, country) in the company organization. This is required for reporting, etc so that the company can identify the entity in its own system.
noOtbCheck:
type: boolean
description: 'Indicates if for this account (credit only) the Open-to-buy should be checked or not when an operation is posted during both authorizations and transactions processing.
E.g. A contract with 2 prepaid cards having 1 card account per prepaid card and the root account: OTB check is disabled for both card accounts so when an operation is posted to card account 1 the OTB of its root account is checked only - this allows having shared loaded amount on root account for both cards.'
noParentNotification:
type: boolean
description: 'Indicates if operations (authorizations and transactions) should be posted to the parent account during the authorization and the transaction processing (e.g. incoming purchase authorization, first presentment, transaction fee, membership fee).
E.g. this enables the issuer to stop the authorization/transaction processing to the entry account (card account), or at upper level (e.g. for corporate cards authorization/transaction amount can be checked against card account and Department account Open-to-buy only and not propagated to upper levels such as division, country, company accounts).'
contractType:
type: string
description: "Contract type. \nPossible values: CORPORATE, CONSUMER"
enum:
- CORPORATE
- CONSUMER
resetCreditLimit:
type: boolean
description: 'Indicates if the Open-to-buy should be reset to its maximum Credit limit at Authorization system side as soon as a cycle is closed. Of course the amount due (minimum payment amount) is considered as to be repaid by the customer by our solution.
The value of this flag overrides the value of the "defaultResetCreditLimit" flag.'
liabilityType:
type: string
description: Indicates the liability type of the account (free text provided by the issuer). This liability type can be different for each issuer and is stored in our solution for information purpose (e.g. can be used for reporting), not used by any business process.
hierarchyDebitOrderDueDateDelay:
type: integer
description: The issuer can provide the debit order due date delay at hierarchy level (number of days). This delay is used to calculate the Direct Debit payment date for each cycle of repayment (Optional). This value overrides the one from the closure calendar.
accountDebitOrderDueDateDelay:
type: integer
description: The issuer can provide the debit order due date delay for the account (number of days). This delay is used to calculate the Direct Debit payment date for each cycle of repayment. (Optional). This value overrides the one from the closure calendar and the hierarchy.
hierarchyOutgoingCreditTransferFeature:
description: Description of OCT features at account hierarchy level if different from the configuration
allOf:
- $ref: '#/definitions/HierarchyOutgoingCreditTransferFeature'
accountOutgoingCreditTransferFeature:
description: Description of OCT features at account level if different from the configuration or definition at account hierarchy level
allOf:
- $ref: '#/definitions/AccountOutgoingCreditTransferFeature'
'preDelinquent ':
type: boolean
description: 'Indicates if the account is pre-delinquent (true) or not (false) (optional, pay later)
Relevant only if account is not delinquent, a returned debit note with specific reason is received and total due amount is greater than 0.
An account is either delinquent or pre-delinquent (can’t be both at the same time).'
externalRestrictions:
type: array
description: Derprecated - Replaced by externalVelocityLimits.
items:
$ref: '#/definitions/ExternalRestriction'
externalVelocityLimits:
type: array
description: List of external velocity limits which can be provided by issuers at account creation time (mainly when creating a contract and the first card, when adding new card and card account) in order to update the corresponding velocity limits on the authorization system.
items:
$ref: '#/definitions/ExternalVelocityLimit'
defaultResetCreditLimit:
type: string
description: "Corresponds to the reset credit limit flag defined at contract level and which is the default value for the account in case nothing is configured in its resetCreditLimit flag. \nWhen the value is true, by default, the remaining due amount is not considered in the Open-To-Buy except if the flag \"resetCreditLimit\" is false\nWhen the value is false, the remaining due amount is considered in the Open-To-Buy except if the flag \"resetCreditLimit\" is true."
lastImpactDate:
type: string
format: date-time
description: The date at which the account balance was last impacted by an operation
coBrander:
type: string
description: CoBrander inherited from the consumer contract.
resetLimitBalance:
description: Will be fed only in case reset credit is active for the account, and that contain in this case the application of the reset limit which means it will contain account balance” – “remaining amount due of that individual account.
allOf:
- $ref: '#/definitions/Amount'
hierarchyPayingAccountType:
type: string
description: 'Indicates for corporate contract only if each account in the hierarchy is paid by the root account or the account itself
Possible values:
ROOT_PAYS
ITSELF_PAYS'
hierarchyBonusProgramReferences:
type: array
description: Reference of the Bonus/loyalty programs linked to the account hierarchy
items:
type: string
openCycleInformation:
$ref: '#/definitions/CycleInformation'
isChangeOfPayerAtNextCycle:
type: boolean
description: The attribute is showing whether there is scheduled change of paying account type at the cycle closure date or not
hierarchySelectedModels:
type: array
description: 'The models depends on the account type.
Currently only Reimbursement Model: used to configure and apply OCT different features in case of credit balance (per account hierarchy)'
items:
$ref: '#/definitions/AccountHierarchyModel'
originalAccountIdentifierType:
type: string
description: '"PRODUCT_CHANGE" in case the account was created from a product change
"CARD_REALLOCATION" in case the account was created from an employee reallocation.'
changedAccountIdentifierType:
type: string
description: '"PRODUCT_CHANGE" in case the account was created from a product change
"CARD_REALLOCATION" in case the account was created from an employee reallocation.'
hierarchyOperationStatus:
description: The issuer can update blocking information for the account hierarchy.
allOf:
- $ref: '#/definitions/HierarchyOperationStatus'
hierarchyOperationStatusHistory:
type: array
description: 'The operation status change history information can be checked in this object.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/HierarchyOperationStatusHistory'
title: Account
ModifyAccountOutgoingCreditTransferFeature:
type: object
x-wl-patch-request: true
properties:
periodicOctAllowed:
type: boolean
description: The issuer can override the periodic OCT option , if it is possible within the reimbursement model to change the default choice.
periodicOctType:
type: string
description: "The issuer can override the periodic OCT type if allowed within the reimbursement model. \nPossibles values: \n- DAILY (OCT can be triggered on a daily basis if account is in credit position) \n- CYCLIC (OCT can be triggered at cycle closure date if account is in credit position)"
enum:
- DAILY
- CYCLIC
periodicMaxThreshold:
description: 'The issuer can override the maximum threshold amount used for generating the periodic OCT if the change is allowed within the reimbursement model. When the account balance is greater than the threshold, the OCT amount will be equal to the (account credit balance - threshold amount). Ex: thresold is 10.000€ and credit balance is : 15.000€: the OCT amount is 5.000€.'
allOf:
- $ref: '#/definitions/Amount'
octOnContractTerminationAllowed:
type: boolean
description: The issuer can override the "OCT on contract termination" option if it is allowed within the reimbursement model to change the default choice.
octOnAccountTerminationAllowed:
type: boolean
description: The issuer can override the option to generate an OCT when card contract closing if it is allowed within the reimbursement model.
octOnContractSuspensionAllowed:
type: boolean
description: The issuer can enable or disable the Outgoing Credit Transfer generation on contract suspension, if the override of the option is allowed by the product (in reimbursement model).
octOnDemandAllowed:
type: boolean
description: The issuer can override the "OCT on demand" option if it is allowed within the reimbursement model to change the default choice.
octOnDemandLimitType:
type: string
description: 'The issuer can override the limit type of the "OCT on demand" option if allowed within the reimbursement model.
Possible values:
- BALANCE (= a customer can only request an OCT in case of account in credit position)
- OTB (open-to-buy) (=a customer can request an OCT from its current Open-to-buy (so from its credit limit allowed by the issuer)'
enum:
- OTB
- BALANCE
octOnContractTerminationType:
type: string
enum:
- CONTRACT_TERMINATION
- ACCOUNT_CLOSING
description: The issuer can override each different Outgoing Credit Transfer (OCT) options if is allowed within the reimbursement model.
title: ModifyAccountRequest.AccountOutgoingCreditTransferFeature
ApiResponseEntityCreditLimit:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/CreditLimit'
description: Issuer response entity
title: ApiResponseEntityCreditLimit
InsuranceEvent:
type: object
properties:
insuranceEventCode:
type: string
description: Insurance event code
insuranceEventDate:
type: string
format: date-time
description: Date of insurance event
insuranceEventDescription:
type: string
description: Description of the insurance event
title: InsuranceEvent
HierarchyOperationStatus:
type: object
properties:
paymentsBlocking:
type: boolean
description: Indicates if the online payments are blocked for the account hierarchy (true) or not (false).By default, value is false.
reimbursementsBlocking:
type: boolean
description: Indicates if the online reimbursements are blocked for the account hierarchy (true) or not (false).By default, value is false.
authorizationsBlocking:
type: boolean
description: Indicates if the authorizations are blocked for the account hierarchy (true) or not (false).By default, value is false.
statusDate:
type: string
format: date-time
description: Date of the last change.
title: HierarchyOperationStatus
ApiResponseEntityAccount:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/Account'
description: Issuer response entity
title: ApiResponseEntityAccount
MultiCard:
type: object
properties:
cardId:
type: string
description: Card ID
cardIdentifier:
description: Unique identifier of the card
allOf:
- $ref: '#/definitions/CardIdentifier'
cardStatus:
type: string
description: "Current status of the card \n Possible values: CREATED, ACTIVE, BLOCKED, DEACTIVATED, CANCELLED"
permanentlyBlocked:
type: boolean
description: Indicates if the card is permanently blocked (true) or not (false). Default value is false
renewed:
type: boolean
description: Indicates if the card is renewed (true) or not (false). Default value is false
replaced:
type: boolean
description: Indicates if the card is replaced (true) or not (false). Default value is false
title: MultiCard
AdvertisementFlags:
type: object
properties:
general:
type: boolean
description: 'General advertisement flag. By default, value is false.
If this flag is false, other flags are ignored (email, letter, phone, statement, sms flags).'
email:
type: boolean
description: Indicates if the email advertisement is enabled (true) or not (false). By default, value is false.
letter:
type: boolean
description: Indicates if the letter advertisement is enabled (true) or not (false). By default, value is false.
phone:
type: boolean
description: Indicates if the phone advertisement is enabled (true) or not (false). By default, value is false.
statement:
type: boolean
description: Indicates if the statement advertisement is enabled (true) or not (false). By default, value is false.
sms:
type: boolean
description: Indicates if the sms advertisement is enabled (true) or not (false). By default, value is false.
description: Specify possible channels used to provide advertisements
title: AdvertisementFlags
PinInheritanceCardIdentifier:
type: object
properties:
pinInheritanceCardReference:
type: string
description: The reference of the card from which the PIN is inherited.
pinInheritanceIssuerCardExternalReference:
type: string
description: The external reference of the card from which the PIN is inherited.
title: PinInheritanceCardIdentifier
HierarchyOperationStatusHistory:
type: object
properties:
paymentsBlocking:
type: boolean
description: Indicates if the online payments are blocked for the account hierarchy (true) or not (false).By default, value is false.
reimbursementsBlocking:
type: boolean
description: Indicates if the online reimbursements are blocked for the account hierarchy (true) or not (false).By default, value is false.
authorizationsBlocking:
type: boolean
description: Indicates if the authorizations are blocked for the account hierarchy (true) or not (false).By default, value is false.
statusDate:
type: string
format: date-time
description: Date of the change.
blockingReason:
type: string
description: Reason why the operations are blocked.
comment:
type: string
description: Comment for blocking operations Free text.
title: HierarchyOperationStatusHistory
Amount:
type: object
required:
- value
- exponent
- isoCode
properties:
value:
type: integer
format: int64
description: Integer amount value. Ex. if it is two hundred euros and 17 cents, then amount value is 20017 (exponent = 2 digits for currency=EUR)
exponent:
type: integer
format: int32
description: Exponent of Amount. Number of decimal digits.
isoCode:
type: string
description: 'Currency code of amount
The currency in ISO4217 alphabetic format.
Example: EUR for Euro'
title: Amount
CardContractModel:
type: object
properties:
reference:
type: string
description: Reference of a card contract model
type:
type: string
description: 'Type of a card contract model
Possible values: CARD_CREATION_MODEL, CARD_AUTONUMBERING_MODEL, TECHNOLOGY_AND_APPLICATION_MODEL, EVENT_FEE_MODEL, CARD_RENEWAL_MODEL, CARD_REPLACEMENT_MODEL, PIN_PRODUCTION_MODEL, DISTRIBUTION_MODEL'
title: CardContractModel
Contract:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
contractIdentifier:
description: Identification of the contract either by Issuer contract external reference or by contract reference.
allOf:
- $ref: '#/definitions/ContractIdentifier'
advertisementFlags:
allOf:
- $ref: '#/definitions/AdvertisementFlags'
description: 'Specify possible channels used to provide advertisements
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
issuerBranchCode:
type: string
description: Code of the branch which owns the contract. By default, value is NO_BRANCH.
cardReleaseOrder:
type: string
description: 'Used for physical cards only and when the contract is created to know how to issue card orders towards embosser
Possible values are:
- IMMEDIATE: As soon as the contract is in awaiting signature, the card order is released by our system (send to embosser)
- AUTOMATIC: As soon as the contract is signed, the card order is released by our system (send to embosser)'
closingComment:
type: string
description: 'Comment associated with the contract closing action (optional)
Free Text'
closingDate:
type: string
format: date-time
description: Closing date of the contract (present only in case of contract is already closed or contract closing is scheduled)
closingReason:
type: string
description: 'Indicates the reason for closing the contract (present only in case of contract is already closed or contract closing is scheduled)
Free text.'
closureDelayType:
type: string
description: "The closing type of the contract (present only in case of contract is already closed or contract closing is scheduled)\nThe closing type can be: \nIMMEDIATE (at current date)\nSCHEDULED (at current date or at future date)\nSCHEDULED_EXP_DATE (at expiry date of the principal card)"
enum:
- IMMEDIATE
- SCHEDULED
- SCHEDULED_EXP_DATE
dataAnalysisFlags:
allOf:
- $ref: '#/definitions/DataAnalysisFlags'
description: 'Specify which data analysis flags are enabled (person, paymentTransaction, exchangeThirdParties, etc.)
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
deliveryChannel:
allOf:
- $ref: '#/definitions/DeliveryChannel'
description: 'Specify the channel for letter delivery used for this contract
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
feeReimbursementAtCardContractClosing:
type: boolean
description: Reimbursement of membership fee at card contract closing is by default retrieved from issuer configuration
legitimacyDocuments:
type: array
description: 'This is the list of legitimacy documents: one document per cardholder, if provided.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/LegitimacyDocument'
numberOfFreeCardsMembershipFee:
type: integer
format: int32
description: Number of cards for which membership fee is not generated (optional)
numberOfFreeCardsAccountSetupFee:
type: integer
format: int32
description: Number of cards for which account setup fee is not generated (optional)
numberOfFreeCardsPrimaryCardImpacted:
type: boolean
default: false
description: 'Indicates if the primary card is always the first card to be considered as free and then the additional cards if any will be considered (true) or if only additional cards can be free (false). By default, the value is False.
E.g. Number of cards for which membership fee is not generated = 2
If the flag is True, the Primary card and only 1 additional card have no membership fee.
If the flag is False, membership fee is generated for the primary card and only 2 additional card have no membership fee.'
signatureDate:
type: string
format: date-time
description: Date when the contract was signed (mandatory if the contract is in SIGNED status)
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a consumer contract that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"}. Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
status:
type: string
description: 'Current status of the contract in our system (mandatory)
Possible values:
AWAITING_SIGNATURE: the contract definition is completed by the issuer, but not signed yet
SIGNED: the contract was signed, e.g. by the customer, the issuer after N days (no automatic process in our system)
CLOSED:The contract is permanently closed (final status)'
statusDate:
type: string
format: date-time
description: Date when the current status of the contract was set.
waiveFee:
type: boolean
description: 'Indicates if contract related fees are waived (true) or not (false) during contract life (by default, value is false).
This parameter is applied to the full contract and is used to waive all account setup and membership fees related to cards within the contract : membership fee (normal, pro-rata, reimbursement, turnover reimbursement) and account setup fees (normal, pro-rata).
This parameter can be modified later.'
accountIdentifiers:
type: array
description: 'List of all accounts (identifiers only) belonging to the account hierarchy of this contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AccountIdentifier'
accounts:
type: array
description: 'List of all accounts (with account data) belonging to the account hierarchy of this contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Account'
cardContractIdentifiers:
type: array
description: 'List of all cardContracts (identifiers only) belonging to this contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardContractIdentifier'
cardContracts:
type: array
description: 'List of all cardContracts (with cardContract data) belonging to this contract.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CardContract'
contractOwnerIdentifier:
description: Identifier of the contract owner
allOf:
- $ref: '#/definitions/CustomerIdentifier'
contractCustomerIdentifiers:
type: array
description: 'List of all customers (identifiers only) belonging to this contract as contract owner, account owner, account guarantor, or cardholder.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/CustomerIdentifier'
contractCustomers:
type: array
description: 'List of all customers (with customer data) belonging to this contract as contract owner, account owner, account guarantor, or cardholder.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Customer'
productIdentifier:
description: Identifier of the product which the contract is based on
allOf:
- $ref: '#/definitions/ProductIdentifier'
rootAccountIdentifier:
description: Identifier of the root account (in the account hierarchy) linked to this contract
allOf:
- $ref: '#/definitions/AccountIdentifier'
contractFees:
type: array
description: 'Selected Account setup fee and Membership fee models for the accounts.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._ '
items:
$ref: '#/definitions/ContractFee'
membershipFeeAnniversaryDate:
type: string
format: date-time
description: Next anniversary date of the membership fee (optional) used for the principal card and for the cards whose fees depend on the principal card. It can be changed when the fee frequency is Yearly
originalContractIdentifier:
description: Identifier of the original contract in case of Product Change
allOf:
- $ref: '#/definitions/ContractIdentifier'
changedContractIdentifier:
description: Identifier of the new contract in case of Product Change
allOf:
- $ref: '#/definitions/ContractIdentifier'
contractClosedByProductChange:
description: Information on the product change that closed this contract
allOf:
- $ref: '#/definitions/ProductChangeInformation'
contractCreatedFromProductChange:
description: Information on the product change that created this contract
allOf:
- $ref: '#/definitions/ProductChangeInformation'
coBrander:
type: string
description: coBrander associated to a consumer contract. This information is relevant when a product is shared by several cobranders. It is provided by the issuer at its convenience (Cobranders being managed by the issuer). This field is stored in our system as informational data at contract level and is populated at each account of the account hierarchy.
addonSubscriptions:
type: array
description: 'List of add-on service subscriptions for contract''s accounts or card contracts
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AddOnSubscription'
partnerContractExternalReference:
type: string
description: Partner external identifier of the contract given by the issuer
description: Consumer contract entity
title: Contract
TurnoverInformation:
type: object
required:
- rootAccountIdentifier
- issuerId
properties:
rootAccountIdentifier:
$ref: '#/definitions/AccountIdentifier'
issuerId:
type: string
description: Issuer identifier (unique per platform)
nextMembershipAnniversaryDate:
format: date-time
type: string
description: The next anniversary of the Membership fee.
previousPeriodTurnovers:
description: previous turnovers
type: array
items:
$ref: '#/definitions/PreviousPeriodTurnover'
currentTurnoverAmount:
description: The amount of the current Turnover (amount/exponent/currency values)
allOf:
- $ref: '#/definitions/Amount'
title: TurnoverInformation
ContactCenterIdentifier:
type: object
properties:
contactCenterReference:
type: string
description: Contact center dentifier (unique per issuer)
title: ContactCenterIdentifier
TemporaryCreditLimitIdentifier:
type: object
properties:
temporaryCreditLimitReference:
type: string
description: Reference of the temporary credit limitt.
title: TemporaryCreditLimitIdentifier
ApiResponseEntityCorporateContract:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/CorporateContract'
description: Issuer response entity
title: ApiResponseEntityCorporateContract
DirectDebitIdentifier:
type: object
properties:
endToEndId:
type: string
description: DD identifier
title: DirectDebitIdentifier
AuthorizationDataValidation:
type: object
description: The issuer can update cardholder data used by the Front Office for verification (AVS/ANI).
properties:
firstName:
type: string
description: First name of the cardholder
lastName:
type: string
description: Last name of the cardholder
secondFirstName:
type: string
description: Second first name of the cardholder
streetName:
type: string
description: Street name of the cardholder address
zipCode:
type: string
description: Zip code of the cardholder address
birthDate:
type: string
format: date-time
description: Birth date of the cardholder
ModifyCreditLimitRequest:
type: object
required:
- creditLimitAmount
properties:
creditLimitAmount:
description: Permanent credit limit amount allowed by the issuer must be provided
allOf:
- $ref: '#/definitions/Amount'
title: ModifyCreditLimitRequest
Contact:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
name:
type: string
description: Contact name
firstName:
type: string
description: Contact first name
departmentName:
type: string
description: Contact department name. Free text.
sex:
type: string
description: Sex of the contact
description:
type: string
description: Description of the role in the company (e.g. 'sales manager'). Free text
courtesyTitle:
type: string
description: Title of the contact. Free text
contactIdentifier:
description: Unique contact identifier
allOf:
- $ref: '#/definitions/ContactIdentifier'
type:
type: string
description: "Represents the type of contact for customer (person). The possible values are configured per Issuer. \nAn example can be: Power_of_Attorney or Legal_Representative"
birthDate:
type: string
format: date
description: Birth date of the contact
postalAddress:
description: The postal adress of the contact
allOf:
- $ref: '#/definitions/MailAddress'
title: Contact
ApiResponseEntityListDirectDebit:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
type: array
description: Response data
items:
$ref: '#/definitions/DirectDebit'
description: Issuer response entity
title: ApiResponseEntityListDirectDebit
BadRequestResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 400
description: HTTP status code
statusMessage:
type: string
example: Bad request
description: Executed REST API status message
title: BadRequestResponseMetadata
CardStatusHistory:
type: object
properties:
eventType:
type: string
description: 'Event type associated to a card status and an event date (mandatory)
Example: CardActivation, CardIssuing, CardCancellation, CardDeactivation, CardBlocking, CardUnblocking'
eventDate:
type: string
format: date-time
description: 'Date time when an event is performed on the card by our system (mandatory)
Example: blocking card, unblocking card, replacement card'
reason:
type: string
description: 'Reason associated to a card status (mandatory)
The list of reasons is configurable per issuer (example: ActivationReason, CancellationReason, DeactivationReason, CardBlockingReason)'
comment:
type: string
description: A comment (free text) used in case of blocking or unblocking a card (optional)
waiveFee:
type: boolean
description: Indicates if the fee was waived (true) or not (false). By default, value is false.
blockingInformation:
description: Information related to the card blocking (present if the card is blocked)
allOf:
- $ref: '#/definitions/CardBlockingInformation'
title: CardStatusHistory
ContactCenter:
type: object
properties:
description:
type: string
description: Description of the contact center. Free text
addressType:
type: string
description: The type of an address is POSTAL_MAIL, PHONE or E_MAIL
contactCenterIdentifier:
description: Unique reference of the contact center within the issuer
allOf:
- $ref: '#/definitions/ContactCenterIdentifier'
postalAddress:
description: The postal adress of the contact center
allOf:
- $ref: '#/definitions/MailAddress'
emailAddress:
description: The email adress of the contact center
allOf:
- $ref: '#/definitions/EmailAddress'
phone:
description: The phone number of the contact center
allOf:
- $ref: '#/definitions/PhoneNumber'
title: ContactCenter
AddOnServiceParameter:
type: object
properties:
value:
type: string
description: Value of this add-on service parameter.
type:
type: string
description: Type of this add-on service parameter.
optional:
type: boolean
description: Defines if this add-on service parameter is optional or not.
reference:
type: string
description: Service parameter reference of the add-on
title: AddOnServiceParameter
ApiResponseEntityTurnover:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/Turnover'
description: Issuer response entity
title: ApiResponseEntityTurnover
PhoneNumber:
type: object
required:
- localPhoneNumber
properties:
countryCode:
type: string
description: Country dialing code (optional). Free text. It is recommended to provide a region dialing code (e.g. +33, +49).
localPhoneNumber:
type: string
description: "Free text (mandatory). It’s recommended to provide an international phone number in accordance with the value provided in the country code.\nEx : \n- country code = ‘+’33’ and localPhoneNumber = ‘0622334455’ \n- country code = empty and localPhoneNumber = ‘+33622334455’\nThe value can be subject to a validation process if a specific rule has been configured at issuer level."
internationalPhoneNumber:
type: string
description: "Free text (mandatory). It’s recommended to provide an international phone number in accordance with the value provided in the country code.\nEx : \n- country code = ‘+’33’ and localPhoneNumber = ‘0622334455’ \n- country code = empty and localPhoneNumber = ‘+33622334455’\nThe value can be subject to a validation process if a specific rule has been configured at issuer level."
title: PhoneNumber
BadGatewayResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 502
description: HTTP status code
statusMessage:
type: string
example: Bad Gateway
description: Executed REST API status message
title: BadGatewayResponseMetadata
ExternalVelocityLimit:
type: object
required:
- externalVelocityLimitIdentifier
properties:
externalVelocityLimitIdentifier:
description: Unique reference of the external velocity limit
allOf:
- $ref: '#/definitions/ExternalVelocityLimitIdentifier'
maximumAmount:
description: Maximum amount of provided velocity limit (optional)
allOf:
- $ref: '#/definitions/Amount'
minimumAmount:
description: Minimum amount of provided velocity limit (optional)
allOf:
- $ref: '#/definitions/Amount'
maximumCount:
type: integer
description: Maximum count of transaction to be done using velocity limit
priority:
type: string
description: In case multiple overrides with overlapping activation times are existing this information is used to resolve this situation by applying the overrides one by one starting with the one with lowest priority. The priority needs to be unique across all overrides associated with a velocity check and an account
activationStartTime:
type: string
format: date-time
description: The date time the velocity limit is active
activationEndTime:
type: string
format: date-time
description: The date time the velocity limit finished if present
title: ExternalVelocityLimit
ContractIdentifier:
type: object
description: Identification of thecorporate contract either by Issuer contract external reference or by contract reference
properties:
contractReference:
type: string
description: 'The unique reference of the contract in our system, unique per platform
This reference is an UUID (universally unique identifier) on 36 digits (e.g.196c2215-9a80-4b8b-868c-18beb8c8c9).'
issuerContractExternalReference:
type: string
description: 'The external reference of the contract provided by the issuer
This reference is unique per issuer and may be used to carry out research and find information.'
title: ContractIdentifier
ForbiddenResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 403
description: HTTP status code
statusMessage:
type: string
example: Forbidden
description: Executed REST API status message
title: ForbiddenResponseMetadata
Company:
type: object
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
customerIdentifier:
description: Unique identifier. Refer to Customer Identifier data type for detail information
allOf:
- $ref: '#/definitions/CustomerIdentifier'
active:
type: boolean
description: DEPRECATED
corporateName:
type: string
description: Name of the company
nationalFiscalIdentifier:
type: string
description: National fiscal identifier of the company (for information only)
vatCode:
type: string
description: Value added tax code of the company (for information only). Free text.
type:
type: string
description: Type of company (e.g. Governmental, public company, private company). For information only. Free text.
size:
type: string
description: Size of the company. Free text (e.g. small, medium, 100).
businessArea:
type: string
description: Definition of the activity of the company. Free text.
activityCode:
type: string
description: Activity of the company (e.g. 'rent car', 'retailer'). Free text.
revenue:
type: string
description: Annual turnover of the company. Free text
legalForm:
type: string
description: 'Definition of the legal form of the company (e.g. in France : SA, SARL, EURL). Free text.'
commercialStatus:
type: string
description: Commercial status of the company (e.g. 'normal', 'Active in Liquidation', 'Inactive'). List of possible values is determined per issuer. A default value is defined for each issuer.
preferredCorrespondenceLanguage:
type: string
description: Preferred correspondence language of the company (optional). Free text but ISO639-1 code is recommended (e.g. ‘nl’,’fr’,’de’,’en’). If present, the value can be subject to a validation process if a specific rule has been configured at issuer level.
specificFields:
type: object
description: 'List of external data {"label":"value"} separated by a "," related to a company that can be provided by e.g. the issuer for information or for usage by other systems. Example : {"label1":"value1","label2":"value2"} Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
partnerExternalReference:
type: string
description: External Reference provided by the issuer (optional)
addressIdentifiers:
type: array
description: 'List of address references whatever their type (MAIL, EMAIL, PHONE). The address can be a temporary address.At least, the main postal address reference should be retrieved (mandatory).
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AddressIdentifier'
addresses:
type: array
description: 'List of addresses whatever their type (MAIL, EMAIL, PHONE). See the Address''s datatype for the detail list of the attributes.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Address'
contactIdentifiers:
type: array
description: 'List of contact references of the company.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/ContactIdentifier'
contacts:
type: array
description: 'List of contacts of the company.
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/Contact'
lastUpdateDate:
type: string
format: date-time
description: Indicates the date when the update is processed
title: Company
ApiResponseEntityCancelMandateResponse:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/CancelMandateResponse'
title: ApiResponseEntityCancelMandateResponse
Vulnerability:
type: object
required:
- type
properties:
type:
type: string
description: Type of vulnerability applicable to the customer (free text).
comment:
type: string
description: Details about the vulnerability of the customer (free text).
CardBlockingInformation:
type: object
required:
- cardBlockingDateTime
properties:
cardBlockingDateTime:
type: string
format: date-time
description: Date and time when the card has been blocked by our system
blockAgent:
type: string
description: Operator who blocked the card (mandatory only if the card is blocked). It corresponds to the name of the user, referenced in our system, mentioned at the card blocking time.
blockingReason:
type: string
description: 'Reason for blocking a card (mandatory only if the card is blocked)
The list of blocking reasons is configurable per issuer (For example, LOST, STOLEN, FRAUDULENT …)'
blockingReasonDetail:
type: string
description: 'Complementary information describing the defined blocking reason
Free text'
lostStolenDate:
type: string
format: date-time
description: 'Date when the card has been lost or stolen
This date is provided in addition to the blocking reason (required only if the card is blocked in a context of loss/theft)'
lossPlace:
type: string
description: 'Place where the card has been lost
Free text'
lossCountry:
type: string
description: 'Country of card loss or steal
Can be required in certain countries (e.g. french issuers with CB)
Free text (not check on the provided value)'
lastUsageDate:
type: string
format: date-time
description: ' Date of last use of the card
Example: for lost or stolen reason'
lastUsagePlace:
type: string
description: 'Last place where the card has been used
Example: for lost or stolen reason'
lossCircumstances:
type: string
description: 'Description of the circumstances of the card loss
Free text'
lossReportedBy:
type: string
description: 'Person who has reported the card loss
Free text'
lossReportedVia:
type: string
description: 'How was reported the loss (channel)
Free text'
fraudCode:
type: string
description: 'Fraud code can be used in the context of dispute management.
Fraud code (free text) is provided in case of Fraud for Fraud declaration to the schemes (VISA, MasterCard).
The value must be a value expected by the schemes.'
contactData:
type: string
description: 'Indicates contact data (usually phone number)
Free text'
pinCompromised:
type: boolean
description: 'Indicates if the PIN is compromised (true) or not (false) only in case of lost or stolen reason. Default value is false '
customerRequestingBlockDate:
type: string
format: date-time
description: 'Date when the customer has declared the blocking request.
For example, the cardholder calls the customer service at 4 pm to declare he lost his card and the card blocking request can only be sent at 5 pm to the system: then the customerRequestingBlockDateTime is 4 pm.'
transferEffectiveDate:
type: string
format: date-time
description: Transfer effective date (either a date prior to the card blocking date time or it is the card blocking date time in our system)
noReplacementReason:
type: string
description: 'The reason why the card is not replaced.
Free text'
comment:
type: string
description: 'Comment associated with the card blocking action
Free text'
cppFlag:
type: boolean
description: DEPRECATED
fraudProcess:
type: string
description: "Fraud process in which the card is blocked. \nPossible values : \n•\tCPP : the card is in CCP list \n•\tTFI : Fraud detected for a single card \n•\tMBA : Fraud detected for several cards (Mass action)"
scheduledCardBlockingDate:
type: string
format: date-time
description: Date when the permanent card blocking is scheduled
scheduledCardBlockingDelay:
type: integer
description: Delay in calendar days used to permanently block the card in the future
scheduledCardBlockingReason:
type: string
description: 'Blocking reason used when the card is blocked in the future
Relevant if a scheduled permanent blocking is requested at the same time as an immediate temporary card blocking.
Permanent blocking reasons used context of loss/theft are not allowed.'
transactionId:
type: string
description: Indicates the transactionId of the suspicious transaction that has triggered the card blocking.
title: CardBlockingInformation
CreditTransferIdentifier:
type: object
properties:
endToEndId:
type: string
description: Credit transfer identifier
title: CreditTransferIdentifier
InsuranceContractIdentifier:
type: object
description: 'The insurance package which is linked to this contract '
properties:
insurancePackageReference:
type: string
description: Reference of the insurance contract
title: InsuranceContractIdentifier
ModifyAccountResponse:
type: object
properties:
accountIdentifier:
$ref: '#/definitions/AccountIdentifier'
title: ModifyAccountResponse
SepaMandateMailAddress:
type: object
properties:
typeCode:
type: string
description: DEPRECATED
line1:
type: string
description: Address line 1 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line2:
type: string
description: Address line 2 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line3:
type: string
description: Address line 3 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line4:
type: string
description: Address line 4 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
line5:
type: string
description: Address line 5 (conditional). Free text. A specific issuer algorithm can be activated to e.g. build the line, apply controls (e.g. length restriction).
buildingNumber:
type: string
description: Building number of the address (optional)
boxNumber:
type: string
description: Box number of the address (optional)
streetName:
type: string
description: Street name of the address (optional)
postCode:
type: string
description: zip code of the address (optional)
townName:
type: string
description: City corresponding to the address
countrySubdivision:
type: string
description: Subdivision of the country (optional)
country:
type: string
description: Code of the country.Free text.
title: SepaMandateMailAddress
AddressIdentifier:
type: object
properties:
addressReference:
type: string
description: Unique internal identifier computed with a specific algorithm (mandatory)
issuerAddressExternalReference:
type: string
description: Unique external identifier provided by the issuer (optional)
title: AddressIdentifier
LoyaltyPoint:
type: object
properties:
unit:
type: string
description: ' Unit in which the loyalty points are expressed. Defined by Bonus/Loyalty program (can be currency, points...) (optional).'
cumulatedValue:
type: integer
format: int64
description: Total number of loyalty points (optional).
title: LoyaltyPoint
Links:
type: object
required:
- self
properties:
self:
type: string
example: /x/{x}?x=x
description: Service method URL
next:
type: string
example: /x/{x}?page[offset]=2
description: URL pagination query parameter next page
title: Links
UnauthorizedResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 401
description: HTTP status code
statusMessage:
type: string
example: Unauthorized
description: Executed REST API status message
title: UnauthorizedResponseMetadata
ModifyAccountRequest:
type: object
x-wl-patch-request: true
properties:
bic:
type: string
description: Refer to Account.bic
paymentMode:
type: string
description: Refer to Account.paymentMode
iban:
type: string
description: Refer to Account.iban
overlimitContribution:
type: string
description: DEPRECATED
accountGuarantorIdentifier:
type: object
description: Refer to Account.accountGuarantorIdentifier
allOf:
- $ref: '#/definitions/CustomerIdentifier'
closureCalendar:
type: string
description: DEPRECATED - closureCalendarReference should be used instead.
closureCalendarReference:
type: string
description: Refer to Account.closureCalendarReference
secondIban:
type: string
description: Refer to Account.secondIban
amountDueFixedAmount:
type: object
description: Refer to Account.amountDueFixedAmount.
allOf:
- $ref: '#/definitions/Amount'
amountDuePercentage:
type: string
description: Refer to Account.amountDuePercentage
amountDueMinAmount:
type: object
description: Refer to Account.amountDueMinAmount
allOf:
- $ref: '#/definitions/Amount'
greaterOrLesserAmountDue:
type: string
description: Refer to Account.greaterOrLesserAmountDue
accountHierarchySpecificFields:
type: object
description: 'The issuer can update Specific Fields for the account hierarchy.
It is a list of external data {"label":"value"} separated by a "," related to the account hierarchy (pass-thru data) that can be provided by e.g. the issuer for information or for usage by other systems.
A new data can be added or an existing data can be updated {"label1":"newValue"} or removed {"label2":"null"}.
Any existing data that is not present in this list is not updated in the account hierarchy.
Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
ibanOwnerName:
type: string
description: Refer to Account.ibanOwnerName
spareChangeSaving:
type: boolean
description: Refer to Account.spareChangeSaving
sepaIndicator:
type: boolean
description: Refer to Account.sepaIndicator
directDebitFixedAmount:
type: object
description: Refer to Account.directDebitFixedAmount
allOf:
- $ref: '#/definitions/Amount'
directDebitPercentage:
type: string
description: Refer to Account.directDebitPercentage
selectedModels:
type: array
description: Used to change the models of the account.
items:
$ref: '#/definitions/ModifyAccountRequestAccountModel'
accountMembershipNumber1:
type: string
description: Refer to Account.accountMembershipNumber1
accountMembershipNumber2:
type: string
description: Refer to Account.accountMembershipNumber2
specificFields:
type: object
description: 'The issuer can update Specific Fields for the account.
It is a list of external data {"label":"value"} separated by a "," related to the account (pass-thru data) that can be provided by e.g. the issuer for information or for usage by other systems.
A new data can be added or an existing data can be updated {"label1":"newValue"} or removed {"label2":"null"}.
Any existing data that is not present in this list is not updated in the account.
Those provided data have no impact on our system business processes.'
additionalProperties:
type: string
hierarchyOutgoingCreditTransferFeature:
type: object
description: The issuer can override each different Outgoing Credit Transfer (OCT) options if is allowed within the reimbursement model.
allOf:
- $ref: '#/definitions/ModifyHierarchyOutgoingCreditTransferFeature'
accountOutgoingCreditTransferFeature:
description: The issuer can override each different Outgoing Credit Transfer (OCT) options if is allowed within the reimbursement model.
allOf:
- $ref: '#/definitions/ModifyAccountOutgoingCreditTransferFeature'
noOtbCheck:
type: boolean
description: Refer to Account.noOtbCheck
resetCreditLimit:
type: boolean
description: Refer to Account.resetCreditLimit
liabilityType:
type: string
description: Refer to Account.liabilityType
hierarchyDebitOrderDueDateDelay:
type: integer
description: Refer to Account.accountHierarchy.hierarchyDebitOrderDueDateDelay
accountDebitOrderDueDateDelay:
type: integer
description: Refer to Account.accountDebitOrderDueDateDelay
hierarchySelectedModels:
type: array
description: '
The issuer can replace an account hierarchy model by another one (among those allowed for the product).
E.g. OCT on demand is enabled in the current reimbursement model and is disabled in the new model.'
items:
$ref: '#/definitions/AccountHierarchyModel'
dunningCaseStatus:
type: string
description: 'Status of the Dunning Case (optional, pay later):
- ACTIVE
- CLOSED'
collectionCaseStatus:
type: string
description: 'Status of the Collection Case (optional, pay later):
- ACTIVE
- CLOSED'
creditBureauContractFlag:
type: boolean
description: The issuer can specify if the Credit Bureau part of the contract has been signed by the credit card owner (pay later).
hierarchyOperationStatus:
description: The issuer can provide blocking/unblocking information for account hierarchy.
allOf:
- $ref: '#/definitions/ModifyAccountHierarchyOperationStatus'
title: ModifyAccountRequest
CancelMandateResponse:
type: object
properties:
accountIdentifier:
description: Refer to Account.accountIdentifier
allOf:
- $ref: '#/definitions/AccountIdentifier'
sepaMandateStatus:
type: string
description: Refer to Account.sepaMandateStatus
sepaMandateUir:
type: string
description: Refer to Account.sepaMandateUir
sepaMandateUmr:
type: string
description: Refer to Account.sepaMandateUmr
title: CancelMandateResponse
Address:
type: object
required:
- addressLabel
- addressType
properties:
issuerId:
type: string
description: Issuer identifier (unique per platform)
addressIdentifier:
description: Unique identifier of the address. See the AddressIdentifier's datatype for a detail description
allOf:
- $ref: '#/definitions/AddressIdentifier'
addressVersionIdentifier:
allOf:
- $ref: '#/definitions/AddressVersionIdentifier'
addressLabel:
type: string
example: MAIN_POSTAL_ADDRESS
description: "example: MAIN_POSTAL_ADDRESS Indicate the class of the address amongst a list of possible values such as MAIN_POSTAL_ADDRESS, SECOND_POSTAL_ADDRESS, HOME_PHONE_NUMBER, PRIVATE_MOBILE_PHONE, PERSONAL_EMAIL. This list of values is shared between WL and the issuer during issuer configuration. \n Every label corresponds to a unique type of address. A customer (person) has at least one MAIN_POSTAL_ADDRESS (mandatory) and a company has at least one HEAD_OFFICE."
addressType:
type: string
example: POSTAL_MAIL
description: The type of an address is POSTAL_MAIL, PHONE or E_MAIL
enum:
- PHONE
- POSTAL_MAIL
- E_MAIL
postalAddress:
description: "Customer Postal Address. This field is mandatory only if AddressType is POSTAL_MAIL. \n Depending on countries, the address format (mainly for line1, line 2, line3, line4 and line5) can have specific conditions such as length restriction. The customer should contact WL to check the address format and have more information."
allOf:
- $ref: '#/definitions/MailAddress'
emailAddress:
description: Customer Email. This field is mandatory only if AddressType is E_MAIL. See the EmailAddress' datatype for the detail list of the attributes.
allOf:
- $ref: '#/definitions/EmailAddress'
phone:
description: Customer Phone details. This field is mandatory only if AddressType is PHONE. See the PhoneNumber's datatype for the detail list of the attributes.
allOf:
- $ref: '#/definitions/PhoneNumber'
addressUsages:
type: array
description: 'List of the usages linked to the address if any exists. See the AddressUsage''s datatype for the detail list of the attributes (optional)
_Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._'
items:
$ref: '#/definitions/AddressUsage'
status:
type: string
description: Status of the address (ACTIVE or INACTIVE). If value is not provided, by default 'ACTIVE'
statusDate:
type: string
description: 'If the address is INACTIVE, the date corresponds to the inactivation date.
If the address is ACTIVE, the date corresponds to the last activation date.'
format: date-time
startDate:
type: string
description: Date when the address starts to be active
format: date-time
endDate:
type: string
description: 'This attribute represents :
• in case of a permanent address : the last date the address has been active. This information is computed based on the next future address start date if any exists else this attribute is empty.
• in case of a temporary address : the end date where this address is active. This end date is mandatory when a temporary address is created.'
format: date-time
invalid:
type: boolean
description: "Indicates if an address is invalid (by default false).\nThis feature is currently only accurate for the mail address and apply only on the current permanent address.\nIn case a postal address is invalid, this address cannot be used anymore for letters, cards, pin mailers, statement sending. \nThis feature is active only depending on an issuer configuration. "
default: false
temporary:
type: boolean
description: 'indicates if the address is a temporary one (by default ''false'').
In case of a temporary address, the end date is mandatory.'
default: false
title: Address
NotFoundResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
statusCode:
type: integer
format: int32
example: 404
description: HTTP status code
statusMessage:
type: string
example: Not found
description: Executed REST API status message
title: NotFoundResponseMetadata
ResponseMetadata:
type: object
required:
- correlationId
- responseDateTime
- statusCode
- statusMessage
properties:
correlationId:
type: string
description: Correlation Identifier
links:
description: Metadata Links
allOf:
- $ref: '#/definitions/Links'
statusMessage:
type: string
example: Executed successfully
description: Executed REST API status message
statusCode:
type: integer
format: int32
example: 200
description: HTTP status code
responseDateTime:
type: string
example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ
description: Timestamp when response date was generated
timeTakenMs:
type: integer
format: int64
example: 12
description: Wall clock time required from service to generate the response
title: ResponseMetadata
AccountRelation:
type: object
required:
- relation
- accountIdentifier
properties:
relation:
type: string
description: Is a combination of criteria to describe the posting rule (one criteria or combination of several ones such as transaction currency = XXX) for each posting account - DEFAULT for the default posting account.
accountIdentifier:
description: Identification of the account either by the Issuer account external reference or by the account reference.
allOf:
- $ref: '#/definitions/AccountIdentifier'
title: AccountRelation
OrderStatusHistory:
type: object
properties:
type:
type: string
description: 'Type of the history order status (mandatory)
Possible values: InternalStatus or ProducerStatus'
date:
type: string
format: date-time
description: Date of the history order status (mandatory)
status:
type: string
description: 'Status of the history order (mandatory)
The possible values are the same the ones defined for the current internal status and the current external status depending on the type of the order status. '
title: OrderStatusHistory
ApiResponseEntityAccountBalance:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/AccountBalance'
description: Issuer response entity
title: ApiResponseEntityAccountBalance
ApiResponseEntityModifyAccountResponse:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
data:
description: Response data
allOf:
- $ref: '#/definitions/ModifyAccountResponse'
description: Issuer response entity
title: ApiResponseEntityModifyAccountResponse
CorporateContractEntity:
type: object
properties:
accountIdentifier:
description: Identifier of the entity account
allOf:
- $ref: '#/definitions/AccountIdentifier'
parentAccountIdentifier:
description: Parent account identifier of the parent entity
allOf:
- $ref: '#/definitions/AccountIdentifier'
account:
description: List of accounts (with account data) related to the entity
allOf:
- $ref: '#/definitions/Account'
level:
type: integer
description: Level number in the company organization (e.g. 1 corresponding to the company, 2 corresponding to country)
example: 2
companyEntityExternalReference:
type: string
description: 'External reference of the entity within the company organization (e.g. a code representing the country: FRAN for France)'
parentCompanyEntityExternalReference:
type: string
description: "Entity external reference of the parent entity \nEmpty for the root"
deliveryChannel:
description: 'Specify the channel for letter delivery used for an entity of the company organization.
Possible values: WEB, LETTER, LETTER_AND_WEB'
allOf:
- $ref: '#/definitions/DeliveryChannel'
advertisementFlags:
description: Specify possible channels used to provide advertisements (email, letter, phone, statement, sms) for an entity of the company organization.
allOf:
- $ref: '#/definitions/AdvertisementFlags'
description: Specify the corporate contract entity
title: CorporateContractEntity
LegitimacyDocument:
type: object
properties:
legitimacyDocumentType:
type: string
description: 'Type of the legitimacy document (example: passport, identity card, etc.)'
legitimacyDocumentId:
type: string
description: 'Id of the legitimacy document (example: the number of the passport)'
legitimacyDocumentDate:
type: string
format: date-time
description: Delivery date of the legitimacy document
legitimacyDocumentExpiryDate:
type: string
format: date-time
description: Expiry date of the legitimacy document
legitimated:
type: boolean
description: "Indicates if the document is provided for legitimacy (true) or not (false). \nBy default, value is false."
customerIdentifier:
description: Identifies the owner of this document.
allOf:
- $ref: '#/definitions/CustomerIdentifier'
description: Legitimacy document information
title: LegitimacyDocument
ApiResponseEntityTurnoverInformation:
x-wl-api-response: true
type: object
required:
- responseMetadata
properties:
data:
description: Response data
allOf:
- $ref: '#/definitions/TurnoverInformation'
responseMetadata:
description: Response metadata
allOf:
- $ref: '#/definitions/ResponseMetadata'
title: ApiResponseEntityTurnoverInformation
description: Issuer response entity
ContractFee:
type: object
properties:
accountIdentifier:
description: Contract fees related account identifier
allOf:
- $ref: '#/definitions/AccountIdentifier'
selectedModels:
type: array
description: Fee Model used for the contract (mandatory, Account setup fee and/or Membership fee models).
items:
$ref: '#/definitions/ContractModel'
membershipFeeAnniversaryDate:
description: Next anniversary date of the membership fee (optional) for the account
type: string
format: date-time
postingAccountForMembershipFee:
description: 'For a consumer contract, indicates if the membership fees have to be posted to card accounts or to the root account as default value for the contract.
Possible values are :
ROOT_ACCOUNT, CARD_ACCOUNT.For a corporate contract, indicates if the membership fees have to be posted to employee card accounts, interemdiate entity account or to the root (usually paid by the company) as default value for the contract.
Possible values are :
ROOT_ACCOUNT, CARD_ACCOUNT, ENTITY_ACCOUNT.'
type: string
postingAccountForAccountSetupFee:
description: 'For a consumer contract, indicates if the account setup fees have to be posted to card accounts or to the root account as default value for the contract.
Possible values are :
ROOT_ACCOUNT, CARD_ACCOUNT.For a corporate contract, indicates if the account setup fees have to be posted to employee card accounts, interemdiate entity account or to the root (usually paid by the company) as default value for the contract.
Possible values are :
ROOT_ACCOUNT, CARD_ACCOUNT, ENTITY_ACCOUNT.'
type: string
membershipFeePromotionalPeriod:
description: 'Membership fee promotional period
Indicates the period (number of years/months (depending on the frequency defined in the membership fee model)) during which the promotional membership fee amount (if any) is applied from the card creation.
If the issuer configuration allows it, it is possible to extend the default promotional period defined in the membership fee model. The value must be greater than the default value and greater than the already passed promotional period.'
type: integer
title: ContractFee
InsuranceContractPackage:
type: object
properties:
issuerId:
type: string
description: Issuer identifier of the insurance package
insurancePackageIdentifier:
description: Unique identifier of the insurance contract package
allOf:
- $ref: '#/definitions/InsurancePackageIdentifier'
title: InsuranceContractPackage
CardChange:
type: object
properties:
cardContractIdentifier:
description: 'Card contract to which the card change is applied in the new card contract identified either by the Issuer card contract external reference or the Card contract reference.
Mandatory if a card change is requested.'
allOf:
- $ref: '#/definitions/CardContractIdentifier'
cardClass:
type: string
description: Card class for the new card
title: CardChange
PreviousPeriodTurnover:
type: object
required:
- periodType
- startDate
- endDate
properties:
periodType:
type: string
description: "Period type : T-1, T-2, T-3, T-4, T-5 (5 periods maximum) with \n T-1 : Turnover information for the last year (for annual turnover) / the last month (for monthly turnover) \nT-x : Turnover information from x years ago (for annual turnover) / from x months ago (for monthly turnover)"
'startDate ':
format: date-time
type: string
description: The start date of the turnover period.
'endDate ':
format: date-time
type: string
description: The end date of the turnover period.
turnoverAmount:
description: Turnover amount for the period (amount/exponent/currency values)
allOf:
- $ref: '#/definitions/Amount'
title: PreviousPeriodTurnover
BadRequestErrorApiResponse:
type: object
required:
- responseMetadata
properties:
responseMetadata:
allOf:
- $ref: '#/definitions/BadRequestResponseMetadata'
title: BadRequestErrorApiResponse
CreditTransferStatusHistory:
type: object
properties:
status:
type: string
description: 'Status of the credit transfer on the particular status date '
statusDate:
type: string
format: date-time
description: Date of the credit transfer status change
username:
type: string
description: Name of the user who requested to create or cancel the credit transfer
origin:
type: string
description: Origin used when the credit tranfer was requested or cancelled.
title: CreditTransferStatusHistory
securityDefinitions:
basic:
type: oauth2
flow: application
tokenUrl: https://sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/token