openapi: 3.0.1 info: title: Merchant - Contract API description: This is the API server supplied by equensWorldline. contact: name: equensWorldline API team. See developer portal version: 2.0.2 ##################################################################################################################### #version 2.0.2 (28-06-2023) #- new Calls based on cardAcceptorId: # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/sites # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId} # - DELETE /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId} # - PATCH /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId} # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/addresses # - PATCH /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/addresses # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId} # - DELETE /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId} # - PATCH /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId} # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId}/addresses # #- new Call: # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/currencies # #- Add optional contractId to SITE entity in post body # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/sites # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites # #- Add field paymentFacilitatorName to existing calls: # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants/{merchantId} # - PATCH /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants/{merchantId} # #version 2.0.1 (02-12-2022) #- new Calls: # - POST /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings # - PATCH /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings/{holdingId} # - DELETE /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings/{holdingId} # - GET /acquiring/contract/v2.0/acquirers/{acquirerId}/terminals/{terminalId}/checknumbers/{checkNumber} # #v2_comments (10-10-2022) #- Add merchant POST/PATCH/DELETE addresses #- Search holdings/merchants/contracts in CIM (instead of swan). Note: no swagger change #- Remove url from POST/GET sites #- GET contract bug fixes: # - change serviceProviders to serviceProvider # - change independentSalesOrganisationId to independentSalesOrganizationId # - change paymetServiceProviderId to paymentServiceProviderId # #v2_comments (07-07-2022) #- Add optional applyToAll query param to PATCH TerminalBrands, SiteBrands, ContractBrands # #v2_comments (03-06-2022) #- Add new calls: POST Contract, PATCH Contract, POST Contract Addresses, PATCH Contract Addresses, DELETE Contract Address, POST Contract Balances, PATCH Contract Balances, POST Contract Brands, PATCH Contract Brands, DELETE Contract Brand, POST Merchant, PATCH Merchant, DELETE Merchant # #v2_comments (21-03-2022) #- Add rejectedProductTypes to GET brands (terminal, site, contract) # #v2_comments (22-12-2021) #- Terminal and Site search to CIM (instead of Swan) #- Remove prev/next headers for Terminal and Site search # ##################################################################################################################### servers: - url: /MerchantApiContract/api paths: /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings: get: tags: - Holding summary: Search holdings description: | This operation retrieves a list of holdings. Terminated holdings are excluded. The acquirerId is a mandatory parameter. If there is a previous and/or next page the http response header will have a link (url) to this data operationId: getHoldingOverviewList parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: query description: | Unique identification of the holding, determined by equensWorldline schema: type: integer format: int32 - name: holdingName in: query description: | Name of the holding schema: type: string - name: sortField in: query description: | Sort field schema: type: string enum: - HoldingId - HoldingName - name: sortOrder in: query description: | Sort order schema: type: string enum: - Ascending - Descending - name: pageSize in: query description: Page size schema: type: string - name: pageNumber in: query description: Page number schema: type: string responses: 200: description: Successful content: application/json: schema: type: array items: $ref: '#/components/schemas/HoldingListData' example: - contractIdentification: acquirerId: "315000001" holdingId: 200 holdingName: Event Payment Solutions status: Active address: streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com holdingDetailsURI: acquiring/contract/v2.0/acquirers/315000001/holdings/200 - contractIdentification: acquirerId: "315000001" holdingId: 300 holdingName: Great Groceries status: Active address: streetName: Utrechtsestraat houseNumber: 17 postalCode: 1017VH city: Amsterdam countryCode: 528 contactPersonName: W. Kilbourne email: W.Kilbourne@GreatGroceries.com holdingDetailsURI: acquiring/contract/v2.0/acquirers/315000001/holdings/300 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Holding summary: Add a holding operationId: PostHolding parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostHolding' application/json: schema: $ref: '#/components/schemas/PostHolding' text/json: schema: $ref: '#/components/schemas/PostHolding' application/*+json: schema: $ref: '#/components/schemas/PostHolding' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostHoldingResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings/{holdingId}: get: tags: - Holding summary: Retrieve a holding description: | This operation retrieves a holding. operationId: getHolding parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: path description: | Unique identification of the holding, determined by equensWorldline required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/HoldingData' example: contractIdentification: acquirerId: "315000001" holdingId: 200 basic: acquirerName: Worldline Sandbox Bank holdingName: Event Payment Solutions status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/holdings/200/addresses 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Holding summary: Terminate a holding operationId: deleteHolding parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: path description: | Unique identification of the holding, determined by equensWorldline required: true schema: type: integer format: int32 responses: 200: description: Termination of the holding is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Holding summary: Update a holding description: "Fields that can be used: /basic/holdingName**\r\nOperations that\ \ can be used: **replace**\r\nSample request: \r\n\r\n [\r\n {\r\n\ \ \"value\": \"MyHolding\",\r\n \"path\": \"/basic/holdingName\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchHolding parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: path description: | Unique identification of the holding, determined by equensWorldline required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/holdings/{holdingId}/addresses: get: tags: - Holding summary: Retrieve the addresses of a holding description: | This operation retrieves addresses of a holding. operationId: getHoldingAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: path description: | Unique identification of the holding, determined by equensWorldline required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/HoldingAddressData' example: contractIdentification: acquirerId: "315000001" holdingId: 200 addresses: - addressType: Business streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants: get: tags: - Merchant summary: Search merchants description: | This operation retrieves a list of merchants. Terminated merchants are excluded. If there is a previous and/or next page the http response header will have a link (url) to this data operationId: getMerchantOverviewList parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: iban in: query description: | International Bank Account Number for merchant payments schema: type: string - name: holdingId in: query description: | Unique identification of the holding, determined by equensWorldline schema: type: integer format: int32 - name: merchantId in: query description: | Unique identification of the merchant, determined by the acquirer schema: type: string - name: merchantName in: query description: | Name of the merchant schema: type: string - name: postalCode in: query description: | Postal code of business address. schema: type: string - name: houseNumber in: query description: | Housenumber of business address. Note, Postalcode must be given too schema: type: integer format: int32 - name: terminalId in: query description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) schema: type: string - name: cardAcceptorId in: query description: | Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID schema: type: string - name: sortField in: query description: | Sort field schema: type: string enum: - merchantId - merchantName - name: sortOrder in: query description: | Sort order schema: type: string enum: - Ascending - Descending - name: pageSize in: query description: Page size (Max page size is 300) schema: type: string - name: pageNumber in: query description: Page number schema: type: string responses: 200: description: Successful content: application/json: schema: type: array items: $ref: '#/components/schemas/MerchantListData' example: - contractIdentification: acquirerId: "315000001" holdingId: 200 merchantId: "1001" merchantName: Event Payment Solutions 1 status: Active address: streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com merchantDetailsURI: acquiring/contract/v2.0/acquirers/315000001/merchants/1001 - contractIdentification: acquirerId: "315000001" holdingId: 300 merchantId: "2001" merchantName: Great Groceries 1 status: Active address: streetName: Utrechtsestraat houseNumber: 17 postalCode: 1017VH city: Amsterdam countryCode: 528 contactPersonName: W. Kilbourne email: W.Kilbourne@GreatGroceries.com merchantDetailsURI: acquiring/contract/v2.0/acquirers/315000001/merchants/2001 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Merchant summary: Add a merchant operationId: PostMerchant parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostMerchant' application/json: schema: $ref: '#/components/schemas/PostMerchant' text/json: schema: $ref: '#/components/schemas/PostMerchant' application/*+json: schema: $ref: '#/components/schemas/PostMerchant' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostMerchantResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants/{merchantId}: get: tags: - Merchant summary: Retrieve a merchant description: | This operation retrieves a merchant. operationId: getMerchant parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/MerchantData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" basic: acquirerName: Worldline Sandbox Bank merchantName: Event Payment Solutions 1 MasterCardPaymentFacilitatorId: "200000" VisaPaymentFacilitatorId: "10000000" refundLimits: maximumDailyRefundAmountMerchant: "200000.00" status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/merchants/1001/addresses 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Merchant summary: Delete a merchant operationId: deleteMerchant parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string responses: 200: description: Termination of the merchant is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Merchant summary: Update a merchant description: "Based on a GET Merchant call a PATCH Merchant call can be generated\ \ to change one or more fields. Whether it is allowed to change a field (and\ \ which values are allowed) is determined by the business logic of the contract\ \ management solution. Sample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"MyMerchant\",\r\n \"path\": \"/basic/merchantName\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"NL12121\",\r\n \"path\": \"/externalIds/vatNumber\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchMerchant parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants/{merchantId}/addresses: get: tags: - Merchant summary: Retrieve the addresses of a merchant description: | This operation retrieves addresses of a merchant. operationId: getMerchantAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/MerchantAddressData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" addresses: - addressType: Business streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com communicationLanguage: eng communicationPreference: 3 - addressType: Postal streetName: Postbus houseNumber: 2341 postalCode: 3000CH city: Rotterdam countryCode: 528 contactPersonName: S. Chadwick email: S.Chadwick@eventpaymentsolutions.com communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Merchant summary: Add addresses to a Merchant operationId: postMerchantAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostMerchantAddresses' application/json: schema: $ref: '#/components/schemas/PostMerchantAddresses' text/json: schema: $ref: '#/components/schemas/PostMerchantAddresses' application/*+json: schema: $ref: '#/components/schemas/PostMerchantAddresses' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Merchant summary: Update the addresses of a Merchant description: "Based on a GET Merchant Addresses call a PATCH Merchant Addresses\ \ call can be generated to change one or more fields. Whether it is allowed\ \ to change a field (and which values are allowed) is determined by the business\ \ logic of the contract management solution. Sample request: \r\n\r\n [\r\ \n {\r\n \"value\": \"Mainstreet\",\r\n \"path\"\ : \"/addresses/0/streetName\",\r\n \"op\": \"replace\" \ \ \r\n }, \r\n {\r\n \"value\": 12,\r\n \ \ \"path\": \"/addresses/0/houseNumber\",\r\n \"op\": \"replace\"\ \ \r\n }\r\n ]" operationId: patchMerchantAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/merchants/{merchantId}/addresses/{addressType}: delete: tags: - Merchant summary: Delete an address from a merchant description: | This operation deletes a merchant address operationId: deleteMerchantAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: merchantId in: path description: | Unique identification of the merchant, determined by the acquirer required: true schema: type: string - name: addressType in: path description: Type of the address. Values [Business, Chargeback, Creditor, Debtor, Invoice, Location, Postal, Private] required: true schema: type: string responses: 200: description: Delete is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts: get: tags: - Contract summary: Search contracts description: "This operation retrieves a list of contracts. Terminated contracts\ \ are excluded.\n \nIf there is a previous and/or next page the http\ \ response header will have a link (url) to this data \n" operationId: getContractOverviewList parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: holdingId in: query description: | Unique identification of the holding, determined by equensWorldline schema: type: integer format: int32 - name: merchantId in: query description: | Unique identification of the merchant, determined by the acquirer schema: type: string - name: contractId in: query description: | Unique identification of the contract, determined by the acquirer schema: type: string - name: iban in: query description: | Iban schema: type: string - name: contractName in: query description: | Optional name for this specific contract schema: type: string - name: postalCode in: query description: | Postal code of business address. schema: type: string - name: houseNumber in: query description: | House number of business address. Note, Postal code must be given as well schema: type: integer format: int32 - name: cardAcceptorId in: query description: | Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID schema: type: string - name: terminalId in: query description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) schema: type: string - name: merchantName in: query description: | Name of the merchant schema: type: string - name: sortField in: query description: | Sort field schema: type: string enum: - contractId - contractName - name: sortOrder in: query description: | Sort order schema: type: string enum: - Ascending - Descending - name: pageSize in: query description: Page size (Max page size is 300) schema: type: string - name: pageNumber in: query description: Page number schema: type: string responses: 200: description: Successful content: application/json: schema: type: array items: $ref: '#/components/schemas/ContractListData' example: - contractIdentification: acquirerId: "315000001" holdingId: 200 merchantId: "1001" contractId: "10011" contractName: Music Festivals commencementDate: 2022-12-09 status: Active address: streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com contractDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011 - contractIdentification: acquirerId: "315000001" holdingId: 300 merchantId: "2001" contractId: "20011" contractName: GG Retail Stores commencementDate: 2022-12-09 status: Active address: streetName: Utrechtsestraat houseNumber: 17 postalCode: 1017VH city: Amsterdam countryCode: 528 contactPersonName: W. Kilbourne email: W.Kilbourne@GreatGroceries.com contractDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/20011 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Contract summary: Add a contract operationId: postContract parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostContract' application/json: schema: $ref: '#/components/schemas/PostContract' text/json: schema: $ref: '#/components/schemas/PostContract' application/*+json: schema: $ref: '#/components/schemas/PostContract' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostContractResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}: get: tags: - Contract summary: Retrieve a contract description: | This operation retrieves a contract. operationId: getContract parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/ContractData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" contractId: "10011" basic: acquirerName: Worldline Sandbox Bank merchantName: Event Payment Solutions 1 contractName: Music Festivals merchantCategoryCode: "8931" currencyData: transaction2PaymentCurrency: - transactionCurrency: EUR paymentCurrency: EUR - transactionCurrency: GBP paymentCurrency: EUR - transactionCurrency: USD paymentCurrency: EUR localPaymentCurrency: EUR refundLimits: maximumRefundAmount: "500.00" maximumDailyRefundAmount: "100000.00" maximumDailyNumberOfRefunds: 5000 financial: transactionFeePricePlans: - currency: EUR name: IC+ PayFac type: 2 paymentTemplateName: Net1 serviceBasedFeePricePlanName: Service Fees PayFac 1 status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/brands 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Contract summary: Delete a contract operationId: deleteContract parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Contract summary: Update a contract description: "Based on a GET Contract call a PATCH Contract call can be generated\ \ to change one or more fields. Whether it is allowed to change a field (and\ \ which values are allowed) is determined by the business logic of the contract\ \ management solution. Sample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"MyContract\",\r\n \"path\": \"/basic/contractName\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"true\",\r\n \"path\": \"/basic/highRiskMerchant\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: PatchContract parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/ContractResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/currencies: post: tags: - Contract summary: Add currencies to a contract operationId: postContractCurrencies parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostContractCurrency' application/json: schema: $ref: '#/components/schemas/PostContractCurrency' text/json: schema: $ref: '#/components/schemas/PostContractCurrency' application/*+json: schema: $ref: '#/components/schemas/PostContractCurrency' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostContractCurrenciesResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/addresses: get: tags: - Contract summary: Retrieve the addresses of a contract description: | This operation retrieves addresses of a contract. operationId: getContractAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/ContractAddressData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" contractId: "10011" addresses: - addressType: Business streetName: Stootblok houseNumber: 14 postalCode: 3071AP city: Rotterdam countryCode: 528 contactPersonName: M. Scott email: M.Scott@eventpaymentsolutions.com communicationLanguage: eng communicationPreference: 3 - addressType: Postal streetName: Postbus houseNumber: 2341 postalCode: 3000CH city: Rotterdam countryCode: 528 contactPersonName: S. Chadwick email: S.Chadwick@eventpaymentsolutions.com communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Contract summary: Add addresses to a contract operationId: postContractAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostContractAddresses' application/json: schema: $ref: '#/components/schemas/PostContractAddresses' text/json: schema: $ref: '#/components/schemas/PostContractAddresses' application/*+json: schema: $ref: '#/components/schemas/PostContractAddresses' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/EditContractAddressesResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Contract summary: Update the addresses of a contract description: "Based on a GET Contract Addresses call a PATCH Contract Addresses\ \ call can be generated to change one or more fields. Whether it is allowed\ \ to change a field (and which values are allowed) is determined by the business\ \ logic of the contract management solution. Sample request: \r\n\r\n [\r\ \n {\r\n \"value\": \"Mainstreet\",\r\n \"path\"\ : \"/addresses/0/streetName\",\r\n \"op\": \"replace\" \ \ \r\n }, \r\n {\r\n \"value\": 12,\r\n \ \ \"path\": \"/addresses/0/houseNumber\",\r\n \"op\": \"replace\"\ \ \r\n }\r\n ]" operationId: patchContractAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/EditContractAddressesResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/addresses/{addressType}: delete: tags: - Contract summary: Delete an address from a contract description: | This operation deletes a contract address operationId: deleteContractAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: addressType in: path description: Type of the address. Values [Business, Chargeback, Creditor, Debtor, Invoice, Location, Postal, Private] required: true schema: type: string responses: 200: description: Delete is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/balances: get: tags: - Contract summary: Retrieve the balances of a contract description: | This operation retrieves balances of a contract. operationId: getContractBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/ContractBalanceData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" contractId: "10011" balances: - balanceNumber: 1 paymentLevel: 4 paymentAggregation: 1 paymentFrequency: 4 paymentDelay: 0 bankAccounts: - currency: EUR bankAccountType: 1 bic: BITSNL2A iban: NL76BITS1234567890 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Contract summary: Add balances to a contract operationId: postContractBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostContractBalances' application/json: schema: $ref: '#/components/schemas/PostContractBalances' text/json: schema: $ref: '#/components/schemas/PostContractBalances' application/*+json: schema: $ref: '#/components/schemas/PostContractBalances' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/EditContractBalancesResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Contract summary: Update the balances of a contract description: "Based on a GET Contract Balances call a PATCH Contract Balances\ \ call can be generated to change one or more fields. Whether it is allowed\ \ to change a field (and which values are allowed) is determined by the business\ \ logic of the contract management solution. Sample request: \r\n\r\n [\r\ \n {\r\n \"value\": \"Fil.100\",\r\n \"path\": \"\ /balances/0/merchantReconciliationReference\",\r\n \"op\": \"replace\"\ \r\n }, \r\n {\r\n \"value\": \"1\",\r\n \"\ path\": \"/balances/0/bankAccounts/0/bankAccountType\",\r\n \"op\"\ : \"replace\" \r\n },\r\n {\r\n \"value\"\ : \"NL91STUB0000007899\",\r\n \"path\": \"/balances/0/bankAccounts/0/iban\"\ ,\r\n \"op\": \"replace\" \r\n },\r\n {\r\ \n \"value\": \"STUBNL2A\",\r\n \"path\": \"/balances/0/bankAccounts/0/bic\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchContractBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/EditContractBalancesResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/brands: get: tags: - Contract summary: Retrieve the brand parameters of a contract description: | This operation retrieves brands of a contract. operationId: getContractBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/ContractBrandData' example: contractIdentification: acquirerId: "315000001" merchantId: "1001" contractId: "10011" brands: - label: MAST brand: Mastercard brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: VISA brand: Visa brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: MAES brand: Maestro brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VPAY brand: V Pay brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: DBMC brand: Debit Mastercard brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VIDB brand: Visa Debit brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Contract summary: Add brands to a contract operationId: postContractBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostContractBrands' application/json: schema: $ref: '#/components/schemas/PostContractBrands' text/json: schema: $ref: '#/components/schemas/PostContractBrands' application/*+json: schema: $ref: '#/components/schemas/PostContractBrands' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostContractBrandsResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 403: description: Not authorised to use this call content: {} 404: description: Returns when the site is not found content: {} 500: description: Server side error content: {} patch: tags: - Contract summary: Update the brand parameters of a contract description: "Based on a GET Contract Brands call a PATCH Contract Brands call\ \ can be generated to change one or more fields. Whether it is allowed to\ \ change a field (and which values are allowed) is determined by the business\ \ logic of the contract management solution. Sample request: \r\n\r\n [\r\ \n {\r\n \"value\": 12,\r\n \"path\": \"/brands/1/brandParameters/offlineMaximumTipPercentage\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"path\": \"/brands/1/brandParameters/magstripeTransactionProcessingOptions\"\ ,\r\n \"op\": \"remove\"\r\n },\r\n {\r\n \ \ \"value\": \"12.0000\",\r\n \"path\": \"/brands/1/brandParameters/amounts/0/iccOfflineFloorLimit\"\ ,\r\n \"op\": \"replace\" \r\n },\r\n {\r\ \n \"value\": \"true\",\r\n \"path\": \"/brands/1/brandParameters/manualEntryProcessingOptions/refuseTransaction\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchContractBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: applyToAll in: query description: If value is true then the changes made to 1 brand (with index 0) will automatically apply to all brands schema: type: boolean requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 403: description: Not authorised to use this call content: {} 404: description: Returns when terminal not found content: {} 500: description: Server side error content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/brands/{label}: delete: tags: - Contract summary: Delete a brand from a contract operationId: deleteContractBrand parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: label in: path description: Unique identification of the brand (payment product). Maestro = MAES, American Express = AMEX, Visa = VISA, etc. required: true schema: type: string responses: 200: description: Delete is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Returns when business errors are found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 403: description: Not authorised to use this call content: {} 404: description: Returns when terminal not found content: {} 500: description: Server side error content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites: get: tags: - Site summary: Search sites description: | This operation retrieves a list of sites. Terminated sites are excluded. operationId: getSiteOverviewList parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: iban in: query description: | International Bank Account Number for merchant payments schema: type: string - name: holdingId in: query description: | Unique identification of the holding, determined by equensWorldline schema: type: integer format: int32 - name: merchantId in: query description: | Unique identification of the merchant, determined by the acquirer schema: type: string - name: contractId in: query description: | Unique identification of the contract, determined by the acquirer schema: type: string - name: postalCode in: query description: | Postal code of site address schema: type: string - name: houseNumber in: query description: | House number of site address. Note, Postal code must be given as well schema: type: integer format: int32 - name: siteId in: query description: | Unique identification of the site within the contract schema: type: integer format: int32 - name: cardAcceptorId in: query description: | Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID schema: type: string - name: terminalId in: query description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) schema: type: string - name: merchantName in: query description: | Name of the merchant schema: type: string - name: contractName in: query description: | Optional name for this specific contract schema: type: string - name: siteName in: query description: | Name of the site schema: type: string - name: sortField in: query description: | Sort field schema: type: string enum: - siteId - siteName - name: sortOrder in: query description: | Sort order schema: type: string enum: - Ascending - Descending - name: pageSize in: query description: Page size (Max page size is 300) schema: type: string - name: pageNumber in: query description: Page number schema: type: string responses: 200: description: Successful content: application/json: schema: type: array items: $ref: '#/components/schemas/SiteListData' example: - contractIdentification: acquirerId: "315000001" holdingId: 200 merchantId: "1001" contractId: "10011" cardAcceptorId: "90100110" siteId: 100110 siteName: EPS*Home Festival channel: 2 commencementDate: 2022-12-09 status: Active address: streetName: Tynjestrjitte houseNumber: 1 postalCode: 8763ML city: Parrega countryCode: 528 contactPersonName: H. Cook email: H.Cook@homefestival.nl siteDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100110 - contractIdentification: acquirerId: "315000001" holdingId: 200 merchantId: "1001" contractId: "10011" cardAcceptorId: "1001" siteId: 100111 siteName: EPS*Metal Festival channel: 1 commencementDate: 2022-12-09 status: Active address: streetName: Nieuwstraat houseNumber: 12 postalCode: 3267AR city: Goudswaard countryCode: 528 contactPersonName: M. Cohen email: M.Cohen@metalfestival.nl siteDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111 - contractIdentification: acquirerId: "315000001" holdingId: 300 merchantId: "2001" contractId: "20011" cardAcceptorId: "90200110" siteId: 200110 siteName: GreatGroceries.com channel: 2 commencementDate: 2022-12-09 status: Active address: streetName: Laakweg houseNumber: 126 postalCode: 2521SC city: Den Haag countryCode: 528 contactPersonName: H. Gunes email: H.Gunes@GreatGroceries.com siteDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/20011/sites/200110 - contractIdentification: acquirerId: "315000001" holdingId: 300 merchantId: "2001" contractId: "20011" cardAcceptorId: "2001" siteId: 200111 siteName: GG Nijmegen channel: 1 commencementDate: 2022-12-09 status: Active address: streetName: Lange Hezelstraat houseNumber: 14 postalCode: 6511CJ city: Nijmegen countryCode: 528 contactPersonName: J. Gonzalez email: J.Gonzalez@GreatGroceries.com siteDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/20011/sites/200111 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} post: tags: - Site summary: Add a site (based on Card Acceptor ID) operationId: postSiteCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostSite' application/json: schema: $ref: '#/components/schemas/PostSite' text/json: schema: $ref: '#/components/schemas/PostSite' application/*+json: schema: $ref: '#/components/schemas/PostSite' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostSiteResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}: get: tags: - Site summary: Retrieve a site (based on Card Acceptor ID) operationId: getSiteCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" basic: acquirerName: Worldline Sandbox Bank contractName: Music Festivals siteName: EPS*Metal Festival channel: 1 terminalDomainId: 1 subMerchantId: 111 merchantCategoryCode: "7999" transactionReference: false refundLimits: maximumRefundAmount: "56.00" maximumDailyRefundAmount: "200000.00" maximumDailyNumberOfRefunds: 3000 status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/brands 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Site summary: Terminate a site (based on Card Acceptor ID) operationId: deleteSiteCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Update a site (based on Card Acceptor ID) description: "Fields that can be used: **/basic/siteName, /basic/subMerchantId**\r\ \nOperations that can be used: **replace, remove**\r\nSample request: \r\n\ \r\n [\r\n {\r\n \"value\": \"MySite\",\r\n \"\ path\": \"/basic/siteName\",\r\n \"op\": \"replace\" \ \ \r\n }, \r\n {\r\n \"value\": \"123456\",\r\n \ \ \"path\": \"/basic/subMerchantId\",\r\n \"op\": \"replace\"\ \ \r\n }\r\n ]" operationId: patchSiteCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/addresses: get: tags: - Site summary: Retrieve addresses of a site (based on Card Acceptor ID) operationId: getSiteAddressesCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteAddressData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" addresses: - addressType: Location streetName: Nieuwstraat houseNumber: 12 postalCode: 3267AR city: Goudswaard countryCode: 528 contactPersonName: M. Cohen email: M.Cohen@metalfestival.nl communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Update addresses of a site (based on Card Acceptor ID) description: "Fields that can be used: **/addresses/0/streetName, /addresses/0/houseNumber**\r\ \nOperations that can be used: **replace, remove**\r\nSample request: \r\n\ \r\n [\r\n {\r\n \"value\": \"Mainstreet\",\r\n \ \ \"path\": \"/addresses/0/streetName\",\r\n \"op\": \"replace\"\ \ \r\n }, \r\n {\r\n \"value\": 12,\r\n\ \ \"path\": \"/addresses/0/houseNumber\",\r\n \"op\":\ \ \"replace\" \r\n }\r\n ]" operationId: patchSitePatchSiteAddressCaidAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites: post: tags: - Site summary: Add a site operationId: postSite parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostSite' application/json: schema: $ref: '#/components/schemas/PostSite' text/json: schema: $ref: '#/components/schemas/PostSite' application/*+json: schema: $ref: '#/components/schemas/PostSite' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostSiteResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}: get: tags: - Site summary: Retrieve a site description: | This operation retrieves a site. operationId: getSite parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteData' examples: POS: value: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" basic: acquirerName: Worldline Sandbox Bank contractName: Music Festivals siteName: EPS*Metal Festival channel: 1 terminalDomainId: 1 subMerchantId: 111 merchantCategoryCode: "7999" transactionReference: false refundLimits: maximumRefundAmount: "56.00" maximumDailyRefundAmount: "200000.00" maximumDailyNumberOfRefunds: 3000 status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/brands E-commerce: value: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100110 cardAcceptorId: "90100110" basic: acquirerName: Worldline Sandbox Bank contractName: Music Festivals siteName: EPS*Home Festival channel: 2 subMerchantId: 111 merchantCategoryCode: "7999" status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100110/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100110/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100110/brands 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Site summary: Delete a site operationId: deleteSite parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Update a site description: "Based on a GET Site call a PATCH Site call can be generated to\ \ change one or more fields. Whether it is allowed to change a field (and\ \ which values are allowed) is determined by the business logic of the contract\ \ management solution.\r\nSample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"MySite\",\r\n \"path\": \"/basic/siteName\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"123456\",\r\n \"path\": \"/basic/subMerchantId\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchSite parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/addresses: get: tags: - Site summary: Retrieve the addresses of a site description: | This operation retrieves addresses of a site. operationId: getSiteAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteAddressData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" addresses: - addressType: Location streetName: Nieuwstraat houseNumber: 12 postalCode: 3267AR city: Goudswaard countryCode: 528 contactPersonName: M. Cohen email: M.Cohen@metalfestival.nl communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Updates the adresses of a site description: "Based on a GET Site Addresses call a PATCH Site Addresses call\ \ can be generated to change one or more fields. Whether it is allowed to\ \ change a field (and which values are allowed) is determined by the business\ \ logic of the contract management solution. Since a site only has one address\ \ the index is always 0\r\nSample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"Mainstreet\",\r\n \"path\": \"/addresses/0/streetName\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": 12,\r\n \"path\": \"/addresses/0/houseNumber\"\ ,\r\n \"op\": \"replace\" \r\n }\r\n ]" operationId: patchSiteAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/balances: get: tags: - Site summary: Retrieve the balances of a site description: | This operation retrieves balances of a site. operationId: getSiteBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteBalanceData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" balances: - balanceNumber: 1 paymentLevel: 4 paymentAggregation: 1 paymentFrequency: 4 paymentDelay: 0 bankAccounts: - currency: EUR bankAccountType: 1 bic: BITSNL2A iban: NL76BITS1234567890 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Update the balances of a site description: "Based on a GET Site Balances call a PATCH Site Balances call can\ \ be generated to change one or more fields of one or more balances. Whether\ \ it is allowed to change a field (and which values are allowed) is determined\ \ by the business logic of the contract management solution. To reference\ \ a specific balance the index of that balance in the GET call needs to be\ \ used.\r\nSample request: \r\n\r\n [\r\n {\r\n \"value\"\ : \"Shop123\",\r\n \"path\": \"/balances/0/merchantReconciliationReference\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"NL94PCGD0000000222\",\r\n \"path\": \"\ /balances/0/bankAccounts/0/iban\",\r\n \"op\": \"replace\" \ \ \r\n }\r\n ]" operationId: patchSiteBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/brands: get: tags: - Site summary: Retrieve the brand parameters of a site description: | This operation retrieves brands of a site. operationId: getSiteBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/SiteBrandData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" brands: - label: MAST brand: Mastercard brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: VISA brand: Visa brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: MAES brand: Maestro brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VPAY brand: V Pay brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: DBMC brand: Debit Mastercard brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VIDB brand: Visa Debit brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Site summary: Update the brand parameters of a site description: "Based on a GET Site Brands call a PATCH Site Brands call can be\ \ generated to change one or more fields of one or more brands. Whether it\ \ is allowed to change a field (and which values are allowed) is determined\ \ by the business logic of the contract management solution. To reference\ \ a specific brand the index of that brand in the GET call needs to be used.\r\ \nSample request: \r\n\r\n [\r\n {\r\n \"value\": \"true\"\ ,\r\n \"path\": \"brands/0/brandParameters/allowedServices/refundService\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"path\": \"brands/0/brandParameters/allowedServicesContactless/refundService\"\ ,\r\n \"op\": \"remove\" \r\n }\r\n ]" operationId: patchSiteBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: applyToAll in: query description: If value is true then the changes made to 1 brand (with index 0) will automatically apply to all brands schema: type: boolean requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/terminals: get: tags: - Terminal summary: Search terminals description: | This operation retrieves a list of terminals. Terminated terminals are excluded. operationId: getTerminalOverviewList parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: iban in: query description: | International Bank Account Number for merchant payments schema: type: string - name: holdingId in: query description: | Unique identification of the holding, determined by equensWorldline schema: type: integer format: int32 - name: merchantId in: query description: | Unique identification of the merchant, determined by the acquirer schema: type: string - name: contractId in: query description: | Unique identification of the contract, determined by the acquirer schema: type: string - name: siteId in: query description: | Unique identification of the site within the contract schema: type: integer format: int32 - name: cardAcceptorId in: query description: | Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID schema: type: string - name: terminalId in: query description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) schema: type: string - name: merchantName in: query description: | Name of the merchant schema: type: string - name: contractName in: query description: | Optional name for this specific contract schema: type: string - name: siteName in: query description: | Name of the site schema: type: string - name: sortField in: query description: | Sort field schema: type: string enum: - terminalId - nameOnStatement - name: sortOrder in: query description: | Sort order schema: type: string enum: - Ascending - Descending - name: pageSize in: query description: Page size (Max page size is 300) schema: type: string - name: pageNumber in: query description: Page number schema: type: string responses: 200: description: Successful content: application/json: schema: type: array items: $ref: '#/components/schemas/TerminalListData' example: - contractIdentification: acquirerId: "315000001" holdingId: 200 merchantId: "1001" contractId: "10011" cardAcceptorId: "1001" siteId: 100111 terminalId: W01AB01 nameOnStatement: EPS*Metal Festival commencementDate: 2022-12-09 status: Active terminalDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01 - contractIdentification: acquirerId: "315000001" holdingId: 300 merchantId: "2001" contractId: "20011" cardAcceptorId: "2001" siteId: 200111 terminalId: W11AB01 nameOnStatement: GG Nijmegen commencementDate: 2022-12-09 status: Active siteDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/20011/sites/200111/terminals/W11AB01 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals: post: tags: - Terminal summary: Add a terminal (based on Card Acceptor ID) operationId: postSiteTerminalCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostTerminal' application/json: schema: $ref: '#/components/schemas/PostTerminal' text/json: schema: $ref: '#/components/schemas/PostTerminal' application/*+json: schema: $ref: '#/components/schemas/PostTerminal' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostTerminalResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId}: get: tags: - Terminal summary: Retrieve a terminal (based on Card Acceptor ID) operationId: getSiteTerminalCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 basic: acquirerName: Worldline Sandbox Bank siteName: EPS*Metal Festival nameOnStatement: EPS*Metal Festival merchantCategoryCode: "7999" transactionReference: false checkNumber: "1234567" status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/brands 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Terminal summary: Terminate a terminal (based on Card Acceptor ID) operationId: deleteSiteTerminalCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Terminal summary: Update a terminal (based on Card Acceptor ID) description: "Fields that can be used: **/contractIdentification/siteId, /basic/merchantCategoryCode,\ \ /basic/nameOnStatement, /basic/transactionReference**\r\nOperations that\ \ can be used: **replace, remove**\r\nSample request: \r\n\r\n [\r\n \ \ {\r\n \"value\": \"1010101\",\r\n \"path\": \"/contractIdentification/siteId\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"true\",\r\n \"path\": \"/basic/transactionReference\"\ ,\r\n \"op\": \"replace\" \r\n },\r\n {\r\ \n \"value\": \"1111\",\r\n \"path\": \"/basic/merchantCategoryCode\"\ ,\r\n \"op\": \"replace\"\r\n },\r\n {\r\n \ \ \"path\": \"/basic/nameOnStatement\",\r\n \"op\": \"remove\"\r\ \n }\r\n ]" operationId: patchSiteTerminalCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/sites/{cardAcceptorId}/terminals/{terminalId}/addresses: get: tags: - Terminal summary: Retrieve addresses of a terminal (based on Card Acceptor ID) operationId: getSiteTerminalAddressesCaid parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: cardAcceptorId in: path description: Unique identification of the card acceptor, determined by equensWorldline required: true schema: type: string - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalAddressData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 addresses: - addressType: Location streetName: Nieuwstraat houseNumber: 12 postalCode: 3267AR city: Goudswaard countryCode: 528 contactPersonName: M. Cohen email: M.Cohen@metalfestival.nl communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/terminals: post: tags: - Terminal summary: Add a terminal operationId: postTerminal parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PostTerminal' application/json: schema: $ref: '#/components/schemas/PostTerminal' text/json: schema: $ref: '#/components/schemas/PostTerminal' application/*+json: schema: $ref: '#/components/schemas/PostTerminal' required: true responses: 201: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/PostTerminalResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/terminals/{terminalId}: get: tags: - Terminal summary: Retrieve a terminal description: | This operation retrieves a terminal. operationId: getTerminal parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 basic: acquirerName: Worldline Sandbox Bank siteName: EPS*Metal Festival nameOnStatement: EPS*Metal Festival merchantCategoryCode: "7999" transactionReference: false checkNumber: "1234567" status: status: Active commencementDate: 2022-12-09 addressDetailsURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/addresses balanceDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/balances brandDataURI: acquiring/contract/v2.0/acquirers/315000001/contracts/10011/sites/100111/terminals/W01AB01/brands 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} delete: tags: - Terminal summary: Delete a terminal operationId: deleteTerminal parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Terminal summary: Update a terminal description: "Based on a GET Terminal call a PATCH Terminal call can be generated\ \ to change one or more fields. Whether it is allowed to change a field (and\ \ which values are allowed) is determined by the business logic of the contract\ \ management solution.\r\nSample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"1010101\",\r\n \"path\": \"/contractIndentification/siteId\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"true\",\r\n \"path\": \"/basic/transactionReference\"\ ,\r\n \"op\": \"replace\" \r\n },\r\n {\r\ \n \"value\": \"1111\",\r\n \"path\": \"/basic/merchantCategoryCode\"\ ,\r\n \"op\": \"replace\"\r\n },\r\n {\r\n \ \ \"path\": \"/basic/nameOnStatement\",\r\n \"op\": \"remove\"\r\ \n }\r\n ]" operationId: patchTerminal parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/terminals/{terminalId}/addresses: get: tags: - Terminal summary: Retrieve the addresses of a terminal description: | This operation retrieves addresses of the terminal location. Terminated terminals are excluded. operationId: getTerminalAddresses parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalAddressData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 addresses: - addressType: Location streetName: Nieuwstraat houseNumber: 12 postalCode: 3267AR city: Goudswaard countryCode: 528 contactPersonName: M. Cohen email: M.Cohen@metalfestival.nl communicationLanguage: eng communicationPreference: 3 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/terminals/{terminalId}/balances: get: tags: - Terminal summary: Retrieve the balances of a terminal description: | This operation retrieves balances of the terminal operationId: getTerminalBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalBalanceData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 balances: - balanceNumber: 1 paymentLevel: 4 paymentAggregation: 1 paymentFrequency: 4 paymentDelay: 0 bankAccounts: - currency: EUR bankAccountType: 1 bic: BITSNL2A iban: NL76BITS1234567890 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Terminal summary: Update the balances of a terminal description: "Based on a GET Terminal Balances call a PATCH Terminal Balances\ \ call can be generated to change one or more fields of one or more balances.\ \ Whether it is allowed to change a field (and which values are allowed) is\ \ determined by the business logic of the contract management solution. To\ \ reference a specific balance the index of that balances in the GET call\ \ needs to be used.\r\nSample request: \r\n\r\n [\r\n {\r\n \ \ \"value\": \"Shop123\",\r\n \"path\": \"/balances/0/merchantReconciliationReference\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"value\": \"NL94PCGD0000000222\",\r\n \"path\": \"\ /balances/0/bankAccounts/0/iban\",\r\n \"op\": \"replace\" \ \ \r\n }\r\n ]" operationId: patchTerminalBalances parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/contracts/{contractId}/sites/{siteId}/terminals/{terminalId}/brands: get: tags: - Terminal summary: Retrieve the brand parameters of a terminal description: | This operation retrieves balances of the terminal operationId: getTerminalBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string responses: 200: description: Successful content: application/json: schema: $ref: '#/components/schemas/TerminalBrandData' example: contractIdentification: acquirerId: "315000001" contractId: "10011" siteId: 100111 cardAcceptorId: "1001" terminalId: W01AB01 brands: - label: MAST brand: Mastercard brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: VISA brand: Visa brandParameters: - offlineManualEntryAllowed: true magstripeTransactionProcessingOptions: 2 amounts: - currency: EUR magstripeOfflineFloorLimit: "0.00" iccOfflineFloorLimit: "0.00" transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: true pinRequired: false signatureRequired: true cvc2OrCvv2Required: false luhnDigitCheckRequired: true cardEntryModes: manualEntry: false magstripe: true iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true rejectedProductTypes: eeaDebit: false eeaCredit: false eeaCommercial: false eeaPrepaid: false - label: MAES brand: Maestro brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VPAY brand: V Pay brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: DBMC brand: Debit Mastercard brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true - label: VIDB brand: Visa Debit brandParameters: - magstripeTransactionProcessingOptions: 1 amounts: - currency: EUR transactionLimitContactless: "99999.99" offlineFloorLimitContactless: "0.00" cardholderVerificationLimit: "50.00" receiptLimit: "0.00" noCvmLimit: "0.00" maximumCashBackAmount: "0.00" matMaximumTransactionAmount: "0.00" offlineMaximumTipPercentage: 0 noCvmAllowed: false offlineBackupModeAllowed: false allowedServices: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true manualEntryProcessingOptions: refuseTransaction: false performOnlineTransaction: false pinRequired: false signatureRequired: false cvc2OrCvv2Required: false luhnDigitCheckRequired: false cardEntryModes: manualEntry: false magstripe: false iccEmv: true contactlessMagstripe: true contactlessIccEmv: true allowedServicesContactless: purchaseService: true cashAdvanceService: false reservationService: false purchaseAfterReservationService: false cardValidityCheckService: false refundService: true deferredSaleService: false cancellationService: true 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} patch: tags: - Terminal summary: Update the brand parameters of a terminal description: "Based on a GET Terminal Brands call a PATCH Terminal Brands call\ \ can be generated to change one or more fields of one or more brands. Whether\ \ it is allowed to change a field (and which values are allowed) is determined\ \ by the business logic of the contract management solution. To reference\ \ a specific brand the index of that brand in the GET call needs to be used.\r\ \nSample request: \r\n\r\n [\r\n {\r\n \"value\": \"true\"\ ,\r\n \"path\": \"brands/0/brandParameters/allowedServices/refundService\"\ ,\r\n \"op\": \"replace\" \r\n }, \r\n {\r\ \n \"path\": \"brands/0/brandParameters/allowedServicesContactless/refundService\"\ ,\r\n \"op\": \"remove\" \r\n }\r\n ]" operationId: patchTerminalBrands parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: contractId in: path description: | Unique identification of the contract, determined by the acquirer required: true schema: type: string - name: siteId in: path description: Unique identification of the site within the contract required: true schema: type: integer format: int32 - name: terminalId in: path description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string - name: applyToAll in: query description: If value is true then the changes made to 1 brand (with index 0) will automatically apply to all brands schema: type: boolean requestBody: content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/Operation' application/json: schema: type: array items: $ref: '#/components/schemas/Operation' text/json: schema: type: array items: $ref: '#/components/schemas/Operation' application/*+json: schema: type: array items: $ref: '#/components/schemas/Operation' required: false responses: 200: description: Change is processed with correlation id content: application/json: schema: $ref: '#/components/schemas/CorrelationResponse' 400: description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} /acquiring/contract/v2.0/acquirers/{acquirerId}/terminals/{terminalId}/checknumbers/{checkNumber}: get: tags: - Terminal summary: Retrieve a terminal check number operationId: getTerminalCheckNumber parameters: - name: acquirerId in: path description: Unique identification of the acquirer, determined by equensWorldline required: true schema: type: string - name: terminalId in: path description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) required: true schema: type: string - name: checkNumber in: path description: Check number of the terminal. Only relevant in case the terminal ID is generated up front during the reservation process by processor equensWordline required: true schema: type: string responses: 200: description: Returns a terminal check number content: application/json: schema: $ref: '#/components/schemas/TerminalCheckNumberResponse' example: terminalId: W01AB01 checkNumber: "1234567" 400: description: Invalid input provided content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Resource not found content: {} 500: description: Unexpected error content: {} 502: description: Backend service problem content: {} components: schemas: HoldingListData: type: object properties: contractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline example: "315000001" holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 holdingName: type: string description: Name of the holding example: Event Payment Solutions status: type: string description: The status of this entity. Values [Active] example: Active address: $ref: '#/components/schemas/Address' holdingDetailsURI: type: string description: URI to get the holding details example: acquiring/contract/v2.0/acquirers/XXX/holdings/XXX MerchantListData: type: object properties: contractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline example: "315000001" holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" merchantName: type: string description: Name of the merchant example: Event Payment Solutions 1 status: type: string description: The status of this entity. Values [Active] example: Active address: $ref: '#/components/schemas/Address' merchantDetailsURI: type: string description: URI to get the merchant details example: acquiring/contract/v2.0/acquirers/XXX/merchants/XXX ContractListData: type: object properties: contractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline example: "315000001" holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" contractName: type: string description: Optional name for this specific contract example: Music Festivals startDateTime: type: string description: Start date of the entity (yyyy-mm-dd hh:mm:ss) format: date-time paymentBlockDate: type: string description: Date at which the payment for the contract or site has been blocked (yyyy-mm-dd hh:mm:ss) format: date-time transactionBlockDate: type: string description: Date at which the transactions for the contract or site has been blocked (yyyy-mm-dd hh:mm:ss) format: date-time status: type: string description: The status of this entity. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts)] example: Active address: $ref: '#/components/schemas/Address' contractDetailsURI: type: string description: URI to get the contract details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX SiteListData: type: object properties: contractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline example: "315000001" holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID example: "90100110" siteId: type: integer description: Unique identification of the site within the contract format: int32 example: 100110 siteName: type: string description: Name of the site example: EPS*Metal Festival channel: type: integer description: Channel of the contract. Values [1 = POS, 2 = eCommerce, 3 = MOTO] format: int32 startDateTime: type: string description: Start date of the entity (yyyy-mm-dd hh:mm:ss) format: date-time paymentBlockDate: type: string description: Date at which the payment for the contract or site has been blocked (yyyy-mm-dd) format: date-time transactionBlockDate: type: string description: Date at which the transactions for the contract or site has been blocked (yyyy-mm-dd) format: date-time status: type: string description: The status of this entity. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts)] example: Active address: $ref: '#/components/schemas/Address' siteDetailsURI: type: string description: URI to get the site details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX TerminalListData: type: object properties: contractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline example: "315000001" holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID example: "90100125" siteId: type: integer description: Unique identification of the site within the contract format: int32 example: 100110 terminalId: type: string description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) example: W01AB01 nameOnStatement: type: string description: Name that is visible on the cardholder statement. If not filled, then the site name is used (first 22 characters) example: EPS*Metal Festival startDateTime: type: string description: Start date of the entity (yyyy-mm-dd hh:mm:ss) format: date-time status: type: string description: The status of this entity. Values [Active, Blocked] example: Active terminalDetailsURI: type: string description: URI to get the terminal details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/terminals/XXX Address: type: object properties: streetName: type: string description: Street name and house number of the address. In case of a Dutch address only Street name example: Stootblok houseNumber: type: integer description: House number. Only used for Dutch addresses format: int32 example: 14 houseAddition: type: string description: House number addition. Only used for Dutch addresses example: bis postalCode: type: string description: Postal code of the address example: 3071AP city: type: string description: City of the address example: Rotterdam region: type: string description: Region of the address. Only applicable for specific countries example: Zuid-Holland countryCode: type: string description: Country of the address according to ISO 3166-1 (numeric-3) example: "528" contactPersonName: type: string description: Name of the contact person registered with the address example: M. Scott telephoneNumber: type: string description: Telephone number of contact person registered with the address example: "0883855111" email: type: string description: E-mail address of the contact person registered with the address example: M.Scott@eventpaymentsolutions.com HoldingData: type: object properties: contractIdentification: $ref: '#/components/schemas/HoldingContractIdentification' basic: $ref: '#/components/schemas/HoldingBasic' status: $ref: '#/components/schemas/HoldingStatus' addressDetailsURI: type: string description: URI to get the holding address details example: acquiring/contract/v2.0/acquirers/XXX/holdings/XXX/addresses HoldingAddressData: type: object properties: contractIdentification: $ref: '#/components/schemas/HoldingContractIdentification' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' MerchantData: type: object properties: contractIdentification: $ref: '#/components/schemas/MerchantContractIdentification' basic: $ref: '#/components/schemas/MerchantBasic' externalIds: $ref: '#/components/schemas/ExternalIds' refundLimits: $ref: '#/components/schemas/MerchantRefundLimits' clusters: type: array items: $ref: '#/components/schemas/MerchantClusters' status: $ref: '#/components/schemas/MerchantStatus' addressDetailsURI: type: string description: URI to get the merchant address details example: acquiring/contract/v2.0/acquirers/XXX/merchants/XXX/addresses MerchantAddressData: type: object properties: contractIdentification: $ref: '#/components/schemas/MerchantContractIdentification' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' ContractBrandData: type: object properties: contractIdentification: $ref: '#/components/schemas/ContractContractIdentification' brands: type: array items: $ref: '#/components/schemas/BrandData' ContractAddressData: type: object properties: contractIdentification: $ref: '#/components/schemas/ContractContractIdentification' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' ContractBalanceData: type: object properties: contractIdentification: $ref: '#/components/schemas/ContractContractIdentification' balances: type: array items: $ref: '#/components/schemas/Balance' SiteBrandData: type: object properties: contractIdentification: $ref: '#/components/schemas/SiteContractIdentification' brands: type: array items: $ref: '#/components/schemas/BrandData' SiteAddressData: type: object properties: contractIdentification: $ref: '#/components/schemas/SiteContractIdentification' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' SiteBalanceData: type: object properties: contractIdentification: $ref: '#/components/schemas/SiteContractIdentification' balances: type: array items: $ref: '#/components/schemas/Balance' TerminalBrandData: type: object properties: contractIdentification: $ref: '#/components/schemas/TerminalContractIdentification' brands: type: array items: $ref: '#/components/schemas/BrandData' TerminalAddressData: type: object properties: contractIdentification: $ref: '#/components/schemas/TerminalContractIdentification' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' TerminalBalanceData: type: object properties: contractIdentification: $ref: '#/components/schemas/TerminalContractIdentification' balances: type: array items: $ref: '#/components/schemas/Balance' AddressDetails: required: - addressType - city - countryCode type: object properties: addressType: type: string description: Type of the address. Values [Business, Chargeback, Creditor, Debtor, Invoice, Location, Postal, Private] example: Business streetName: type: string description: Street name and house number of the address. In case of a Dutch address only Street name example: Stootblok houseNumber: type: integer description: House number. Only used for Dutch addresses format: int32 example: 14 houseAddition: type: string description: House number addition. Only used for Dutch addresses example: bis postalCode: type: string description: Postal code of the address example: 3071AP city: type: string description: City of the address example: Rotterdam region: type: string description: Region of the address. Only applicable for specific countries example: Zuid-Holland countryCode: type: string description: Country of the address according to ISO 3166-1 (numeric-3) example: "528" departmentName: type: string description: Department of the contact person registered with the address example: Finance contactPersonName: type: string description: Name of the contact person registered with the address example: M. Scott postalRoom: type: string description: Postal room of the contact person registered with the address example: 2N.17 telephoneNumber: type: string description: Telephone number of contact person registered with the address example: +31-63864055 faxNumber: type: string description: Fax number of the contact person registered with the address example: +31-24683905 email: type: string description: E-mail address of the contact person registered with the address example: M.Scott@eventpaymentsolutions.com communicationLanguage: type: string description: Preferred communication language of the contact person registered with the address accrding to ISO 639-2 (alphanumeric-3) example: eng communicationPreference: type: integer description: Preferred communication type of the contact person registered with the address. Values [1 = Post, 2 = Fax, 3 = E-mail] format: int32 example: 3 Balance: type: object properties: balanceNumber: type: integer description: Number of the balance. Values [1, 2, 3] format: int32 merchantReconciliationReference: type: string description: Reference the merchant wants to be part of the description lines of the payment on his bank statement paymentLevel: type: integer description: Level of the merchant hierarchy at which the merchant is paid. Values [4 = Contract, 5 = Site, 6 = Terminal] format: int32 paymentAggregation: type: integer description: Indicates whether the merchant is paid per brand, per scheme or totalized. Values [1 = Totalized payment, 2 = Payment per brand, 3 = Payment per scheme] format: int32 paymentFrequency: type: integer description: Frequency in which the balance is settled with the merchant. Values [1 = Accounting period, 2 = Weekly, 3 = Monthly, 4 = Daily, 5 = Twice a month, 6 = Per external batch, 7 = Across batches, 8 = Merchant manual cut-off, 9 = Merchant automatic cut-off] format: int32 paymentDay: type: integer description: Specific day of the week or month the merchant is paid. Values in case of weekly [1 to 7], values in case of monthly [1 to 31] format: int32 paymentDelay: type: integer description: Payment delay in days. Values [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 30, 60, 90] format: int32 terminalPeriodClosureLevel: type: integer description: The level on which the financial counter information for the transactions cut-off period are consulted, used by the merchant to align it with the used reconciliation period when the merchant has chosen to manual cut-off the booking period of the transactions. Values [0 = Terminal, 1 = Site] format: int32 terminalPeriodCutoffTime: type: string description: The fixed time (hours and minutes, without date and seconds) of the daily moment - defined by the merchant - when the cut-off of the financial counter information, used by the merchant to align it with the used reconciliation period when the merchant has chosen for automatically cut off the booking period of the transactions bankAccounts: type: array items: $ref: '#/components/schemas/TerminalBalancebankAccount' TerminalBalancebankAccount: type: object properties: currency: type: string description: (Local) Payment Currency according to ISO 4217 (alphanumeric-3) bankAccountType: type: integer description: Describes whether a bank account number is of the type IBAN or not (Other). In the latter case it can be for example an American or South-African bank account number. Values [1 = IBAN, 99 = Other] format: int32 bic: type: string description: Bank Institution Code for merchant payment. A BIC needs to be registered for each payment currency of the merchant iban: type: string description: International Bank Account Number for merchant payments. An IBAN needs to be registered for each payment currency of the merchant threshold: type: integer description: Amount of the threshold. The acquirer can choose to hold an amount in reserve before paying the merchant. This is usually done for risk mitigation. The threshold is registered at balance 1. An amount can be registered for each payment currency of the merchant format: int32 BrandData: type: object properties: label: type: string description: Unique identification of the brand (payment product). Maestro = MAES, American Express = AMEX, Visa = VISA, etc. brand: type: string description: Name of the brand brandParameters: $ref: '#/components/schemas/BrandParameters' BrandParameters: type: object properties: offlineManualEntryAllowed: type: boolean description: Indicates whether manual entry of card data (PAN, expiry date) is allowed for transactions which are processed offline magstripeTransactionProcessingOptions: type: integer description: Used to select the cardholder verification method for magnetic stripe based transactions. Values [1 = PIN required, 2 = Signature required, 3 = PIN or signature required based on card service code] format: int32 amounts: type: array items: $ref: '#/components/schemas/Amount' offlineMaximumTipPercentage: type: integer description: The maximum tip amount, represented as a percentage of the transaction amount, that is allowed as extra format: int32 noCvmAllowed: type: boolean description: Indicates whether transactions (chip with contacts) without cardholder verification (No-CVM) are allowed beneath the maximum amount set by the scheme maximumDailyTransactionNumber: type: integer description: The maximum number of online transactions for a site per day format: int32 maxDailyVoiceAuthorizationNumber: type: integer description: The maximum number of voice authorizations for a site per day format: int32 tokenization: type: boolean description: Indicates whether C-TAP tokenization is allowed on the terminal dynamicDescriptor: type: boolean description: Card brand parameter which indicates towards the front office, whether a terminal or website is allowed to use Dynamic Descriptors. Dynamic descriptors allow merchants to add relevant information (invoice number or some other details) about a transaction to the payment description so that it shows up on bank statements of consumers. The dynamic descriptor data is sent both in authorization and clearing messages preAuthorizationPanClipping: type: boolean description: Indicates whether the PAN must be clipped or not on merchant’s ticket for pre-authorization offlineBackupModeAllowed: type: boolean description: The backup mode allows the merchant to let the terminal approve offline transactions, which normally require going online, when it is temporarily unable to go online. It is an indicator telling if the backup mode can be activated or not by the terminal allowedServices: $ref: '#/components/schemas/AllowedServices' manualEntryProcessingOptions: $ref: '#/components/schemas/ManualEntryProcessingOptions' cardEntryModes: $ref: '#/components/schemas/CardEntryModes' allowedServicesContactLess: $ref: '#/components/schemas/AllowedServices' rejectedProductTypes: $ref: '#/components/schemas/RejectedProductTypes' Amount: type: object properties: currency: type: string description: Transaction currency according to ISO 4217 (alphanumeric-3) magstripeOfflineFloorLimit: type: string description: | Floor limit for magnetic stripe based transactions. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" iccOfflineFloorLimit: type: string description: | Floor limit for chip based EMV transactions. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" transactionLimitContactless: type: string description: | Transaction limit for contactless transactions. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" offlineFloorLimitContactless: type: string description: | Offline floor limit for contactless transactions. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" cardholderVerificationLimit: type: string description: | Cardholder verification limit. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" receiptLimit: type: string description: | The maximum amount allowed for which a receipt does not have to be printed. A receipt must be given for all transaction amounts above this. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" noCvmLimit: type: string description: | The amount under which transactions (chip with contacts) without cardholder verification (No-CVM) are allowed. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maximumCashBackAmount: type: string description: | The maximum amount a merchant is allowed to pay as cash back. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maximumDailyTransactionAmount: type: string description: | The maximum total amount of online transactions for a site per day. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maximumTransactionAmount: type: string description: | The maximum amount of a single transaction. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maxDailyVoiceAuthorizationAmount: type: string description: | The maximum total amount of voice authorizations for a site per day. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maxVoiceAuthorizationAmount: type: string description: | The maximum amount of a single voice authorization. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" AllowedServices: type: object properties: purchaseService: type: boolean description: Indicates whether purchase is allowed cashAdvanceService: type: boolean description: Indicates whether cash advance is allowed reservationService: type: boolean description: Indicates whether reservation is allowed purchaseAfterReservationService: type: boolean description: Indicates whether purchase after reservation is allowed cardValidityCheckService: type: boolean description: Indicates whether card validity check is allowed refundService: type: boolean description: Indicates whether refund is allowed deferredSaleService: type: boolean description: Indicates whether deferred sale is allowed cancellationService: type: boolean description: Indicates whether cancellation of a purchase is allowed saleWithCashback: type: boolean description: Indicates whether the sale with cashback is allowed saleWithIncreasedAmount: type: boolean description: Indicates whether sale with increased amount is allowed quasiCashSale: type: boolean description: Indicates whether quasi cash is allowed cancellationOfSaleAfterReservation: type: boolean description: Indicates whether cancellation of a sale after reservation is allowed cancellationOfCashAdvance: type: boolean description: Indicates whether cancellattion of cash advance is allowed recurringSale: type: boolean description: Indicates whether recurring sale is allowed cancellationOfReservation: type: boolean description: Indicates whether cancellation of a reservation is allowed saleWithDcc: type: boolean description: Indicates whether sale with DCC is allowed saleAfterReservationWithDcc: type: boolean description: Indicates whether sales after reservation with DCC is allowed cashAdvanceWithDcc: type: boolean description: Indicates whether cash advance with DCC is allowed refundWithDcc: type: boolean description: Indicates whether refund with DCC is allowed reservationDcc: type: boolean description: Indicates whether reservation with DCC is allowed ManualEntryProcessingOptions: type: object properties: refuseTransaction: type: boolean description: Indicates whether the transaction should be refused performOnlineTransaction: type: boolean description: Indicates whether the transaction should be performed online pinRequired: type: boolean description: Indicates whether PIN entry is required signatureRequired: type: boolean description: Indicates whether signature is required cvc2OrCvv2Required: type: boolean description: Indicates whether CVC2 (MasterCard) or CVV2 (Visa) is required luhnDigitCheckRequired: type: boolean description: Indicates whether Luhn check digit check is required CardEntryModes: type: object properties: manualEntry: type: boolean description: Indicates whether manual entry (keying) is allowed magstripe: type: boolean description: Indicates whether the use of magnetic stripe is allowed iccEmv: type: boolean description: Indicates whether the use of EMV chip is allowed contactlessMagstripe: type: boolean description: Indicates whether the use of magnetic stripe for contactless transactions is allowed contactlessIccEmv: type: boolean description: Indicates whether the use of EMV chip for contactless transactions is allowed RejectedProductTypes: type: object properties: eeaDebit: type: boolean description: Indicates whether transactions with the card product EEA Debit should be rejected by the terminal eeaCredit: type: boolean description: Indicates whether transactions with the card product EEA Credit should be rejected by the terminal eeaCommercial: type: boolean description: Indicates whether transactions with the card product EEA Commercial should be rejected by the terminal eeaPrepaid: type: boolean description: Indicates whether transactions with the card product EEA Pre-paid should be rejected by the terminal HoldingContractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline holdingId: type: string description: Unique identification of the holding, determined by equensWorldline MerchantContractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline holdingId: type: string description: Unique identification of the holding, determined by equensWorldline merchantId: type: string description: Unique identification of the merchant, determined by the acquirer ContractContractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline merchantId: type: string description: Unique identification of the merchant, determined by the acquirer contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" SiteContractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" siteId: type: integer description: Unique identification of the site within the contract format: int32 cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID TerminalContractIdentification: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" siteId: type: integer description: Unique identification of the site within the contract format: int32 cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID terminalId: type: string description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) TerminalData: type: object properties: contractIdentification: $ref: '#/components/schemas/TerminalContractIdentification' basic: $ref: '#/components/schemas/TerminalBasic' status: $ref: '#/components/schemas/TerminalStatus' addressDetailsURI: type: string description: URI to get the terminal address details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/terminals/XXX/addresses balanceDataURI: type: string description: URI to get the terminal balance data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/terminals/XXX/balances brandDataURI: type: string description: URI to get the terminal brand data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/terminals/XXX/brands TerminalBasic: type: object properties: acquirerName: type: string description: Name of the acquirer siteName: type: string description: Name of the site nameOnStatement: type: string description: Name that is visible on the cardholder statement. If not filled, then the site name is used (first 22 characters) merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services transactionReference: type: boolean description: Indicates whether the merchant is allowed to add a reference to a C-TAP POS transaction checkNumber: type: string description: Check number of the terminal. Only applies to terminal domain Dutch C-TAP / IFSF SiteData: type: object properties: contractIdentification: $ref: '#/components/schemas/SiteContractIdentification' basic: $ref: '#/components/schemas/SiteBasic' serviceProviders: $ref: '#/components/schemas/SiteServiceProviders' refundLimits: $ref: '#/components/schemas/RefundLimits' status: $ref: '#/components/schemas/Status' addressDetailsURI: type: string description: URI to get the site address details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/addresses balanceDataURI: type: string description: URI to get the site balance data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/balances brandDataURI: type: string description: URI to get the site brand data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/sites/XXX/brands SiteBasic: type: object properties: acquirerName: type: string description: Name of the acquirer contractName: type: string description: Optional name for this specific contract siteName: type: string description: Name of the site channel: type: integer description: Channel of the site. Values [1 = POS, 2 = eCommerce, 3 = MOTO] format: int32 terminalDomainId: type: integer description: A domain of merchants, acquirers, terminal vendors and terminals in which a common POS terminal protocol (e.g. C-TAP) is used and in which a certain authority (e.g. Acquiris, Nets) is responsible for identifiers of acquirers and processors. Values [1 = Dutch C-TAP / IFSF, 2 = Finnish EMV, 3 = International C-TAP] format: int32 subMerchantId: type: string description: Sub merchant ID, defined by a payment facilitator (merchant). Each merchant that is considered to be a payment facilitator by the payment schemes needs to uniquely identify all of its sites with a sub merchant ID terminalModel: type: integer description: Indicates which model for terminal management applies. Values [1 = Processor defined terminal ID, 2 = Merchant specific terminal ID in contract management, 3 = Merchant specific terminal ID, no terminals in contract management, 4 = Third party hosting] format: int32 merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services transactionReference: type: boolean description: Indicates whether the merchant is allowed to add a reference to a C-TAP POS transaction SiteServiceProviders: type: object properties: networkServiceProviderName: type: string description: Name of the network service provider ContractData: type: object properties: contractIdentification: $ref: '#/components/schemas/ContractContractIdentification' basic: $ref: '#/components/schemas/ContractBasic' serviceProvider: $ref: '#/components/schemas/ContractServiceProvider' currencyData: $ref: '#/components/schemas/CurrencyData' refundLimits: $ref: '#/components/schemas/RefundLimits' financial: $ref: '#/components/schemas/Financial' externalIds: $ref: '#/components/schemas/ExternalIds' status: $ref: '#/components/schemas/Status' addressDetailsURI: type: string description: URI to get the contract address details example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/addresses balanceDataURI: type: string description: URI to get the contract balance data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/balances brandDataURI: type: string description: URI to get the contract brand data example: acquiring/contract/v2.0/acquirers/XXX/contracts/XXX/brands ContractBasic: type: object properties: acquirerName: type: string description: Name of the acquirer merchantName: type: string description: Name of the merchant contractName: type: string description: Optional name for this specific contract threeDSecure: type: boolean description: Indicates whether the merchants accepts 3D secure eCommerce transactions highRiskMerchant: type: boolean description: Indicates whether the acquirer considers the merchant high risk merchantPortalAccess: type: boolean description: Indicates whether the merchant has access to the equensWorldline merchant portal statementFrequency: type: integer description: Frequency of statement generation. Values [1 = Weekly, 2 = Monthly] format: int32 merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services ContractServiceProvider: type: object properties: independentSalesOrganizationId: type: string description: Unique identification of the Independent Sales Organization (ISO) paymentServiceProviderId: type: string description: Unique identification of the Payment Service Provider (eCommerce only) CurrencyData: type: object properties: transaction2PaymentCurrency: type: array items: $ref: '#/components/schemas/Transaction2PaymentCurrency' localPaymentCurrency: type: string description: Local payment currency according to ISO 4217 (alphanumeric-3) dcc: $ref: '#/components/schemas/Dcc' RefundLimits: type: object properties: maximumRefundAmount: type: string description: | Maximum refund amount in Euro. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maximumDailyRefundAmount: type: string description: | Maximum daily total refund amount per site in Euro. Amount in the major units of the currency according to ISO 4217. In case of euro, "3.10" (is 3.10 euro) format: unlimited size decimal example: "3.00" maximumDailyNumberOfRefunds: type: integer description: Maximum daily total number of refunds per site format: int32 Financial: type: object properties: transactionFeePricePlans: type: array items: $ref: '#/components/schemas/TransactionFeePricePlan' paymentTemplateName: type: string description: Unique name of the payment template. It dictates how many balances are used at the contract and which financial activities are posted on which balance. Values [Gross0, Gross1, Gross2, Gross3, Net1, Net2, Net3, Net4] serviceBasedFeePricePlanName: type: string description: Unique name of the service based fee price plan ExternalIds: type: object properties: vatNumber: type: string description: VAT number of the merchant example: NL123456789B01 chamberOfCommerce: type: string description: Chamber of commerce number of the merchant example: "12345678" socialSecurityNumber: type: string description: Social security number of the merchant (only allowed in specific countries) example: "123456789" branchOrganisationId: type: string description: Identification of the merchant by his branch organization example: "1234" Status: type: object properties: status: type: string description: The status of this entity. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts), Terminated] statusReasonId: type: integer description: Reason for blocking or terminating the contract, the site or the terminal. Values [1 = Bankrupt, 2 = Clean Up, 3 = Closed, 4 = Finance request, 5 = Suspected fraud, 6 = Legal request, 7 = To other acquirer, 8 = Incorrect bank Account, 9 = Negative balance, 10 = PCI non-compliance] format: int32 commencementDate: type: string description: Date at which contract, site or terminal was registered terminationDate: type: string description: Date at which the contract, site or terminal was terminated transactionBlockDate: type: string description: Date at which the transactions for the contract or site were blocked paymentBlockDate: type: string description: Date at which the payments for the contract or site were blocked TerminalStatus: type: object properties: status: type: string description: The status of this entity. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts), Terminated] statusReasonId: type: integer description: Reason for blocking or terminating the contract, the site or the terminal. Values [1 = Bankrupt, 2 = Clean Up, 3 = Closed, 4 = Finance request, 5 = Suspected fraud, 6 = Legal request, 7 = To other acquirer, 8 = Incorrect bank Account, 9 = Negative balance, 10 = PCI non-compliance] format: int32 commencementDate: type: string description: Date at which contract, site or terminal was registered terminationDate: type: string description: Date at which the contract, site or terminal was terminated transactionBlockDate: type: string description: Date at which the transactions for the contract or site were blocked Transaction2PaymentCurrency: type: object properties: transactionCurrency: type: string description: Transaction currency according to ISO 4217 (alphanumeric-3) paymentCurrency: type: string description: (Local) payment currency according to ISO 4217 (alphanumeric-3) Dcc: type: object properties: dccProvider: type: string description: Unique identification of the DCC Provider dccPaymentCurrency: type: string description: Currency in which DCC transactions are paid to the merchant. Always part of a DCC currency combination, a combination of a DCC transaction currency and a DCC payment currency. A merchant can have only one those combinations dccSupportIndicator: type: boolean description: Indicates whether the merchant can accept dynamic currency conversion (DCC) transactions dccTransactionCurrency: type: string description: DCC base currency of the merchant. Always part of a DCC currency combination, a combination of a DCC transaction currency and a DCC payment currency. A merchant can have only one those combinations TransactionFeePricePlan: type: object properties: currency: type: string description: (Local) payment currency according to ISO 4217 (alphanumeric-3) name: type: string description: Unique name of the Transaction Fee Price Plan type: type: integer description: Type of the transaction fee price plan. Values [1 = Standard pricing, 2 = Interchange plus, 3 = Interchange tiered pricing, 4 = Interchange plus plus, 5 = Default scheme fees for interchange plus plus, 6 = Stepped pricing] format: int32 MerchantBasic: type: object properties: acquirerName: type: string description: Name of the acquirer holdingName: type: string description: Name of the holding merchantName: type: string description: Name of the merchant masterCardAssignedId: type: string description: Unique identifier of the merchant, issued by Mastercard visaMerchantVerificationValue: type: string description: Unique identifier of the merchant, issued by VISA participationMupp: type: string description: Indicates whether the merchant is enrolled in the Mastercard Utility Payment Program masterCardPaymentFacilitatorId: type: string description: Payment facilitator ID, issued by Mastercard visaPaymentFacilitatorId: type: string description: Payment facilitator ID, issued by VISA paymentFacilitatorName: type: string description: (Abbreviation of the) name of the payment facilitator to be used as first part of the card acceptor name countryOfOrigin: type: string description: Country of origin (home country) of a merchant that is owned by or under control of a government merchantProfileId: type: string description: Unique identification of the merchant profile MerchantRefundLimits: type: object properties: maximumDailyRefundAmountMerchant: type: string description: Maximum daily total refund amount per merchant in Euro example: "200000.00" MerchantClusters: type: object properties: type: type: string description: Type of the cluster name: type: string description: Name of the cluster MerchantStatus: type: object properties: status: type: string description: The status of the merchant. Values [Active] commencementDate: type: string description: Date at which the merchant was registered HoldingBasic: type: object properties: acquirerName: type: string description: Name of the acquirer holdingName: type: string description: Name of the holding HoldingStatus: type: object properties: status: type: string description: The status of the holding. Values [Active] commencementDate: type: string description: Date at which the holding was registered Operation: type: object properties: value: type: object properties: {} path: type: string description: | A pointer to a specific value (field) that needs to be changed examples /basic/merchantCategoryCode, brands/0/brandParameters/allowedServices/refundService op: type: string description: | The following operations are implemented - replace - change the value of a specific field - remove - remove the value of a specific field (only allowed for optional fields) from: type: string description: Not elevant for currently supported operations CorrelationResponse: type: object properties: correlationId: type: string description: Unique ID that was generated for the specific change format: uuid TerminalCheckNumberResponse: type: object properties: terminalId: type: string description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) checkNumber: type: string description: Check number of the terminal. Only relevant in case the terminal ID is generated up front during the reservation process by processor equensWordline MerchantIdentificationResponse: type: object properties: acquirerId: type: string description: Unique identification of the acquirer, determined by equensWorldline holdingId: type: string description: Unique identification of the holding, determined by equensWorldline merchantId: type: string description: Unique identification of the merchant, determined by the acquirer contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" siteId: type: integer description: Unique identification of the site within the contract format: int64 cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field. In that case it contains the merchant ID terminalId: type: string description: Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) PostTerminal: type: object properties: contractIdentification: $ref: '#/components/schemas/PostTerminalContractIdentification' basic: $ref: '#/components/schemas/PostTerminalBasic' PostTerminalContractIdentification: type: object properties: terminalId: type: string description: | Identification of the terminal. Within the Dutch model a terminal ID uniquely identifies one specific physical device. Within other terminal models the terminal ID is only considered unique within the context of its own site (card acceptor ID) example: W01AB01 PostTerminalBasic: type: object properties: nameOnStatement: type: string description: Name that is visible on the cardholder statement. If not filled, then the site name is used (first 22 characters) example: EPS*Metal Festival merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services example: "7999" transactionReference: type: boolean description: Indicates whether the merchant is allowed to add a reference to a C-TAP POS transaction example: false PostTerminalResponse: type: object properties: correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/TerminalContractIdentification' PostSite: type: object properties: contractIdentification: $ref: '#/components/schemas/PostSiteContractIdentification' basic: $ref: '#/components/schemas/PostSiteBasic' refundLimits: $ref: '#/components/schemas/RefundLimits' addresses: type: array items: $ref: '#/components/schemas/AddressDetails' PostSiteContractIdentification: type: object properties: siteId: type: integer description: Unique identification of the site within the contract format: int64 example: 100111 contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" cardAcceptorId: type: string description: Unique identification of the site in accordance with payment scheme rules. Some Dutch acquirers have a waiver not to fill this field for POS. In that case it contains the merchant ID. For channel eCommerce it is always mandatory example: "90100110" PostSiteBasic: type: object properties: siteName: type: string description: Name of the site example: EPS*Metal Festival channel: type: integer description: Channel of the site. Values [1 = POS, 2 = eCommerce, 3 = MOTO] format: int32 example: 1 terminalDomainId: type: integer description: A domain of merchants, acquirers, terminal vendors and terminals in which a common POS terminal protocol (e.g. C-TAP) is used and in which a certain authority (e.g. Acquiris, Nets) is responsible for identifiers of acquirers and processors. Values [1 = Dutch C-TAP / IFSF, 2 = Finnish EMV, 3 = International C-TAP] format: int32 example: 1 subMerchantId: type: string description: Sub merchant ID, defined by a payment facilitator (merchant). Each merchant that is considered to be a payment facilitator by the payment schemes needs to uniquely identify all of its sites with a sub merchant ID example: "110" merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services example: "7999" transactionReference: type: boolean description: Indicates whether the merchant is allowed to add a reference to a C-TAP POS transaction example: false PostSiteResponse: type: object properties: correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/SiteContractIdentification' PostContractCurrency: type: object properties: currencyData: $ref: '#/components/schemas/PostContractCurrencyData' balances: type: array items: $ref: '#/components/schemas/ContractCurrencyBalance' PostContractCurrencyData: type: object properties: transaction2PaymentCurrency: type: array items: $ref: '#/components/schemas/ContractCurrencyTransaction2Payment' ContractCurrencyBalance: type: object properties: balanceNumber: type: integer format: int32 description: Number of the balance. Values [1, 2, 3] bankAccounts: type: array items: $ref: '#/components/schemas/ContractCurrencyBankAccount' ContractCurrencyBankAccount: type: object properties: currency: type: string description: Payment currency according to ISO 4217 (alphanumeric-3) bankAccountType: type: integer format: int32 description: Describes whether a bank account number is of the type IBAN or not (Other). In the latter case it can be for example an American or South-African bank account number. Values [1 = IBAN, 99 = Other] bic: type: string description: Bank Institution Code for merchant payment. A BIC needs to be registered for each payment currency of the merchant example: BITSNL2A iban: type: string description: International Bank Account Number for merchant payments. An IBAN needs to be registered for each payment currency of the merchant example: NL76BITS1234567890 ContractCurrencyTransaction2Payment: type: object properties: transactionCurrency: type: string description: Transaction currency accepted by the merchant paymentCurrency: type: string description: Currency in which transactions of the linked transaction currency are paid to the merchant PostContractCurrenciesResponse: type: object properties: currencyCombinations: type: array items: $ref: '#/components/schemas/CurrencyCombination' correlationId: type: string format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/ContractStatusResponse' CurrencyCombination: type: object properties: transactionCurrency: type: string description: Transaction currency according to ISO 4217 (alphanumeric-3) paymentCurrency: type: string description: Currency in which transactions of the linked transaction currency are paid to the merchant PostContractBalances: required: - balances type: object properties: balances: type: array items: $ref: '#/components/schemas/PostContractBalance' PostContractBalance: type: object properties: balanceNumber: type: integer description: Number of the balance. Values [1, 2, 3] format: int32 example: 1 merchantReconciliationReference: type: string description: Reference the merchant wants to be part of the description lines of the payment on his bank statement example: "10011" paymentLevel: type: integer description: Level of the merchant hierarchy at which the merchant is paid. Values [4 = Contract, 5 = Site, 6 = Terminal] format: int32 example: 4 paymentAggregation: type: integer description: Indicates whether the merchant is paid per brand, per scheme or totalized. Values [1 = Totalized payment, 2 = Payment per brand, 3 = Payment per scheme] format: int32 example: 1 paymentFrequency: type: integer description: Frequency in which the balance is settled with the merchant. Values [1 = Accounting period, 2 = Weekly, 3 = Monthly, 4 = Daily, 5 = Twice a month, 6 = Per external batch, 7 = Across batches, 8 = Merchant manual cut-off, 9 = Merchant automatic cut-off] format: int32 example: 4 terminalPeriodCutoffTime: type: string description: The fixed time (hours and minutes, without date and seconds) of the daily moment - defined by the merchant - when the cut-off of the financial counter information, used by the merchant to align it with the used reconciliation period when the merchant has chosen for automatically cut off the booking period of the transactions example: 00:00 terminalPeriodClosureLevel: type: integer description: The level on which the financial counter information for the transactions cut-off period are consulted, used by the merchant to align it with the used reconciliation period when the merchant has chosen to manual cut-off the booking period of the transactions. Values [0 = Terminal, 1 = Site] format: int32 example: 0 paymentDay: type: integer description: Specific day of the week or month the merchant is paid. Values in case of weekly [1 to 7], values in case of monthly [1 to 31] format: int32 example: 1 paymentDelay: type: integer description: Payment delay in days. Values [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 30, 60, 90] format: int32 example: 0 bankAccounts: type: array items: $ref: '#/components/schemas/PostBankAccount' PostBankAccount: type: object properties: currency: type: string description: (Local) Payment Currency according to ISO 4217 (alphanumeric-3) example: EUR bankAccountType: type: integer description: Describes whether a bank account number is of the type IBAN or not (Other). In the latter case it can be for example an American or South-African bank account number. Values [1 = IBAN, 99 = Other] format: int32 example: 1 bic: type: string description: Bank Institution Code for merchant payment. A BIC needs to be registered for each payment currency of the merchant example: BITSNL2A iban: type: string description: International Bank Account Number for merchant payments. An IBAN needs to be registered for each payment currency of the merchant example: NL76BITS1234567890 threshold: type: integer description: Amount of the threshold. The acquirer can choose to hold an amount in reserve before paying the merchant. This is usually done for risk mitigation. The threshold is registered at balance 1. An amount can be registered for each payment currency of the merchant format: int32 example: 0 EditContractBalancesResponse: type: object properties: balances: type: array items: $ref: '#/components/schemas/BalanceNumber' correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/ContractStatusResponse' BalanceNumber: type: object properties: balanceNumber: type: integer description: Number of the balance. Values [1, 2, 3] format: int32 PostContractAddresses: required: - addresses type: object properties: addresses: type: array items: $ref: '#/components/schemas/AddressDetails' EditContractAddressesResponse: type: object properties: addresses: type: array items: $ref: '#/components/schemas/AddressType' correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/ContractStatusResponse' PostContractBrands: required: - brands type: object properties: brands: type: array items: $ref: '#/components/schemas/BrandLabel' PostMerchantAddresses: required: - addresses type: object properties: addresses: type: array items: $ref: '#/components/schemas/AddressDetails' BrandLabel: type: object properties: label: type: string description: Unique identification of the brand (payment product). Maestro = MAES, American Express = AMEX, Visa = VISA, etc. example: MAST ContractResponse: type: object properties: correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/ContractStatusResponse' PostContractBrandsResponse: type: object properties: brands: type: array items: $ref: '#/components/schemas/BrandLabel' correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/ContractStatusResponse' ContractStatusResponse: type: object properties: status: type: string description: The status of the contract. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts)] statusReasonId: type: integer description: Reason for blocking or terminating the contract, the site or the terminal. Values [1 = Bankrupt, 2 = Clean Up, 3 = Closed, 4 = Finance request, 5 = Suspected fraud, 6 = Legal request, 7 = To other acquirer, 8 = Incorrect bank Account, 9 = Negative balance, 10 = PCI non-compliance] format: int32 commencementDate: type: string description: Date at which contract was registered transactionBlockDate: type: string description: Date at which the transactions for the contract were blocked paymentBlockDate: type: string description: Date at which the payments for the contract were blocked missing: $ref: '#/components/schemas/ContractSubentitiesMissingResponse' ContractSubentitiesMissingResponse: type: object properties: brands: type: string description: For the contract to become complete at least 1 brand needs to be added balances: type: string description: For the contract to become complete all relevant balances need to be added addresses: type: string description: For the contract to become complete all relevant addresses need to be added AddressType: type: object properties: addressType: type: string description: Type of the address. Values [Business, Chargeback, Creditor, Debtor, Invoice, Location, Postal, Private] PostContract: required: - basic - contractIdentification type: object properties: contractIdentification: $ref: '#/components/schemas/PostContractContractIdentification' basic: $ref: '#/components/schemas/PostContractBasic' serviceProvider: $ref: '#/components/schemas/PostServiceProvider' currencyData: $ref: '#/components/schemas/PostCurrencyData' refundLimits: $ref: '#/components/schemas/PostRefundLimits' financial: $ref: '#/components/schemas/PostFinancial' externalIds: $ref: '#/components/schemas/ExternalIds' PostContractContractIdentification: required: - merchantId type: object properties: merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" contractId: type: string description: Unique identification of the contract, determined by the acquirer example: "10011" PostContractBasic: required: - merchantCategoryCode type: object properties: contractName: type: string description: Optional name for this specific contract example: Music Festivals highRiskMerchant: type: boolean description: Indicates whether the acquirer considers the merchant high risk example: false merchantPortalAccess: type: boolean description: Indicates whether the merchant has access to the equensWorldline merchant portal example: true statementFrequency: type: integer description: Frequency of statement generation. Values [1 = Weekly, 2 = Monthly] format: int32 example: 1 merchantCategoryCode: type: string description: The MCC is used to classify a business by the types of goods or services it provides, according to ISO 18245 for retail financial services example: "8931" PostServiceProvider: type: object properties: independentSalesOrganizationId: type: string description: Unique identification of the Independent Sales Organization (ISO) example: "576352" PostDcc: type: object properties: dccProvider: type: string description: Unique identification of the DCC Provider example: Fexco dccSupportIndicator: type: boolean description: Indicates whether the merchant can accept dynamic currency conversion (DCC) transactions example: true PostCurrencyData: type: object properties: dcc: $ref: '#/components/schemas/PostDcc' PostRefundLimits: type: object properties: maximumRefundAmount: type: string description: Maximum refund amount in Euro. Amount in the major units of the currency according to ISO 4217. example: "500.00" maximumDailyRefundAmount: type: string description: Maximum daily total refund amount per site in Euro. Amount in the major units of the currency according to ISO 4217. example: "100000.00" maximumDailyNumberOfRefunds: type: integer description: Maximum daily total number of refunds per site format: int32 example: 5000 PostFinancial: type: object properties: paymentTemplateName: type: string description: Unique name of the payment template. It dictates how many balances are used at the contract and which financial activities are posted on which balance. Values [Gross0, Gross1, Gross2, Gross3, Net1, Net2, Net3, Net4] example: Net1 PostContractResponse: type: object properties: correlationId: type: string description: Unique ID that was generated for the specific change format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' status: $ref: '#/components/schemas/PostContractStatus' PostContractStatus: type: object properties: status: type: string description: The status of the contract. Values [Active, Blocked (Trx & Pmts), Blocked (Trx), Blocked (Pmts)] missing: $ref: '#/components/schemas/ContractSubentitiesMissingResponse' PostMerchant: type: object properties: contractIdentification: $ref: '#/components/schemas/PostMerchantContractIdentification' basic: $ref: '#/components/schemas/PostMerchantBasic' externalIds: $ref: '#/components/schemas/ExternalIds' refundLimits: $ref: '#/components/schemas/MerchantRefundLimits' PostMerchantContractIdentification: type: object properties: holdingId: type: integer description: Unique identification of the holding, determined by equensWorldline format: int32 example: 200 merchantId: type: string description: Unique identification of the merchant, determined by the acquirer example: "1001" PostMerchantBasic: type: object properties: merchantName: type: string description: Name of the merchant example: Event Payment Solutions 1 masterCardAssignedId: type: string description: Unique identifier of the merchant, issued by Mastercard example: "123456" visaMerchantVerificationValue: type: string description: Unique identifier of the merchant, issued by VISA example: "1234567890" participationMupp: type: boolean description: Indicates whether the merchant is enrolled in the Mastercard Utility Payment Program example: false masterCardPaymentFacilitatorId: type: integer description: Payment facilitator ID, issued by Mastercard format: int64 example: 200000 visaPaymentFacilitatorId: type: integer description: Payment facilitator ID, issued by VISA format: int64 example: 10000000 paymentFacilitatorName: type: string description: (Abbreviation of the) name of the payment facilitator to be used as first part of the card acceptor name countryOfOrigin: type: integer description: Country of origin (home country) of a merchant that is owned by or under control of a government format: int32 example: 729 PostMerchantResponse: type: object properties: correlationId: type: string format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' ErrorResponse: type: object properties: errors: type: array items: $ref: '#/components/schemas/ErrorData' PostHoldingBasic: type: object properties: holdingName: type: string description: Name of the holding example: Event Payment Solutions PostHolding: type: object properties: basic: $ref: '#/components/schemas/PostHoldingBasic' PostHoldingResponse: type: object properties: correlationId: type: string format: uuid contractIdentification: $ref: '#/components/schemas/MerchantIdentificationResponse' ErrorData: type: object properties: code: type: string description: Unique code of the error as returned by the system handling the request keyword: type: string description: JSON keyword from the request message that triggered the error errorMessage: type: string description: Message explaining the error