{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/wordline/main/json-schema/wordline-api-response-entity-credit-transfer-schema.json", "title": "ApiResponseEntityCreditTransfer", "description": "Issuer response entity", "x-generated": "2026-10-10", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/wordline-credit-transfer-api-openapi.yml#/components/schemas/ApiResponseEntityCreditTransfer", "x-wl-api-response": true, "type": "object", "required": [ "responseMetadata" ], "properties": { "responseMetadata": { "description": "Response metadata", "allOf": [ { "$ref": "#/$defs/ResponseMetadata" } ] }, "data": { "description": "Response data", "allOf": [ { "$ref": "#/$defs/CreditTransfer" } ] } }, "$defs": { "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\nThe currency in ISO4217 alphabetic format.\nExample: EUR for Euro" } }, "title": "Amount" }, "CreditTransfer": { "type": "object", "properties": { "issuerId": { "type": "string", "description": "Issuer identifier (unique per platform)" }, "creditTransferIdentifier": { "description": "Unique Credit Transfer Identifier", "allOf": [ { "$ref": "#/$defs/CreditTransferIdentifier" } ] }, "accountIdentifier": { "description": "Account identifier linked to the credit transfer", "allOf": [ { "$ref": "#/$defs/AccountIdentifier" } ] }, "creationDate": { "type": "string", "format": "date-time", "description": "Creation date of the OCT" }, "amount": { "description": "OCT amount", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "statusHistory": { "description": "History of credit transfer changes.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "type": "array", "items": { "$ref": "#/$defs/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" }, "CreditTransferIdentifier": { "type": "object", "properties": { "endToEndId": { "type": "string", "description": "Credit transfer identifier" } }, "title": "CreditTransferIdentifier" }, "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" }, "Links": { "type": "object", "required": [ "self" ], "properties": { "self": { "type": "string", "description": "Service method URL" }, "next": { "type": "string", "description": "URL pagination query parameter next page" } }, "title": "Links" }, "ResponseMetadata": { "type": "object", "required": [ "correlationId", "responseDateTime", "statusCode", "statusMessage" ], "properties": { "correlationId": { "type": "string", "description": "Correlation Identifier" }, "links": { "description": "Metadata Links", "allOf": [ { "$ref": "#/$defs/Links" } ] }, "statusMessage": { "type": "string", "description": "Executed REST API status message" }, "statusCode": { "type": "integer", "format": "int32", "description": "HTTP status code" }, "responseDateTime": { "type": "string", "description": "Timestamp when response date was generated" }, "timeTakenMs": { "type": "integer", "format": "int64", "description": "Wall clock time required from service to generate the response" } }, "title": "ResponseMetadata" } } }