Worldline Corporate Contract API
Corporate Contract API Controller
Corporate Contract API Controller
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 Account - AccountState Corporate Contract API
contact: {}
host: sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/card-issuing
basePath: /api/v2
schemes:
- https
tags:
- name: Corporate Contract
description: Corporate Contract API Controller
paths:
/issuers/{issuerId}/corporate-contracts/{contractReference}/corporate-employee-accounts/{accountReference}:
get:
tags:
- Corporate Contract
summary: Retrieve corporate employee Accounts
operationId: retrieveCorporateEmployeeAccounts
description: "This API allows a particular corporate employee account or Virtual Card Account to be retrieved from its reference or its issuer external reference.\n\nThe API response contains corporate employee account information such as:\n- account identifier with the account reference and the issuer external account reference\n- external reference of the employee account\n- parent identifier with the account reference and the issuer external account reference\n- allowed advertisement channels (flags) \n- allowed delivery channel for possible letters\n- if both membership and account setup fees are waived during contract lifecycle \n- if both membership fee and account setup fee are paid by the account or the root\n- type of a corporate product (if the account is related to the company or an employee) \n- embedded fields if requested such as account information, card account(s), card contract(s) linked to this corporate employee 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: contractReference
in: path
description: Contract Reference
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:
- account
- cardContracts
- cardContracts.cards
- cards.orders
- customers
- customers.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/ApiResponseEntityCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
patch:
tags:
- Corporate Contract
summary: Update Corporate employee account
operationId: updateCorporateEmployeeAccount
description: 'The API allows to update certain data of an existing corporate employee account or Virtual Card Account, such as:
- the external reference of the employee account
- the allowed advertisement channels (flags)
- the allowed delivery channel for possible letters
- if both membership and account setup fees should be waived during contract lifecycle (can be changed at any moment)
- if both membership fee and account setup fee are paid by the card account (usually the employee) or the root account (usually the company)
As a result the corporate employee account is immediately updated with provided data in our system.'
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: contractReference
in: path
description: contract Reference
required: true
type: string
- name: accountReference
in: path
description: account Reference
required: true
type: string
- in: body
name: body
required: false
schema:
$ref: '#/definitions/ModifyCorporateEmployeeAccountRequest'
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/ApiResponseEntityModifyCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
? /issuers/{issuerId}/corporate-contracts/{contractReference}/corporate-employee-accounts/external-accounts/{issuerAccountExternalReference}
: get:
tags:
- Corporate Contract
summary: Retrieve corporate employee accounts by account external reference
operationId: retrieveCorporateEmployeeAccountsWithExtAccountRef
description: "This API allows a particular corporate employee account or Virtual Card Account to be retrieved from its reference or its issuer external reference.\n\nThe API response contains corporate employee account information such as:\n- account identifier with the account reference and the issuer external account reference\n- external reference of the employee account\n- parent identifier with the account reference and the issuer external account reference\n- allowed advertisement channels (flags) \n- allowed delivery channel for possible letters\n- if both membership and account setup fees are waived during contract lifecycle \n- if both membership fee and account setup fee are paid by the account or the root\n- type of a corporate product (if the account is related to the company or an employee) \n- embedded fields if requested such as account information, card account(s), card contract(s) linked to this corporate employee 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: contractReference
in: path
description: Contract Reference
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:
- account
- cardContracts
- cardContracts.cards
- cards.orders
- customers
- customers.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/ApiResponseEntityCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
patch:
tags:
- Corporate Contract
summary: Update Corporate employee account by account external reference
operationId: updateCorporateEmployeeAccountByExtAccount
description: 'The API allows to update certain data of an existing corporate employee account or Virtual Card Account, such as:
- the external reference of the employee account
- the allowed advertisement channels (flags)
- the allowed delivery channel for possible letters
- if both membership and account setup fees should be waived during contract lifecycle (can be changed at any moment)
- if both membership fee and account setup fee are paid by the card account (usually the employee) or the root account (usually the company)
As a result the corporate employee account is immediately updated with provided data in our system.'
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: contractReference
in: path
description: contract Reference
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/ModifyCorporateEmployeeAccountRequest'
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/ApiResponseEntityModifyCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
? /issuers/{issuerId}/corporate-contracts/external-contracts/{issuerContractExternalReference}/corporate-employee-accounts/external-accounts/{issuerAccountExternalReference}
: get:
tags:
- Corporate Contract
summary: Retrieve corporate employee Accounts by contract external reference and account external reference
operationId: retrieveCorporateEmployeeAccountsWithExtContractRefAndExtAccountRef
description: "This API allows a particular corporate employee account or Virtual Card Account to be retrieved from its reference or its issuer external reference.\n\nThe API response contains corporate employee account information such as:\n- account identifier with the account reference and the issuer external account reference\n- external reference of the employee account\n- parent identifier with the account reference and the issuer external account reference\n- allowed advertisement channels (flags) \n- allowed delivery channel for possible letters\n- if both membership and account setup fees are waived during contract lifecycle \n- if both membership fee and account setup fee are paid by the account or the root\n- type of a corporate product (if the account is related to the company or an employee) \n- embedded fields if requested such as account information, card account(s), card contract(s) linked to this corporate employee 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: issuerContractExternalReference
in: path
description: Issuer Contract External Reference
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:
- account
- cardContracts
- cardContracts.cards
- cards.orders
- customers
- customers.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/ApiResponseEntityCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
patch:
tags:
- Corporate Contract
summary: Update Corporate employee account by contract external reference and account external reference
operationId: updateCorporateEmployeeAccountByExtContractAndExtAccount
description: 'The API allows to update certain data of an existing corporate employee account or Virtual Card Account, such as:
- the external reference of the employee account
- the allowed advertisement channels (flags)
- the allowed delivery channel for possible letters
- if both membership and account setup fees should be waived during contract lifecycle (can be changed at any moment)
- if both membership fee and account setup fee are paid by the card account (usually the employee) or the root account (usually the company)
As a result the corporate employee account is immediately updated with provided data in our system.'
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: issuerContractExternalReference
in: path
description: Issuer Contract External Reference
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/ModifyCorporateEmployeeAccountRequest'
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/ApiResponseEntityModifyCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
? /issuers/{issuerId}/corporate-contracts/external-contracts/{issuerContractExternalReference}/corporate-employee-accounts/{accountReference}
: get:
tags:
- Corporate Contract
summary: Retrieve corporate employee Accounts by contract external reference
operationId: retrieveCorporateEmployeeAccountsWithExtContractRef
description: "This API allows a particular corporate employee account or Virtual Card Account to be retrieved from its reference or its issuer external reference.\n\nThe API response contains corporate employee account information such as:\n- account identifier with the account reference and the issuer external account reference\n- external reference of the employee account\n- parent identifier with the account reference and the issuer external account reference\n- allowed advertisement channels (flags) \n- allowed delivery channel for possible letters\n- if both membership and account setup fees are waived during contract lifecycle \n- if both membership fee and account setup fee are paid by the account or the root\n- type of a corporate product (if the account is related to the company or an employee) \n- embedded fields if requested such as account information, card account(s), card contract(s) linked to this corporate employee 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: issuerContractExternalReference
in: path
description: Issuer Contract External Reference
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:
- account
- cardContracts
- cardContracts.cards
- cards.orders
- customers
- customers.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/ApiResponseEntityCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
patch:
tags:
- Corporate Contract
summary: Update Corporate employee account by contract external reference
operationId: updateCorporateEmployeeAccountByExtContractAndAccount
description: 'The API allows to update certain data of an existing corporate employee account or Virtual Card Account, such as:
- the external reference of the employee account
- the allowed advertisement channels (flags)
- the allowed delivery channel for possible letters
- if both membership and account setup fees should be waived during contract lifecycle (can be changed at any moment)
- if both membership fee and account setup fee are paid by the card account (usually the employee) or the root account (usually the company)
As a result the corporate employee account is immediately updated with provided data in our system.'
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: issuerContractExternalReference
in: path
description: Issuer Contract External Reference
required: true
type: string
- name: accountReference
in: path
description: account Reference
required: true
type: string
- in: body
name: body
required: false
schema:
$ref: '#/definitions/ModifyCorporateEmployeeAccountRequest'
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/ApiResponseEntityModifyCorporateEmployeeAccountResponse'
security:
- basic: []
deprecated: false
/issuers/{issuerId}/corporate-contracts/{contractReference}:
get:
tags:
- Corporate Contract
summary: Retrieve corporate contract
operationId: retrieveCorporateContract
description: "This API allows a particular corporate contract from its reference or its issuer external reference to be retrieved.\n\nThe API response contains corporate contract information such as:\n•\tcontract identifier with the contract reference and the issuer external contract reference if previously provided\n•\tlist of levels in the company organization\n•\tembedded fields if requested 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) linked to this corporate contract"
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: contractReference
in: path
description: Contract 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
- corporateEmployeeAccounts.customerIdentifiers
- contractCustomers.addresses
- contractCompanies.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/ApiResponseEntityCorporateContract'
security:
- basic: []
deprecated: false
patch:
tags:
- Corporate Contract
summary: Modify Corporate contract
operationId: modifyCorporateContract
description: 'The API allows to update certain data of an existing corporate contract such as
- pass-through data (specificFields)
- logo reference sent to the embosser (optional, and can be overridden at card level)
- dispatch code sent to the embosser (optional)
- if the company should receive a duplicate for statement or not
- if the Open-to-buy should be reset to the credit limit amount at cycle closure date (credit account only)
- if both membership fee and account setup fee are paid by the card account (usually the employee) or the root account (usually the company)
- the description of each level of the company organization
As a result the corporate contract is immediately updated with provided data in Worldline system.'
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: contractReference
in: path
description: contract Reference
required: true
type: string
- in: body
name: body
required: false
schema:
$ref: '#/definitions/ModifyCorporateContractRequest'
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 gate
# --- truncated at 32 KB (422 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wordline/refs/heads/main/openapi/wordline-corporate-contract-api-openapi.yml