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 Credit Transfer API contact: {} host: sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/card-issuing basePath: /api/v2 schemes: - https tags: - name: Credit Transfer description: Credit Transfer Api Controller paths: /issuers/{issuerId}/credit-transfers: post: x-wl-idempotent: true tags: - Credit Transfer summary: Create a credit transfer instruction description: "This API enables an outgoing credit transfer instruction to be created by transferring funds towards a beneficiary bank account (in house/external) from a card account credit balance or open-to-buy. \nThe beneficiary bank account IBAN must be provided in input (the Direct Debit IBAN for the card account can be used otherwise if any).\n\nAs a result, the card account is immediately debited of the requested amount.\nThe API returns the unique Credit Transfer EndToEnd Identifier generated by our system and the Credit Transfer status.\n\nIdempotency is managed by the API; that is, if the request with the same WL-Correlation-ID is sent multiple times, it will be executed only once.The response will be retrieved directly from our system." operationId: createCreditTransfer 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/CreateCreditTransferRequest' 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/ApiResponseEntityCreateCreditTransferResponse' security: - basic: [] deprecated: false /issuers/{issuerId}/credit-transfers/{endToEndId}: get: tags: - Credit Transfer summary: Retrieve a credit transfer description: This API enables an already created credit transfer instruction to be retrieved by providing in input the credit transfer E2E Identifier. operationId: retrieveCreditTransfer 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: Outgoing credit transfer (OCT) 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/ApiResponseEntityCreditTransfer' security: - basic: [] deprecated: false /issuers/{issuerId}/credit-transfers/{endToEndId}/cancel: post: tags: - Credit Transfer summary: Cancel credit transfer description: This API enables a credit transfer instruction to be cancelled by providing in input the credit transfer E2E Identifier. operationId: cancelCreditTransfer 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: OCT identifier required: true type: string - in: body name: body required: false schema: $ref: '#/definitions/CancelCreditTransferRequest' 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/ApiResponseEntityCancelCreditTransferResponse' security: - basic: [] deprecated: false definitions: 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 CreditTransferIdentifier: type: object properties: endToEndId: type: string description: Credit transfer identifier title: CreditTransferIdentifier UnauthorizedErrorApiResponse: type: object required: - responseMetadata properties: responseMetadata: allOf: - $ref: '#/definitions/UnauthorizedResponseMetadata' title: UnauthorizedResponseMetadata CreateCreditTransferResponse: type: object required: - directDebitIdentifier - status properties: creditTransferIdentifier: description: Credit transfer identifier allOf: - $ref: '#/definitions/CreditTransferIdentifier' status: type: string description: Credit transfer status title: CreateCreditTransferResponse CancelCreditTransferRequest: type: object properties: rejectionReason: type: string description: Reason for cancelling the credit transfer (free text) title: CancelCreditTransferRequest 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 ApiResponseEntityCancelCreditTransferResponse: 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/CancelCreditTransferResponse' description: Issuer response entity title: ApiResponseEntityCancelCreditTransferResponse ApiResponseEntityCreateCreditTransferResponse: 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/CreateCreditTransferResponse' description: Issuer response entity title: ApiResponseEntityCreateCreditTransferResponse 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 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 CreditTransfer: type: object properties: issuerId: type: string description: Issuer identifier (unique per platform) creditTransferIdentifier: description: Unique Credit Transfer Identifier allOf: - $ref: '#/definitions/CreditTransferIdentifier' accountIdentifier: description: Account identifier linked to the credit transfer allOf: - $ref: '#/definitions/AccountIdentifier' creationDate: type: string format: date-time description: Creation date of the OCT amount: description: OCT amount allOf: - $ref: '#/definitions/Amount' statusHistory: description: 'History of credit transfer changes. _Embedded property, only filled when available for the endpoint and explicitly requested in the ''embed'' query parameter._' type: array items: $ref: '#/definitions/CreditTransferStatusHistory' ibanOwnerName: type: string description: Refer to Account.ibanOwnerName iban: type: string description: Refer to Account.iban bic: type: string description: Refer to Account.bic sci: type: string description: SEPA Creditor Identifier (for SEPA OCT) dueDate: type: string format: date-time description: New due date if it was recomputed on SPS side (present when due date was recomputed. Valid for SEPA OCT only) sepaIndicator: type: boolean description: Indicates if OCT is SEPA or not octType: type: string description: "F, for OCT types using the credit balance only \nK, for OCT types using the OTB" remittanceInfo: type: string description: "Based on a template defined at product level per product reference \nIf such template is not defined then Remittance information is empty\nIf template is defined for transaction type as F and K (see OCT type) then the field is built based on it. \nIts content depends on the free text and dynamic fields present." rejectionCode: type: string description: Rejection code received throughout OCT processing lifecycle rejectionReason: type: string description: Rejection reason received throughout OCT processing lifecycle status: type: string description: The status of the OCT eventSource: type: string description: Source of an event that triggers an update of OCT cancellationDate: type: string format: date-time description: The date when the OCT order was canceled reimbursementTrigger: type: string description: "Indicates how the reimbursement is triggered \nThe possible values are :\n- ON_DEMAND\n- CYCLIC (related to monthly cycle closure)\n- DAILY\n- ON_TRANSACTION\n- ON_TERMINATION (on contract termination)" reimbursementReason: type: string description: "Reason why the reimbursement is triggered \nThe list of possible reimbursement reasons is configurable per issuer." title: CreditTransfer CreateCreditTransferRequest: type: object required: - accountIdentifier - amount - ibanOwnerName - iban properties: accountIdentifier: description: Card account identifier to be debited. allOf: - $ref: '#/definitions/AccountIdentifier' amount: description: Amount of credit transfer allOf: - $ref: '#/definitions/Amount' ibanOwnerName: type: string description: Refer to Account.ibanOwnerName bic: type: string description: Refer to Account.bic iban: type: string description: Refer to Account.iban externalOperationCode: type: string description: The external operation code of the balance adjustment can be provided. dueDate: type: string format: date-time description: Due date for OCT. Valid for SEPA OCT only reimbursementReason: type: string description: 'The reason why the reimbursement is triggerred The list of possible reimbursement reasons is configurable per issuer.' title: CreateCreditTransferRequest ApiResponseEntityCreditTransfer: 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/CreditTransfer' description: Issuer response entity title: ApiResponseEntityCreditTransfer 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 CancelCreditTransferResponse: type: object required: - creditTransferIdentifier - status - cancellationDate properties: creditTransferIdentifier: description: Credit transfer identifier allOf: - $ref: '#/definitions/CreditTransferIdentifier' status: type: string description: Credit transfer status cancellationDate: type: string format: date-time description: The date when the OCT order was canceled title: CancelCreditTransferResponse 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 CreditTransferStatusHistory: type: object properties: status: type: string description: 'Status of the credit transfer on the particular status date ' statusDate: type: string format: date-time description: Date of the credit transfer status change username: type: string description: Name of the user who requested to create or cancel the credit transfer origin: type: string description: Origin used when the credit tranfer was requested or cancelled. title: CreditTransferStatusHistory securityDefinitions: basic: type: oauth2 flow: application tokenUrl: https://sbx-wlip.api1-eu2.psapigateway.preprod.giservices.io/token