swagger: '2.0' info: description: 'The current set of APIs will be available in Q2 2026 on Worldline Global Issuing Platforms. Additional APIs are under construction and planned to be available in 2026.' version: 2.41.1 title: Worldline Card Issuing Account - AccountState Direct Debit API contact: {} host: sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/card-issuing basePath: /api/v2 schemes: - https tags: - name: Direct Debit description: Direct Debit Api Controller paths: /issuers/{issuerId}/direct-debits: post: x-wl-idempotent: true tags: - Direct Debit summary: Create a direct debit instruction description: 'This API enables a direct debit note to be requested by debiting a customer bank account (inhouse or external) to increase the open to buy of the card account (for a particular purchase). As a result, the direct debit is generated and after n business days (issuer configuration), the card account is paid with the requested amount (the total amount due for this card account is paid first). The API returns the unique Direct Debit EndToEnd Identifier generated by our system and the direct debit status. Idempotency is managed by the API; that is, if the request with the same WL-Correlation-ID is sent multiple times, it will be executed only once.The response will be retrieved directly from our system.' operationId: createDirectDebit consumes: - application/json produces: - application/json parameters: - name: WL-Correlation-ID in: header required: false type: string - name: WL-Origin in: header required: false type: string - name: WL-Username in: header required: false type: string - name: filter in: query description: Filtered Fields required: false type: array items: type: string collectionFormat: multi - name: issuerId in: path description: Issuer ID required: true type: string - in: body name: body required: true schema: $ref: '#/definitions/CreateDirectDebitRequest' responses: '400': description: Bad request schema: $ref: '#/definitions/BadRequestErrorApiResponse' '401': description: Unauthorized schema: $ref: '#/definitions/UnauthorizedErrorApiResponse' '403': description: Forbidden schema: $ref: '#/definitions/ForbiddenErrorApiResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorApiResponse' '500': description: Internal server error schema: $ref: '#/definitions/InternalServerErrorErrorApiResponse' '502': description: Bad gateway schema: $ref: '#/definitions/BadGatewayErrorApiResponse' '200': description: OK schema: $ref: '#/definitions/ApiResponseEntityCreateDirectDebitResponse' security: - basic: [] deprecated: false /issuers/{issuerId}/direct-debits/{endToEndId}: get: tags: - Direct Debit summary: Retrieve a direct debit description: This API enables an already created direct debit instruction to be retrieved by providing in input the Direct debit E2E Identifier and the reject reason. operationId: retrieveDirectDebit produces: - application/json parameters: - name: WL-Correlation-ID in: header required: false type: string - name: WL-Origin in: header required: false type: string - name: WL-Username in: header required: false type: string - name: filter in: query description: Filtered Fields required: false type: array items: type: string collectionFormat: multi - name: issuerId in: path description: Issuer ID required: true type: string - name: endToEndId in: path description: DD identifier required: true type: string - name: embed in: query description: Embedded Fields required: false type: array items: type: string enum: - statusHistory collectionFormat: multi responses: '400': description: Bad request schema: $ref: '#/definitions/BadRequestErrorApiResponse' '401': description: Unauthorized schema: $ref: '#/definitions/UnauthorizedErrorApiResponse' '403': description: Forbidden schema: $ref: '#/definitions/ForbiddenErrorApiResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorApiResponse' '500': description: Internal server error schema: $ref: '#/definitions/InternalServerErrorErrorApiResponse' '502': description: Bad gateway schema: $ref: '#/definitions/BadGatewayErrorApiResponse' '200': description: OK schema: $ref: '#/definitions/ApiResponseEntityDirectDebit' security: - basic: [] deprecated: false /issuers/{issuerId}/direct-debits/{endToEndId}/cancel: post: tags: - Direct Debit summary: Cancel direct debit description: 'This API enables a direct debit instruction to be cancelled by providing in input the Direct debit E2E Identifier. The cancellation is possible for Direct debit not collected yet (sent to the bank).' operationId: cancelDirectDebit consumes: - application/json produces: - application/json parameters: - name: WL-Correlation-ID in: header required: false type: string - name: WL-Origin in: header required: false type: string - name: WL-Username in: header required: false type: string - name: filter in: query description: Filtered Fields required: false type: array items: type: string collectionFormat: multi - name: issuerId in: path description: Issuer ID required: true type: string - name: endToEndId in: path description: DD identifier required: true type: string - in: body name: body required: false schema: $ref: '#/definitions/CancelDirectDebitRequest' responses: '400': description: Bad request schema: $ref: '#/definitions/BadRequestErrorApiResponse' '401': description: Unauthorized schema: $ref: '#/definitions/UnauthorizedErrorApiResponse' '403': description: Forbidden schema: $ref: '#/definitions/ForbiddenErrorApiResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorApiResponse' '500': description: Internal server error schema: $ref: '#/definitions/InternalServerErrorErrorApiResponse' '502': description: Bad gateway schema: $ref: '#/definitions/BadGatewayErrorApiResponse' '200': description: OK schema: $ref: '#/definitions/ApiResponseEntityCancelDirectDebitResponse' security: - basic: [] deprecated: false definitions: CreateDirectDebitRequest: type: object required: - overPaymentAccountIdentifier - amount properties: overPaymentAccountIdentifier: description: Card account identifier to be credited allOf: - $ref: '#/definitions/AccountIdentifier' amount: description: Amount of Direct Debit allOf: - $ref: '#/definitions/Amount' externalOperationCode: type: string description: The external operation code of the balance adjustment can be provided. paymentReason: type: string description: 'The reason why the payment is triggerred The list of possible payment reasons is configurable per issuer.' title: CreateDirectDebitRequest DirectDebitStatusHistory: type: object properties: status: type: string description: 'Status of the direct debit transfer on the particular status date ' statusDate: type: string format: date-time description: Date of the direct debit status change username: type: string description: Name of the user who requested to create or cancel the direct debit origin: type: string description: Origin used when the direct debit was requested or cancelled. title: DirectDebitStatusHistory NotFoundErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/NotFoundResponseMetadata' title: NotFoundErrorApiResponse BadGatewayErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/BadGatewayResponseMetadata' title: BadGatewayErrorApiResponse InternalServerErrorErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/InternalServerErrorResponseMetadata' title: InternalServerErrorErrorApiResponse InternalServerErrorResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 500 description: HTTP status code statusMessage: type: string example: Internal server error description: Executed REST API status message title: InternalServerErrorResponseMetadata UnauthorizedErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/UnauthorizedResponseMetadata' title: UnauthorizedResponseMetadata CancelDirectDebitRequest: type: object properties: rejectionReason: type: string description: Reason for cancelling the direct debit (free text) title: CancelDirectDebitRequest DirectDebit: type: object properties: issuerId: type: string description: Issuer identifier (unique per platform) directDebitIdentifier: description: Unique identifier of the Direct Debit allOf: - $ref: '#/definitions/DirectDebitIdentifier' overPaymentAccountIdentifier: description: 'Identifier of the overpayment account ' allOf: - $ref: '#/definitions/AccountIdentifier' payingAccountIdentifier: description: Identifier of the paying account allOf: - $ref: '#/definitions/AccountIdentifier' sci: type: string description: SEPA Creditor Identifier (for SEPA DD) mandateUmr: type: string description: Unique Mandate Reference (for SEPA DD) amount: description: Direct Debit due amount allOf: - $ref: '#/definitions/Amount' sepaIndicator: type: boolean description: Indicates if DD is SEPA or no creationDate: type: string format: date-time description: Creation Date of the DD extractType: type: string description: Extract type status: type: string description: DD Status dueDate: type: string format: date-time description: Due date sequenceType: type: string description: Sequence type remittanceInfo: type: string description: Remittance info rejectionReason: type: string description: Rejection Reason (if SDD is rejected) debtorBankFee: description: Debtor Bank Fee allOf: - $ref: '#/definitions/Amount' creditorBankFee: description: Creditor Bank Fee allOf: - $ref: '#/definitions/Amount' cancellationDate: type: string format: date-time description: The date when the Direct Debit order was canceled statusHistory: description: 'Debtor Bank Fee. _Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._' type: array items: $ref: '#/definitions/DirectDebitStatusHistory' paymentTrigger: type: string description: "Indicates how the payment is triggered \nThe possible values are :\n- ON_DEMAND\n- CYCLIC (related to monthly cycle closure)\n- ON_TRANSACTION" paymentReason: type: string description: "Reason why the payment is triggered \nThe list of possible payment reasons is configurable per issuer." title: DirectDebit Links: type: object required: - self properties: self: type: string example: /x/{x}?x=x description: Service method URL next: type: string example: /x/{x}?page[offset]=2 description: URL pagination query parameter next page title: Links UnauthorizedResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 401 description: HTTP status code statusMessage: type: string example: Unauthorized description: Executed REST API status message title: UnauthorizedResponseMetadata ApiResponseEntityCreateDirectDebitResponse: x-wl-api-response: true type: object required: - responseMetadata properties: responseMetadata: description: Response metadata allOf: - $ref: '#/definitions/ResponseMetadata' data: description: Response data allOf: - $ref: '#/definitions/CreateDirectDebitResponse' description: Issuer response entity title: ApiResponseEntityCreateDirectDebitResponse ApiResponseEntityDirectDebit: x-wl-api-response: true type: object required: - responseMetadata properties: responseMetadata: description: Response metadata allOf: - $ref: '#/definitions/ResponseMetadata' data: description: Response data allOf: - $ref: '#/definitions/DirectDebit' description: Issuer response entity title: ApiResponseEntityDirectDebit NotFoundResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 404 description: HTTP status code statusMessage: type: string example: Not found description: Executed REST API status message title: NotFoundResponseMetadata ResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier links: description: Metadata Links allOf: - $ref: '#/definitions/Links' statusMessage: type: string example: Executed successfully description: Executed REST API status message statusCode: type: integer format: int32 example: 200 description: HTTP status code responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated timeTakenMs: type: integer format: int64 example: 12 description: Wall clock time required from service to generate the response title: ResponseMetadata AccountIdentifier: type: object properties: accountReference: type: string description: Account reference is to identify the Account calculated by the system (algorithm is configurable per issuer). Either the account number or the issuerAccountExternalReference is provided, or, if both are provided then only the account number is used. issuerAccountExternalReference: type: string description: Issuer account external reference is to identify the Account. Either the account number or the issuerAccountExternalReference is provided, or, if both are provided then only the account number is used. Algorithm configurable by issuer, can be generated by the system if there is an externalReferenceGeneratorAlgorithm. title: AccountIdentifier ApiResponseEntityCancelDirectDebitResponse: x-wl-api-response: true type: object required: - responseMetadata properties: responseMetadata: description: Response metadata allOf: - $ref: '#/definitions/ResponseMetadata' data: description: Response data allOf: - $ref: '#/definitions/CancelDirectDebitResponse' description: Issuer response entity title: ApiResponseEntityCancelDirectDebitResponse Amount: type: object required: - value - exponent - isoCode properties: value: type: integer format: int64 description: Integer amount value. Ex. if it is two hundred euros and 17 cents, then amount value is 20017 (exponent = 2 digits for currency=EUR) exponent: type: integer format: int32 description: Exponent of Amount. Number of decimal digits. isoCode: type: string description: 'Currency code of amount The currency in ISO4217 alphabetic format. Example: EUR for Euro' title: Amount ForbiddenErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/ForbiddenResponseMetadata' title: ForbiddenErrorApiResponse CreateDirectDebitResponse: type: object required: - directDebitIdentifier - status properties: directDebitIdentifier: description: Direct debit identifier allOf: - $ref: '#/definitions/DirectDebitIdentifier' status: type: string description: Direct debit status title: CreateDirectDebitResponse DirectDebitIdentifier: type: object properties: endToEndId: type: string description: DD identifier title: DirectDebitIdentifier BadRequestResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 400 description: HTTP status code statusMessage: type: string example: Bad request description: Executed REST API status message title: BadRequestResponseMetadata CancelDirectDebitResponse: type: object required: - directDebitIdentifier - status - cancellationDate properties: directDebitIdentifier: description: Direct debit identifier allOf: - $ref: '#/definitions/DirectDebitIdentifier' status: type: string description: Direct debit status cancellationDate: type: string format: date-time description: The date when the Direct Debit order was canceled title: CancelDirectDebitResponse BadGatewayResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 502 description: HTTP status code statusMessage: type: string example: Bad Gateway description: Executed REST API status message title: BadGatewayResponseMetadata BadRequestErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/BadRequestResponseMetadata' title: BadRequestErrorApiResponse ForbiddenResponseMetadata: type: object required: - correlationId - responseDateTime - statusCode - statusMessage properties: correlationId: type: string description: Correlation Identifier responseDateTime: type: string example: format:yyyy-MM-dd'T'HH:mm:ss.SSSZ description: Timestamp when response date was generated statusCode: type: integer format: int32 example: 403 description: HTTP status code statusMessage: type: string example: Forbidden description: Executed REST API status message title: ForbiddenResponseMetadata securityDefinitions: basic: type: oauth2 flow: application tokenUrl: https://sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/token