Files
adyen-openapi/yaml/TerminalAPI-v1.yaml
Adyen Automation b3e1d42132 spec release
2023-12-11 13:09:29 +01:00

3605 lines
108 KiB
YAML

openapi: 3.1.0
info:
version: '1'
title: Adyen Terminal API
description: The Adyen Terminal API lets you make payments, issue refunds, collect
shopper information, and perform other shopper-terminal interactions using a payment
terminal supplied by Adyen.
servers:
- description: with cloud integration
url: https://terminal-api-test.adyen.com/sync
- description: with cloud integration
url: https://terminal-api-test.adyen.com/async
- description: with local-hosting
url: <local-terminal-IP-address>
paths:
/login:
post:
description: It conveys Information related to the session (period between a
Login and the following Logout) to process. Content of the Login Request message.
summary: Login Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LoginRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LoginResponse'
description: It conveys Information related to the Login to process. Content
of the Login Response message.
/logout:
post:
description: Empty. Content of the Logout Request message.
summary: Logout Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LogoutRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LogoutResponse'
description: It conveys the result of the Logout. Content of the Logout
Response message.
/enableservice:
post:
description: It conveys the services that will be enabled for the POI Terminal
without the request of the Sale System, and a possible invitation for the
Customer to start the services. Content of the Enable Service Request message.
summary: EnableService Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnableServiceRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EnableServiceResponse'
description: It conveys the result of the Enable Service processing. Content
of the Enable Service Response message.
/admin:
post:
description: Empty. Content of the Custom Admin Request message.
summary: Admin Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AdminRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AdminResponse'
description: It conveys the result of the Custom Admin. Content of the Custom
Admin Response message.
/payment:
post:
description: Request sent to terminal to initiate payment. It conveys Information
related to the Payment transaction to process. Content of the Payment Request
message.
summary: Payment Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentResponse'
description: It conveys Information related to the Payment transaction processed
by the POI System. Content of the Payment Response message.
/cardacquisition:
post:
description: It conveys Information related to the payment and loyalty cards
to read and analyse. This message pair is usually followed by a message pair
(e.g. payment or loyalty) which refers to this Card Acquisition message pair.
Content of the Card Acquisition Request message.
summary: CardAcquisition Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CardAcquisitionRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CardAcquisitionResponse'
description: It conveys Information related to the payment and loyalty cards
read and processed by the POI System and entered by the Customer. Content
of the Card Acquisition Response message.
/loyalty:
post:
description: It conveys Information related to the Loyalty transaction to process.
Content of the Loyalty Request message.
summary: Loyalty Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LoyaltyRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LoyaltyResponse'
description: It conveys Information related to the Loyalty transaction processed
by the POI System. Content of the Loyalty Response message.
/storedvalue:
post:
description: It conveys Information related to the Stored Value transaction
to process. Content of the Stored Value Request message.
summary: StoredValue Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StoredValueRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/StoredValueResponse'
description: It conveys Information related to the Stored Value transaction
processed by the POI System. Content of the Stored Value Response message.
/reversal:
post:
description: It conveys Information related to the reversal of a previous payment
or a loyalty transaction. Content of the Reversal Request message.
summary: Reversal Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReversalRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ReversalResponse'
description: It conveys Information related to the reversal processed by
the POI System. Content of the Reversal Response message.
/reconciliation:
post:
description: It conveys Information related to the Reconciliation requested
by the Sale System. Content of the Reconciliation Request message.
summary: Reconciliation Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReconciliationRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ReconciliationResponse'
description: It conveys Information related to the Reconciliation transaction
processed by the POI System. Content of the Reconciliation Response message.
/gettotals:
post:
description: It conveys information from the Sale System related to the scope
and the format of the totals to be computed by the POI System. Content of
the Get Totals Request message.
summary: GetTotals Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetTotalsRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GetTotalsResponse'
description: It conveys Information related to the Reconciliation transaction
processed by the POI System. Content of the Reconciliation Response message.
/balanceinquiry:
post:
description: It conveys Information related to the account for which a Balance
Inquiry is requested. Content of the Balance Inquiry Request message.
summary: BalanceInquiry Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BalanceInquiryRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/BalanceInquiryResponse'
description: It conveys the balance and the identification of the associated
payment, loyalty or stored value account. Content of the Balance Inquiry
Response message.
/transactionstatus:
post:
description: It conveys Information requested for status of the last or current
Payment, Loyalty or Reversal transaction. Content of the TransactionStatus
Request message.
summary: TransactionStatus Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TransactionStatusRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TransactionStatusResponse'
description: It conveys Information related to the status of the last or
current Payment, Loyalty or Reversal transaction. Content of the TransactionStatus
Response message.
/diagnosis:
post:
description: It conveys Information related to the target POI for which the
diagnosis is requested. Content of the Diagnosis Request message.
summary: Diagnosis Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DiagnosisRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/DiagnosisResponse'
description: It conveys the result of the requested diagnosis and a possible
message to display on a logical device. Content of the Diagnosis Response
message.
/display:
post:
description: It conveys the data to display and the way to process the display.
It contains the complete content to display. It might contain an operation
(the DisplayOutput element) per Display Device type. Content of the Display
Request message.
summary: Display Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DisplayRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/DisplayResponse'
description: It conveys the result of the display, parallel to the message
request, except if response not required and absent. Content of the Display
Response message.
/input:
post:
description: It conveys data to display and the way to process the display,
and contains the complete content to display. In addition to the display on
the Input Device, it might contain an operation (the DisplayOutput element)
per Display Device type. Content of the Input Request message.
summary: Input Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InputRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/InputResponse'
description: It conveys the result of the input or the result of the outputs,
parallel to the message request, except if response not required and absent.
Content of the Input Response message.
/print:
post:
description: It conveys the data to print and the way to process the print.
It contains the complete content to print. Content of the Print Request message.
summary: Print Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PrintRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PrintResponse'
description: It conveys the result of the print, parallel to the message
request, except if response not required and absent. Content of the Print
Response message.
/cardreaderapdu:
post:
description: It contains the APDU request to send to the chip of the card, and
a possible invitation message to display on the CashierInterface or the CustomerInterface.
Content of the Card Reader APDU Request message.
summary: CardReaderAPDU Request
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CardReaderAPDURequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CardReaderAPDUResponse'
description: It contains the result of the requested service, APDU response
sent by the chip of the card in response to the APDU request. Content
of the Card Reader APDU Response message.
components:
schemas:
TerminalEnvironment:
type: string
enum:
- Attended
- SemiAttended
- Unattended
GenericProfile:
type: string
enum:
- Basic
- Extended
- Standard
ServiceProfiles:
type: array
items:
type: string
enum:
- Batch
- CardReader
- Communication
- Loyalty
- OneTimeRes
- PIN
- Reservation
- Sound
- StoredValue
- Synchro
SaleCapabilities:
type: array
items:
type: string
enum:
- CashierDisplay
- CashierError
- CashierInput
- CashierStatus
- CustomerAssistance
- CustomerDisplay
- CustomerError
- CustomerInput
- EMVContactless
- ICC
- MagStripe
- POIReplication
- PrinterDocument
- PrinterReceipt
- PrinterVoucher
TokenRequestedType:
type: string
enum:
- Customer
- Transaction
CustomerOrderReq:
type: array
items:
type: string
enum:
- Both
- Closed
- Open
TrackFormat:
type: string
enum:
- AAMVA
- ISO
EntryMode:
type: array
items:
type: string
enum:
- Contactless
- File
- ICC
- Keyed
- MagStripe
- Manual
- Mobile
- RFID
- Scanned
- SynchronousICC
- Tapped
Result:
type: string
enum:
- Failure
- Partial
- Success
ErrorCondition:
type: string
enum:
- Aborted
- Busy
- Cancel
- DeviceOut
- InProgress
- InsertedCard
- InvalidCard
- LoggedOut
- MessageFormat
- NotAllowed
- NotFound
- PaymentRestriction
- Refusal
- UnavailableDevice
- UnavailableService
- UnreachableHost
- WrongPIN
GlobalStatus:
type: string
enum:
- Busy
- Maintenance
- OK
- Unreachable
PrinterStatus:
type: string
enum:
- NoPaper
- OK
- OutOfOrder
- PaperJam
- PaperLow
POICapabilities:
type: array
items:
type: string
enum:
- CashHandling
- CashierDisplay
- CashierError
- CashierInput
- CustomerDisplay
- CustomerError
- CustomerInput
- EMVContactless
- ICC
- MagStripe
- PrinterDocument
- PrinterReceipt
- PrinterVoucher
Device:
type: string
enum:
- CashierDisplay
- CashierInput
- CustomerDisplay
- CustomerInput
InfoQualify:
type: string
enum:
- CustomerAssistance
- Display
- Document
- Error
- Input
- POIReplication
- Receipt
- Sound
- Status
- Voucher
OutputFormat:
type: string
enum:
- BarCode
- MessageRef
- Text
- XHTML
Color:
type: string
enum:
- Black
- Blue
- Cyan
- Green
- Magenta
- Red
- White
- Yellow
CharacterWidth:
type: string
enum:
- DoubleWidth
- SingleWidth
CharacterHeight:
type: string
enum:
- DoubleHeight
- HalfHeight
- SingleHeight
CharacterStyle:
type: string
enum:
- Bold
- Italic
- Normal
- Underline
Alignment:
type: string
enum:
- Centred
- Justified
- Left
- Right
BarcodeType:
type: string
enum:
- Code128
- Code25
- EAN13
- EAN8
- PDF417
- QRCode
- UPCA
MenuEntryTag:
type: string
description: Characteristics related to the selection of a menu entry.
enum:
- NonSelectable
- NonSelectableSubMenu
- Selectable
- SubMenu
TransactionAction:
type: string
description: Action to realise on a transaction.
enum:
- AbortTransaction
- StartTransaction
ServicesEnabled:
type: array
items:
type: string
enum:
- CardAcquisition
- Loyalty
- Payment
UnitOfMeasure:
type: string
enum:
- Case
- Centilitre
- Centimetre
- Foot
- Gram
- Inch
- Kilogram
- Kilometre
- Litre
- Meter
- Mile
- Other
- Ounce
- Pint
- Pound
- Quart
- UKGallon
- USGallon
- Yard
PaymentType:
type: string
enum:
- CashAdvance
- CashDeposit
- Completion
- FirstReservation
- Instalment
- IssuerInstalment
- Normal
- OneTimeReservation
- PaidOut
- Recurring
- Refund
- UpdateReservation
PaymentInstrumentType:
type: string
enum:
- Card
- Cash
- Check
- Mobile
- StoredValue
TypeCode:
type: string
enum:
- Company
- Personal
StoredValueAccountType:
type: string
enum:
- GiftCard
- Other
- PhoneCard
IdentificationType:
type: string
enum:
- AccountNumber
- BarCode
- ISOTrack2
- PAN
- PhoneNumber
LoyaltyUnit:
type: string
enum:
- Monetary
- Point
IdentificationSupport:
type: string
enum:
- HybridCard
- LinkedCard
- LoyaltyCard
- NoCard
InstalmentType:
type: string
enum:
- DeferredInstalments
- EqualInstalments
- InequalInstalments
PeriodUnit:
type: string
enum:
- Annual
- Daily
- Monthly
- Weekly
LoyaltyHandling:
type: string
enum:
- Allowed
- Forbidden
- Processed
- Proposed
- Required
ForceEntryMode:
type: array
items:
type: string
enum:
- CheckReader
- Contactless
- File
- ICC
- Keyed
- MagStripe
- Manual
- RFID
- Scanned
- SynchronousICC
- Tapped
DocumentQualifier:
type: string
enum:
- CashierReceipt
- CustomerReceipt
- Document
- Journal
- SaleReceipt
- Voucher
AuthenticationMethod:
type: array
items:
type: string
enum:
- Bypass
- ManualVerification
- MerchantAuthentication
- OfflinePIN
- OnlinePIN
- PaperSignature
- SecureCertificate
- SecureNoCertificate
- SecuredChannel
- SignatureCapture
- UnknownMethod
LoyaltyTransactionType:
type: string
enum:
- Award
- AwardRefund
- Rebate
- RebateRefund
- Redemption
- RedemptionRefund
StoredValueTransactionType:
type: string
enum:
- Activate
- Duplicate
- Load
- Reserve
- Reverse
- Unload
ReversalReason:
type: string
description: Reason of the payment or loyalty reversal..
enum:
- CustCancel
- Malfunction
- MerchantCancel
- Unable2Compl
ReconciliationType:
type: string
enum:
- AcquirerReconciliation
- AcquirerSynchronisation
- PreviousReconciliation
- SaleReconciliation
TransactionType:
type: string
enum:
- Award
- CashAdvance
- CompletedDeffered
- CompletedReservation
- Credit
- Debit
- Declined
- Failed
- FirstReservation
- IssuerInstalment
- OneTimeReservation
- Rebate
- Redemption
- ReverseAward
- ReverseCredit
- ReverseDebit
- ReverseRebate
- ReverseRedemption
- UpdateReservation
TotalDetails:
type: array
items:
type: string
enum:
- OperatorID
- POIID
- SaleID
- ShiftNumber
- TotalsGroupID
AccountType:
type: string
enum:
- CardTotals
- Checking
- CreditCard
- Default
- EpurseCard
- Investment
- Savings
- Universal
MessageCategory:
type: string
enum:
- Abort
- Admin
- BalanceInquiry
- CardAcquisition
- CardReaderAPDU
- Diagnosis
- Display
- EnableService
- Event
- GetTotals
- Input
- InputUpdate
- Login
- Logout
- Loyalty
- Payment
- Print
- Reconciliation
- Reversal
- StoredValue
- TransactionStatus
MessageType:
type: string
enum:
- Notification
- Request
- Response
MessageClass:
type: string
enum:
- Device
- Event
- Service
EventToNotify:
type: string
description: Event the POI notifies to the Sale System.
enum:
- Abort
- BeginMaintenance
- CardInserted
- CardRemoved
- Completed
- CustomerLanguage
- EndMaintenance
- Initialised
- KeyPressed
- OutOfOrder
- Reject
- SaleAdmin
- SaleWakeUp
- SecurityAlarm
- Shutdown
- StopAssistance
InputCommand:
type: string
enum:
- DecimalString
- DigitString
- GetAnyKey
- GetConfirmation
- GetFunctionKey
- GetMenuEntry
- Password
- SiteManager
- TextString
ResponseMode:
type: string
enum:
- Immediate
- NotRequired
- PrintEnd
- SoundEnd
SoundFormat:
type: string
enum:
- MessageRef
- SoundRef
- Text
SoundAction:
type: string
enum:
- SetDefaultVolume
- StartSound
- StopSound
PINFormat:
type: string
enum:
- ISO0
- ISO1
- ISO2
- ISO3
PINRequestType:
type: string
description: Type of PIN Service.
enum:
- PINEnter
- PINVerify
- PINVerifyOnly
SaleToIssuerData:
type: object
description: The POI System receives this information and sends it to the Acquirer
for the Issuer without any change. Sale information intended for the Issuer.
properties:
StatementReference:
type: string
pattern: ^.+$
description: Information to print on the bank statement.
TrackData:
type: object
description: ISO 7813 - ISO 4909. Generic data structure for a card track,
used when the magstripe card reader is located on the Sale Terminal, or for
magstripe Card Reader device request. The data structure is also used to store
the line at the bottom of a bank check. Magnetic track or magnetic ink characters
line.
properties:
TrackNumb:
type: integer
minimum: 1
maximum: 3
default: 2
TrackFormat:
$ref: '#/components/schemas/TrackFormat'
TrackValue:
type: string
pattern: ^.{1,104}$
required:
- TrackValue
SensitiveCardData:
type: object
description: This data structure could be CMS protected (EnvelopedData). In
this case the data structure SensitiveCardData is replaced by the data structure
ProtectedCardData of type ContentInformationType. When this data is protected,
the exact content is unknown by the Sale System, and might include all the
information which are required by an external backup POI Server to make a
batch payment transaction in case of problem with the POI System. Sensitive
information related to the payment card, entered or read by the Sale System.
properties:
PAN:
type: integer
minimum: 8
maximum: 28
CardSeqNumb:
type: integer
minimum: 2
maximum: 3
description: if EntryMode is File, Keyed or Manual.
ExpiryDate:
type: integer
minimum: 4
maximum: 4
description: if EntryMode is File.
TrackData:
type: array
items:
$ref: '#/components/schemas/TrackData'
PaymentToken:
type: object
description: Surrogate of the PAN (Primary Account Number) of the payment card
to identify the payment mean of the customer. It allows, for a merchant,
to identify the customer.
properties:
TokenRequestedType:
$ref: '#/components/schemas/TokenRequestedType'
TokenValue:
type: string
pattern: ^.+$
ExpiryDateTime:
type: string
format: date-time
description: Expiry date and time. Limits the validity of a payment token.
required:
- TokenRequestedType
- TokenValue
CustomerOrder:
type: object
description: Customer order attached to a customer, recorded in the POI system. Allows
the management of customer orders by the POI, for instance in a multi-channel
or a click and collect sale transaction.
properties:
CustomerOrderID:
type: string
pattern: ^.+$
description: Additional and optional identification of a customer order.
SaleReferenceID:
type: string
pattern: ^.+$
OpenOrderState:
type: boolean
default: true
StartDate:
type: string
format: date-time
description: Date time of the beginning of an operation.
EndDate:
type: string
format: date-time
description: Date time of the end of an operation.
ForecastedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
CurrentAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Total amount of all completed transactions of a customer order.
Currency:
type: string
pattern: ^[A-Z]{3,3}$
description: Currency of a monetary amount.
AccessedBy:
type: string
pattern: ^.+$
AdditionalInformation:
type: string
pattern: ^.+$
description: Unqualified information.
required:
- SaleReferenceID
- StartDate
- ForecastedAmount
- CurrentAmount
AllowedProduct:
type: object
description: Product that is payable by the payment card. Product codes that
are payable by the payment card.
properties:
ProductCode:
type: integer
minimum: 1
maximum: 20
description: Product code of item purchased with the transaction.
EanUpc:
type: integer
description: Standard product code of item purchased with the transaction.
ProductLabel:
type: string
pattern: ^.+$
description: Product name of an item purchased with the transaction.
AdditionalProductInfo:
type: string
pattern: ^.+$
description: Additionl information related to the line item.
required:
- ProductCode
CardData:
type: object
description: Allows acquisition of the card data by the Sale System before the
Payment, CardAcquisition or BalanceInquiry request to the POI. It could also
be sent in the CardAcquisition response, to be processed by the Sale System.
Information related to the payment card used for the transaction.
properties:
PaymentBrand:
type: string
pattern: ^.+$
description: If card PAN is readable .
MaskedPan:
type: string
pattern: ^.+$
PaymentAccountRef:
type: string
pattern: ^.+$
EntryMode:
$ref: '#/components/schemas/EntryMode'
CardCountryCode:
type: integer
minimum: 3
maximum: 3
description: If available in the card.
ProtectedCardData:
type: string
description: SensitiveCardData protected by CMS EnvelopedData.
SensitiveCardData:
$ref: '#/components/schemas/SensitiveCardData'
AllowedProductCode:
type: array
items:
type: integer
minimum: 1
maximum: 20
AllowedProduct:
type: array
items:
$ref: '#/components/schemas/AllowedProduct'
PaymentToken:
$ref: '#/components/schemas/PaymentToken'
CustomerOrder:
type: array
items:
$ref: '#/components/schemas/CustomerOrder'
TransactionIDType:
type: object
description: Identification of a transaction for the Sale System or the POI
System.
properties:
TransactionID:
type: string
pattern: ^.+$
TimeStamp:
type: string
format: date-time
required:
- TransactionID
- TimeStamp
SaleTerminalData:
type: object
description: In the Login Request, if a Sale Terminal is involved in the login.
In other messages, when a logical device is out of order (SaleCapabilites),
or when the other data have changed since or were not in the Login. Information
related to the software and hardware feature of the Sale Terminal.
properties:
TotalsGroupID:
type: string
pattern: ^.{1,16}$
description: If present, default value for all transaction.
SaleData:
type: object
description: Data associated to the Sale System, with a particular value during
the processing of the payment by the POI, including the cards acquisition.
Data related to the Sale System.
properties:
OperatorID:
type: string
pattern: ^.+$
OperatorLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: if different from the Login.
ShiftNumber:
type: string
pattern: ^.+$
description: if different from the Login and see Login .SaleData.
SaleTransactionID:
$ref: '#/components/schemas/TransactionIDType'
SaleReferenceID:
type: string
pattern: ^.+$
description: If payment reservation.
SaleTerminalData:
$ref: '#/components/schemas/SaleTerminalData'
TokenRequestedType:
$ref: '#/components/schemas/TokenRequestedType'
CustomerOrderID:
type: string
pattern: ^.+$
description: Additional and optional identification of a customer order.
CustomerOrderReq:
$ref: '#/components/schemas/CustomerOrderReq'
SaleToPOIData:
type: string
pattern: ^.+$
description: Stored with the transaction.
SaleToAcquirerData:
type: string
pattern: ^.+$
description: Send to the Acquirer if present.
SaleToIssuerData:
$ref: '#/components/schemas/SaleToIssuerData'
required:
- SaleTransactionID
POIData:
type: object
description: In the Message Response, identification of the POI transaction.
Data related to the POI System.
properties:
POITransactionID:
$ref: '#/components/schemas/TransactionIDType'
POIReconciliationID:
type: integer
description: If Result is Success.
required:
- POITransactionID
SaleSoftware:
type: object
description: Information related to the software of the Sale System which manages
the NEXO Sale to POI protocol.
properties:
ManufacturerID:
type: string
pattern: ^.+$
ApplicationName:
type: string
pattern: ^.+$
SoftwareVersion:
type: string
pattern: ^.+$
CertificationCode:
type: string
pattern: ^.+$
required:
- ManufacturerID
- ApplicationName
- SoftwareVersion
- CertificationCode
CoinsOrBills:
type: object
description: Indicates the remaining number of coins or bills of a given value
in a cash handling device. When the cash handling machine does not have any
more coins or bills of a certain value, the number must be equal to 0. Number
of coins or bills of a given value.
properties:
UnitValue:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Value of a coin or bill.
Number:
type: integer
description: Number of elements.
required:
- UnitValue
- Number
CashHandlingDevice:
type: object
description: Indicate the status and the remaining coins and bill in a cash
handling device. Status of cash handling device.
properties:
CashHandlingOKFlag:
type: boolean
description: Indicates if the cash handling device is working and usable.
Currency:
type: string
pattern: ^[A-Z]{3,3}$
description: Currency of a monetary amount.
CoinsOrBills:
type: array
items:
$ref: '#/components/schemas/CoinsOrBills'
required:
- CashHandlingOKFlag
- Currency
- CoinsOrBills
POIStatus:
type: object
description: Indicate the availability of the POI Terminal components. The data
element is absent if the component is not part of the POI Terminal. State
of a POI Terminal.
properties:
GlobalStatus:
$ref: '#/components/schemas/GlobalStatus'
SecurityOKFlag:
type: boolean
description: If security module present.
PEDOKFlag:
type: boolean
description: If PED present.
CardReaderOKFlag:
type: boolean
description: If card reader device present.
PrinterStatus:
$ref: '#/components/schemas/PrinterStatus'
CommunicationOKFlag:
type: boolean
description: If communication infrastructure present.
CashHandlingDevice:
type: array
items:
$ref: '#/components/schemas/CashHandlingDevice'
FraudPreventionFlag:
type: boolean
description: default False.
required:
- GlobalStatus
Response:
type: object
description: If Result is Success, ErrorCondition is absent or not used in the
processing of the message. In the other cases, the ErrorCondition has to be
present and can refine the processing of the message response. AdditionalResponse
gives more information about the success or the failure of the message request
processing, for logging without real time involvements. Result of a message
request processing.
properties:
Result:
$ref: '#/components/schemas/Result'
ErrorCondition:
$ref: '#/components/schemas/ErrorCondition'
AdditionalResponse:
type: string
pattern: ^.+$
description: If present, the POI logs it for further examination.
required:
- Result
POISoftware:
type: object
properties:
ManufacturerID:
type: string
pattern: ^.+$
ApplicationName:
type: string
pattern: ^.+$
SoftwareVersion:
type: string
pattern: ^.+$
CertificationCode:
type: string
pattern: ^.+$
required:
- ManufacturerID
- ApplicationName
- SoftwareVersion
- CertificationCode
POIProfile:
type: object
properties:
GenericProfile:
$ref: '#/components/schemas/GenericProfile'
ServiceProfiles:
$ref: '#/components/schemas/ServiceProfiles'
POITerminalData:
type: object
properties:
TerminalEnvironment:
$ref: '#/components/schemas/TerminalEnvironment'
POICapabilities:
$ref: '#/components/schemas/POICapabilities'
POIProfile:
$ref: '#/components/schemas/POIProfile'
POISerialNumber:
type: string
pattern: ^.+$
required:
- TerminalEnvironment
- POICapabilities
- POISerialNumber
POISystemData:
type: object
properties:
DateTime:
type: string
format: date-time
POISoftware:
$ref: '#/components/schemas/POISoftware'
POITerminalData:
$ref: '#/components/schemas/POITerminalData'
POIStatus:
$ref: '#/components/schemas/POIStatus'
required:
- DateTime
- POISoftware
OutputText:
type: object
description: It conveys Information related to the content of the text message
and its format. All the data elements related to the format of the text to
display or print are parameters valid for the whole Text content. Content
of text message to display or print.
properties:
Text:
type: string
CharacterSet:
type: integer
Font:
type: string
pattern: ^.+$
StartRow:
type: integer
minimum: 1
maximum: 500
StartColumn:
type: integer
minimum: 1
maximum: 500
Color:
$ref: '#/components/schemas/Color'
CharacterWidth:
$ref: '#/components/schemas/CharacterWidth'
CharacterHeight:
$ref: '#/components/schemas/CharacterHeight'
CharacterStyle:
$ref: '#/components/schemas/CharacterStyle'
Alignment:
$ref: '#/components/schemas/Alignment'
EndOfLineFlag:
type: boolean
default: true
required:
- Text
PredefinedContent:
type: object
description: It conveys Information related to the predefined message. Reference
of a predefined message to display or print.
properties:
ReferenceID:
type: string
pattern: ^.+$
description: Identification of a predefined message to display or print.
Language:
type: string
pattern: ^[a-z]{2,2}$
description: Identification of a language.
required:
- ReferenceID
OutputBarcode:
type: object
properties:
BarcodeType:
$ref: '#/components/schemas/BarcodeType'
BarcodeValue:
type: string
pattern: ^.+$
required:
- BarcodeValue
OutputContent:
type: object
description: This is a sequence of elements if they have different formats.
Content to display or print.
properties:
OutputFormat:
$ref: '#/components/schemas/OutputFormat'
PredefinedContent:
$ref: '#/components/schemas/PredefinedContent'
OutputText:
type: array
items:
$ref: '#/components/schemas/OutputText'
OutputXHTML:
type: string
format: byte
pattern: ^.{0,262144}$
description: Mandatory, if OutputFormat is XHTML, not allowed otherwise.
OutputBarcode:
$ref: '#/components/schemas/OutputBarcode'
required:
- OutputFormat
MenuEntry:
type: object
description: It conveys message text and parameters of the menu entry. This
output data could be only provided for an input command, in order to choose
an entryof the menu. An entryof the menu to present to the Cashier.
properties:
MenuEntryTag:
$ref: '#/components/schemas/MenuEntryTag'
DefaultSelectedFlag:
type: boolean
default: false
OutputFormat:
$ref: '#/components/schemas/OutputFormat'
PredefinedContent:
$ref: '#/components/schemas/PredefinedContent'
OutputText:
type: array
items:
$ref: '#/components/schemas/OutputText'
OutputXHTML:
type: string
format: byte
pattern: ^.+$
required:
- OutputFormat
DisplayOutput:
type: object
description: It contains a complete display operation for a Display or an Input
Device type. For the Input Devices, Diagnosis and EnableService, ResponseRequiredFlag
and MinimumDisplayTime shall be absent. Information to display and the way
to process the display.
properties:
ResponseRequiredFlag:
type: boolean
default: true
description: Request of a message response.
MinimumDisplayTime:
type: integer
minimum: 0
maximum: 999
default: 0
description: Number of seconds the message has to be displayed.
Device:
$ref: '#/components/schemas/Device'
InfoQualify:
$ref: '#/components/schemas/InfoQualify'
OutputContent:
$ref: '#/components/schemas/OutputContent'
MenuEntry:
type: array
items:
$ref: '#/components/schemas/MenuEntry'
OutputSignature:
type: string
format: byte
pattern: ^.+$
description: If protection has to be provided to the vendor on the text
to display or print.
required:
- Device
- InfoQualify
- OutputContent
SaleItem:
type: object
description: In loyalty or value added payment card transaction, the items of
the sale are entering in the processing of the transaction. Sale items of
a transaction.
properties:
ItemID:
type: integer
description: Item identification inside a transaction (0 to n).
ProductCode:
type: integer
minimum: 1
maximum: 20
description: Product code of item purchased with the transaction.
EanUpc:
type: integer
description: If data sent, POI has to store it and send it if the host protocol
allows it.
UnitOfMeasure:
$ref: '#/components/schemas/UnitOfMeasure'
Quantity:
type: string
description: If data sent, POI has to store it and send it if the host protocol
allows it.
UnitPrice:
type: number
maximum: 99999999.999999
minimum: 0.0
description: if Quantity present.
ItemAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Total amount of the item line.
TaxCode:
type: integer
description: If data sent, POI has to store it and send it if the host protocol
allows it.
SaleChannel:
type: integer
description: If data sent, POI has to store it and send it if the host protocol
allows it.
ProductLabel:
type: string
pattern: ^.+$
AdditionalProductInfo:
type: string
pattern: ^.+$
description: If data sent, POI has to store it and send it if the host protocol
allows it.
required:
- ItemID
- ProductCode
- ItemAmount
LoyaltyAmount:
type: object
description: An awarded amount or an amount to redeem to the loyalty account
might be sent in the Payment request message. Amount of a loyalty account.
properties:
LoyaltyUnit:
$ref: '#/components/schemas/LoyaltyUnit'
Currency:
type: string
pattern: ^[A-Z]{3,3}$
AmountValue:
type: number
maximum: 99999999.999999
minimum: 0.0
required:
- AmountValue
LoyaltyAccountID:
type: object
description: In the Payment or the Loyalty Request message, it allows to identify
the loyalty account by the Sale Terminal instead of the POI Terminal (e.g.
because the account identification is a bar-code read by the Cashier on a
scanner device). Identification of a Loyalty account.
properties:
EntryMode:
$ref: '#/components/schemas/EntryMode'
IdentificationType:
$ref: '#/components/schemas/IdentificationType'
IdentificationSupport:
$ref: '#/components/schemas/IdentificationSupport'
LoyaltyID:
type: string
required:
- EntryMode
- IdentificationType
- LoyaltyID
LoyaltyData:
type: object
description: In the Payment, Loyalty or Balance Inquiry Request message, it
allows the Sale Terminal to send the identification of the loyalty account
or an awarded amount or an amount to redeem to the loyalty account. Data related
to a Loyalty program or account.
properties:
CardAcquisitionReference:
$ref: '#/components/schemas/TransactionIDType'
LoyaltyAccountID:
$ref: '#/components/schemas/LoyaltyAccountID'
LoyaltyAmount:
$ref: '#/components/schemas/LoyaltyAmount'
CheckData:
type: object
description: Allows the check information to be provided by the Sale System
before requesting the payment, or stored by the Sale System after processing
of the payment. Information related to the paper check used for the transaction.
properties:
BankID:
type: string
pattern: ^.+$
description: Mandatory if TrackData absent.
AccountNumber:
type: string
pattern: ^.+$
description: Mandatory if TrackData absent.
CheckNumber:
type: string
pattern: ^.+$
description: Mandatory if TrackData absent.
TrackData:
$ref: '#/components/schemas/TrackData'
CheckCardNumber:
type: string
pattern: ^.+$
description: If provided by the customer.
TypeCode:
$ref: '#/components/schemas/TypeCode'
Country:
type: string
pattern: ^[A-Z]{3,3}$
description: Absent if country of the Sale system.
SensitiveMobileData:
type: object
properties:
MSISDN:
type: integer
ISMI:
type: integer
IMEI:
type: integer
required:
- MSISDN
UTMCoordinates:
type: object
properties:
UTMZone:
type: string
pattern: ^.+$
UTMEastward:
type: string
pattern: ^.+$
UTMNorthward:
type: string
pattern: ^.+$
required:
- UTMZone
- UTMEastward
- UTMNorthward
GeographicCoordinates:
type: object
properties:
Latitude:
type: string
pattern: ^.+$
Longitude:
type: string
pattern: ^.+$
required:
- Latitude
- Longitude
Geolocation:
type: object
properties:
GeographicCoordinates:
$ref: '#/components/schemas/GeographicCoordinates'
UTMCoordinates:
$ref: '#/components/schemas/UTMCoordinates'
MobileData:
type: object
description: Mobile phone is used as a payment instrument for the transaction.
Information related to the mobile for the payment transaction.
properties:
MobileCountryCode:
type: integer
minimum: 3
maximum: 3
description: If data available.
MobileNetworkCode:
type: integer
minimum: 2
maximum: 3
description: If data available.
MaskedMSISDN:
type: integer
description: If data available.
Geolocation:
$ref: '#/components/schemas/Geolocation'
ProtectedMobileData:
type: string
description: SensitiveMobileData.
SensitiveMobileData:
$ref: '#/components/schemas/SensitiveMobileData'
Instalment:
type: object
properties:
InstalmentType:
$ref: '#/components/schemas/InstalmentType'
SequenceNumber:
type: integer
PlanID:
type: string
pattern: ^.+$
Period:
type: integer
PeriodUnit:
$ref: '#/components/schemas/PeriodUnit'
FirstPaymentDate:
type: string
format: date
TotalNbOfPayments:
type: integer
CumulativeAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
FirstAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
Charges:
type: number
maximum: 99999999.999999
minimum: 0.0
StoredValueAccountID:
type: object
description: It contains the identifications of the stored value account or
the stored value card, and the associated product sold by the Sale System
for stored value requests. Identification of the stored value account or the
stored value card.
properties:
StoredValueAccountType:
$ref: '#/components/schemas/StoredValueAccountType'
StoredValueProvider:
type: string
pattern: ^.+$
OwnerName:
type: string
pattern: ^.+$
ExpiryDate:
type: integer
minimum: 4
maximum: 4
EntryMode:
$ref: '#/components/schemas/EntryMode'
IdentificationType:
$ref: '#/components/schemas/IdentificationType'
StoredValueID:
type: string
pattern: ^.+$
required:
- StoredValueAccountType
- EntryMode
- IdentificationType
- StoredValueID
PaymentInstrumentData:
type: object
description: Sent in the result of the payment transaction. For a card, it could
also be sent in the CardAcquisition response, to be processed by the Sale
System. Data related to the instrument of payment for the transaction.
properties:
PaymentInstrumentType:
$ref: '#/components/schemas/PaymentInstrumentType'
ProtectedCardData:
type: string
CardData:
$ref: '#/components/schemas/CardData'
CheckData:
$ref: '#/components/schemas/CheckData'
MobileData:
$ref: '#/components/schemas/MobileData'
StoredValueAccountID:
$ref: '#/components/schemas/StoredValueAccountID'
required:
- PaymentInstrumentType
OriginalPOITransaction:
type: object
description: In the Payment or the Loyalty Request message, it allows using
the card of a previous CardAcquisition or Payment/Loyalty request. Identification
of a previous POI transaction.
properties:
SaleID:
type: string
pattern: ^.+$
description: Identification of a Sale System or a Sale Terminal for the
Sale to POI protocol.
POIID:
type: string
pattern: ^.+$
description: If original transaction is coming from another POI.
POITransactionID:
$ref: '#/components/schemas/TransactionIDType'
ReuseCardDataFlag:
type: boolean
default: true
description: Indicate if the card data has to be got from a previous transaction.
ApprovalCode:
type: string
pattern: ^.+$
description: If referral.
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: If the language is selected by the Sale System before the request
to the POI.
AcquirerID:
type: integer
description: Restrict to these Acquirer if present.
AmountValue:
type: number
maximum: 99999999.999999
minimum: 0.0
HostTransactionID:
$ref: '#/components/schemas/TransactionIDType'
TransactionConditions:
type: object
description: Conditions on which the transaction must be processed.
properties:
AllowedPaymentBrand:
type: array
items:
type: string
pattern: ^.+$
description: Restrict brand if data sent.
AcquirerID:
type: array
items:
type: integer
description: Restrict to these Acquirer if present.
DebitPreferredFlag:
type: boolean
description: The preferred type of payment is a debit transaction rather
a credit transaction.
AllowedLoyaltyBrand:
type: array
items:
type: string
pattern: ^.+$
description: Restrict brand if data sent.
LoyaltyHandling:
$ref: '#/components/schemas/LoyaltyHandling'
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: If the language is selected by the Sale System before the request
to the POI.
ForceOnlineFlag:
type: boolean
default: false
description: Go online if data sent.
ForceEntryMode:
$ref: '#/components/schemas/ForceEntryMode'
MerchantCategoryCode:
type: string
pattern: ^.{3,4}$
description: The payment implies a specific MCC.
PaymentData:
type: object
properties:
PaymentType:
$ref: '#/components/schemas/PaymentType'
SplitPaymentFlag:
type: boolean
default: false
RequestedValidityDate:
type: string
format: date
CardAcquisitionReference:
$ref: '#/components/schemas/TransactionIDType'
Instalment:
$ref: '#/components/schemas/Instalment'
CustomerOrder:
$ref: '#/components/schemas/CustomerOrder'
PaymentInstrumentData:
$ref: '#/components/schemas/PaymentInstrumentData'
AmountsReq:
type: object
description: Amounts of a payment
properties:
Currency:
type: string
pattern: ^[A-Z]{3,3}$
RequestedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
CashBackAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
TipAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
PaidAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
MinimumAmountToDeliver:
type: number
maximum: 99999999.999999
minimum: 0.0
MaximumCashBackAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
MinimumSplitAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
required:
- Currency
- RequestedAmount
PaymentTransaction:
type: object
properties:
AmountsReq:
$ref: '#/components/schemas/AmountsReq'
OriginalPOITransaction:
$ref: '#/components/schemas/OriginalPOITransaction'
TransactionConditions:
$ref: '#/components/schemas/TransactionConditions'
SaleItem:
type: array
items:
$ref: '#/components/schemas/SaleItem'
required:
- AmountsReq
ConvertedAmount:
type: object
properties:
AmountValue:
type: number
maximum: 99999999.999999
minimum: 0.0
Currency:
type: string
pattern: ^[A-Z]{3,3}$
required:
- AmountValue
- Currency
CurrencyConversion:
type: object
description: A currency conversion occurred in the payment, and the merchant
needs to know information related to this conversion (e.g. to print on the
sale receipt). Information related to a currency conversion.
properties:
CustomerApprovedFlag:
type: boolean
default: true
description: Notify if the customer has approved something. Indicates if
the customer has accepted a currency conversion.
ConvertedAmount:
$ref: '#/components/schemas/ConvertedAmount'
Rate:
type: string
description: Rate of currency conversion.
Markup:
type: string
description: Markup of a currency conversion amount as a percentage.
Commission:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Commission for a currency conversion.
Declaration:
type: string
pattern: ^.+$
description: If a declaration has to be presented to the customer.
required:
- ConvertedAmount
Point:
type: object
properties:
X:
type: string
Y:
type: string
required:
- X
- Y
SaleItemRebate:
type: object
description: To be differentiated from the award which is the amount or quantity
earned on the loyalty account. The awarded amount that is attached to an item
as a rebate.
properties:
ItemID:
type: integer
description: Item identification inside a transaction (0 to n).
ProductCode:
type: integer
minimum: 1
maximum: 20
description: Product code of item purchased with the transaction.
EanUpc:
type: integer
UnitOfMeasure:
$ref: '#/components/schemas/UnitOfMeasure'
Quantity:
type: string
description: if rebate is additional units.
ItemAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: if rebate on the line item amount.
RebateLabel:
type: string
pattern: ^.+$
description: If provided by the Acquirer.
required:
- ItemID
- ProductCode
LoyaltyAccount:
type: object
description: This data structure conveys the identification of the account and
the associated loyalty brand. Data related to a loyalty account processed
in the transaction.
properties:
LoyaltyAccountID:
$ref: '#/components/schemas/LoyaltyAccountID'
LoyaltyBrand:
type: string
pattern: ^.+$
description: If a card is analysed.
required:
- LoyaltyAccountID
LoyaltyAcquirerData:
type: object
properties:
LoyaltyAcquirerID:
type: string
pattern: ^.+$
ApprovalCode:
type: string
pattern: ^.+$
LoyaltyTransactionID:
$ref: '#/components/schemas/TransactionIDType'
HostReconciliationID:
type: string
pattern: ^.+$
Rebates:
type: object
properties:
TotalRebate:
type: number
maximum: 99999999.999999
minimum: 0.0
RebateLabel:
type: string
pattern: ^.+$
SaleItemRebate:
type: array
items:
$ref: '#/components/schemas/SaleItemRebate'
LoyaltyResult:
type: object
description: In the Message Response, the result of each loyalty brand transaction.
Data related to the result of a processed loyalty transaction.
properties:
LoyaltyAccount:
$ref: '#/components/schemas/LoyaltyAccount'
CurrentBalance:
type: number
maximum: 99999999.999999
minimum: 0.0
description: if known (provided by the card or an external host).
LoyaltyAmount:
$ref: '#/components/schemas/LoyaltyAmount'
LoyaltyAcquirerData:
$ref: '#/components/schemas/LoyaltyAcquirerData'
Rebates:
$ref: '#/components/schemas/Rebates'
required:
- LoyaltyAccount
PaymentReceipt:
type: object
description: If the payment receipts are printed by the Sale system and the
POI or the Sale does not implement the Print exchange (Basic profile). Customer
or Merchant payment receipt.
properties:
DocumentQualifier:
$ref: '#/components/schemas/DocumentQualifier'
IntegratedPrintFlag:
type: boolean
description: Type of the print integrated to other prints.
RequiredSignatureFlag:
type: boolean
default: false
description: Indicate that the cardholder payment receipt requires a physical
signature by the Customer.
OutputContent:
$ref: '#/components/schemas/OutputContent'
required:
- DocumentQualifier
- OutputContent
PaymentAcquirerData:
type: object
description: Data related to the response from the payment Acquirer.
properties:
AcquirerID:
type: integer
description: If several Acquirers.
MerchantID:
type: string
pattern: ^.+$
description: Identification of the Merchant for the Acquirer.
AcquirerPOIID:
type: string
pattern: ^.+$
description: Identification of the POI for the payment Acquirer.
AcquirerTransactionID:
$ref: '#/components/schemas/TransactionIDType'
ApprovalCode:
type: string
pattern: ^.+$
description: If available.
HostReconciliationID:
type: string
pattern: ^.+$
required:
- MerchantID
- AcquirerPOIID
AreaSize:
type: object
properties:
X:
type: string
Y:
type: string
required:
- X
- Y
CapturedSignature:
type: object
properties:
AreaSize:
$ref: '#/components/schemas/AreaSize'
SignaturePoint:
type: array
items:
$ref: '#/components/schemas/Point'
AmountsResp:
type: object
properties:
Currency:
type: string
pattern: ^[A-Z]{3,3}$
AuthorizedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
TotalRebatesAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
TotalFeesAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
CashBackAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
TipAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
required:
- AuthorizedAmount
PaymentResult:
type: object
properties:
PaymentType:
$ref: '#/components/schemas/PaymentType'
PaymentInstrumentData:
$ref: '#/components/schemas/PaymentInstrumentData'
AmountsResp:
$ref: '#/components/schemas/AmountsResp'
Instalment:
$ref: '#/components/schemas/Instalment'
CurrencyConversion:
type: array
items:
$ref: '#/components/schemas/CurrencyConversion'
MerchantOverrideFlag:
type: boolean
default: false
CapturedSignature:
$ref: '#/components/schemas/CapturedSignature'
ProtectedSignature:
type: string
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
OnlineFlag:
type: boolean
default: true
AuthenticationMethod:
$ref: '#/components/schemas/AuthenticationMethod'
ValidityDate:
type: string
format: date
PaymentAcquirerData:
$ref: '#/components/schemas/PaymentAcquirerData'
CardAcquisitionTransaction:
type: object
properties:
AllowedPaymentBrand:
type: array
items:
type: string
pattern: ^.+$
AllowedLoyaltyBrand:
type: array
items:
type: string
pattern: ^.+$
LoyaltyHandling:
$ref: '#/components/schemas/LoyaltyHandling'
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
ForceEntryMode:
$ref: '#/components/schemas/ForceEntryMode'
ForceCustomerSelectionFlag:
type: boolean
TotalAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
PaymentType:
$ref: '#/components/schemas/PaymentType'
CashBackFlag:
type: boolean
LoyaltyTransaction:
type: object
properties:
LoyaltyTransactionType:
$ref: '#/components/schemas/LoyaltyTransactionType'
Currency:
type: string
pattern: ^[A-Z]{3,3}$
TotalAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
OriginalPOITransaction:
$ref: '#/components/schemas/OriginalPOITransaction'
TransactionConditions:
$ref: '#/components/schemas/TransactionConditions'
SaleItem:
type: array
items:
$ref: '#/components/schemas/SaleItem'
required:
- LoyaltyTransactionType
StoredValueData:
type: object
description: 'It contains: - the identification of the stored value accounts
or the stored value cards, if provided by the Sale System, and - the associated
products sold by the Sale System.. Data related to the stored value card.'
properties:
StoredValueProvider:
type: string
pattern: ^.+$
description: If more than one provider to manage on the POI, and StoredValueAccountID
absent.
StoredValueTransactionType:
$ref: '#/components/schemas/StoredValueTransactionType'
StoredValueAccountID:
$ref: '#/components/schemas/StoredValueAccountID'
OriginalPOITransaction:
$ref: '#/components/schemas/OriginalPOITransaction'
ProductCode:
type: integer
minimum: 1
maximum: 20
description: Product code of item purchased with the transaction.
EanUpc:
type: integer
description: Standard product code of item purchased with the transaction.
ItemAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Total amount of the item line.
Currency:
type: string
pattern: ^[A-Z]{3,3}$
description: Currency of a monetary amount.
required:
- StoredValueTransactionType
StoredValueAccountStatus:
type: object
properties:
StoredValueAccountID:
$ref: '#/components/schemas/StoredValueAccountID'
CurrentBalance:
type: number
maximum: 99999999.999999
minimum: 0.0
required:
- StoredValueAccountID
StoredValueResult:
type: object
description: For each stored value card loaded or reloaded, in the StoredValue
response message. Result of loading/reloading a stored value card..
properties:
StoredValueTransactionType:
$ref: '#/components/schemas/StoredValueTransactionType'
ProductCode:
type: integer
minimum: 1
maximum: 20
description: Copy.
EanUpc:
type: integer
description: Copy.
ItemAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Total amount of the item line.
Currency:
type: string
pattern: ^[A-Z]{3,3}$
description: Copy.
StoredValueAccountStatus:
$ref: '#/components/schemas/StoredValueAccountStatus'
HostTransactionID:
$ref: '#/components/schemas/TransactionIDType'
required:
- StoredValueTransactionType
PerformedTransaction:
type: object
properties:
Response:
$ref: '#/components/schemas/Response'
SaleData:
$ref: '#/components/schemas/SaleData'
POIData:
$ref: '#/components/schemas/POIData'
PaymentResult:
$ref: '#/components/schemas/PaymentResult'
LoyaltyResult:
type: array
items:
$ref: '#/components/schemas/LoyaltyResult'
ReversedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
required:
- Response
PaymentTotals:
type: object
description: Totals of the payment transaction during the reconciliation period.
properties:
TransactionType:
$ref: '#/components/schemas/TransactionType'
TransactionCount:
type: integer
description: Number of processed transaction during the period.
TransactionAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Sum of amount of processed transaction during the period.
required:
- TransactionType
- TransactionCount
- TransactionAmount
LoyaltyTotals:
type: object
description: Totals of the loyalty transaction during the reconciliation period.
properties:
TransactionType:
$ref: '#/components/schemas/TransactionType'
TransactionCount:
type: integer
description: Number of processed transaction during the period.
TransactionAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Sum of amount of processed transaction during the period.
required:
- TransactionType
- TransactionCount
- TransactionAmount
TransactionTotals:
type: object
description: If Result is Success, contains all the totals, classified as required
by the Sale in the message request. At least, transaction totals are provided
per Acquirer, Acquirer Settlement, and Card Brand. Result of the Sale to POI
Reconciliation processing.
properties:
PaymentInstrumentType:
$ref: '#/components/schemas/PaymentInstrumentType'
AcquirerID:
type: integer
description: If available.
HostReconciliationID:
type: string
pattern: ^.+$
description: If available.
CardBrand:
type: string
pattern: ^.+$
description: If configured to present totals per card brand, and Response.Result
is Success.
POIID:
type: string
pattern: ^.+$
description: If requested in the message request.
SaleID:
type: string
pattern: ^.+$
description: If requested in the message request.
OperatorID:
type: string
pattern: ^.+$
description: If requested in the message request.
ShiftNumber:
type: string
pattern: ^.+$
description: If requested in the message request.
TotalsGroupID:
type: string
pattern: ^.{1,16}$
description: If requested in the message request.
PaymentCurrency:
type: string
pattern: ^[A-Z]{3,3}$
description: Currency of a monetary amount.
PaymentTotals:
type: array
items:
$ref: '#/components/schemas/PaymentTotals'
LoyaltyUnit:
$ref: '#/components/schemas/LoyaltyUnit'
LoyaltyCurrency:
type: string
pattern: ^[A-Z]{3,3}$
description: If LoyaltyUnit is Monetary.
LoyaltyTotals:
type: array
items:
$ref: '#/components/schemas/LoyaltyTotals'
required:
- PaymentInstrumentType
TotalFilter:
type: object
properties:
POIID:
type: string
pattern: ^.+$
SaleID:
type: string
pattern: ^.+$
OperatorID:
type: string
pattern: ^.+$
ShiftNumber:
type: string
pattern: ^.+$
TotalsGroupID:
type: string
pattern: ^.{1,16}$
PaymentAccountReq:
type: object
properties:
AccountType:
$ref: '#/components/schemas/AccountType'
CardAcquisitionReference:
$ref: '#/components/schemas/TransactionIDType'
PaymentInstrumentData:
$ref: '#/components/schemas/PaymentInstrumentData'
LoyaltyAccountReq:
type: object
properties:
CardAcquisitionReference:
$ref: '#/components/schemas/TransactionIDType'
LoyaltyAccountID:
$ref: '#/components/schemas/LoyaltyAccountID'
PaymentAccountStatus:
type: object
properties:
PaymentInstrumentData:
$ref: '#/components/schemas/PaymentInstrumentData'
CurrentBalance:
type: number
maximum: 99999999.999999
minimum: 0.0
Currency:
type: string
pattern: ^[A-Z]{3,3}$
PaymentAcquirerData:
$ref: '#/components/schemas/PaymentAcquirerData'
LoyaltyAccountStatus:
type: object
properties:
LoyaltyAccount:
$ref: '#/components/schemas/LoyaltyAccount'
CurrentBalance:
type: number
maximum: 99999999.999999
minimum: 0.0
LoyaltyUnit:
$ref: '#/components/schemas/LoyaltyUnit'
Currency:
type: string
pattern: ^[A-Z]{3,3}$
required:
- LoyaltyAccount
MessageReference:
type: object
description: To abort a transaction in progress or to request the status of
a transaction from which no response has been received. It identifies the
message header of the message request to abort or request the status. Identification
of a previous POI transaction.
properties:
MessageCategory:
$ref: '#/components/schemas/MessageCategory'
ServiceID:
type: string
pattern: ^.{1,10}$
description: Identification of a message pair, which processes a transaction.
DeviceID:
type: string
pattern: ^.{1,10}$
description: Identification of a device message pair.
SaleID:
type: string
pattern: ^.+$
description: default MessageHeader.SaleID.
POIID:
type: string
pattern: ^.+$
description: default MessageHeader.POIID.
MessageHeader:
type: object
description: It conveys Information related to the Sale to POI protocol management.
Message header of the Sale to POI protocol message.
properties:
ProtocolVersion:
type: string
pattern: ^.+$
description: If MessageCategory is Login or Diagnosis.
MessageClass:
$ref: '#/components/schemas/MessageClass'
MessageCategory:
$ref: '#/components/schemas/MessageCategory'
MessageType:
$ref: '#/components/schemas/MessageType'
ServiceID:
type: string
pattern: ^.{1,10}$
description: Required if Service or Event MessageClass message or if Device
MessageClass and request from POI or response from Sale.
DeviceID:
type: string
pattern: ^.{1,10}$
description: If Device MessageClass.
SaleID:
type: string
pattern: ^.+$
description: Identification of a Sale System or a Sale Terminal for the
Sale to POI protocol.
POIID:
type: string
pattern: ^.+$
description: Identification of a POI System or a POI Terminal for the Sale
to POI protocol.
required:
- MessageClass
- MessageCategory
- MessageType
- SaleID
- POIID
RepeatedResponseMessageBody:
type: object
properties:
LoyaltyResponse:
$ref: '#/components/schemas/LoyaltyResponse'
PaymentResponse:
$ref: '#/components/schemas/PaymentResponse'
ReversalResponse:
$ref: '#/components/schemas/ReversalResponse'
StoredValueResponse:
$ref: '#/components/schemas/StoredValueResponse'
CardAcquisitionResponse:
$ref: '#/components/schemas/CardAcquisitionResponse'
CardReaderAPDUResponse:
$ref: '#/components/schemas/CardReaderAPDUResponse'
RepeatedMessageResponse:
type: object
properties:
MessageHeader:
$ref: '#/components/schemas/MessageHeader'
RepeatedResponseMessageBody:
$ref: '#/components/schemas/RepeatedResponseMessageBody'
required:
- MessageHeader
- RepeatedResponseMessageBody
HostStatus:
type: object
description: Indicate the reachability of the host by the POI Terminal. State
of a Host.
properties:
AcquirerID:
type: integer
description: Identification of the Acquirer.
IsReachableFlag:
type: boolean
default: true
description: Indicate if a Host is reachable.
required:
- AcquirerID
OutputResult:
type: object
description: In the message response, it contains the result of the output,
if required in the message request. Information related to the result the
output (display, print, input).
properties:
Device:
$ref: '#/components/schemas/Device'
InfoQualify:
$ref: '#/components/schemas/InfoQualify'
Response:
$ref: '#/components/schemas/Response'
required:
- Device
- InfoQualify
- Response
InputData:
type: object
properties:
Device:
$ref: '#/components/schemas/Device'
InfoQualify:
$ref: '#/components/schemas/InfoQualify'
InputCommand:
$ref: '#/components/schemas/InputCommand'
NotifyCardInputFlag:
type: boolean
default: false
MaxInputTime:
type: integer
ImmediateResponseFlag:
type: boolean
default: false
MinLength:
type: integer
MaxLength:
type: integer
MaxDecimalLength:
type: integer
WaitUserValidationFlag:
type: boolean
default: true
DefaultInputString:
type: string
pattern: ^.+$
DefaultLayoutString:
type: string
pattern: ^.+$
StringMask:
type: string
pattern: ^.+$
FromRightToLeftFlag:
type: boolean
default: false
MaskCharactersFlag:
type: boolean
default: false
BeepKeyFlag:
type: boolean
default: false
GlobalCorrectionFlag:
type: boolean
default: false
DisableCancelFlag:
type: boolean
default: false
DisableCorrectFlag:
type: boolean
default: false
DisableValidFlag:
type: boolean
default: false
MenuBackFlag:
type: boolean
default: false
required:
- Device
- InfoQualify
- InputCommand
Input:
type: object
properties:
InputCommand:
$ref: '#/components/schemas/InputCommand'
ConfirmedFlag:
type: boolean
FunctionKey:
type: integer
TextInput:
type: string
DigitInput:
type: integer
Password:
type: string
MenuEntryNumber:
type: array
items:
type: integer
required:
- InputCommand
InputResult:
type: object
properties:
Device:
$ref: '#/components/schemas/Device'
InfoQualify:
$ref: '#/components/schemas/InfoQualify'
Response:
$ref: '#/components/schemas/Response'
Input:
$ref: '#/components/schemas/Input'
required:
- Device
- InfoQualify
- Response
PrintOutput:
type: object
properties:
DocumentQualifier:
$ref: '#/components/schemas/DocumentQualifier'
ResponseMode:
$ref: '#/components/schemas/ResponseMode'
IntegratedPrintFlag:
type: boolean
default: false
RequiredSignatureFlag:
type: boolean
default: false
OutputContent:
$ref: '#/components/schemas/OutputContent'
required:
- DocumentQualifier
- ResponseMode
- OutputContent
SoundContent:
type: object
properties:
SoundFormat:
$ref: '#/components/schemas/SoundFormat'
Language:
type: string
pattern: ^[a-z]{2,2}$
ReferenceID:
type: string
pattern: ^.+$
Text:
type: string
pattern: ^.+$
required:
- SoundFormat
CardHolderPIN:
type: object
properties:
EncrPINBlock:
type: string
PINFormat:
$ref: '#/components/schemas/PINFormat'
AdditionalInput:
type: string
pattern: ^.+$
required:
- EncrPINBlock
- PINFormat
ICCResetData:
type: object
properties:
ATRValue:
type: string
format: byte
pattern: ^.{1,100}$
CardStatusWords:
type: string
format: byte
pattern: ^.{2,2}$
SecurityTrailer:
type: object
description: It contains information related to the security of the message.
SecurityTrailer as used by Adyen.
properties:
AdyenCryptoVersion:
type: integer
KeyIdentifier:
type: string
pattern: ^.+$
KeyVersion:
type: integer
Nonce:
type: string
format: byte
pattern: ^.+$
Hmac:
type: string
format: byte
pattern: ^.+$
required:
- AdyenCryptoVersion
- KeyIdentifier
- KeyVersion
- Nonce
- Hmac
LoginRequest:
type: object
description: It conveys Information related to the session (period between a
Login and the following Logout) to process. Content of the Login Request message.
properties:
DateTime:
type: string
format: date-time
description: Date and Time.
SaleSoftware:
$ref: '#/components/schemas/SaleSoftware'
SaleTerminalData:
$ref: '#/components/schemas/SaleTerminalData'
TrainingModeFlag:
type: boolean
default: false
description: The POI does not realise the transaction with the Acquirer.
OperatorLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: Default value for Device type displays.
OperatorID:
type: string
pattern: ^.+$
description: '4 conditions to send it: a) the Sale System wants the POI
log it in the transaction log b) because of reconciliation.'
ShiftNumber:
type: string
pattern: ^.+$
description: Same as OperatorID.
TokenRequestedType:
$ref: '#/components/schemas/TokenRequestedType'
CustomerOrderReq:
$ref: '#/components/schemas/CustomerOrderReq'
POISerialNumber:
type: string
pattern: ^.+$
description: If the login involve a POI Terminal and not the first Login
to the POI System.
required:
- DateTime
- SaleSoftware
- OperatorLanguage
LogoutRequest:
type: object
description: Empty. Content of the Logout Request message.
properties:
MaintenanceAllowed:
type: boolean
default: false
EnableServiceRequest:
type: object
description: It conveys the services that will be enabled for the POI Terminal
without the request of the Sale System, and a possible invitation for the
Customer to start the services. Content of the Enable Service Request message.
properties:
TransactionAction:
$ref: '#/components/schemas/TransactionAction'
ServicesEnabled:
$ref: '#/components/schemas/ServicesEnabled'
DisplayOutput:
$ref: '#/components/schemas/DisplayOutput'
required:
- TransactionAction
AdminRequest:
type: object
description: Empty. Content of the Custom Admin Request message.
properties:
ServiceIdentification:
type: string
pattern: ^.+$
description: Identification of the administrative service to process.
PaymentRequest:
type: object
description: Request sent to terminal to initiate payment. It conveys Information
related to the Payment transaction to process. Content of the Payment Request
message.
properties:
SaleData:
$ref: '#/components/schemas/SaleData'
PaymentTransaction:
$ref: '#/components/schemas/PaymentTransaction'
PaymentData:
$ref: '#/components/schemas/PaymentData'
LoyaltyData:
type: array
items:
$ref: '#/components/schemas/LoyaltyData'
required:
- SaleData
- PaymentTransaction
CardAcquisitionRequest:
type: object
description: It conveys Information related to the payment and loyalty cards
to read and analyse. This message pair is usually followed by a message pair
(e.g. payment or loyalty) which refers to this Card Acquisition message pair.
Content of the Card Acquisition Request message.
properties:
SaleData:
$ref: '#/components/schemas/SaleData'
CardAcquisitionTransaction:
$ref: '#/components/schemas/CardAcquisitionTransaction'
required:
- SaleData
- CardAcquisitionTransaction
LoyaltyRequest:
type: object
description: It conveys Information related to the Loyalty transaction to process.
Content of the Loyalty Request message.
properties:
SaleData:
$ref: '#/components/schemas/SaleData'
LoyaltyTransaction:
$ref: '#/components/schemas/LoyaltyTransaction'
LoyaltyData:
$ref: '#/components/schemas/LoyaltyData'
required:
- SaleData
- LoyaltyTransaction
- LoyaltyData
StoredValueRequest:
type: object
description: It conveys Information related to the Stored Value transaction
to process. Content of the Stored Value Request message.
properties:
SaleData:
$ref: '#/components/schemas/SaleData'
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: If the language is selected by the Sale System before the request
to the POI.
StoredValueData:
type: array
items:
$ref: '#/components/schemas/StoredValueData'
required:
- SaleData
- StoredValueData
ReversalRequest:
type: object
description: It conveys Information related to the reversal of a previous payment
or a loyalty transaction. Content of the Reversal Request message.
properties:
SaleData:
$ref: '#/components/schemas/SaleData'
OriginalPOITransaction:
$ref: '#/components/schemas/OriginalPOITransaction'
ReversedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: ReversedAmount is implicitely the AuthorizedAmount if absent.
ReversalReason:
$ref: '#/components/schemas/ReversalReason'
CustomerOrder:
$ref: '#/components/schemas/CustomerOrder'
required:
- OriginalPOITransaction
- ReversalReason
ReconciliationRequest:
type: object
description: It conveys Information related to the Reconciliation requested
by the Sale System. Content of the Reconciliation Request message.
properties:
ReconciliationType:
$ref: '#/components/schemas/ReconciliationType'
AcquirerID:
type: array
items:
type: integer
description: Could be present only if ReconciliationType is AcquirerReconciliation
or AcquirerSynchronisation.
POIReconciliationID:
type: integer
description: Absent if ReconciliationType is not PreviousReconciliation.
required:
- ReconciliationType
GetTotalsRequest:
type: object
description: It conveys information from the Sale System related to the scope
and the format of the totals to be computed by the POI System. Content of
the Get Totals Request message.
properties:
TotalDetails:
$ref: '#/components/schemas/TotalDetails'
TotalFilter:
$ref: '#/components/schemas/TotalFilter'
BalanceInquiryRequest:
type: object
description: It conveys Information related to the account for which a Balance
Inquiry is requested. Content of the Balance Inquiry Request message.
properties:
PaymentAccountReq:
$ref: '#/components/schemas/PaymentAccountReq'
LoyaltyAccountReq:
$ref: '#/components/schemas/LoyaltyAccountReq'
TransactionStatusRequest:
type: object
description: It conveys Information requested for status of the last or current
Payment, Loyalty or Reversal transaction. Content of the TransactionStatus
Request message.
properties:
MessageReference:
$ref: '#/components/schemas/MessageReference'
ReceiptReprintFlag:
type: boolean
default: false
description: Request to reprint the POI receipt(s).
DocumentQualifier:
type: array
items:
$ref: '#/components/schemas/DocumentQualifier'
AbortRequest:
type: object
description: It conveys Information requested for identification of the message
request carrying the transaction to abort. A message to display on the CustomerError
Device could be sent by the Sale System (DisplayOutput). Body of the Abort
Request message.
properties:
MessageReference:
$ref: '#/components/schemas/MessageReference'
AbortReason:
type: string
pattern: ^.+$
description: Reason of aborting a transaction.
DisplayOutput:
$ref: '#/components/schemas/DisplayOutput'
required:
- MessageReference
- AbortReason
EventNotification:
type: object
description: It conveys Information related to the event, and possible action
(maintenance, message to display). Content of the EventNotification message.
properties:
TimeStamp:
type: string
format: date-time
description: Date and time of a transaction for the Sale System, the POI
System or the Acquirer.
EventToNotify:
$ref: '#/components/schemas/EventToNotify'
EventDetails:
type: string
pattern: ^.+$
description: If present, the Sale logs it for further examination.
RejectedMessage:
type: string
format: byte
pattern: ^.+$
description: Mandatory if EventToNotify is Reject, absent in other cases.
MaintenanceRequiredFlag:
type: boolean
default: false
description: Indicates if the occurred event requires maintenance call or
action.
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: If the language is selected by the Sale System before the request
to the POI.
DisplayOutput:
type: array
items:
$ref: '#/components/schemas/DisplayOutput'
required:
- TimeStamp
- EventToNotify
DiagnosisRequest:
type: object
description: It conveys Information related to the target POI for which the
diagnosis is requested. Content of the Diagnosis Request message.
properties:
POIID:
type: string
pattern: ^.+$
description: MessageHeader.POIID.
HostDiagnosisFlag:
type: boolean
default: false
description: Indicates if Host Diagnosis are required.
AcquirerID:
type: array
items:
type: integer
description: Present if requesting the diagnosis of these hosts only.
DisplayRequest:
type: object
description: It conveys the data to display and the way to process the display.
It contains the complete content to display. It might contain an operation
(the DisplayOutput element) per Display Device type. Content of the Display
Request message.
properties:
DisplayOutput:
type: array
items:
$ref: '#/components/schemas/DisplayOutput'
required:
- DisplayOutput
InputRequest:
type: object
description: It conveys data to display and the way to process the display,
and contains the complete content to display. In addition to the display on
the Input Device, it might contain an operation (the DisplayOutput element)
per Display Device type. Content of the Input Request message.
properties:
DisplayOutput:
$ref: '#/components/schemas/DisplayOutput'
InputData:
$ref: '#/components/schemas/InputData'
required:
- InputData
InputUpdate:
type: object
description: "Definition: Content of the Input Update message. : It conveys\
\ \t\t\t\tupdate of the display of an Input request in progress."
properties:
MessageReference:
$ref: '#/components/schemas/MessageReference'
OutputContent:
$ref: '#/components/schemas/OutputContent'
MenuEntry:
type: array
items:
$ref: '#/components/schemas/MenuEntry'
OutputSignature:
type: string
format: byte
pattern: ^.+$
MinLength:
type: integer
MaxLength:
type: integer
MaxDecimalLength:
type: integer
required:
- MessageReference
- OutputContent
PrintRequest:
type: object
description: It conveys the data to print and the way to process the print.
It contains the complete content to print. Content of the Print Request message.
properties:
PrintOutput:
$ref: '#/components/schemas/PrintOutput'
required:
- PrintOutput
CardReaderAPDURequest:
type: object
description: It contains the APDU request to send to the chip of the card, and
a possible invitation message to display on the CashierInterface or the CustomerInterface.
Content of the Card Reader APDU Request message.
properties:
APDUClass:
type: string
format: byte
pattern: ^.{1,1}$
description: Class field of the APDU command (CLA).
APDUInstruction:
type: string
format: byte
pattern: ^.{1,1}$
description: Instruction field of the APDU command (INS).
APDUPar1:
type: string
format: byte
pattern: ^.{1,1}$
description: Parameter 1 field of the APDU command (P1).
APDUPar2:
type: string
format: byte
pattern: ^.{1,1}$
description: Parameter 2 field of the APDU command(P2).
APDUData:
type: string
format: byte
pattern: ^.+$
description: Data field of the APDU command (Lc + Data).
APDUExpectedLength:
type: string
format: byte
pattern: ^.{1,1}$
description: Expected length of the data field of the APDU response to the
command (Le).
required:
- APDUClass
- APDUInstruction
- APDUPar1
- APDUPar2
LoginResponse:
type: object
description: It conveys Information related to the Login to process. Content
of the Login Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
POISystemData:
$ref: '#/components/schemas/POISystemData'
TokenRequestStatus:
type: boolean
CustomerOrderStatus:
type: boolean
required:
- Response
LogoutResponse:
type: object
description: It conveys the result of the Logout. Content of the Logout Response
message.
properties:
Response:
$ref: '#/components/schemas/Response'
required:
- Response
EnableServiceResponse:
type: object
description: It conveys the result of the Enable Service processing. Content
of the Enable Service Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
required:
- Response
AdminResponse:
type: object
description: It conveys the result of the Custom Admin. Content of the Custom
Admin Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
required:
- Response
PaymentResponse:
type: object
description: It conveys Information related to the Payment transaction processed
by the POI System. Content of the Payment Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
SaleData:
$ref: '#/components/schemas/SaleData'
POIData:
$ref: '#/components/schemas/POIData'
PaymentResult:
$ref: '#/components/schemas/PaymentResult'
LoyaltyResult:
type: array
items:
$ref: '#/components/schemas/LoyaltyResult'
PaymentReceipt:
type: array
items:
$ref: '#/components/schemas/PaymentReceipt'
CustomerOrder:
type: array
items:
$ref: '#/components/schemas/CustomerOrder'
required:
- Response
- SaleData
- POIData
CardAcquisitionResponse:
type: object
description: It conveys Information related to the payment and loyalty cards
read and processed by the POI System and entered by the Customer. Content
of the Card Acquisition Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
SaleData:
$ref: '#/components/schemas/SaleData'
POIData:
$ref: '#/components/schemas/POIData'
CustomerLanguage:
type: string
pattern: ^[a-z]{2,2}$
description: Data related to the POI System.
PaymentBrand:
type: array
items:
type: string
pattern: ^.+$
description: Brands available for payment by the card and not chosen by
the Customer.
PaymentInstrumentData:
$ref: '#/components/schemas/PaymentInstrumentData'
LoyaltyAccount:
type: array
items:
$ref: '#/components/schemas/LoyaltyAccount'
required:
- Response
- SaleData
- POIData
LoyaltyResponse:
type: object
description: It conveys Information related to the Loyalty transaction processed
by the POI System. Content of the Loyalty Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
SaleData:
$ref: '#/components/schemas/SaleData'
POIData:
$ref: '#/components/schemas/POIData'
LoyaltyResult:
type: array
items:
$ref: '#/components/schemas/LoyaltyResult'
PaymentReceipt:
type: array
items:
$ref: '#/components/schemas/PaymentReceipt'
required:
- Response
- SaleData
- POIData
StoredValueResponse:
type: object
description: It conveys Information related to the Stored Value transaction
processed by the POI System. Content of the Stored Value Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
SaleData:
$ref: '#/components/schemas/SaleData'
POIData:
$ref: '#/components/schemas/POIData'
StoredValueResult:
type: array
items:
$ref: '#/components/schemas/StoredValueResult'
PaymentReceipt:
type: array
items:
$ref: '#/components/schemas/PaymentReceipt'
required:
- Response
- SaleData
- POIData
ReversalResponse:
type: object
description: It conveys Information related to the reversal processed by the
POI System. Content of the Reversal Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
POIData:
$ref: '#/components/schemas/POIData'
OriginalPOITransaction:
$ref: '#/components/schemas/OriginalPOITransaction'
ReversedAmount:
type: number
maximum: 99999999.999999
minimum: 0.0
description: Copy.
CustomerOrder:
type: array
items:
$ref: '#/components/schemas/CustomerOrder'
PaymentReceipt:
type: array
items:
$ref: '#/components/schemas/PaymentReceipt'
required:
- Response
ReconciliationResponse:
type: object
description: It conveys Information related to the Reconciliation transaction
processed by the POI System. Content of the Reconciliation Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
ReconciliationType:
$ref: '#/components/schemas/ReconciliationType'
POIReconciliationID:
type: integer
description: Absent if ReconciliationType is AcquirerReconciliation.
TransactionTotals:
type: array
items:
$ref: '#/components/schemas/TransactionTotals'
required:
- Response
- ReconciliationType
GetTotalsResponse:
type: object
description: It conveys Information related to the Reconciliation transaction
processed by the POI System. Content of the Reconciliation Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
POIReconciliationID:
type: integer
description: Identification of the reconciliation period between Sale and
POI.
TransactionTotals:
type: array
items:
$ref: '#/components/schemas/TransactionTotals'
required:
- Response
- POIReconciliationID
BalanceInquiryResponse:
type: object
description: It conveys the balance and the identification of the associated
payment, loyalty or stored value account. Content of the Balance Inquiry Response
message.
properties:
Response:
$ref: '#/components/schemas/Response'
PaymentAccountStatus:
$ref: '#/components/schemas/PaymentAccountStatus'
LoyaltyAccountStatus:
$ref: '#/components/schemas/LoyaltyAccountStatus'
PaymentReceipt:
type: array
items:
$ref: '#/components/schemas/PaymentReceipt'
required:
- Response
CardReaderAPDUResponse:
type: object
description: It contains the result of the requested service, APDU response
sent by the chip of the card in response to the APDU request. Content of the
Card Reader APDU Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
APDUData:
type: string
format: byte
pattern: ^.+$
description: Data field of the APDU command (Lc + Data).
CardStatusWords:
type: string
format: byte
pattern: ^.{2,2}$
description: Status of a smartcard response to a command (SW1-SW2).
required:
- Response
- CardStatusWords
TransactionStatusResponse:
type: object
description: It conveys Information related to the status of the last or current
Payment, Loyalty or Reversal transaction. Content of the TransactionStatus
Response message.
properties:
Response:
$ref: '#/components/schemas/Response'
MessageReference:
$ref: '#/components/schemas/MessageReference'
RepeatedMessageResponse:
$ref: '#/components/schemas/RepeatedMessageResponse'
required:
- Response
DiagnosisResponse:
type: object
description: It conveys the result of the requested diagnosis and a possible
message to display on a logical device. Content of the Diagnosis Response
message.
properties:
Response:
$ref: '#/components/schemas/Response'
LoggedSaleID:
type: array
items:
type: string
pattern: ^.+$
description: If Sale Terminal logged to this POI Terminal.
POIStatus:
$ref: '#/components/schemas/POIStatus'
HostStatus:
type: array
items:
$ref: '#/components/schemas/HostStatus'
required:
- Response
DisplayResponse:
type: object
description: It conveys the result of the display, parallel to the message request,
except if response not required and absent. Content of the Display Response
message.
properties:
OutputResult:
type: array
items:
$ref: '#/components/schemas/OutputResult'
required:
- OutputResult
InputResponse:
type: object
description: It conveys the result of the input or the result of the outputs,
parallel to the message request, except if response not required and absent.
Content of the Input Response message.
properties:
OutputResult:
$ref: '#/components/schemas/OutputResult'
InputResult:
$ref: '#/components/schemas/InputResult'
required:
- InputResult
PrintResponse:
type: object
description: It conveys the result of the print, parallel to the message request,
except if response not required and absent. Content of the Print Response
message.
properties:
DocumentQualifier:
$ref: '#/components/schemas/DocumentQualifier'
Response:
$ref: '#/components/schemas/Response'
required:
- DocumentQualifier
- Response
securitySchemes:
ApiKeyAuth:
in: header
name: X-API-Key
type: apiKey
BasicAuth:
scheme: basic
type: http