{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/wordline/main/json-schema/wordline-api-response-entity-list-operation-schema.json", "title": "ApiResponseEntityListOperation", "description": "Issuer response entity", "x-generated": "2026-10-10", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/wordline-account-statement-api-openapi.yml#/components/schemas/ApiResponseEntityListOperation", "x-wl-api-response": true, "type": "object", "required": [ "responseMetadata" ], "properties": { "responseMetadata": { "description": "Response metadata", "allOf": [ { "$ref": "#/$defs/ResponseMetadata" } ] }, "data": { "type": "array", "description": "Response data", "items": { "$ref": "#/$defs/Operation" } } }, "$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" }, "AirItineraryInformation": { "type": "object", "properties": { "businessFormatCode": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Business Format Code; POS 17-18." }, "travelAgent": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Travel Agency Name; POS 92-116.\nMCI mapping is the following: PDS 0511. PDS 0511 (Travel Agency Name) is the name of the travel agency that issued the ticket." }, "travelAgentCode": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Travel Agency Code; POS 84-91.\nMCI mapping is the following: PDS 0510. PDS 0510 (Travel Agency Code) is a code assigned to the travel agency." }, "passengerName": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Passenger Name; POS 27-46.\nMCI mapping is the following: PDS 0505. PDS 0505 (Passenger Name) contains the name of the passenger to whom the ticket was issued." }, "departureDate": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Departure Date (MMDDYY); POS 47-52.\nMCI mapping is the following: PDS 0520. PDS 0520 (Travel Date) is the effective ticket date, also referred as departure date (YYMMDD)." }, "originCityCode": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Origination City/Airport Code; POS 53-55.\nMCI mapping is the following: PDS 0523. PDS 0523 (City of Origin/Airport Code) is the originating airport or railway name standard abbreviation." }, "restrictedTicketIndicator": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Restricted Ticket Indicator; POS 117.\nMCI mapping is the following: PDS 0713. PDS 0713 (Restricted Ticket Indicator) provides the identifier noting that the ticket purchased has some restriction associated with its use." }, "reservationSystem": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Computerized Reservation System; POS 142-145." }, "creditReasonIndicator": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Credit Reason Indicator; POS 166." }, "ticketChangeIndicator": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - PASSENGER ITINERARY DATA; Field: Ticket Change Indicator; POS 167." }, "ticketNumber": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR0; Field: Merchant Name POS 92-116; POS 13-25 of this field should be taken as input.\nMCI mapping is the following: PDS 0506. PDS 0506 (Ticket Number) contains the number on the ticket." }, "IATACode": { "type": "string", "description": "The field represents additional data from MCI clearing file addendum.\nMCI mapping is the following: PDS 0717. PDS 0717 (IATA Client Code) provides the International Air Transport Association (IATA) code identifying the company that purchased the ticket." }, "leg1": { "allOf": [ { "$ref": "#/$defs/TravelDetailLeg" } ], "description": "Description of first leg of trip" }, "leg2": { "allOf": [ { "$ref": "#/$defs/TravelDetailLeg" } ], "description": "Description of second leg of trip" }, "leg3": { "allOf": [ { "$ref": "#/$defs/TravelDetailLeg" } ], "description": "Description of third leg of trip" }, "leg4": { "allOf": [ { "$ref": "#/$defs/TravelDetailLeg" } ], "description": "Description of fourth leg of trip" } }, "title": "AirItineraryInformation" }, "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" }, "AuthorizationBusinessCaseIdentifier": { "type": "object", "required": [ "businessCaseId" ], "properties": { "businessCaseId": { "type": "string", "description": "Business case to which the transaction belongs.\nThe provided information reflects its status after transaction completion.\nA business case is a group of transactions which logically belong together (e.g. original transaction and reversal of original transaction)" } }, "title": "AuthorizationBusinessCaseIdentifier" }, "CarRentalInformation": { "type": "object", "properties": { "businessFormatCode": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Business Format Code (Value: CA); POS 17-18." }, "days": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Days Rented; POS 19-20.\nMCI mapping is the following: PDS 0691. PDS 0691 (Days Rented) provides the number of days that the vehicle was rented." }, "noShowIndicator": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Car Rental No-Show Indicator; POS 27.\nMCI mapping is the following: PDS 0690. PDS 0690 (No Show Indicator) provides an indicator noting that the individual did not show up after making a reservation for a vehicle or lodging." }, "extraCharges": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Car Rental Extra Charges; POS 28-33.\nMCI mapping is the following: PDS 0701. PDS 0701 (Extra Charges) provides the extra charges associated with the vehicle rental." }, "checkOutDate": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Car Rental Check-out Date (YYMMDD); POS 38-43.\nMCI mapping is the following: PDS 0551. PDS 0551 (Rental Check-Out Date) is the date when the vehicle was originally rented (YYMMDD)." }, "dailyRentRate": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Daily Rental Rate; POS 44-55.\nMCI mapping is the following: PDS 0553. PDS 0553 (Rental Rate) contains the rental rate charged for the vehicle and indicates whether it is a daily, weekly, or monthly rate. This PDS consists of two subfields:\n1. Rental Rate Indicator; POS: 1\n- D: Daily rate\n- W: Weekly rate\n- M: Monthly rate\n- space: Unknown or unreported\n2. Rental Rate; POS: 2-13" }, "weeklyRentRate": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Weekly Rental Rate; POS 56-67.\nMCI mapping is the following: PDS 0692. PDS 0692 (Weekly Rental Amount) provides the amount charged for a seven-day rental period." }, "insuranceCharge": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Insurance Charges; POS 68-79.\nMCI mapping is the following: PDS 0559. PDS 0559 (Vehicle Insurance) contains an indicator of whether the customer purchased insurance and of the insurance amount. This PDS consists of two subfields:\n1. Insurance Indicator; POS: 1\n- Y: Yes (insurance was purchased)\n- N: No (insurance was not purchased)\n- spaces: Unknown or unreported\n2. Insurance Charges; POS: 2-13" }, "fuelCharge": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Fuel Charges; POS 80-91.\nMCI mapping is the following: PDS 0698. PDS 0698 (Fuel Charge) provides the amount charged for fuel used during vehicle rental." }, "classCode": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\n VISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Car Class Code; POS 92-93.\nMCI mapping is the following: PDS 0568. PDS 0568 (Rental Class ID) contains the classification, such as midsize or luxury, of the vehicle rented." }, "oneWayDropCharge": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: One-Way Drop-off Charges; POS 94-105.\nMCI mapping is the following: PDS 0694. PDS 0694 (One Way Drop Off Charge) provides a charge associated with not returning a vehicle to the original rental location." }, "renterName": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR 3 - INDUSTRY-SPECIFIC DATA - CAR RENTAL; Field: Renter Name; POS 106-145.\nMCI mapping is the following: PDS 0545. PDS 0545 (Renter Name) is the name of the individual making the vehicle rental agreement." } }, "title": "CarRentalInformation" }, "CardIdentifier": { "type": "object", "description": "Identification of the card either by Issuer card external reference or by card reference", "properties": { "cardReference": { "type": "string", "description": "Reference of the card generated by our system, unique per platform.\nThis reference is calculated sequentially by an internal algorithm on 16 digits (e.g. 2000000000096013)." }, "issuerCardExternalReference": { "type": "string", "description": "External reference of the card provided by the issuer or calculated by the system if the external reference generation algorithm is configured for the issuer.\nThis reference is unique per issuer and may be used to carry out research and find information." } }, "title": "CardIdentifier" }, "DetailedFeeAmount": { "type": "object", "properties": { "percentage": { "type": "string", "description": "Percentage used for amount calculation of the covered risk" }, "name": { "type": "string", "description": "Name of the covered risk" }, "feeAmount": { "description": "Amount / Currency / Exponent of the covered risk", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "externalOperationCode": { "type": "string", "description": "External operation code the covered risk" }, "includeInOtherDetailFeeAmount": { "type": "boolean", "description": "Indicates if the detail fee amount is part of another detail fee amount" } }, "title": "DetailedFeeAmount" }, "DisputeFolderIdentifier": { "type": "object", "required": [ "disputeFolderReference" ], "properties": { "disputeFolderReference": { "type": "string", "description": "The Dispute Folder Reference \nPresent if \"Dispute Folder\" creation is successful. \nThe value of this field is constructed by algorithm. Example for IDM4Sempris, it is like this : D-V-6500-1234-1 (D = for Dispute / M = MCI , V= VISA / 6500 = issuerId / 1234 = YDDD = julien date / 1 = the sequence is constructed under (D-scheme Id- Issuer Id))" }, "issuerDisputeExternalReference": { "type": "string", "description": "The issuer Dispute External Reference, Present if provided in the request." } }, "title": "DisputeFolderIdentifier" }, "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" }, "LodgingInformation": { "type": "object", "properties": { "businessFormatCode": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Business Format Code (Value: CA); POS: 17-18." }, "noShowIndicator": { "type": "string", "description": "The fields represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Lodging No-Show Indicator; POS 27.\nMCI mapping is the following: PDS 0690. PDS 0690 (No Show Indicator) provides an indicator noting that the individual did not show up after making a reservation for a vehicle or lodging." }, "extraCharges": { "type": "string", "description": "The fields represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Lodging Extra Charges; POS 28–33." }, "checkInDate": { "type": "string", "description": "The fields represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Lodging Check-in Date (YYMMDD); POS 38-43.\nMCI mapping is the following: PDS 0574. PDS 0574 (Arrival Date) contains the cardholder check-in date (YYMMDD)." }, "dailyRoomRate": { "type": "string", "description": "The fields represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Daily Room Rate; POS 44-55.\nMCI mapping is the following: PDS 0580. PDS 0580 (Room Rate) contains the daily room charges exclusive of taxes and fees. This PDS consists of two subfields:\n1. Room Rate Amount; POS: 1-12\n2. Room Rate Exponent; POS: 13" }, "totalTax": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Total Tax; POS 56-67.\nMCI mapping is the following: PDS 0597. PDS 0597 (Total Tax Amount) contains the total amount of sales tax or value added tax (VAT) on the total purchase amount." }, "prepaidExpenses": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Prepaid Expenses; POS 68-79.\nMCI mapping is the following: PDS 0704. PDS 0704 (Prepaid Expenses) provides the amount of deposit or other prepaid amounts for the lodging stay." }, "foodBeverageCharge": { "type": "string", "description": "The field represents additional data from VISA clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Food/Beverage Charges; POS 80-91." }, "folioCashAdvances": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Folio Cash Advances; POS 92-103.\nMCI mapping is the following: PDS 0706. PDS 0706 (Cash Advances) provides the amount of cash received during the lodging stay." }, "totalRoomNights": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Room Nights; POS 104-105.\nMCI mapping is the following: PDS 0703. PDS 0703 (Total Room Nights) provides the total number of nights for which a room was contracted during a lodging stay." }, "totalRoomTax": { "type": "string", "description": "The field represents additional data from VISA and MCI clearing file addendum.\nVISA mapping is the following: TC05, TCR3 - INDUSTRY-SPECIFIC DATA - LODGING; Field: Total Room Tax; POS 106-117.\nMCI mapping is the following: PDS 0581. PDS 0581 (Total Room Tax) contains tax amount information such as the daily room tax, occupancy tax, energy tax, and tourist tax amounts. This PDS consists of three subfields:\n1. Total Room Tax Amount; POS: 1-12\n2. Total Room Tax Exponent; POS: 13\n 3. Total Room Tax Sign; POS: 14" } }, "title": "LodgingInformation" }, "LoyaltyPoint": { "type": "object", "properties": { "unit": { "type": "string", "description": " Unit in which the loyalty points are expressed. Defined by Bonus/Loyalty program (can be currency, points...) (optional)." }, "cumulatedValue": { "type": "integer", "format": "int64", "description": "Total number of loyalty points (optional)." } }, "title": "LoyaltyPoint" }, "Operation": { "type": "object", "required": [ "operationIdentifier", "externalOperationDate", "externalOperationReference", "externalOperationServicePoster", "operationKind", "postingDate", "reversal", "postingAccountIdentifier", "status" ], "properties": { "issuerId": { "type": "string", "description": "Issuer identifier (unique per platform)" }, "operationIdentifier": { "description": "Internal identifier associated to the transaction to which one this transaction is linked. 16-digit incremental number (1000000000000001)\nEx: TRANSACTION_FEE linked to FP (Parent)", "allOf": [ { "$ref": "#/$defs/OperationIdentifier" } ] }, "acquirerReferenceData": { "type": "string", "description": "Acquirer Reference Number (ARN) associated to the transaction\n- MCI : DE 031 - Acquirer Reference Data\n- VISA : TCR0 Acquirer Reference Number pos. 27-49" }, "cardAcceptorCity": { "type": "string", "description": "Card Acceptor Location (City) associated to the transaction\n\nMCI : DE 043 s3 - Card Acceptor City\nVISA : TCR0 - Merchant City" }, "cardAcceptorCountry": { "type": "string", "description": "Card Acceptor Country Code associated to the transaction\n\nMCI : DE 043 s6 - Card Acceptor Country Code\nVISA : TCR0 - Merchant Country" }, "cardAcceptorZipCode": { "type": "string", "description": "Card Acceptor ZIP Code associated to the transaction\n\nMCI : DE 043 s4 - Card Acceptor Postal (ZIP) Code\nVISA : TCR0 - Merchant zip code" }, "cardScheme": { "type": "string", "description": "Short name of national or international network, if implicated." }, "eCommerce": { "type": "boolean", "description": "Ecommerce indicator" }, "cardAcceptorName": { "type": "string", "description": "Complete Card Acceptor Name / Location (Merchant) associated to the transaction\n\nMCI : DE 043 s1 to s6 - Card Acceptor Name/Location\nVISA : TCR0" }, "description": { "type": "string", "description": "Textual description of the current operation. Can contain a free text that can be used when the operation is presented to the Customer" }, "externalOperationCode": { "type": "string", "description": "Value per operation type posted to an Account determined by our system according to specific Issuer configuration" }, "feeType": { "type": "string", "description": "Type of fee used to create the current operation. Mandatory if the operation is a fee.\nIn the case fee is managed within our system, the complete value list is shared with the issuer and can be for example \"ACCOUNT_SETUP_FEE\", \"TRANSACTION_FEE\". \"EVENT_FEE\",\"CARD_FEE\"." }, "maskedPan": { "type": "string", "description": "Refer to Card.maskedPan" }, "merchantCategoryCode": { "type": "string", "description": "Classifies the type of business applicable to the card acceptor" }, "balanceAdjustmentReason ": { "type": "string", "description": "The reason why the balance adjustment has been requested (conditional)\nMandatory when balance adjustment.\nAllowed value list depends on the issuer configuration" }, "exchangeRate": { "type": "number", "format": "double", "description": "Used to realize the conversion between the original currency and the account currency" }, "exchangeRateDate": { "type": "string", "format": "date-time", "description": "The date of the exchange operation" }, "exchangeRateSource": { "type": "string", "description": "The source of the exchange rate information. Rate source name or scheme used." }, "operationCode": { "type": "string", "description": "Transaction category defined by our system describing the current operation (only for Scheme transaction and load operation). Values:\nCASH_ADVANCE,\nCASH_BACK\nCASH_WITHDRAWAL,\nCREDIT,\nFUND_TRANSFER,\nNORMAL_PURCHASE,\nREFUND_PURCHASE\nLOAD" }, "operationKind": { "type": "string", "description": "Indicates the operation class.\nValues:\nBAL (balance transfer)\nFEE (fee operation)\nINT (interest operation)\nLOAD (load operation)\nPAY (payment operation)\nRMB (reimbursement operation)\nTRN (transaction operation from scheme)\nDISPUTE (refund / redebit operation triggered from our Dispute module)\nRST_BAL (reset balance operation)\nSUBPAYOP (apportionment operation)\nWRITE_OFF (write off - esp account closing)\nCRD_INST (instalment operation)\nCRD_INST_INIT (Instalment credit operation)\nBAL_ADJ (balance adjustment operation)" }, "postingDate": { "type": "string", "format": "date-time", "description": "Date and Time when the transaction is posted to the account" }, "reconciliationAmount": { "description": "Transaction amount provided by the scheme in the currency agreed between the scheme and the issuer/WL. \nMandatory for 1st presentment.\nScheme Reconciliation Amount / Currency / Exponent\n- MCI: DE 005 / DE 050 / associated PDS 0148\n- VISA: Destination Amount / Destination Currency", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "referenceAmount": { "description": "Amount impacting the Cardholder account", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "reversal": { "type": "boolean", "description": "This flag indicates if this operation is a reversal (true) or not (false)" }, "reversalReason": { "type": "string", "description": "The reason why the reversal has been created. Determined by the calling service depending information of the original message (conditional) Mandatory, if the operation is reversal" }, "subFeeType": { "type": "string", "description": "Sub Type of internal fee created and impacting the Cardholder Account (free text)" }, "frequency": { "description": "Free text describing the frequency of the operation performed (daily, monthly, yearly...) (optional)", "type": "string" }, "transactionAmount": { "description": "DE 4 (Amount, Transaction) is the amount of funds the cardholder requested in the currency appearing on the transaction information document (TID), which may be the acquirer’s local currency or a currency acceptable to the cardholder and card acceptor that the acquirer supports, exclusive of PDS 0146 (Amounts, Transaction Fee). If no currency is identified on the TID, the transaction is deemed to have taken place in the currency that is legal tender at the point of interaction.\nAmount of the transaction. This field contains numerics. Two decimal positions are implied. If the Original Source Currency code is 392 (Japanese Yen), any value other than zero after the decimal produces an Invalid Amount error.\nMCI DE 004\nVISA TCR0\nThe value can be both positive and negative.", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "transactionDate": { "type": "string", "format": "date-time", "description": "Transaction Date in Merchant site when transaction has been performed\nE.g. : 2023-02-04T00:00:00+01:00\n- MCI: DE 012 (Date and Time, Local Transaction)\n- VISA : TCR0 pos. 58-61" }, "valueDate": { "type": "string", "format": "date-time", "description": "The date the operation impacts balances or counters. If not set, the valueDate will be set to operationDate if operationDate is not in the past, today otherwise (conditional)" }, "walletId": { "type": "string", "description": "Indicates the identifier of the wallet (Apple Pay or other token requestor) used for the operation" }, "authorizationBusinessCaseIdentifier": { "description": "Internal identifier provided by the WLP Front Office in each Authorisation Message received. Only present if operation (first presentment) matched with an authorization.", "allOf": [ { "$ref": "#/$defs/AuthorizationBusinessCaseIdentifier" } ] }, "cardIdentifier": { "description": "Refer to Card.cardIdentifier", "allOf": [ { "$ref": "#/$defs/CardIdentifier" } ] }, "disputeFolderIdentifier": { "description": "Refer to disputeFolderIdentifier object description (technical field)", "allOf": [ { "$ref": "#/$defs/DisputeFolderIdentifier" } ] }, "panTokenIdentifier": { "description": "Token Requestor Identifier value associated to the transaction\n- MCI : PDS 0059 - Token Requestor ID\n- VISA : TCR5 Token Requestor ID pos. 149-159", "allOf": [ { "$ref": "#/$defs/PanTokenIdentifier" } ] }, "externalOperationDate": { "type": "string", "format": "date-time", "description": "The triplet (externalOperationDate, externalOperationReference, externalOperationServicePoster) uniquely identifies the operation in our system.\nThe date is provided by the caller and must not be modified in case of reprocess (idempotency)" }, "externalOperationReference": { "type": "string", "description": "The triplet (externalOperationDate, externalOperationReference, externalOperationServicePoster) uniquely identifies the operation in our system.\nThe reference is provided by the caller and must not be modified in case of reprocess (idempotency)" }, "externalOperationServicePoster": { "type": "string", "description": "The triplet (externalOperationDate, externalOperationReference, externalOperationServicePoster) uniquely identifies the operation in our system.\nThe Service Poster depends on the caller. This is a free text. When the value is ITP, OPC, IDM, CMS, CAS, WLP-CAS or WLP_CAS, operations are considered \"internal\"." }, "businessCaseId": { "type": "string", "description": "DEPRECATED" }, "pointOfServiceDataCode": { "type": "string", "description": "DEPRECATED" }, "travelInformation": { "description": "DEPRECATED", "allOf": [ { "$ref": "#/$defs/TravelInformation" } ] }, "pan": { "type": "string", "description": "Refer to Card.pan (optional)" }, "panReference": { "type": "string", "description": "Pan reference only if the card is associated to the operation" }, "acquisitionMaterial": { "type": "string", "description": "Only for scheme transaction.\nType of material used to realize the operation.\nPossible values:\nATM, POS, INTERNET, MANUAL, VOICE_PHONE, UNATTENDED_TERMINAL, MOBILE, UNKNOWN", "enum": [ "ATM", "POS", "VOICE_PHONE", "MANUAL", "UNATTENDED_TERMINAL", "MOBILE", "INTERNET", "UNKNOWN" ] }, "cardAcceptorIdCode": { "type": "string", "description": "Identifies the card acceptor ID assigned by the acquirer. This ID must represent a unique identifier for each merchant name/location within the acquiring BIN.\nCard Acceptor (Merchant) Identifier associated to the transaction\n- MCI : DE 042 - Card Acceptor ID Code\n- VISA : TCR5 - Acquirer's Business ID" }, "entryMode": { "type": "string", "description": "Precise how the card information have been read. Conversion of the native fields.\nPossible values :\nUNKNOWN\nOCR: Optical Character Reader\nMANUAL\nMAGSTRIPE: Magnetic Stripe read\nCONTACTLESS: Contactless read (called proximity payment or Mobile Chip system)\nCHIP: Chip read\nBARCODE: Bar Code read" }, "approvalCode": { "type": "string", "description": "Authorization Approval Code associated to the transaction\n* MCI : DE 038 - Approval Code\n* VISA : TCR0 Authorization Code pos. 152-157" }, "authorization": { "description": "Data retrieved from the authorization matched to the transaction.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "allOf": [ { "$ref": "#/$defs/OperationAuthorization" } ] }, "pointOfSaleEnvironment": { "type": "string", "description": "Recurring transaction indicator, indicating that the cardholder\nand merchant have agreed to periodic billing for goods and services, such as\nutility bills, internet connection, and magazine subscriptions.\nValues:\nSpace = default\nR = Recurring Payment Transaction\nI = Installment Payment\nC = Credential on File" }, "mailPhoneEcommerceAndPaymentIndicator": { "type": "string", "description": "Mail Phone Ecommerce and Payment Indicator indicates if transaction was initiated as mail order, telephone order or electronic commerce. \nUsed in Visa interchange validation and determination. \nRequired in input for Visa transactions. \nBase II mapped from Draft data TCR1 position 116. \nDomain: \nSpace - Field not applicable or acquirer did not specify. \n1 - Mail/Phone Order (MO/TO). \n2 - Recurring transaction (valid only for U.S. acquired transactions). \n3 - Instalment payment. \n4 - Unknown classification/other mail order. \n5 - Secure Electronic Commerce Transaction. \n6 - Non-Authenticated Security Transaction at a 3-D Secure-capable merchant, and merchant attempted to authenticate the cardholder using 3-D secure. \n7 - Non-Authenticated Security Transaction \n8 - Non-secure transaction. \n9 - For optional regional use only." }, "posDataCode": { "type": "string", "description": "DEPRECATED" }, "pointOfService": { "description": "Represents series of codes that identify terminal capability, terminal environment, and point-of interaction (POI) security data (both for VISA and MCI)", "allOf": [ { "$ref": "#/$defs/PointOfService" } ] }, "acquirerId": { "description": "VISA mapping is the following: TC05, TCR0; Field: Acquirer Reference Number POS 27-49. Should be taken positions 2-7 of this field (Acquirer BIN).\nMCI mapping is the following: DE 31 Acquirer Reference Data. Should be taken positions 2-7 of this field.", "type": "string" }, "destinationId": { "description": "VISA mapping is the following: Determined based on transaction data.\nMCI mapping is the following: DE 93 transaction Destination Institution ID code.", "type": "string" }, "detailedFeeAmounts": { "type": "array", "description": "Details of the insurance fee when this latter is a percentage of the account balance and covers several risks e.g. Payment protection insurance covering Unemployment, Incapacity for work and disability/life. \nEach detail amount represents a part of the insurance fee for a given risk and contains the following information : the covered risk (name), the related amount, the percentage applied on the account balance, the related external operation code.", "items": { "$ref": "#/$defs/DetailedFeeAmount" } }, "loyaltyPoint": { "description": "Used when the operation has loyalty points", "allOf": [ { "$ref": "#/$defs/LoyaltyPoint" } ] }, "schemeTransactionIdentifier": { "type": "string", "description": "This field will contain the transaction identifier, a unique value that schemas assign to each transaction. It can be used to maintain an audit trailthroughout the life cycle of the transaction and all related transactions, such as reversals, adjustments, confirmations, and dispute financials\nThe corresponding mapping is:\n- VISA: TC05 TCR5 payment service, pos 5-19 \n- MCI: DE 063 - Transaction Life Cycle ID, subfield 2 - Trace ID" }, "transactionType": { "type": "string", "description": "DEPRECATED" }, "rewardedOperationIdentifier": { "description": "Internal identifier associated to the transaction linked to a Bonus operation 16-digit incremental number (1000000000000001). Used only if a Bonus operation is related to.", "allOf": [ { "$ref": "#/$defs/OperationIdentifier" } ] }, "lodgingInformation": { "description": "The list of lodging information parameters from the clearing file.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "allOf": [ { "$ref": "#/$defs/LodgingInformation" } ] }, "carRentalInformation": { "description": "The list of car rental information parameters from the clearing file.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "allOf": [ { "$ref": "#/$defs/CarRentalInformation" } ] }, "airItineraryInformation": { "description": "The list of air itinerary parameters from the clearing file.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "allOf": [ { "$ref": "#/$defs/AirItineraryInformation" } ] }, "disputed": { "type": "boolean", "description": "The attribute shows weather the operation was disputed or not" }, "printOnStatement": { "type": "boolean", "description": "Flag indicating whether to include some manual operations in the statements. Defaul values - yes\nValues: \nyes, \nno" }, "cardAcceptorAddress": { "type": "string", "description": "The attribute represents card acceptor address received from scheme" }, "cardAcceptorStateProvinceRegionCode": { "type": "string", "description": "The attribute represents card acceptor state province region code received from scheme" }, "postingAccountIdentifier": { "description": "Identifier of the account on which the operation was posted", "allOf": [ { "$ref": "#/$defs/AccountIdentifier" } ] }, "status": { "type": "string", "description": "Status of the transaction \n* PROCESSED\n* IN_ERROR\n* CAS_IN_DISPUTE (when the transaction is disputed)\n* CAS_PENDING" }, "operationType": { "type": "string", "description": "Defines the operation type that is configured in 'Operation type tree' in the Issuer Configuration" }, "parentOperationIdentifier": { "description": "Internal identifier associated to the transaction to which one this transaction is linked. 16-digit incremental number (1000000000000001)\nEx: TRANSACTION_FEE linked to FP (Parent)", "allOf": [ { "$ref": "#/$defs/OperationIdentifier" } ] }, "virtualCardService": { "description": "Data related to Virtual Card Service. These are the ones used by Virtual Card Engine in scope of Virtual Card Service program.\n_Embedded property, only filled when available for the endpoint and explicitly requested in the 'embed' query parameter._", "allOf": [ { "$ref": "#/$defs/VirtualCardService" } ] }, "virtualServiceCardReference": { "type": "string", "description": "Virtual service card reference of the operation generated by our system" }, "origin": { "type": "string", "description": "Origin used during the creation of the operation." }, "username": { "type": "string", "description": "Name of the user who initiated the operation" }, "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." }, "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." }, "specificFields": { "type": "object", "description": "List of external data {\"label\":\"value\"}, separated by a \",\", related to an operation that can be provided by e.g. the issuer for information or for usage by other systems. Example : {\"label1\":\"value1\",\"label2\":\"value2\"} Those provided data have no impact on our system business processes.", "additionalProperties": { "type": "string" } }, "bonusProgramReference": { "description": "The issuer must provide the reference of the Bonus/Loyalty program for which the reward is applied.", "type": "string" }, "cashAmount": { "description": "Additional Amount / Currency / Exponent for Cash Back transaction amount\n* MCI : DE 054 s2 = 40 - Amount, Cash Back\n* VISA : TCR1 pos. 158-166 Cashback", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "surchargeAmount": { "description": "Additional Amount / Currency / Exponent for surcharge transaction amount in Transaction Currency", "allOf": [ { "$ref": "#/$defs/Amount" } ] }, "operationHierarchyReference": { "type": "string", "description": "Identifier of the original operation in our system" } }, "title": "Operation" }, "OperationAuthorization": { "type": "object", "properties": { "transactionDate": { "type": "string", "format": "date-time", "description": "The date and time on which the transaction was approved. Data is retrieved from the matched authorization transaction." } }, "title": "OperationAuthorization" }, "OperationIdentifier": { "type": "object", "required": [ "operationId" ], "properties": { "operationId": { "type": "string", "description": "Internal operation identifier. 16-digit incremental number" } }, "title": "OperationIdentifier" }, "PanTokenIdentifier": { "type": "object", "required": [ "panTokenReference" ], "properties": { "panTokenReference": { "type": "string", "description": "Pan Token Reference" } }, "title": "PanTokenIdentifier" }, "PointOfService": { "type": "object", "properties": { "entryModePan": { "type": "string", "description": "VISA TCR0 PosEntryMode." }, "entryModePin": { "type": "string", "description": "VISA TCR0 CardholderIDMethod." }, "conditionCode": { "type": "string", "description": "VISA. Field equals to \"02\" if PosEntryMode is populated, \"00\" if not populated." }, "posTerminalCapability": { "type": "string", "description": "VISA TCR0 PosTerminalCapability" }, "cardDataInputCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 1 indicates the set of methods supported by the terminal for the input of account number, card, or mobile device data." }, "cardholderAuthenticationCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 2 describes the capability of the terminal device to support/accept authentication data." }, "cardCaptureCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 3 indicates whether the terminal has card capture capabilities." }, "terminalOperatingEnvironment": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 4 indicates whether the card acceptor is attending the terminal and the location of the terminal." }, "cardholderPresentData": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 5 indicates whether the cardholder is present at the point of service and explains the condition if the cardholder is not present." }, "cardPresentData": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 6 indicates if the card is present at the point of service." }, "cardDataInputMode": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 7 indicates the method used for PAN entry to initiate a transaction." }, "cardholderAuthenticationMethod": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 8 indicates the method by which the cardholder’s identity was verified at the point of service." }, "cardholderAuthenticationEntity": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 9 indicates the entity through which the cardholder’s identity was verified at the point of service." }, "cardDataOutputCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 10 indicates the ability of the terminal to write or output data to a card." }, "terminalDataOutputCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 11 indicates the print and display capabilities of the terminal." }, "pinCaptureCapability": { "type": "string", "description": "MCI DE 22 (Point of Service [POS] Entry Mode), subfield 12 indicates the maximum number of PIN characters that the POS terminal can capture." } }, "title": "PointOfService" }, "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" }, "TravelDetail": { "type": "object", "properties": { "flightNumber": { "type": "string", "description": "flightNumber (customer travel details)" }, "originCity": { "type": "string", "description": "originCity (customer travel details)" }, "destinationCity": { "type": "string", "description": "destinationCity (customer travel details) " } }, "title": "TravelDetail" }, "TravelDetailLeg": { "type": "object", "properties": { "flightNumber": { "type": "string", "description": "Number of the airline flight to be taken. The mapping to each leg from VISA and MCI file is present in general specification document" }, "carrier": { "type": "string", "description": "Code indicating name of carrier. The mapping to each leg from VISA and MCI file is present in general specification document" }, "class": { "type": "string", "description": "Indicates service class (first class, business class, etc.). The mapping to each leg from VISA and MCI file is present in general specification document" }, "stopOver": { "type": "string", "description": "Indicates whether a stopover is allowed on this ticket. The mapping to each leg from VISA and MCI file is present in general specification document" }, "destination": { "type": "string", "description": "Indicates destination city's airport code. The mapping to each leg from VISA and MCI file is present in general specification document" }, "fareCode": { "type": "string", "description": "Fare basis code used for the trip. The mapping to each leg from VISA and MCI file is present in general specification document" } }, "title": "TravelDetailLeg" }, "TravelInformation": { "type": "object", "properties": { "passengerName": { "type": "string", "description": "passengerName (customer travel information) " }, "ticketNumber": { "type": "string", "description": "ticketNumber (customer travel information) " }, "travelDetailList": { "type": "array", "description": "List of TravelDetail ", "items": { "$ref": "#/$defs/TravelDetail" } } }, "title": "TravelInformation" }, "VirtualCardService": { "type": "object", "properties": { "virtualServiceCardExternalReference": { "type": "string", "description": "The external reference calculated for VCC by the Virtual Card Engine (VCE)" }, "issuerCompanyExternalReference": { "type": "string", "description": "This attribute will represent a unique identifier of company (the corporate customer of the Issuer)" }, "virtualServiceCardNumber": { "type": "string", "description": "Virtual Service Card Number of the operation (returned only if the user is allowed to see the clear Virtual Service Card Number). Also referred as VCC PAN" }, "maskedVirtualServiceCardNumber": { "type": "string", "description": "Masked Virtual Service Card Number. This is the VCC (Virtula Credit Card) PAN in masked format" }, "virtualServicesFields": { "type": "object", "description": "This attribute will return specific informative fields related to VCC (Virtual Credit Card) that the Virtual Card Engine will provide to the Issuing Back Office system,\nList of external data (label:value), separated by a \"|'\", related to a virtual card that can be provided by e.g. the issuer for information or for usage by other systems.\nExample : label1:value|label2:value\nThose provided data have no impact on our system business processes.", "additionalProperties": { "type": "string" } } }, "title": "VirtualCardService" } } }