mirror of
https://github.com/gcatanese/adyen-openapi.git
synced 2026-03-10 08:01:24 +00:00
6593 lines
200 KiB
YAML
6593 lines
200 KiB
YAML
openapi: 3.1.0
|
|
info:
|
|
version: '1'
|
|
title: Adyen Terminal API
|
|
description: 'The Adyen [Terminal API](https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/)
|
|
lets you make payments, issue refunds, collect shopper information, and perform
|
|
other shopper-terminal interactions using a payment terminal supplied by Adyen.
|
|
|
|
|
|
## Authentication and endpoints
|
|
|
|
Authentication and endpoints depend on whether you are using a [cloud or a local](https://docs.adyen.com/point-of-sale/design-your-integration/choose-your-architecture/)
|
|
Terminal API integration.
|
|
|
|
|
|
### Cloud
|
|
|
|
Each request to the cloud Terminal API must be signed with an API key. [Generate
|
|
your API Key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key)
|
|
in the Customer Area and set this key to the `X-API-Key` header value.
|
|
|
|
|
|
The cloud Terminal API endpoint you need to use depends on whether your integration
|
|
will receive transaction results synchronously or asynchronously:
|
|
|
|
|
|
- Synchronous: `https://terminal-api-test.adyen.com/sync`
|
|
|
|
- Asynchronous: `https://terminal-api-test.adyen.com/async`
|
|
|
|
|
|
When you are ready to go live, you need to generate a new web service user credential
|
|
and switch to one of the [live endpoints](https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/#cloud).
|
|
|
|
|
|
### Local
|
|
|
|
If your integration uses local communications, API requests are made from a POS
|
|
app directly to a terminal''s IP address. To learn how to set up and protect local
|
|
communications, refer to [Building a local integration](https://docs.adyen.com/point-of-sale/design-your-integration/choose-your-architecture/local/).
|
|
|
|
|
|
## API structure
|
|
|
|
Terminal API communicates with the terminal using JSON messages. All requests
|
|
and responses have the following structure:
|
|
|
|
- `MessageHeader`: identifies the type of transaction, the terminal being used,
|
|
and unique transaction identifiers.
|
|
|
|
- **Request body**: a request or response object, depending on the type of transaction.
|
|
For example, when you make a payment request this is a `PaymentRequest` object,
|
|
and when you receive a payment response this is a `PaymentResponse` object.
|
|
|
|
|
|
### Requests
|
|
|
|
Each Terminal API request you make is contained in a `SaletoPOIRequest` object
|
|
and needs to have the following objects:
|
|
|
|
* `MessageHeader`: for each request you need to include this object and specify
|
|
the [required parameters](https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/#request-message-header).
|
|
|
|
* Request body: the name and structure of this object depends on the type of request.
|
|
You can use this specification to create the structure of the request body. For
|
|
example, to make a payment you need to include a `PaymentRequest` object and the
|
|
`MessageHeader` inside the `SaletoPOIRequest` object.
|
|
|
|
|
|
### Responses
|
|
|
|
Each terminal API response you receive is contained in a `SaleToPOIResponse` object
|
|
and includes:
|
|
|
|
* `MessageHeader`: this object echoes the values you provided in the request.
|
|
The only exception is the `MessageType`, which is always **Response**.
|
|
|
|
* **Response body**: the values you receive in the response body depend on the
|
|
type of transaction request you made. For example, when making a `PaymentRequest`
|
|
you would receive a `PaymentResponse` as the response body.
|
|
|
|
|
|
Below, you can find the list of available Terminal API requests with the structure
|
|
of the request/response body parameters:'
|
|
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 `LoginRequest` 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 `PaymentRequest` 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: 'Content of the Reconciliation Request message.
|
|
|
|
It conveys Information related to the Reconciliation requested by the Sale
|
|
System.'
|
|
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: 'Content of the Reconciliation Response message.
|
|
|
|
It conveys Information related to the Reconciliation transaction processed
|
|
by the POI System.'
|
|
/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: 'Content of the Balance Inquiry Response message.
|
|
|
|
It conveys the balance and the identification of the associated payment,
|
|
loyalty or stored value account.'
|
|
/transactionstatus:
|
|
post:
|
|
description: 'Content of the TransactionStatus Request message.
|
|
|
|
It conveys Information requested for status of the last or current Payment,
|
|
Loyalty or Reversal transaction.'
|
|
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: 'Content of the TransactionStatus Response message.
|
|
|
|
It conveys Information related to the status of the last or current Payment,
|
|
Loyalty or Reversal transaction.'
|
|
/abort:
|
|
post:
|
|
description: 'Body of the Abort Request message.
|
|
|
|
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).'
|
|
summary: Abort Request
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AbortRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AbortResponse'
|
|
description: A successful `AbortRequest` returns a response with a **200
|
|
OK** HTTP status code and no body.
|
|
/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: Content of the `InputRequest` message. It conveys the data to display
|
|
and how to process it. In addition to the display on the Input Device, it
|
|
might contain an operation (the `DisplayOutput` element) per Display Device
|
|
type.
|
|
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: 'Content of the Print Request message.
|
|
|
|
It conveys the complete data to print and how to process the print.'
|
|
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: 'Content of the Card Reader APDU Response message.
|
|
|
|
It contains the result of the requested service, APDU response sent by
|
|
the chip of the card in response to the APDU request.'
|
|
components:
|
|
schemas:
|
|
TerminalEnvironment:
|
|
type: string
|
|
description: 'Environment of the Terminal. Sent in the Login Request (Response)
|
|
to identify the environment of the Sale System (POI System) during the session.
|
|
Sent in other messages when the data has changed since the Login.
|
|
|
|
Possible values:
|
|
|
|
* **Attended**
|
|
|
|
* **SemiAttended**
|
|
|
|
* **Unattended**'
|
|
enum:
|
|
- Attended
|
|
- SemiAttended
|
|
- Unattended
|
|
GenericProfile:
|
|
type: string
|
|
description: 'Functional profile of the Sale to POI protocol. Sent in the Login
|
|
Request to identify the messages that might be requested or received by the
|
|
Sale Terminal during the session. Sent in the Login Response to identify the
|
|
messages that might be processed or sent by the POI Terminal during the session.
|
|
|
|
Possible values:
|
|
|
|
* **Basic**
|
|
|
|
* **Extended**
|
|
|
|
* **Standard**'
|
|
enum:
|
|
- Basic
|
|
- Extended
|
|
- Standard
|
|
ServiceProfiles:
|
|
type: array
|
|
description: 'Service profiles of the Sale to POI protocol. Sent in the Login
|
|
Request to identify the specific services that might be requested by the Sale
|
|
Terminal during the session. Sent in the Login Response to identify the specific
|
|
services that might be processed by the POI Terminal during the session.
|
|
|
|
Possible values:
|
|
|
|
* **Batch**
|
|
|
|
* **CardReader**
|
|
|
|
* **Communication**
|
|
|
|
* **Loyalty**
|
|
|
|
* **OneTimeRes**
|
|
|
|
* **PIN**
|
|
|
|
* **Reservation**
|
|
|
|
* **Sound**
|
|
|
|
* **StoredValue**
|
|
|
|
* **Synchro**'
|
|
items:
|
|
type: string
|
|
enum:
|
|
- Batch
|
|
- CardReader
|
|
- Communication
|
|
- Loyalty
|
|
- OneTimeRes
|
|
- PIN
|
|
- Reservation
|
|
- Sound
|
|
- StoredValue
|
|
- Synchro
|
|
SaleCapabilities:
|
|
type: array
|
|
description: 'place holder!
|
|
|
|
Possible values:
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierError**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CashierStatus**
|
|
|
|
* **CustomerAssistance**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerError**
|
|
|
|
* **CustomerInput**
|
|
|
|
* **EMVContactless**
|
|
|
|
* **ICC**
|
|
|
|
* **MagStripe**
|
|
|
|
* **POIReplication**
|
|
|
|
* **PrinterDocument**
|
|
|
|
* **PrinterReceipt**
|
|
|
|
* **PrinterVoucher**'
|
|
items:
|
|
type: string
|
|
enum:
|
|
- CashierDisplay
|
|
- CashierError
|
|
- CashierInput
|
|
- CashierStatus
|
|
- CustomerAssistance
|
|
- CustomerDisplay
|
|
- CustomerError
|
|
- CustomerInput
|
|
- EMVContactless
|
|
- ICC
|
|
- MagStripe
|
|
- POIReplication
|
|
- PrinterDocument
|
|
- PrinterReceipt
|
|
- PrinterVoucher
|
|
TokenRequestedType:
|
|
type: string
|
|
description: 'Type of token replacing the PAN of a payment card to identify
|
|
the payment mean of the customer. It allows, for a merchant, to use a token
|
|
for a transaction only or for a longer period.
|
|
|
|
Possible values:
|
|
|
|
* **Customer**
|
|
|
|
* **Transaction**'
|
|
enum:
|
|
- Customer
|
|
- Transaction
|
|
CustomerOrderReq:
|
|
type: array
|
|
description: 'List of customer order open, closed or both to be sent in the
|
|
response messages.
|
|
|
|
Possible values:
|
|
|
|
* **Both**
|
|
|
|
* **Closed**
|
|
|
|
* **Open**'
|
|
items:
|
|
type: string
|
|
enum:
|
|
- Both
|
|
- Closed
|
|
- Open
|
|
TrackFormat:
|
|
type: string
|
|
description: 'Magnetic track or magnetic ink characters line.
|
|
|
|
Possible values:
|
|
|
|
* **AAMVA**
|
|
|
|
* **ISO**'
|
|
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
|
|
description: 'Indicates if the printer is working and usable.
|
|
|
|
Possible values:
|
|
|
|
* **NoPaper**
|
|
|
|
* **OK**
|
|
|
|
* **OutOfOrder**
|
|
|
|
* **PaperJam**
|
|
|
|
* **PaperLow**'
|
|
enum:
|
|
- NoPaper
|
|
- OK
|
|
- OutOfOrder
|
|
- PaperJam
|
|
- PaperLow
|
|
POICapabilities:
|
|
type: array
|
|
description: 'Hardware capabilities of the POI Terminal. They are the POI capabilities
|
|
the POI System allows the Sale System to use. These POI capabilities include
|
|
the logical devices enumerated in the devices data element (most of these
|
|
devices could be on the POI part), plus card reader devices. Sent in the Login
|
|
Response to identify the devices of the POI Terminal which can be used by
|
|
the Sale System during the session.
|
|
|
|
Possible values:
|
|
|
|
* **CashHandling**
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierError**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerError**
|
|
|
|
* **CustomerInput**
|
|
|
|
* **EMVContactless**
|
|
|
|
* **ICC**
|
|
|
|
* **MagStripe**
|
|
|
|
* **PrinterDocument**
|
|
|
|
* **PrinterReceipt**
|
|
|
|
* **PrinterVoucher**'
|
|
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
|
|
description: 'Format of the content to display or print. Display or print device
|
|
function.
|
|
|
|
Possible values:
|
|
|
|
* **BarCode**
|
|
|
|
* **MessageRef**
|
|
|
|
* **Text**
|
|
|
|
* **XHTML**'
|
|
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
|
|
description: 'Type of Barcode coding. Qualification of the barcode value to
|
|
display or print.
|
|
|
|
Possible values:
|
|
|
|
* **Code128**
|
|
|
|
* **Code25**
|
|
|
|
* **EAN13**
|
|
|
|
* **EAN8**
|
|
|
|
* **PDF417**
|
|
|
|
* **QRCode**
|
|
|
|
* **UPCA**'
|
|
enum:
|
|
- Code128
|
|
- Code25
|
|
- EAN13
|
|
- EAN8
|
|
- PDF417
|
|
- QRCode
|
|
- UPCA
|
|
MenuEntryTag:
|
|
type: string
|
|
description: 'Characteristics related to the selection of a menu entry.
|
|
|
|
Possible values:
|
|
|
|
* **NonSelectable**
|
|
|
|
* **NonSelectableSubMenu**
|
|
|
|
* **Selectable**
|
|
|
|
* **SubMenu**'
|
|
enum:
|
|
- NonSelectable
|
|
- NonSelectableSubMenu
|
|
- Selectable
|
|
- SubMenu
|
|
TransactionAction:
|
|
type: string
|
|
description: "Action to realise on a transaction. In an `EnableService` request\
|
|
\ message:\n - Starts a transaction by a swipe-ahead mechanism, with the\
|
|
\ services which are enabled.\n - Aborts a swipe-ahead transaction or started\
|
|
\ by a `CardAcquisition`, and not followed by a service request from the Sale\
|
|
\ System to complete the transaction.\nPossible values:\n* **AbortTransaction**\n\
|
|
* **StartTransaction**"
|
|
enum:
|
|
- AbortTransaction
|
|
- StartTransaction
|
|
ServicesEnabled:
|
|
type: array
|
|
description: 'Services which are enabled before the start-up of a transaction.
|
|
|
|
Mandatory if `TransactionAction` is `StartTransaction`, absent if not.
|
|
|
|
Possible values:
|
|
|
|
* **CardAcquisition**
|
|
|
|
* **Loyalty**
|
|
|
|
* **Payment**'
|
|
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
|
|
description: 'Support of the loyalty account identification. Allows knowing
|
|
where and how you have found the loyalty account identification.
|
|
|
|
Possible values:
|
|
|
|
* **HybridCard**
|
|
|
|
* **LinkedCard**
|
|
|
|
* **LoyaltyCard**
|
|
|
|
* **NoCard**'
|
|
enum:
|
|
- HybridCard
|
|
- LinkedCard
|
|
- LoyaltyCard
|
|
- NoCard
|
|
InstalmentType:
|
|
type: string
|
|
description: 'Type of instalment transaction. For requesting an instalment payment
|
|
transaction.
|
|
|
|
Possible values:
|
|
|
|
* **DeferredInstalments**
|
|
|
|
* **EqualInstalments**
|
|
|
|
* **InequalInstalments**'
|
|
enum:
|
|
- DeferredInstalments
|
|
- EqualInstalments
|
|
- InequalInstalments
|
|
PeriodUnit:
|
|
type: string
|
|
description: 'Type of instalment transaction.
|
|
|
|
Possible values:
|
|
|
|
* **Annual**
|
|
|
|
* **Daily**
|
|
|
|
* **Monthly**
|
|
|
|
* **Weekly**'
|
|
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
|
|
description: 'Method for customer authentication. Allows the Sale System informed
|
|
about customer authentication for the payment transaction.
|
|
|
|
Possible values:
|
|
|
|
* **Bypass**
|
|
|
|
* **ManualVerification**
|
|
|
|
* **MerchantAuthentication**
|
|
|
|
* **OfflinePIN**
|
|
|
|
* **OnlinePIN**
|
|
|
|
* **PaperSignature**
|
|
|
|
* **SecureCertificate**
|
|
|
|
* **SecureNoCertificate**
|
|
|
|
* **SecuredChannel**
|
|
|
|
* **SignatureCapture**
|
|
|
|
* **UnknownMethod**'
|
|
items:
|
|
type: string
|
|
enum:
|
|
- Bypass
|
|
- ManualVerification
|
|
- MerchantAuthentication
|
|
- OfflinePIN
|
|
- OnlinePIN
|
|
- PaperSignature
|
|
- SecureCertificate
|
|
- SecureNoCertificate
|
|
- SecuredChannel
|
|
- SignatureCapture
|
|
- UnknownMethod
|
|
LoyaltyTransactionType:
|
|
type: string
|
|
description: "Type of loyalty transaction. These types of loyalty transactions\
|
|
\ use the same message requests:\n * **Award**: direct or payment-related\
|
|
\ award on a loyalty account.\n * **Rebate**: rebate on a total amount, sale\
|
|
\ item amount, or sale items.\n * **Redemption**: redemption on a loyalty\
|
|
\ account.\n * **AwardRefund**: refund of a loyalty award transaction.\n\
|
|
\ * **RebateRefund**: refund of a loyalty rebate transaction.\n * **RedemptionRefund**:\
|
|
\ refund of a loyalty redemption transaction.\nPossible values:\n* **Award**\n\
|
|
* **AwardRefund**\n* **Rebate**\n* **RebateRefund**\n* **Redemption**\n* **RedemptionRefund**"
|
|
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..
|
|
|
|
Possible values:
|
|
|
|
* **CustCancel**
|
|
|
|
* **Malfunction**
|
|
|
|
* **MerchantCancel**
|
|
|
|
* **Unable2Compl**'
|
|
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
|
|
description: 'Indicates the hierarchical structure of the reconciliation result
|
|
of the Sale to POI reconciliation.
|
|
|
|
Required to present totals per value of element included in this cluster (POI
|
|
Terminal, Sale Terminal, Cashier, Shift, TotalsGroupID).
|
|
|
|
Possible values:
|
|
|
|
* **OperatorID**
|
|
|
|
* **POIID**
|
|
|
|
* **SaleID**
|
|
|
|
* **ShiftNumber**
|
|
|
|
* **TotalsGroupID**'
|
|
items:
|
|
type: string
|
|
enum:
|
|
- OperatorID
|
|
- POIID
|
|
- SaleID
|
|
- ShiftNumber
|
|
- TotalsGroupID
|
|
AccountType:
|
|
type: string
|
|
description: 'Type of cardholder account used for the transaction. Allows a
|
|
cardholder to select the type of account used for the transaction.
|
|
|
|
Possible values:
|
|
|
|
* **CardTotals**
|
|
|
|
* **Checking**
|
|
|
|
* **CreditCard**
|
|
|
|
* **Default**
|
|
|
|
* **EpurseCard**
|
|
|
|
* **Investment**
|
|
|
|
* **Savings**
|
|
|
|
* **Universal**'
|
|
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
|
|
- None
|
|
- 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.
|
|
|
|
Possible values:
|
|
|
|
* **Abort**
|
|
|
|
* **BeginMaintenance**
|
|
|
|
* **CardInserted**
|
|
|
|
* **CardRemoved**
|
|
|
|
* **Completed**
|
|
|
|
* **CustomerLanguage**
|
|
|
|
* **EndMaintenance**
|
|
|
|
* **Initialised**
|
|
|
|
* **KeyPressed**
|
|
|
|
* **OutOfOrder**
|
|
|
|
* **Reject**
|
|
|
|
* **SaleAdmin**
|
|
|
|
* **SaleWakeUp**
|
|
|
|
* **SecurityAlarm**
|
|
|
|
* **Shutdown**
|
|
|
|
* **StopAssistance**
|
|
|
|
* **UseAnotherCardForPreauth**'
|
|
enum:
|
|
- Abort
|
|
- BeginMaintenance
|
|
- CardInserted
|
|
- CardRemoved
|
|
- Completed
|
|
- CustomerLanguage
|
|
- EndMaintenance
|
|
- Initialised
|
|
- KeyPressed
|
|
- OutOfOrder
|
|
- Reject
|
|
- SaleAdmin
|
|
- SaleWakeUp
|
|
- SecurityAlarm
|
|
- Shutdown
|
|
- StopAssistance
|
|
- UseAnotherCardForPreauth
|
|
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.
|
|
|
|
Possible values:
|
|
|
|
* **PINEnter**
|
|
|
|
* **PINVerify**
|
|
|
|
* **PINVerifyOnly**'
|
|
enum:
|
|
- PINEnter
|
|
- PINVerify
|
|
- PINVerifyOnly
|
|
SaleToIssuerData:
|
|
type: object
|
|
description: 'Sale information intended for the Issuer.
|
|
|
|
The POI System receives this information and sends it to the Acquirer for
|
|
the Issuer without any change.'
|
|
properties:
|
|
StatementReference:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Label to print on the bank statement.
|
|
TrackData:
|
|
type: object
|
|
description: 'Magnetic track or magnetic ink characters line.
|
|
|
|
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.'
|
|
properties:
|
|
TrackNumb:
|
|
type: integer
|
|
minimum: 1
|
|
maximum: 3
|
|
default: 2
|
|
description: Card track number.
|
|
TrackFormat:
|
|
$ref: '#/components/schemas/TrackFormat'
|
|
description: 'Card track format.
|
|
|
|
Possible values:
|
|
|
|
* **AAMVA**
|
|
|
|
* **ISO**'
|
|
TrackValue:
|
|
type: string
|
|
pattern: ^.{1,104}$
|
|
description: Card track content.
|
|
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
|
|
description: Primary Account Number.
|
|
CardSeqNumb:
|
|
type: integer
|
|
minimum: 2
|
|
maximum: 3
|
|
description: 'Card Sequence Number.
|
|
|
|
If EntryMode is File, Keyed, or Manual.'
|
|
ExpiryDate:
|
|
type: integer
|
|
minimum: 4
|
|
maximum: 4
|
|
description: 'Date after which the card cannot be used.
|
|
|
|
If EntryMode is File.'
|
|
TrackData:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TrackData'
|
|
description: 'Magnetic track or magnetic ink characters line.
|
|
|
|
If EntryMode is MagStripe or RFID .'
|
|
PaymentToken:
|
|
type: object
|
|
description: "Surrogate of the PAN (Primary Account Number) of the payment card\
|
|
\ to\n identify the payment mean of the customer. It allows, for a merchant,\
|
|
\ to identify\n the customer."
|
|
properties:
|
|
TokenRequestedType:
|
|
$ref: '#/components/schemas/TokenRequestedType'
|
|
description: "Type of token replacing the PAN of a payment card to identify\
|
|
\ the payment\n mean of the customer. It allows, for a merchant, to use\
|
|
\ a token for a transaction\n only or for a longer period.\nPossible values:\n\
|
|
* **Customer**\n* **Transaction**"
|
|
TokenValue:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: "Payment token replacing the PAN of the payment card to identify\
|
|
\ the payment\n mean of the customer."
|
|
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: ^.+$
|
|
description: Identification of a Sale global transaction for a sequence
|
|
of related POI transactions. Identification of a reservation transaction
|
|
for the sequence of reservation and the completion.
|
|
OpenOrderState:
|
|
type: boolean
|
|
default: true
|
|
description: 'Specifies if a customer order is currently Open. An open customer
|
|
order
|
|
|
|
is an order waiting for further operations.'
|
|
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
|
|
description: "Depending on the choice of the sale system it could equal\
|
|
\ the initial amount\n of the order or the global amount of the order.\
|
|
\ If ForecastedAmount equals\n the initial amount of the order it will\
|
|
\ allow the system to follow any additional\n payment. In case of equality\
|
|
\ with the global amount of the order, the system\nwill then be able to\
|
|
\ follow remaining amounts."
|
|
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: ^.+$
|
|
description: 'Identification of an entity accessing data to perform an operation.
|
|
Allow
|
|
|
|
the synchronisation of customer order processing, when several parts of
|
|
the Sale System
|
|
|
|
access a customer order at the same time. The Sale entity active on the
|
|
customer order is identified
|
|
|
|
by this data.'
|
|
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: 'Information related to the payment card used for the transaction.
|
|
|
|
Allows acquisition of the card data by the Sale System before the Payment,
|
|
CardAcquisition, or BalanceInquiry request to the POI. It can also be sent
|
|
in the CardAcquisition response, to be processed by the Sale System.'
|
|
properties:
|
|
PaymentBrand:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Type of payment card.
|
|
|
|
If card PAN is readable.
|
|
|
|
Indicates the card used to pay in the PaymentResponse. Sent in the CardAcquisitionResponse,
|
|
to leave the Cashier to choose between several applications in a smartcard,
|
|
or several brand in a co-branded card. In this case, the CardAcquisitionRequest.ForceCustomerSelectionFlag
|
|
must contain the value False. Brands are part of the POI and Sale Systems
|
|
configurations.'
|
|
MaskedPan:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Masked Primary Account Number
|
|
|
|
Part of the PAN is replaced by a string of * characters, to identify a
|
|
customer account or relationship. Presence of this data element, which
|
|
replace the PAN when SensitiveCardData is protected and replaced by ProtectedCardData.
|
|
Alternatively the MaskedPAN can be used as a token to identify a customer.'
|
|
PaymentAccountRef:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Reference of the PAN, which identifies the PAN or the card
|
|
uniquely, named also PAR (Payment Account Reference). This reference may
|
|
be defined by the card issuer or by a token service provider under the
|
|
control of the card issuer, and cannot be used for a payment transaction.
|
|
EntryMode:
|
|
$ref: '#/components/schemas/EntryMode'
|
|
description: 'Entry mode of the payment instrument information. In the Payment,
|
|
Loyalty or StoredValue Request messages, it informs the POI System the
|
|
entry mode of the payment instrument information when read by the Sale
|
|
Terminal. In the Payment, Loyalty or StoredValue Response messages, it
|
|
informs the Sale System the entry mode of the payment instrument.
|
|
|
|
Possible values:
|
|
|
|
* **Contactless**
|
|
|
|
* **File**
|
|
|
|
* **ICC**
|
|
|
|
* **Keyed**
|
|
|
|
* **MagStripe**
|
|
|
|
* **Manual**
|
|
|
|
* **Mobile**
|
|
|
|
* **RFID**
|
|
|
|
* **Scanned**
|
|
|
|
* **SynchronousICC**
|
|
|
|
* **Tapped**'
|
|
CardCountryCode:
|
|
type: integer
|
|
minimum: 3
|
|
maximum: 3
|
|
description: 'Country Code attached to the card (3 numerics).
|
|
|
|
If available in the card.'
|
|
ProtectedCardData:
|
|
type: string
|
|
description: 'Sensitive information related to the payment card, protected
|
|
by CMS.
|
|
|
|
SensitiveCardData protected by CMS EnvelopedData.'
|
|
SensitiveCardData:
|
|
$ref: '#/components/schemas/SensitiveCardData'
|
|
description: 'Sensitive information related to the payment card, entered
|
|
or read by the Sale System.
|
|
|
|
If structure non empty and unprotected.'
|
|
AllowedProductCode:
|
|
type: array
|
|
items:
|
|
type: integer
|
|
minimum: 1
|
|
maximum: 20
|
|
description: 'Product codes that are payable by the payment card.
|
|
|
|
If not all the products are accepted for the payment card proposed by
|
|
the Customer. In this case, Result is failure, ErrorCondition is Payment
|
|
Restriction.
|
|
|
|
For One Time Reservation, the POI can send product codes payable by
|
|
the payment, even if the POI did not send SaleItem in the request. If
|
|
at least one product sent
|
|
|
|
in the request is accepted, the Result is Success.
|
|
|
|
Product codes that are payable by the payment card. If all the products
|
|
are not accepted for the payment card proposed by the Customer. In this
|
|
case, Result is failure and ErrorCondition is Payment Restriction. For
|
|
One Time Reservation, the POI can send product codes payable by the
|
|
payment, even if the POI did not send SaleItem in the request. If at
|
|
least one product sent in the request is accepted, the Result is Success.'
|
|
description: 'Product codes that are payable by the payment card.
|
|
|
|
If not all the products are accepted for the payment card proposed by
|
|
the Customer. In this case, Result is failure, ErrorCondition is Payment
|
|
Restriction.
|
|
|
|
For One Time Reservation, the POI can send product codes payable by the
|
|
payment, even if the POI did not send SaleItem in the request. If at least
|
|
one product sent
|
|
|
|
in the request is accepted, the Result is Success.
|
|
|
|
Product codes that are payable by the payment card. If all the products
|
|
are not accepted for the payment card proposed by the Customer. In this
|
|
case, Result is failure and ErrorCondition is Payment Restriction. For
|
|
One Time Reservation, the POI can send product codes payable by the payment,
|
|
even if the POI did not send SaleItem in the request. If at least one
|
|
product sent in the request is accepted, the Result is Success.'
|
|
AllowedProduct:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AllowedProduct'
|
|
description: Product that is payable by the payment card.
|
|
PaymentToken:
|
|
$ref: '#/components/schemas/PaymentToken'
|
|
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.
|
|
|
|
Restriction of product payable by a card.'
|
|
CustomerOrder:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CustomerOrder'
|
|
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.
|
|
TransactionIDType:
|
|
type: object
|
|
description: Identification of a transaction for the Sale System or the POI
|
|
System.
|
|
properties:
|
|
TransactionID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Unique identification of a transaction to identify the transaction
|
|
on
|
|
|
|
the Sale System (e.g. ticket number), or the POI System.'
|
|
TimeStamp:
|
|
type: string
|
|
format: date-time
|
|
description: "Date and time of a transaction for the Sale System, the POI\
|
|
\ System or the Acquirer.\n Ensures the uniqueness of a transaction and\
|
|
\ indicates the time when the event\n occurs in the EventNotification\
|
|
\ message."
|
|
required:
|
|
- TransactionID
|
|
- TimeStamp
|
|
SaleTerminalData:
|
|
type: object
|
|
description: 'Information related to the software and hardware features of the
|
|
Sale Terminal.
|
|
|
|
Sent in the Login Request if a Sale Terminal is involved in the login. In
|
|
other messages, sent when a logical device is out of order (SaleCapabilities)
|
|
or when other data have changed or were missing in the Login.'
|
|
properties:
|
|
TotalsGroupID:
|
|
type: string
|
|
pattern: ^.{1,16}$
|
|
description: 'Identification of a group of transactions on a POI Terminal,
|
|
having the same Sale features.
|
|
|
|
Could be used to group POI for reconciliation or other purpose defined
|
|
by the Sale System. The default value is assigned by the Login Request.'
|
|
SaleData:
|
|
type: object
|
|
description: Data associated with the Sale System, with a particular value during
|
|
the processing of the payment by the POI, including the cards acquisition.
|
|
properties:
|
|
OperatorID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of the Cashier or Operator.
|
|
OperatorLanguage:
|
|
type: string
|
|
pattern: ^[a-z]{2,2}$
|
|
description: 'Language of the Cashier or Operator.
|
|
|
|
If different from the Login.'
|
|
ShiftNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Shift number.
|
|
|
|
If different from the Login, see Login SaleData.'
|
|
SaleTransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
description: Identification of a Sale transaction.
|
|
SaleReferenceID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a Sale global transaction for a sequence
|
|
of related POI transactions.
|
|
|
|
If payment reservation.'
|
|
SaleTerminalData:
|
|
$ref: '#/components/schemas/SaleTerminalData'
|
|
description: 'Information related to the software and hardware features
|
|
of the Sale Terminal.
|
|
|
|
If content is not empty.'
|
|
TokenRequestedType:
|
|
$ref: '#/components/schemas/TokenRequestedType'
|
|
description: "Type of token replacing the PAN of a payment card to identify\
|
|
\ the payment\n mean of the customer. It allows, for a merchant, to use\
|
|
\ a token for a transaction\n only or for a longer period.\nPossible values:\n\
|
|
* **Customer**\n* **Transaction**"
|
|
CustomerOrderID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Additional and optional identification of a customer order.
|
|
CustomerOrderReq:
|
|
$ref: '#/components/schemas/CustomerOrderReq'
|
|
description: 'List of customer order open, closed or both to be sent in
|
|
the response messages.
|
|
|
|
Possible values:
|
|
|
|
* **Both**
|
|
|
|
* **Closed**
|
|
|
|
* **Open**'
|
|
SaleToPOIData:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Sale information intended for the POI.
|
|
|
|
Stored with the transaction.'
|
|
SaleToAcquirerData:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Sale information intended for the Acquirer.
|
|
|
|
Send to the Acquirer if present.'
|
|
SaleToIssuerData:
|
|
$ref: '#/components/schemas/SaleToIssuerData'
|
|
description: 'Sale information intended for the Issuer.
|
|
|
|
Send to the Acquirer if present.'
|
|
required:
|
|
- SaleTransactionID
|
|
POIData:
|
|
type: object
|
|
description: 'Data related to the POI System.
|
|
|
|
In the Message Response, identification of the POI transaction.'
|
|
properties:
|
|
POITransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
description: Unique identification of a POI transaction for a POI.
|
|
POIReconciliationID:
|
|
type: integer
|
|
description: 'Identification of the reconciliation period between Sale and
|
|
POI.
|
|
|
|
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: ^.+$
|
|
description: Identification of the Manufacturer.
|
|
ApplicationName:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Name of the software product.
|
|
SoftwareVersion:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Version of the software product.
|
|
CertificationCode:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Certification code of the software which manages the Sale to
|
|
POI protocol.
|
|
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 coins or bills of a certain value.
|
|
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'
|
|
description: Number of coins or bills of a given value.
|
|
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'
|
|
description: 'Global status of a POI Server or POI Terminal.
|
|
|
|
Possible values:
|
|
|
|
* **Busy**
|
|
|
|
* **Maintenance**
|
|
|
|
* **OK**
|
|
|
|
* **Unreachable**'
|
|
SecurityOKFlag:
|
|
type: boolean
|
|
description: 'Indicates if the security module of the POI is working and
|
|
usable.
|
|
|
|
If security module present.'
|
|
PEDOKFlag:
|
|
type: boolean
|
|
description: 'Indicates if the PED is working and usable.
|
|
|
|
If PED present.'
|
|
CardReaderOKFlag:
|
|
type: boolean
|
|
description: 'Indicates if the card readers are working and usable.
|
|
|
|
If card reader device present.'
|
|
PrinterStatus:
|
|
$ref: '#/components/schemas/PrinterStatus'
|
|
description: 'Possible values:
|
|
|
|
* **NoPaper**
|
|
|
|
* **OK**
|
|
|
|
* **OutOfOrder**
|
|
|
|
* **PaperJam**
|
|
|
|
* **PaperLow**'
|
|
CommunicationOKFlag:
|
|
type: boolean
|
|
description: 'Indicates if the communication infrastructure is working and
|
|
usable.
|
|
|
|
If communication infrastructure present.'
|
|
CashHandlingDevice:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CashHandlingDevice'
|
|
description: 'Status of cash handling device.
|
|
|
|
If cash handling devices present.'
|
|
FraudPreventionFlag:
|
|
type: boolean
|
|
description: 'Indicates a suspicion of fraud by the POI System.
|
|
|
|
Could be set to True by the POI system to notify to the Sale system and
|
|
the Cashier that a suspicion of fraud had been detected on the POI as
|
|
an unexpected reboot of the POI.'
|
|
required:
|
|
- GlobalStatus
|
|
Response:
|
|
type: object
|
|
description: 'Result of a message request processing.
|
|
|
|
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.'
|
|
properties:
|
|
Result:
|
|
$ref: '#/components/schemas/Result'
|
|
description: 'Result of the processing of the message.
|
|
|
|
Possible values:
|
|
|
|
* **Failure**
|
|
|
|
* **Partial**
|
|
|
|
* **Success**'
|
|
ErrorCondition:
|
|
$ref: '#/components/schemas/ErrorCondition'
|
|
description: 'Condition that has produced an error on the processing of
|
|
a message request.
|
|
|
|
Returned if Result is not Success.
|
|
|
|
Possible values:
|
|
|
|
* **Aborted**
|
|
|
|
* **Busy**
|
|
|
|
* **Cancel**
|
|
|
|
* **DeviceOut**
|
|
|
|
* **InProgress**
|
|
|
|
* **InsertedCard**
|
|
|
|
* **InvalidCard**
|
|
|
|
* **LoggedOut**
|
|
|
|
* **MessageFormat**
|
|
|
|
* **NotAllowed**
|
|
|
|
* **NotFound**
|
|
|
|
* **PaymentRestriction**
|
|
|
|
* **Refusal**
|
|
|
|
* **UnavailableDevice**
|
|
|
|
* **UnavailableService**
|
|
|
|
* **UnreachableHost**
|
|
|
|
* **WrongPIN**'
|
|
AdditionalResponse:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Additional information related to processing status of a message
|
|
request.
|
|
|
|
If present, the POI logs it for further examination.'
|
|
required:
|
|
- Result
|
|
POISoftware:
|
|
type: object
|
|
description: Information related to the software of the POI System which manages
|
|
the Sale to POI protocol. In a session allows identifying the product features
|
|
of a POI System.
|
|
properties:
|
|
ManufacturerID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of the Manufacturer. Sent in the Login Request
|
|
(Response) to identify the Sale System (POI System) manufacturer during
|
|
the session.
|
|
ApplicationName:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Name of the software product. Sent in the Login Request (Response)
|
|
to identify the Sale System (POI System) product name during the session.
|
|
SoftwareVersion:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Version of the software product. Sent in the Login Request
|
|
(Response) to identify the version of the Sale System (POI System) product
|
|
software during the session.
|
|
CertificationCode:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Certification code of the software which manages the Sale to
|
|
POI protocol. Sent in the Login Request (Response) to get the certification
|
|
code of the Sale System (POI System) product software. This code can be
|
|
a software checksum or any number associated with the software.
|
|
required:
|
|
- ManufacturerID
|
|
- ApplicationName
|
|
- SoftwareVersion
|
|
- CertificationCode
|
|
POIProfile:
|
|
type: object
|
|
properties:
|
|
GenericProfile:
|
|
$ref: '#/components/schemas/GenericProfile'
|
|
description: 'Possible values:
|
|
|
|
* **Basic**
|
|
|
|
* **Extended**
|
|
|
|
* **Standard**'
|
|
ServiceProfiles:
|
|
$ref: '#/components/schemas/ServiceProfiles'
|
|
description: 'Possible values:
|
|
|
|
* **Batch**
|
|
|
|
* **CardReader**
|
|
|
|
* **Communication**
|
|
|
|
* **Loyalty**
|
|
|
|
* **OneTimeRes**
|
|
|
|
* **PIN**
|
|
|
|
* **Reservation**
|
|
|
|
* **Sound**
|
|
|
|
* **StoredValue**
|
|
|
|
* **Synchro**'
|
|
POITerminalData:
|
|
type: object
|
|
description: Information related to the software and hardware features of the
|
|
POI Terminal. In a session, it allows identifying the features of the POI
|
|
Terminal attached to a Sale Terminal per Login Request message.
|
|
properties:
|
|
TerminalEnvironment:
|
|
$ref: '#/components/schemas/TerminalEnvironment'
|
|
description: 'Environment of the Terminal. Sent in the Login Request (Response)
|
|
to identify the environment of the Sale System (POI System) during the
|
|
session. In other message, when the data has changed since the Login.
|
|
|
|
Possible values:
|
|
|
|
* **Attended**
|
|
|
|
* **SemiAttended**
|
|
|
|
* **Unattended**'
|
|
POICapabilities:
|
|
$ref: '#/components/schemas/POICapabilities'
|
|
description: 'Hardware capabilities of the POI Terminal. They are the POI
|
|
capabilities the POI System allows the Sale System to use. These POI capabilities
|
|
include the logical devices enumerated in the devices data element (most
|
|
of these devices could be on the POI part), plus card reader devices.
|
|
Sent in the Login Response to identify the devices of the POI Terminal
|
|
which can be used by the Sale System during the session.
|
|
|
|
Possible values:
|
|
|
|
* **CashHandling**
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierError**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerError**
|
|
|
|
* **CustomerInput**
|
|
|
|
* **EMVContactless**
|
|
|
|
* **ICC**
|
|
|
|
* **MagStripe**
|
|
|
|
* **PrinterDocument**
|
|
|
|
* **PrinterReceipt**
|
|
|
|
* **PrinterVoucher**'
|
|
POIProfile:
|
|
$ref: '#/components/schemas/POIProfile'
|
|
description: Functional profile of the POI Terminal. Sent in the Login Response
|
|
to identify the profiles the POI Terminal support during the session.
|
|
POISerialNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Serial number of a POI Terminal. Sent in the Login Request
|
|
by the Sale System to inform the POI System about the last known POI Terminal
|
|
hardware.
|
|
required:
|
|
- TerminalEnvironment
|
|
- POICapabilities
|
|
- POISerialNumber
|
|
POISystemData:
|
|
type: object
|
|
properties:
|
|
DateTime:
|
|
type: string
|
|
format: date-time
|
|
description: Date and Time. In the response, the POI System gives its date
|
|
and time to the Sale System.
|
|
POISoftware:
|
|
$ref: '#/components/schemas/POISoftware'
|
|
POITerminalData:
|
|
$ref: '#/components/schemas/POITerminalData'
|
|
POIStatus:
|
|
$ref: '#/components/schemas/POIStatus'
|
|
required:
|
|
- DateTime
|
|
- POISoftware
|
|
OutputText:
|
|
type: object
|
|
description: 'Content of text message to display or print.
|
|
|
|
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.'
|
|
properties:
|
|
Text:
|
|
type: string
|
|
description: Content of text message to display, print or play.
|
|
CharacterSet:
|
|
type: integer
|
|
description: Character height of the text string to display or print. Absence
|
|
of this data element means the characters have normal height.
|
|
Font:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Name of the font. Used to change character font of the output,
|
|
as agreed between the POI and Sale Systems.
|
|
StartRow:
|
|
type: integer
|
|
minimum: 1
|
|
maximum: 500
|
|
description: Row where the text string has to be displayed or printed.
|
|
StartColumn:
|
|
type: integer
|
|
minimum: 1
|
|
maximum: 500
|
|
description: Column where the text string has to be displayed or printed.
|
|
Color:
|
|
$ref: '#/components/schemas/Color'
|
|
description: 'Color of the text string to display or print.
|
|
|
|
Possible values:
|
|
|
|
* **Black**
|
|
|
|
* **Blue**
|
|
|
|
* **Cyan**
|
|
|
|
* **Green**
|
|
|
|
* **Magenta**
|
|
|
|
* **Red**
|
|
|
|
* **White**
|
|
|
|
* **Yellow**'
|
|
CharacterWidth:
|
|
$ref: '#/components/schemas/CharacterWidth'
|
|
description: 'Character width of the text string to display or print. Absence
|
|
of this data element means the characters have normal width.
|
|
|
|
Possible values:
|
|
|
|
* **DoubleWidth**
|
|
|
|
* **SingleWidth**'
|
|
CharacterHeight:
|
|
$ref: '#/components/schemas/CharacterHeight'
|
|
description: 'Character height of the text string to display or print. Absence
|
|
of this data element means the characters have normal height.
|
|
|
|
Possible values:
|
|
|
|
* **DoubleHeight**
|
|
|
|
* **HalfHeight**
|
|
|
|
* **SingleHeight**'
|
|
CharacterStyle:
|
|
$ref: '#/components/schemas/CharacterStyle'
|
|
description: 'Typographic style of the sequence of characters to display
|
|
or print. Absence of this data element means the characters have normal
|
|
style.
|
|
|
|
Possible values:
|
|
|
|
* **Bold**
|
|
|
|
* **Italic**
|
|
|
|
* **Normal**
|
|
|
|
* **Underline**'
|
|
Alignment:
|
|
$ref: '#/components/schemas/Alignment'
|
|
description: 'Alignment of the text string on the display line or print
|
|
line. Absence of this data element means the characters have normal alignment.
|
|
|
|
Possible values:
|
|
|
|
* **Centred**
|
|
|
|
* **Justified**
|
|
|
|
* **Left**
|
|
|
|
* **Right**'
|
|
EndOfLineFlag:
|
|
type: boolean
|
|
default: true
|
|
description: Indicates if the text is at the end of a line. Allows the display
|
|
or the print of a new line and a carry-over return characters after the
|
|
formatted text.
|
|
required:
|
|
- Text
|
|
PredefinedContent:
|
|
type: object
|
|
description: 'Reference of a predefined message to display or print.
|
|
|
|
It conveys information related to the predefined message.'
|
|
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'
|
|
description: 'Type of Barcode coding. Qualification of the barcode value
|
|
to display or print.
|
|
|
|
Possible values:
|
|
|
|
* **Code128**
|
|
|
|
* **Code25**
|
|
|
|
* **EAN13**
|
|
|
|
* **EAN8**
|
|
|
|
* **PDF417**
|
|
|
|
* **QRCode**
|
|
|
|
* **UPCA**'
|
|
BarcodeValue:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Value with a Barcode coding. The barcode value to display or
|
|
print.
|
|
required:
|
|
- BarcodeValue
|
|
OutputContent:
|
|
type: object
|
|
description: 'Content to display or print.
|
|
|
|
This is a sequence of elements if they have different formats.'
|
|
properties:
|
|
OutputFormat:
|
|
$ref: '#/components/schemas/OutputFormat'
|
|
description: 'Format of the content to display or print.
|
|
|
|
Possible values:
|
|
|
|
* **BarCode**
|
|
|
|
* **MessageRef**
|
|
|
|
* **Text**
|
|
|
|
* **XHTML**'
|
|
PredefinedContent:
|
|
$ref: '#/components/schemas/PredefinedContent'
|
|
description: 'Reference of a predefined message to display or print.
|
|
|
|
Mandatory, if `OutputFormat` is MessageRef, not allowed otherwise.'
|
|
OutputText:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/OutputText'
|
|
description: 'Content of text message to display or print.
|
|
|
|
Mandatory, if `OutputFormat` is Text, not allowed otherwise. One instance
|
|
of `OutputText` per shared format.'
|
|
OutputXHTML:
|
|
type: string
|
|
format: byte
|
|
pattern: ^.{0,262144}$
|
|
description: 'XHTML document body containing the message to display or print.
|
|
|
|
Mandatory if `OutputFormat` is XHTML, not allowed otherwise.'
|
|
OutputBarcode:
|
|
$ref: '#/components/schemas/OutputBarcode'
|
|
description: 'Barcode content to display or print.
|
|
|
|
Mandatory if `OutputFormat` is Barcode, not allowed otherwise.'
|
|
required:
|
|
- OutputFormat
|
|
MenuEntry:
|
|
type: object
|
|
description: 'An entry of the menu to present to the Cashier.
|
|
|
|
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 entry of
|
|
the menu.'
|
|
properties:
|
|
MenuEntryTag:
|
|
$ref: '#/components/schemas/MenuEntryTag'
|
|
description: 'Characteristics related to the selection of a menu entry.
|
|
|
|
Possible values:
|
|
|
|
* **NonSelectable**
|
|
|
|
* **NonSelectableSubMenu**
|
|
|
|
* **Selectable**
|
|
|
|
* **SubMenu**'
|
|
DefaultSelectedFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Selection of a menu entry to be displayed. In Input request
|
|
message, it allows selection of one or several menu entries before any
|
|
user action.
|
|
OutputFormat:
|
|
$ref: '#/components/schemas/OutputFormat'
|
|
description: 'Possible values:
|
|
|
|
* **BarCode**
|
|
|
|
* **MessageRef**
|
|
|
|
* **Text**
|
|
|
|
* **XHTML**'
|
|
PredefinedContent:
|
|
$ref: '#/components/schemas/PredefinedContent'
|
|
OutputText:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/OutputText'
|
|
description: Content of text message to display or print. 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.
|
|
OutputXHTML:
|
|
type: string
|
|
format: byte
|
|
pattern: ^.+$
|
|
description: XHTML document body containing the message to display or print.
|
|
required:
|
|
- OutputFormat
|
|
DisplayOutput:
|
|
type: object
|
|
description: 'Information to display and how to process 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.'
|
|
properties:
|
|
ResponseRequiredFlag:
|
|
type: boolean
|
|
default: true
|
|
description: Indicates if the message response is required.
|
|
MinimumDisplayTime:
|
|
type: integer
|
|
minimum: 0
|
|
maximum: 999
|
|
default: 0
|
|
description: Number of seconds the message has to be displayed.
|
|
Device:
|
|
$ref: '#/components/schemas/Device'
|
|
description: 'Logical device located on a Sale Terminal or a POI Terminal,
|
|
in terms of class of information to output (display, print, or store),
|
|
or input (keyboard) for the Cashier or the Customer.
|
|
|
|
Possible values:
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerInput**'
|
|
InfoQualify:
|
|
$ref: '#/components/schemas/InfoQualify'
|
|
description: 'Qualification of the information to sent to an output logical
|
|
device, to display or print to the Cashier or the Customer. Allows the
|
|
manager of the device, Sale or POI Terminal, to send the information to
|
|
a particular physical device or to present the information accordingly.
|
|
|
|
Possible values:
|
|
|
|
* **CustomerAssistance**
|
|
|
|
* **Display**
|
|
|
|
* **Document**
|
|
|
|
* **Error**
|
|
|
|
* **Input**
|
|
|
|
* **POIReplication**
|
|
|
|
* **Receipt**
|
|
|
|
* **Sound**
|
|
|
|
* **Status**
|
|
|
|
* **Voucher**'
|
|
OutputContent:
|
|
$ref: '#/components/schemas/OutputContent'
|
|
description: Content to display or print.
|
|
MenuEntry:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/MenuEntry'
|
|
description: An entry of the menu to present to the Cashier. It conveys
|
|
the 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.
|
|
OutputSignature:
|
|
type: string
|
|
format: byte
|
|
pattern: ^.+$
|
|
description: 'Vendor-specific signature of the text message to display or
|
|
print.
|
|
|
|
If protection has to be provided to the vendor on the text to display
|
|
or print.'
|
|
required:
|
|
- Device
|
|
- InfoQualify
|
|
- OutputContent
|
|
SaleItem:
|
|
type: object
|
|
description: 'Sale items of a transaction.
|
|
|
|
In loyalty or value added payment card transaction, the items of the sale
|
|
that are processed in the 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: 'Standard product code of item purchased with the transaction.
|
|
|
|
If data sent, POI has to store it and send it if the host protocol allows
|
|
it.'
|
|
UnitOfMeasure:
|
|
$ref: '#/components/schemas/UnitOfMeasure'
|
|
description: 'Unit of measure of a quantity.
|
|
|
|
If Quantity is present.
|
|
|
|
Possible values:
|
|
|
|
* **Case**
|
|
|
|
* **Centilitre**
|
|
|
|
* **Centimetre**
|
|
|
|
* **Foot**
|
|
|
|
* **Gram**
|
|
|
|
* **Inch**
|
|
|
|
* **Kilogram**
|
|
|
|
* **Kilometre**
|
|
|
|
* **Litre**
|
|
|
|
* **Meter**
|
|
|
|
* **Mile**
|
|
|
|
* **Other**
|
|
|
|
* **Ounce**
|
|
|
|
* **Pint**
|
|
|
|
* **Pound**
|
|
|
|
* **Quart**
|
|
|
|
* **UKGallon**
|
|
|
|
* **USGallon**
|
|
|
|
* **Yard**'
|
|
Quantity:
|
|
type: string
|
|
description: 'Product quantity.
|
|
|
|
If data is 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: 'Price per unit of product.
|
|
|
|
If Quantity is present.'
|
|
ItemAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Total amount of the item line.
|
|
TaxCode:
|
|
type: integer
|
|
description: 'Type of taxes associated with the line item.
|
|
|
|
If data is sent, POI has to store it and send it if the host protocol
|
|
allows it.'
|
|
SaleChannel:
|
|
type: integer
|
|
description: 'Commercial or distribution channel associated with the line
|
|
item.
|
|
|
|
If data sent, POI has to store it and send it if the host protocol allows
|
|
it.'
|
|
ProductLabel:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Product name of an item purchased with the transaction.
|
|
AdditionalProductInfo:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Additional information related to the line item.
|
|
|
|
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: 'Amount of a loyalty account.
|
|
|
|
An awarded amount or an amount to redeem to the loyalty account might be sent
|
|
in the Payment request message.'
|
|
properties:
|
|
LoyaltyUnit:
|
|
$ref: '#/components/schemas/LoyaltyUnit'
|
|
description: 'Unit of a loyalty amount. The amount could be expressed in
|
|
point or in a monetary value and a currency.
|
|
|
|
Possible values:
|
|
|
|
* **Monetary**
|
|
|
|
* **Point**'
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
AmountValue:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Value of an amount.
|
|
required:
|
|
- AmountValue
|
|
LoyaltyAccountID:
|
|
type: object
|
|
description: 'Identification of a Loyalty account.
|
|
|
|
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).'
|
|
properties:
|
|
EntryMode:
|
|
$ref: '#/components/schemas/EntryMode'
|
|
description: 'Entry mode of the payment instrument information. In the Payment,
|
|
Loyalty or StoredValue Request messages, it informs the POI System the
|
|
entry mode of the payment instrument information when read by the Sale
|
|
Terminal. In the Payment, Loyalty or StoredValue Response messages, it
|
|
informs the Sale System the entry mode of the payment instrument.
|
|
|
|
Possible values:
|
|
|
|
* **Contactless**
|
|
|
|
* **File**
|
|
|
|
* **ICC**
|
|
|
|
* **Keyed**
|
|
|
|
* **MagStripe**
|
|
|
|
* **Manual**
|
|
|
|
* **Mobile**
|
|
|
|
* **RFID**
|
|
|
|
* **Scanned**
|
|
|
|
* **SynchronousICC**
|
|
|
|
* **Tapped**'
|
|
IdentificationType:
|
|
$ref: '#/components/schemas/IdentificationType'
|
|
description: 'Type of account identification. In a request message, it informs
|
|
the POI System the type of the account or card identification, when provided
|
|
by the Sale Terminal. (e.g. because the card information is a barcode
|
|
read by the Cashier on a scanner device). In a response message, it informs
|
|
the Sale System the type of the account or card identification.
|
|
|
|
Possible values:
|
|
|
|
* **AccountNumber**
|
|
|
|
* **BarCode**
|
|
|
|
* **ISOTrack2**
|
|
|
|
* **PAN**
|
|
|
|
* **PhoneNumber**'
|
|
IdentificationSupport:
|
|
$ref: '#/components/schemas/IdentificationSupport'
|
|
description: 'Support of the loyalty account identification. Allows knowing
|
|
where and how you have found the loyalty account identification.
|
|
|
|
Possible values:
|
|
|
|
* **HybridCard**
|
|
|
|
* **LinkedCard**
|
|
|
|
* **LoyaltyCard**
|
|
|
|
* **NoCard**'
|
|
LoyaltyID:
|
|
type: string
|
|
description: Loyalty account identification conforming to the IdentificationType.
|
|
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'
|
|
description: 'Reference to the last CardAcquisition, to use the same card.
|
|
|
|
If the loyalty account ID comes from a previous CardAcquisition.'
|
|
LoyaltyAccountID:
|
|
$ref: '#/components/schemas/LoyaltyAccountID'
|
|
description: 'Identification of a Loyalty account.
|
|
|
|
If loyalty identification of the loyalty account is realised by the Sale
|
|
System.'
|
|
LoyaltyAmount:
|
|
$ref: '#/components/schemas/LoyaltyAmount'
|
|
description: 'Amount of a loyalty account.
|
|
|
|
When the Sale System want to award the Loyalty account (not for BalanceInquiryRequest).'
|
|
CheckData:
|
|
type: object
|
|
description: 'Information related to the paper check used for the transaction.
|
|
|
|
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.'
|
|
properties:
|
|
BankID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of the bank.
|
|
|
|
Mandatory if TrackData absent.'
|
|
AccountNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of the customer account.
|
|
|
|
Mandatory if TrackData absent.'
|
|
CheckNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of the bank check.
|
|
|
|
Mandatory if TrackData absent.'
|
|
TrackData:
|
|
$ref: '#/components/schemas/TrackData'
|
|
description: 'Magnetic track or magnetic ink characters line.
|
|
|
|
Mandatory if CheckNumber absent.'
|
|
CheckCardNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Check guarantee card number.
|
|
|
|
If provided by the customer.'
|
|
TypeCode:
|
|
$ref: '#/components/schemas/TypeCode'
|
|
description: 'Type of bank check.
|
|
|
|
Possible values:
|
|
|
|
* **Company**
|
|
|
|
* **Personal**'
|
|
Country:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: 'Country of the bank check.
|
|
|
|
Absent if country of the Sale system.'
|
|
SensitiveMobileData:
|
|
type: object
|
|
properties:
|
|
MSISDN:
|
|
type: integer
|
|
description: Mobile Subscriber Integrated Service Digital Network (i.e.
|
|
mobile phone number of the SIM card). Country, National Destination Code,
|
|
and Subscriber Number.
|
|
IMSI:
|
|
type: integer
|
|
description: International Mobile Subscriber Identity. Unique number associated
|
|
with the mobile phone user, containing the Mobile Country Code (MCC),
|
|
the Mobile Network Code (MNC), and the Mobile Identification Number (MSIN)
|
|
IMEI:
|
|
type: integer
|
|
description: International Mobile Equipment Identity. Unique number associated
|
|
with the mobile phone device.
|
|
required:
|
|
- MSISDN
|
|
UTMCoordinates:
|
|
type: object
|
|
properties:
|
|
UTMZone:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: UTM grid zone combination of the longitude zone (1 to 60) and
|
|
the latitude band (C to X, excluding I and O).
|
|
UTMEastward:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: X-coordinate of the Universal Transverse Mercator coordinate
|
|
system.
|
|
UTMNorthward:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Y-coordinate of the Universal Transverse Mercator coordinate
|
|
system.
|
|
required:
|
|
- UTMZone
|
|
- UTMEastward
|
|
- UTMNorthward
|
|
GeographicCoordinates:
|
|
type: object
|
|
properties:
|
|
Latitude:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Angular distance of a location on the earth south or north
|
|
of the equator.
|
|
Longitude:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Angular measurement of the distance of a location on the earth
|
|
east or west of the Greenwich observatory.
|
|
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: 'Identifies the country of a mobile phone operator.
|
|
|
|
If data available.'
|
|
MobileNetworkCode:
|
|
type: integer
|
|
minimum: 2
|
|
maximum: 3
|
|
description: 'Identifies the mobile phone operator inside a country.
|
|
|
|
If data available.'
|
|
MaskedMSISDN:
|
|
type: integer
|
|
description: 'Masked Mobile Subscriber Integrated Service Digital Network.
|
|
|
|
If data available.'
|
|
Geolocation:
|
|
$ref: '#/components/schemas/Geolocation'
|
|
description: 'Geographic location specified by geographic or UTM coordinates.
|
|
|
|
If data available.'
|
|
ProtectedMobileData:
|
|
type: string
|
|
description: 'Sensitive information related to the mobile phone, protected
|
|
by CMS.
|
|
|
|
SensitiveMobileData.'
|
|
SensitiveMobileData:
|
|
$ref: '#/components/schemas/SensitiveMobileData'
|
|
description: 'Sensitive information related to the mobile phone.
|
|
|
|
If unprotected mobile data.'
|
|
Instalment:
|
|
type: object
|
|
properties:
|
|
InstalmentType:
|
|
$ref: '#/components/schemas/InstalmentType'
|
|
description: 'Type of instalment transaction. For requesting an instalment
|
|
payment transaction.
|
|
|
|
Possible values:
|
|
|
|
* **DeferredInstalments**
|
|
|
|
* **EqualInstalments**
|
|
|
|
* **InequalInstalments**'
|
|
SequenceNumber:
|
|
type: integer
|
|
description: Sequence number of the instalment. For an instalment payment
|
|
transaction, number of the payment, from 1 to TotalNbOfPayments.
|
|
PlanID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of an instalment plan.
|
|
Period:
|
|
type: integer
|
|
description: Period of time with defined unit of time. A period between
|
|
2 payment instalments.
|
|
PeriodUnit:
|
|
$ref: '#/components/schemas/PeriodUnit'
|
|
description: 'Type of instalment transaction.
|
|
|
|
Possible values:
|
|
|
|
* **Annual**
|
|
|
|
* **Daily**
|
|
|
|
* **Monthly**
|
|
|
|
* **Weekly**'
|
|
FirstPaymentDate:
|
|
type: string
|
|
format: date
|
|
description: First date of a payment. For instalment, the date of the first
|
|
payments, if not immediate.
|
|
TotalNbOfPayments:
|
|
type: integer
|
|
description: Total number of payments. For instalment, the number of payments,
|
|
including the first one.
|
|
CumulativeAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Sum of a collection of amounts. Total amount of the payment
|
|
instalments.
|
|
FirstAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: First amount of the payment instalments.
|
|
Charges:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Charges related to a transaction. Charge related to the payment
|
|
instalments.
|
|
StoredValueAccountID:
|
|
type: object
|
|
description: Identification of the stored value account or the stored value
|
|
card and the associated product sold by the Sale System for stored value requests.
|
|
properties:
|
|
StoredValueAccountType:
|
|
$ref: '#/components/schemas/StoredValueAccountType'
|
|
description: 'Type of stored value account. Allows the distinction of the
|
|
stored value instrument to access the stored value account.
|
|
|
|
Possible values:
|
|
|
|
* **GiftCard**
|
|
|
|
* **Other**
|
|
|
|
* **PhoneCard**'
|
|
StoredValueProvider:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of the provider of the stored value account
|
|
load/reload. When the ProductCode is not sufficient to identify the provider
|
|
host which delivers the load or reload of the stored value account (for
|
|
example if it contains the identification of the application.)
|
|
OwnerName:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Name of the owner of a stored value account.
|
|
ExpiryDate:
|
|
type: integer
|
|
minimum: 4
|
|
maximum: 4
|
|
description: Date after which the card cannot be used. If EMV expiry date
|
|
is present, it overrides Track2 information. Format is MMYY.
|
|
EntryMode:
|
|
$ref: '#/components/schemas/EntryMode'
|
|
description: 'Entry mode of the payment instrument information. In the Payment,
|
|
Loyalty, or StoredValue Request messages, it informs the POI System the
|
|
entry mode of the payment instrument information when read by the Sale
|
|
Terminal. (e.g. because the payment instrument information are a barcode
|
|
read by the Cashier on a scanner device).
|
|
|
|
Possible values:
|
|
|
|
* **Contactless**
|
|
|
|
* **File**
|
|
|
|
* **ICC**
|
|
|
|
* **Keyed**
|
|
|
|
* **MagStripe**
|
|
|
|
* **Manual**
|
|
|
|
* **Mobile**
|
|
|
|
* **RFID**
|
|
|
|
* **Scanned**
|
|
|
|
* **SynchronousICC**
|
|
|
|
* **Tapped**'
|
|
IdentificationType:
|
|
$ref: '#/components/schemas/IdentificationType'
|
|
description: 'Type of account identification. In a request message, it informs
|
|
the POI System the type of the account or card identification, when provided
|
|
by the Sale Terminal. (e.g. because the card information is a barcode
|
|
read by the Cashier on a scanner device). In a response message, it informs
|
|
the Sale System the type of the account or card identification.
|
|
|
|
Possible values:
|
|
|
|
* **AccountNumber**
|
|
|
|
* **BarCode**
|
|
|
|
* **ISOTrack2**
|
|
|
|
* **PAN**
|
|
|
|
* **PhoneNumber**'
|
|
StoredValueID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Stored value account identification. The identification of
|
|
the stored value account conforming to the IdentificationType.
|
|
required:
|
|
- StoredValueAccountType
|
|
- EntryMode
|
|
- IdentificationType
|
|
- StoredValueID
|
|
PaymentInstrumentData:
|
|
type: object
|
|
description: 'Data related to the instrument of payment for the transaction.
|
|
|
|
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.'
|
|
properties:
|
|
PaymentInstrumentType:
|
|
$ref: '#/components/schemas/PaymentInstrumentType'
|
|
description: 'Type of payment instrument.
|
|
|
|
Possible values:
|
|
|
|
* **Card**
|
|
|
|
* **Cash**
|
|
|
|
* **Check**
|
|
|
|
* **Mobile**
|
|
|
|
* **StoredValue**'
|
|
ProtectedCardData:
|
|
type: string
|
|
description: 'Sensitive information related to the payment card, protected
|
|
by CMS.
|
|
|
|
SensitiveCardData protected by CMS EnvelopedData.'
|
|
CardData:
|
|
$ref: '#/components/schemas/CardData'
|
|
description: 'Information related to the payment card used for the transaction.
|
|
|
|
If PaymentInstrumentType is Card.'
|
|
CheckData:
|
|
$ref: '#/components/schemas/CheckData'
|
|
description: 'Information related to the paper check used for the transaction.
|
|
|
|
If PaymentInstrumentType is Check.'
|
|
MobileData:
|
|
$ref: '#/components/schemas/MobileData'
|
|
description: 'Information related to the mobile for the payment transaction.
|
|
|
|
If PaymentInstrumentType is Mobile.'
|
|
StoredValueAccountID:
|
|
$ref: '#/components/schemas/StoredValueAccountID'
|
|
required:
|
|
- PaymentInstrumentType
|
|
OriginalPOITransaction:
|
|
type: object
|
|
description: 'Identification of a previous POI transaction.
|
|
|
|
In the Payment or the Loyalty Request message, it allows using the card of
|
|
a previous CardAcquisition or Payment/Loyalty request.'
|
|
properties:
|
|
SaleID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of a Sale System for the NEXO SaletoPOI protocol.
|
|
POIID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a payment terminal for the NEXO SaletoPOI
|
|
protocol.
|
|
|
|
If original transaction is coming from another POI.'
|
|
POITransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
description: 'Unique identification of a POI transaction for a POI.
|
|
|
|
Absent if SaleReferenceID is sufficient to identify the transaction.'
|
|
ReuseCardDataFlag:
|
|
type: boolean
|
|
default: true
|
|
description: Indicates if the card data has to be retrieved from a previous
|
|
transaction.
|
|
ApprovalCode:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Code assigned to a transaction approval by the Acquirer.
|
|
|
|
If referral.'
|
|
AcquirerID:
|
|
type: integer
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Restrict to the Acquirer if present.'
|
|
AmountValue:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Value of an amount.
|
|
HostTransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
description: 'Identification of the transaction by the host in charge of
|
|
the stored value transaction.
|
|
|
|
If POITransactionID not present.'
|
|
TransactionConditions:
|
|
type: object
|
|
description: Conditions on which the transaction must be processed.
|
|
properties:
|
|
AllowedPaymentBrand:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Payment brands accepted for this transaction.
|
|
|
|
Card payment brands allowed by the Sale System for the payment transaction.
|
|
|
|
Restrict brand if data sent.'
|
|
description: 'Payment brands accepted for this transaction.
|
|
|
|
Card payment brands allowed by the Sale System for the payment transaction.
|
|
|
|
Restrict brand if data sent.'
|
|
AcquirerID:
|
|
type: array
|
|
items:
|
|
type: integer
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Restrict to these Acquirer if present.'
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Restrict to these Acquirer if present.'
|
|
DebitPreferredFlag:
|
|
type: boolean
|
|
description: The preferred type of payment is a debit transaction rather
|
|
than a credit transaction.
|
|
AllowedLoyaltyBrand:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Loyalty brands or programs allowed by the Sale System for
|
|
the loyalty transaction.
|
|
|
|
Restrict brand if data sent.'
|
|
description: 'Loyalty brands or programs allowed by the Sale System for
|
|
the loyalty transaction.
|
|
|
|
Restrict brand if data sent.'
|
|
LoyaltyHandling:
|
|
$ref: '#/components/schemas/LoyaltyHandling'
|
|
description: 'Type of Loyalty processing requested by the Sale System.
|
|
|
|
Possible values:
|
|
|
|
* **Allowed**
|
|
|
|
* **Forbidden**
|
|
|
|
* **Processed**
|
|
|
|
* **Proposed**
|
|
|
|
* **Required**'
|
|
ForceOnlineFlag:
|
|
type: boolean
|
|
default: false
|
|
description: 'Indicates if the Cashier requires POI forces online access
|
|
to the Acquirer.
|
|
|
|
Go online if data sent.'
|
|
ForceEntryMode:
|
|
$ref: '#/components/schemas/ForceEntryMode'
|
|
description: 'Payment instrument entry mode requested by the Sale System.
|
|
|
|
Restrict entry mode if sent.
|
|
|
|
Possible values:
|
|
|
|
* **CheckReader**
|
|
|
|
* **Contactless**
|
|
|
|
* **File**
|
|
|
|
* **ICC**
|
|
|
|
* **Keyed**
|
|
|
|
* **MagStripe**
|
|
|
|
* **Manual**
|
|
|
|
* **RFID**
|
|
|
|
* **Scanned**
|
|
|
|
* **SynchronousICC**
|
|
|
|
* **Tapped**'
|
|
MerchantCategoryCode:
|
|
type: string
|
|
pattern: ^.{3,4}$
|
|
description: 'The code which identifies the category of the transaction
|
|
(MCC).
|
|
|
|
The payment implies a specific MCC.'
|
|
PaymentData:
|
|
type: object
|
|
properties:
|
|
PaymentType:
|
|
$ref: '#/components/schemas/PaymentType'
|
|
description: 'Type of payment transaction. Elements requested by the Sale
|
|
System that are related to the payment only.
|
|
|
|
Possible values:
|
|
|
|
* **CashAdvance**
|
|
|
|
* **CashDeposit**
|
|
|
|
* **Completion**
|
|
|
|
* **FirstReservation**
|
|
|
|
* **Instalment**
|
|
|
|
* **IssuerInstalment**
|
|
|
|
* **Normal**
|
|
|
|
* **OneTimeReservation**
|
|
|
|
* **PaidOut**
|
|
|
|
* **Recurring**
|
|
|
|
* **Refund**
|
|
|
|
* **UpdateReservation**'
|
|
SplitPaymentFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if the payment of the Sale transaction is split.
|
|
Allows the POI to decline payment means that cannot accept split payment.
|
|
RequestedValidityDate:
|
|
type: string
|
|
format: date
|
|
description: Requested validity date for the reservation. Allows a specific
|
|
period for the reservation according to the need of the Merchant for the
|
|
first reservation and the reservation updates as well.
|
|
CardAcquisitionReference:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
Instalment:
|
|
$ref: '#/components/schemas/Instalment'
|
|
description: Information related an instalment transaction. To request an
|
|
instalment to the issuer, or to make individual instalments of a payment
|
|
transaction.
|
|
CustomerOrder:
|
|
$ref: '#/components/schemas/CustomerOrder'
|
|
PaymentInstrumentData:
|
|
$ref: '#/components/schemas/PaymentInstrumentData'
|
|
AmountsReq:
|
|
type: object
|
|
description: Various amounts related to the payment and loyalty request from
|
|
the Sale System.
|
|
properties:
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
RequestedAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Amount requested by the Sale for the payment.
|
|
CashBackAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: The cash-back part of the amount requested by the Sale for
|
|
the payment.
|
|
TipAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Amount paid for a tip. Allow the printing of the tip on the
|
|
receipt, and to qualify the tip part of the amount.
|
|
PaidAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: "Amount already paid in case of split payment. Depending on\
|
|
\ the context, a split payment is either a split amount, or a split basket\
|
|
\ (required by some payment means as fleet cards). The PaidAmount is present\
|
|
\ when the split payment is a split\n of the amount. Split of the\
|
|
\ basket involves two Sale Transactions, and does not have to be recognised\
|
|
\ by\n the POI."
|
|
MinimumAmountToDeliver:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Minimum amount the Sale System is allowed to deliver for this
|
|
payment. For the OneTimeReservation, when the maximum amount is unknown,
|
|
the Sale System indicates the minimum amount it allows.
|
|
MaximumCashBackAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: "Maximum amount which could be requested for cash-back to the\
|
|
\ Sale System. Allows the Cashier\n to limit the amount value of cash-back\
|
|
\ to deliver to the Customer."
|
|
MinimumSplitAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Minimum amount of a split, which could be requested by a Customer.Allows
|
|
the Merchant to limit the number of split requested by the Customer.
|
|
required:
|
|
- Currency
|
|
- RequestedAmount
|
|
PaymentTransaction:
|
|
type: object
|
|
properties:
|
|
AmountsReq:
|
|
$ref: '#/components/schemas/AmountsReq'
|
|
description: Various amounts related to the payment and loyalty request
|
|
from the Sale System.
|
|
OriginalPOITransaction:
|
|
$ref: '#/components/schemas/OriginalPOITransaction'
|
|
TransactionConditions:
|
|
$ref: '#/components/schemas/TransactionConditions'
|
|
SaleItem:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/SaleItem'
|
|
description: Sale items of a transaction. In loyalty or value added payment
|
|
card transaction, the items of the sale that are processed in the transaction.
|
|
required:
|
|
- AmountsReq
|
|
ConvertedAmount:
|
|
type: object
|
|
properties:
|
|
AmountValue:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Value of an amount.
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
required:
|
|
- AmountValue
|
|
- Currency
|
|
CurrencyConversion:
|
|
type: object
|
|
description: 'Information related to a currency conversion.
|
|
|
|
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).'
|
|
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'
|
|
description: Amount after a currency conversion.
|
|
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: 'Declaration to present to the customer or the cashier for
|
|
validation.
|
|
|
|
If a declaration has to be presented to the customer.'
|
|
required:
|
|
- ConvertedAmount
|
|
Point:
|
|
type: object
|
|
properties:
|
|
X:
|
|
type: string
|
|
description: The hexadecimal value of the coordinates of a point on the
|
|
abscissa.
|
|
Y:
|
|
type: string
|
|
description: The hexadecimal value of the coordinates of a point on the
|
|
ordinate.
|
|
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
|
|
description: Standard product code of item purchased with the transaction.
|
|
UnitOfMeasure:
|
|
$ref: '#/components/schemas/UnitOfMeasure'
|
|
description: 'Unit of measure of a quantity.
|
|
|
|
If Quantity present.
|
|
|
|
Possible values:
|
|
|
|
* **Case**
|
|
|
|
* **Centilitre**
|
|
|
|
* **Centimetre**
|
|
|
|
* **Foot**
|
|
|
|
* **Gram**
|
|
|
|
* **Inch**
|
|
|
|
* **Kilogram**
|
|
|
|
* **Kilometre**
|
|
|
|
* **Litre**
|
|
|
|
* **Meter**
|
|
|
|
* **Mile**
|
|
|
|
* **Other**
|
|
|
|
* **Ounce**
|
|
|
|
* **Pint**
|
|
|
|
* **Pound**
|
|
|
|
* **Quart**
|
|
|
|
* **UKGallon**
|
|
|
|
* **USGallon**
|
|
|
|
* **Yard**'
|
|
Quantity:
|
|
type: string
|
|
description: 'Product quantity.
|
|
|
|
If rebate is additional units.'
|
|
ItemAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: 'Total amount of the item line.
|
|
|
|
If rebate on the line item amount.'
|
|
RebateLabel:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Short text to qualify a rebate on an line item.
|
|
|
|
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'
|
|
description: Identification of a Loyalty account.
|
|
LoyaltyBrand:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a Loyalty brand.
|
|
|
|
If a card is analysed.'
|
|
required:
|
|
- LoyaltyAccountID
|
|
LoyaltyAcquirerData:
|
|
type: object
|
|
properties:
|
|
LoyaltyAcquirerID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of the loyalty Acquirer.
|
|
ApprovalCode:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Code assigned to a transaction approval by the Acquirer. Could
|
|
be an identifier of the approved transaction for the Acquirer. This data
|
|
element is conditional for the Loyalty Acquirers. Used in the PaymentRequest
|
|
request for a referral.
|
|
LoyaltyTransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
HostReconciliationID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identifier of a reconciliation period with a payment or loyalty
|
|
host. Allows the assignment of a transaction to the Acquirer reconciliation
|
|
(or batch).
|
|
Rebates:
|
|
type: object
|
|
properties:
|
|
TotalRebate:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: The global awarded amount that is not attached to an item.
|
|
RebateLabel:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Short text to qualify a rebate on an line item. Text to be
|
|
printed on a receipt in front of the rebate on an item or the rebate on
|
|
the totals.
|
|
SaleItemRebate:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/SaleItemRebate'
|
|
description: The awarded amount that is attached to an item as a rebate.
|
|
To be differentiated from the award which is the amount or quantity earned
|
|
on the loyalty account.
|
|
LoyaltyResult:
|
|
type: object
|
|
description: 'Data related to the result of a processed loyalty transaction.
|
|
|
|
In the Message Response, the result of each loyalty brand transaction.'
|
|
properties:
|
|
LoyaltyAccount:
|
|
$ref: '#/components/schemas/LoyaltyAccount'
|
|
description: Data related to a loyalty account processed in the transaction.
|
|
CurrentBalance:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: 'Balance of an account.
|
|
|
|
If known (provided by the card or an external host).'
|
|
LoyaltyAmount:
|
|
$ref: '#/components/schemas/LoyaltyAmount'
|
|
description: 'Amount of a loyalty account.
|
|
|
|
If awarded amount.'
|
|
LoyaltyAcquirerData:
|
|
$ref: '#/components/schemas/LoyaltyAcquirerData'
|
|
description: 'Data related to the loyalty Acquirer during a loyalty transaction.
|
|
|
|
If content not empty.'
|
|
Rebates:
|
|
$ref: '#/components/schemas/Rebates'
|
|
description: 'Rebate form to an award.
|
|
|
|
If rebates awarded.'
|
|
required:
|
|
- LoyaltyAccount
|
|
PaymentReceipt:
|
|
type: object
|
|
description: 'Customer or Merchant payment receipt.
|
|
|
|
If the payment receipts are printed by the Sale system and the POI or the
|
|
Sale does not implement the Print exchange (Basic profile).'
|
|
properties:
|
|
DocumentQualifier:
|
|
$ref: '#/components/schemas/DocumentQualifier'
|
|
description: 'Qualification of the document to print to the Cashier or the
|
|
Customer.
|
|
|
|
SaleReceipt or CashierReceipt.
|
|
|
|
Possible values:
|
|
|
|
* **CashierReceipt**
|
|
|
|
* **CustomerReceipt**
|
|
|
|
* **Document**
|
|
|
|
* **Journal**
|
|
|
|
* **SaleReceipt**
|
|
|
|
* **Voucher**'
|
|
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'
|
|
description: Content to display or print.
|
|
required:
|
|
- DocumentQualifier
|
|
- OutputContent
|
|
PaymentAcquirerData:
|
|
type: object
|
|
description: Data related to the response from the payment Acquirer.
|
|
properties:
|
|
AcquirerID:
|
|
type: integer
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Identification of the Acquirer when the POI System is multi-acquirer.'
|
|
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'
|
|
description: 'Identification of the Transaction for the Acquirer.
|
|
|
|
If provided by the Acquirer.'
|
|
ApprovalCode:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Code assigned to a transaction approval by the Acquirer.
|
|
|
|
If available.'
|
|
HostReconciliationID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identifier of a reconciliation period with a payment or loyalty
|
|
host. Allows the assignment of a transaction to the Acquirer reconciliation
|
|
(or batch).
|
|
required:
|
|
- MerchantID
|
|
- AcquirerPOIID
|
|
AreaSize:
|
|
type: object
|
|
properties:
|
|
X:
|
|
type: string
|
|
description: Abscissa of a point coordinates. The hexadecimal value in text
|
|
of the abscissa of the coordinates of a point. Leading zero can be removed
|
|
(e.g. 3BC, 0, and 1287).
|
|
Y:
|
|
type: string
|
|
description: Ordinate of a point coordinates. The hexadecimal value in text
|
|
of the ordinate of the coordinates of a point. Leading zero can be removed
|
|
(e.g. 3BC, 0, and 1287).
|
|
required:
|
|
- X
|
|
- Y
|
|
CapturedSignature:
|
|
type: object
|
|
properties:
|
|
AreaSize:
|
|
$ref: '#/components/schemas/AreaSize'
|
|
description: Size of an area. Contain the size of the pad area where the
|
|
signature is written, given with the maximum abscissa and ordinate values
|
|
(X and Y). The maximum value is FFFF.
|
|
SignaturePoint:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Point'
|
|
description: Coordinates of a point where the pen changes direction or lift.
|
|
Contain the Coordinates of a point of the written signature where the
|
|
pen changes direction or lift where (X and Y). When the signer lifts the
|
|
pen, both X and Y have the value FFFF.
|
|
AmountsResp:
|
|
type: object
|
|
properties:
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
AuthorizedAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Amount requested by the Sale for the payment.
|
|
TotalRebatesAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Sum of rebates in amount (total amount or line item amount)
|
|
for all the loyalty programs.
|
|
TotalFeesAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Total amount of financial fees.
|
|
CashBackAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: The cash-back part of the amount requested by the Sale for
|
|
the payment.
|
|
TipAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Amount paid for a tip. Allow the printing of the tip on the
|
|
receipt, and to qualify the tip part of the amount.
|
|
required:
|
|
- AuthorizedAmount
|
|
PaymentResult:
|
|
type: object
|
|
properties:
|
|
PaymentType:
|
|
$ref: '#/components/schemas/PaymentType'
|
|
description: 'Type of payment transaction. Elements requested by the Sale
|
|
System that are related to the payment only.
|
|
|
|
Possible values:
|
|
|
|
* **CashAdvance**
|
|
|
|
* **CashDeposit**
|
|
|
|
* **Completion**
|
|
|
|
* **FirstReservation**
|
|
|
|
* **Instalment**
|
|
|
|
* **IssuerInstalment**
|
|
|
|
* **Normal**
|
|
|
|
* **OneTimeReservation**
|
|
|
|
* **PaidOut**
|
|
|
|
* **Recurring**
|
|
|
|
* **Refund**
|
|
|
|
* **UpdateReservation**'
|
|
PaymentInstrumentData:
|
|
$ref: '#/components/schemas/PaymentInstrumentData'
|
|
AmountsResp:
|
|
$ref: '#/components/schemas/AmountsResp'
|
|
description: "Various amounts related to the payment response from the POI\
|
|
\ System. Amounts approved by the POI and the Acquirer for the payment\
|
|
\ and loyalty transaction, containing:\n * The authorised amount to be\
|
|
\ paid.\n * The amount of the rebates.\n * The amount of financial fees.\n\
|
|
\ * The cash back part of the requested amount for a payment with cash\
|
|
\ back.\n * The tip part of the requested amount for a payment with tip."
|
|
Instalment:
|
|
$ref: '#/components/schemas/Instalment'
|
|
description: Information related an instalment transaction. To request an
|
|
instalment to the issuer, or to make individual instalments of a payment
|
|
transaction.
|
|
CurrencyConversion:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CurrencyConversion'
|
|
description: Information related to a currency conversion. 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).
|
|
MerchantOverrideFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates that the Merchant forced the result of the payment
|
|
to successful. Allows the Sale System to be sure that the payment has
|
|
been forced.
|
|
CapturedSignature:
|
|
$ref: '#/components/schemas/CapturedSignature'
|
|
description: "Numeric value of a handwritten signature. Contains the value\
|
|
\ of a handwritten signature, e.g. the signature of a cardholder on the\
|
|
\ merchant payment receipt. Only one format of the signature is allowed:\n\
|
|
\ * The size of the pad area where the signature is written, given with\
|
|
\ the maximum abscissa and ordinate values.\n * The sequence of coordinates\
|
|
\ where the pen changes direction or lift."
|
|
ProtectedSignature:
|
|
type: string
|
|
description: Numeric value of a handwritten signature. Contains the value
|
|
of a handwritten signature, e.g. the signature of a cardholder on the
|
|
merchant payment receipt. The format before encryption is the encoded
|
|
data structure CapturedSignature. The data structure before encryption
|
|
includes the start and end tags for an XML encoding, the identifier and
|
|
length bytes for an ASN.1 encoding, and the complete member ProtectedSignature
|
|
for a JSON encoding.
|
|
OnlineFlag:
|
|
type: boolean
|
|
default: true
|
|
description: Indicate that the payment transaction processing has required
|
|
the approval of a host. Allows the Sale System to know if the payment
|
|
was online or offline.
|
|
AuthenticationMethod:
|
|
$ref: '#/components/schemas/AuthenticationMethod'
|
|
description: 'Method for customer authentication. Allows the Sale System
|
|
informed about customer authentication for the payment transaction.
|
|
|
|
Possible values:
|
|
|
|
* **Bypass**
|
|
|
|
* **ManualVerification**
|
|
|
|
* **MerchantAuthentication**
|
|
|
|
* **OfflinePIN**
|
|
|
|
* **OnlinePIN**
|
|
|
|
* **PaperSignature**
|
|
|
|
* **SecureCertificate**
|
|
|
|
* **SecureNoCertificate**
|
|
|
|
* **SecuredChannel**
|
|
|
|
* **SignatureCapture**
|
|
|
|
* **UnknownMethod**'
|
|
ValidityDate:
|
|
type: string
|
|
format: date
|
|
description: End of the validity period for the reservation, for the first
|
|
reservation, and the reservation updates as well.
|
|
PaymentAcquirerData:
|
|
$ref: '#/components/schemas/PaymentAcquirerData'
|
|
CardAcquisitionTransaction:
|
|
type: object
|
|
properties:
|
|
AllowedPaymentBrand:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Card payment brands allowed by the Sale System for the payment
|
|
transaction.
|
|
description: Card payment brands allowed by the Sale System for the payment
|
|
transaction.
|
|
AllowedLoyaltyBrand:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Loyalty brands or programs allowed by the Sale System for
|
|
the loyalty transaction.
|
|
description: Loyalty brands or programs allowed by the Sale System for the
|
|
loyalty transaction.
|
|
LoyaltyHandling:
|
|
$ref: '#/components/schemas/LoyaltyHandling'
|
|
description: 'Type of Loyalty processing requested by the Sale System. An
|
|
way to specify what the POI has to handle concerning the loyalty.
|
|
|
|
Possible values:
|
|
|
|
* **Allowed**
|
|
|
|
* **Forbidden**
|
|
|
|
* **Processed**
|
|
|
|
* **Proposed**
|
|
|
|
* **Required**'
|
|
ForceEntryMode:
|
|
$ref: '#/components/schemas/ForceEntryMode'
|
|
description: 'Payment instrument entry mode requested by the Sale System.
|
|
Avoid retry on an out of order card reading device, when the sale system
|
|
knows that some card entry modes on the POI do not work.
|
|
|
|
Possible values:
|
|
|
|
* **CheckReader**
|
|
|
|
* **Contactless**
|
|
|
|
* **File**
|
|
|
|
* **ICC**
|
|
|
|
* **Keyed**
|
|
|
|
* **MagStripe**
|
|
|
|
* **Manual**
|
|
|
|
* **RFID**
|
|
|
|
* **Scanned**
|
|
|
|
* **SynchronousICC**
|
|
|
|
* **Tapped**'
|
|
ForceCustomerSelectionFlag:
|
|
type: boolean
|
|
description: Indicates if the Customer realises the selection of the card
|
|
application.
|
|
TotalAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Amount of a transaction. In the Card Acquisition Request message,
|
|
it allows the processing of a contactless card.
|
|
PaymentType:
|
|
$ref: '#/components/schemas/PaymentType'
|
|
description: 'Type of payment transaction. Elements requested by the Sale
|
|
System that are related to the payment only.
|
|
|
|
Possible values:
|
|
|
|
* **CashAdvance**
|
|
|
|
* **CashDeposit**
|
|
|
|
* **Completion**
|
|
|
|
* **FirstReservation**
|
|
|
|
* **Instalment**
|
|
|
|
* **IssuerInstalment**
|
|
|
|
* **Normal**
|
|
|
|
* **OneTimeReservation**
|
|
|
|
* **PaidOut**
|
|
|
|
* **Recurring**
|
|
|
|
* **Refund**
|
|
|
|
* **UpdateReservation**'
|
|
CashBackFlag:
|
|
type: boolean
|
|
description: Cash back has been requested with the payment transaction.
|
|
Allows choice of the Customer language when the POI displays messages
|
|
or print text to Merchant interface.
|
|
LoyaltyTransaction:
|
|
type: object
|
|
properties:
|
|
LoyaltyTransactionType:
|
|
$ref: '#/components/schemas/LoyaltyTransactionType'
|
|
description: "Type of loyalty transaction. These types of loyalty transactions\
|
|
\ use the same message requests:\n * **Award**: direct or payment-related\
|
|
\ award on a loyalty account.\n * **Rebate**: rebate on a total amount,\
|
|
\ sale item amount, or sale items.\n * **Redemption**: redemption on\
|
|
\ a loyalty account.\n * **AwardRefund**: refund of a loyalty award transaction.\n\
|
|
\ * **RebateRefund**: refund of a loyalty rebate transaction.\n * **RedemptionRefund**:\
|
|
\ refund of a loyalty redemption transaction.\nPossible values:\n* **Award**\n\
|
|
* **AwardRefund**\n* **Rebate**\n* **RebateRefund**\n* **Redemption**\n\
|
|
* **RedemptionRefund**"
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
TotalAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: "Amount of a transaction. In the Loyalty Request message, it\
|
|
\ notifies the amount of the payment transaction on which the loyalty\
|
|
\ transaction has to be processed.\n In the Card Acquisition Request\
|
|
\ message, it allows the processing of a contactless card."
|
|
OriginalPOITransaction:
|
|
$ref: '#/components/schemas/OriginalPOITransaction'
|
|
TransactionConditions:
|
|
$ref: '#/components/schemas/TransactionConditions'
|
|
SaleItem:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/SaleItem'
|
|
description: "In loyalty or value added payment card transaction, Sale items\
|
|
\ included in a transaction.\n The sum of the item amount could be more\
|
|
\ than the Requested amount in case of split payment without split of\
|
|
\ the items (split basket).\n In the StoredValue request message, sale\
|
|
\ items differentiate the Stored Value product with the EanUpc data element\
|
|
\ which has to be present."
|
|
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: 'Identification of the provider of the stored value account
|
|
load/reload.
|
|
|
|
If more than one provider to manage on the POI, and StoredValueAccountID
|
|
absent.'
|
|
StoredValueTransactionType:
|
|
$ref: '#/components/schemas/StoredValueTransactionType'
|
|
description: 'Identification of operation to proceed on the stored value
|
|
account or the stored value card.
|
|
|
|
Possible values:
|
|
|
|
* **Activate**
|
|
|
|
* **Duplicate**
|
|
|
|
* **Load**
|
|
|
|
* **Reserve**
|
|
|
|
* **Reverse**
|
|
|
|
* **Unload**'
|
|
StoredValueAccountID:
|
|
$ref: '#/components/schemas/StoredValueAccountID'
|
|
description: 'Identification of the stored value account or the stored value
|
|
card.
|
|
|
|
If the identification of the Stored Value account or card has been made
|
|
by the Sale System before the request.'
|
|
OriginalPOITransaction:
|
|
$ref: '#/components/schemas/OriginalPOITransaction'
|
|
description: 'Identification of a previous POI transaction.
|
|
|
|
If StoredValueTransactionType is Reverse or Duplicate.'
|
|
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
|
|
description: If relevant and known.
|
|
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'
|
|
description: 'Identification of operation to proceed on the stored value
|
|
account or the stored value card.
|
|
|
|
Copy.
|
|
|
|
Possible values:
|
|
|
|
* **Activate**
|
|
|
|
* **Duplicate**
|
|
|
|
* **Load**
|
|
|
|
* **Reserve**
|
|
|
|
* **Reverse**
|
|
|
|
* **Unload**'
|
|
ProductCode:
|
|
type: integer
|
|
minimum: 1
|
|
maximum: 20
|
|
description: 'Product code of item purchased with the transaction.
|
|
|
|
Copy.'
|
|
EanUpc:
|
|
type: integer
|
|
description: 'Standard product code of item purchased with the transaction.
|
|
|
|
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: 'Currency of a monetary amount.
|
|
|
|
Copy.'
|
|
StoredValueAccountStatus:
|
|
$ref: '#/components/schemas/StoredValueAccountStatus'
|
|
description: Data related to the result of the stored value card transaction.
|
|
HostTransactionID:
|
|
$ref: '#/components/schemas/TransactionIDType'
|
|
description: 'Identification of the transaction by the host in charge of
|
|
the stored value transaction.
|
|
|
|
If provided by the Host.'
|
|
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'
|
|
description: 'Type of transaction for which totals are grouped.
|
|
|
|
Debit, Credit, ReverseDebit, ReverseCredit, OneTimeReservation, CompletedDeffered,
|
|
FirstReservation, UpdateReservation, CompletedReservation, CashAdvance.
|
|
|
|
Possible values:
|
|
|
|
* **Award**
|
|
|
|
* **CashAdvance**
|
|
|
|
* **CompletedDeffered**
|
|
|
|
* **CompletedReservation**
|
|
|
|
* **Credit**
|
|
|
|
* **Debit**
|
|
|
|
* **Declined**
|
|
|
|
* **Failed**
|
|
|
|
* **FirstReservation**
|
|
|
|
* **IssuerInstalment**
|
|
|
|
* **OneTimeReservation**
|
|
|
|
* **Rebate**
|
|
|
|
* **Redemption**
|
|
|
|
* **ReverseAward**
|
|
|
|
* **ReverseCredit**
|
|
|
|
* **ReverseDebit**
|
|
|
|
* **ReverseRebate**
|
|
|
|
* **ReverseRedemption**
|
|
|
|
* **UpdateReservation**'
|
|
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'
|
|
description: 'Type of transaction for which totals are grouped.
|
|
|
|
Award, ReverseAward, Redemption, ReverseRedemption, Rebate, ReverseRebate.
|
|
|
|
Possible values:
|
|
|
|
* **Award**
|
|
|
|
* **CashAdvance**
|
|
|
|
* **CompletedDeffered**
|
|
|
|
* **CompletedReservation**
|
|
|
|
* **Credit**
|
|
|
|
* **Debit**
|
|
|
|
* **Declined**
|
|
|
|
* **Failed**
|
|
|
|
* **FirstReservation**
|
|
|
|
* **IssuerInstalment**
|
|
|
|
* **OneTimeReservation**
|
|
|
|
* **Rebate**
|
|
|
|
* **Redemption**
|
|
|
|
* **ReverseAward**
|
|
|
|
* **ReverseCredit**
|
|
|
|
* **ReverseDebit**
|
|
|
|
* **ReverseRebate**
|
|
|
|
* **ReverseRedemption**
|
|
|
|
* **UpdateReservation**'
|
|
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'
|
|
description: 'Type of payment instrument.
|
|
|
|
Possible values:
|
|
|
|
* **Card**
|
|
|
|
* **Cash**
|
|
|
|
* **Check**
|
|
|
|
* **Mobile**
|
|
|
|
* **StoredValue**'
|
|
AcquirerID:
|
|
type: integer
|
|
description: Identification of the Acquirer.
|
|
HostReconciliationID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identifier of a reconciliation period with a payment or loyalty
|
|
host.
|
|
CardBrand:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Type of payment or loyalty card.
|
|
|
|
If configured to present totals per card brand, and Response.Result is
|
|
Success.'
|
|
POIID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a POI System or a POI Terminal for the Sale
|
|
to POI protocol.
|
|
|
|
Sent if requested in the message request.'
|
|
SaleID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a Sale System or a Sale Terminal for the
|
|
Sale to POI protocol.
|
|
|
|
Sent if requested in the message request.'
|
|
OperatorID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of the Cashier or Operator.
|
|
|
|
Sent if requested in the message request.'
|
|
ShiftNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Shift number.
|
|
|
|
Sent if requested in the message request.'
|
|
TotalsGroupID:
|
|
type: string
|
|
pattern: ^.{1,16}$
|
|
description: 'Identification of a group of transaction on a POI Terminal,
|
|
having the same Sale features.
|
|
|
|
Sent 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'
|
|
description: 'Totals of the payment transaction during the reconciliation
|
|
period.
|
|
|
|
If both `TransactionCount` and `TransactionAmount` are not equal to zero.'
|
|
LoyaltyUnit:
|
|
$ref: '#/components/schemas/LoyaltyUnit'
|
|
description: 'Unit of a loyalty amount.
|
|
|
|
Possible values:
|
|
|
|
* **Monetary**
|
|
|
|
* **Point**'
|
|
LoyaltyCurrency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: 'Currency of a monetary amount.
|
|
|
|
Sent if `LoyaltyUnit` is Monetary.'
|
|
LoyaltyTotals:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LoyaltyTotals'
|
|
description: 'Totals of the loyalty transaction during the reconciliation
|
|
period.
|
|
|
|
If both `TransactionCount` and `TransactionAmount` are not equal to zero.'
|
|
required:
|
|
- PaymentInstrumentType
|
|
TotalFilter:
|
|
type: object
|
|
properties:
|
|
POIID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of a POI System or a POI Terminal for the Sale
|
|
to POI protocol.
|
|
SaleID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of a Sale System or a Sale Terminal for the
|
|
Sale to POI protocol.
|
|
OperatorID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Identification of the Cashier or Operator.
|
|
ShiftNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Shift number.
|
|
TotalsGroupID:
|
|
type: string
|
|
pattern: ^.{1,16}$
|
|
description: Sent if totals in the response have to be computed only for
|
|
this particular value of TotalsGroupID.
|
|
PaymentAccountReq:
|
|
type: object
|
|
properties:
|
|
AccountType:
|
|
$ref: '#/components/schemas/AccountType'
|
|
description: 'Type of cardholder account used for the transaction. Allows
|
|
a cardholder to select the type of account used for the transaction.
|
|
|
|
Possible values:
|
|
|
|
* **CardTotals**
|
|
|
|
* **Checking**
|
|
|
|
* **CreditCard**
|
|
|
|
* **Default**
|
|
|
|
* **EpurseCard**
|
|
|
|
* **Investment**
|
|
|
|
* **Savings**
|
|
|
|
* **Universal**'
|
|
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
|
|
description: Balance of an account after processing of the transaction.
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
PaymentAcquirerData:
|
|
$ref: '#/components/schemas/PaymentAcquirerData'
|
|
LoyaltyAccountStatus:
|
|
type: object
|
|
properties:
|
|
LoyaltyAccount:
|
|
$ref: '#/components/schemas/LoyaltyAccount'
|
|
CurrentBalance:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: Balance of an account after processing of the transaction.
|
|
LoyaltyUnit:
|
|
$ref: '#/components/schemas/LoyaltyUnit'
|
|
description: 'Unit of a loyalty amount. The amount could be expressed in
|
|
point or in a monetary value and a currency.
|
|
|
|
Possible values:
|
|
|
|
* **Monetary**
|
|
|
|
* **Point**'
|
|
Currency:
|
|
type: string
|
|
pattern: ^[A-Z]{3,3}$
|
|
description: Currency of a monetary amount.
|
|
required:
|
|
- LoyaltyAccount
|
|
MessageReference:
|
|
type: object
|
|
description: 'Identification of a previous POI transaction.
|
|
|
|
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.'
|
|
properties:
|
|
MessageCategory:
|
|
$ref: '#/components/schemas/MessageCategory'
|
|
description: 'Category of message.
|
|
|
|
CardAcquisition, Display, Input, Loyalty, Payment, Print, CardReaderAPDU,
|
|
CardReaderInit, CardReaderPowerOff.
|
|
|
|
Possible values:
|
|
|
|
* **Abort**
|
|
|
|
* **Admin**
|
|
|
|
* **BalanceInquiry**
|
|
|
|
* **Batch**
|
|
|
|
* **CardAcquisition**
|
|
|
|
* **CardReaderAPDU**
|
|
|
|
* **CardReaderInit**
|
|
|
|
* **CardReaderPowerOff**
|
|
|
|
* **Diagnosis**
|
|
|
|
* **Display**
|
|
|
|
* **EnableService**
|
|
|
|
* **Event**
|
|
|
|
* **GetTotals**
|
|
|
|
* **Input**
|
|
|
|
* **InputUpdate**
|
|
|
|
* **Login**
|
|
|
|
* **Logout**
|
|
|
|
* **Loyalty**
|
|
|
|
* **None**
|
|
|
|
* **PIN**
|
|
|
|
* **Payment**
|
|
|
|
* **Print**
|
|
|
|
* **Reconciliation**
|
|
|
|
* **Reversal**
|
|
|
|
* **Sound**
|
|
|
|
* **StoredValue**
|
|
|
|
* **TransactionStatus**
|
|
|
|
* **Transmit**'
|
|
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: 'Identification of a Sale System or a Sale Terminal for the
|
|
Sale to POI protocol.
|
|
|
|
default MessageHeader.SaleID.'
|
|
POIID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of a POI System or a POI Terminal for the Sale
|
|
to POI protocol.
|
|
|
|
Default `MessageHeader.POIID`.'
|
|
MessageHeader:
|
|
type: object
|
|
description: 'Message header of the Sale to POI protocol message.
|
|
|
|
It conveys Information related to the Sale to POI protocol management.'
|
|
properties:
|
|
ProtocolVersion:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: If MessageCategory is Login or Diagnosis.
|
|
MessageClass:
|
|
$ref: '#/components/schemas/MessageClass'
|
|
description: 'Class of the message.
|
|
|
|
Possible values:
|
|
|
|
* **Device**
|
|
|
|
* **Event**
|
|
|
|
* **Service**'
|
|
MessageCategory:
|
|
$ref: '#/components/schemas/MessageCategory'
|
|
description: 'Category of message.
|
|
|
|
Possible values:
|
|
|
|
* **Abort**
|
|
|
|
* **Admin**
|
|
|
|
* **BalanceInquiry**
|
|
|
|
* **Batch**
|
|
|
|
* **CardAcquisition**
|
|
|
|
* **CardReaderAPDU**
|
|
|
|
* **CardReaderInit**
|
|
|
|
* **CardReaderPowerOff**
|
|
|
|
* **Diagnosis**
|
|
|
|
* **Display**
|
|
|
|
* **EnableService**
|
|
|
|
* **Event**
|
|
|
|
* **GetTotals**
|
|
|
|
* **Input**
|
|
|
|
* **InputUpdate**
|
|
|
|
* **Login**
|
|
|
|
* **Logout**
|
|
|
|
* **Loyalty**
|
|
|
|
* **None**
|
|
|
|
* **PIN**
|
|
|
|
* **Payment**
|
|
|
|
* **Print**
|
|
|
|
* **Reconciliation**
|
|
|
|
* **Reversal**
|
|
|
|
* **Sound**
|
|
|
|
* **StoredValue**
|
|
|
|
* **TransactionStatus**
|
|
|
|
* **Transmit**'
|
|
MessageType:
|
|
$ref: '#/components/schemas/MessageType'
|
|
description: 'Type of message of the Sale to POI protocol.
|
|
|
|
Possible values:
|
|
|
|
* **Notification**
|
|
|
|
* **Request**
|
|
|
|
* **Response**'
|
|
ServiceID:
|
|
type: string
|
|
pattern: ^.{1,10}$
|
|
description: 'Identification of a message pair, which processes a transaction.
|
|
|
|
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: 'Identification of a device message pair.
|
|
|
|
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'
|
|
description: 'Logical device located on a Sale Terminal or a POI Terminal,
|
|
in term of class of information to output (display, print or store), or
|
|
input (keyboard) for the Cashier or the Customer.
|
|
|
|
Copy.
|
|
|
|
Possible values:
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerInput**'
|
|
InfoQualify:
|
|
$ref: '#/components/schemas/InfoQualify'
|
|
description: 'Qualification of the information to sent to an output logical
|
|
device, to display or print to the Cashier or the Customer.
|
|
|
|
Copy.
|
|
|
|
Possible values:
|
|
|
|
* **CustomerAssistance**
|
|
|
|
* **Display**
|
|
|
|
* **Document**
|
|
|
|
* **Error**
|
|
|
|
* **Input**
|
|
|
|
* **POIReplication**
|
|
|
|
* **Receipt**
|
|
|
|
* **Sound**
|
|
|
|
* **Status**
|
|
|
|
* **Voucher**'
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
required:
|
|
- Device
|
|
- InfoQualify
|
|
- Response
|
|
InputData:
|
|
type: object
|
|
properties:
|
|
Device:
|
|
$ref: '#/components/schemas/Device'
|
|
description: 'Logical device located on a Sale Terminal or a POI Terminal,
|
|
regarding the class of information to output (display, print or store),
|
|
or input (keyboard) for the Cashier or the Customer.
|
|
|
|
Possible values:
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerInput**'
|
|
InfoQualify:
|
|
$ref: '#/components/schemas/InfoQualify'
|
|
description: 'Qualification of the information to send to an output logical
|
|
device, to display or print to the Cashier or the Customer.
|
|
|
|
Possible values:
|
|
|
|
* **CustomerAssistance**
|
|
|
|
* **Display**
|
|
|
|
* **Document**
|
|
|
|
* **Error**
|
|
|
|
* **Input**
|
|
|
|
* **POIReplication**
|
|
|
|
* **Receipt**
|
|
|
|
* **Sound**
|
|
|
|
* **Status**
|
|
|
|
* **Voucher**'
|
|
InputCommand:
|
|
$ref: '#/components/schemas/InputCommand'
|
|
description: 'Type of requested input. Can be: **GetConfirmation**, **TextString**,
|
|
**DigitString**, **DecimalString** or **GetMenuEntry**.
|
|
|
|
Possible values:
|
|
|
|
* **DecimalString**
|
|
|
|
* **DigitString**
|
|
|
|
* **GetAnyKey**
|
|
|
|
* **GetConfirmation**
|
|
|
|
* **GetFunctionKey**
|
|
|
|
* **GetMenuEntry**
|
|
|
|
* **Password**
|
|
|
|
* **SiteManager**
|
|
|
|
* **TextString**'
|
|
NotifyCardInputFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Request Notification of the card entered in the POI card reader.
|
|
MaxInputTime:
|
|
type: integer
|
|
description: Maximum input time in seconds. Limits the time to answer to
|
|
an Input request message.
|
|
ImmediateResponseFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates whether to request an Immediate response to the message
|
|
without waiting for the completion of the command.
|
|
MinLength:
|
|
type: integer
|
|
description: Minimum length of an entered string, or minimum number of entries
|
|
that can be selected in a menu.
|
|
MaxLength:
|
|
type: integer
|
|
description: Maximum length of an entered string, or maximum number of entries
|
|
that can be selected in a menu.
|
|
MaxDecimalLength:
|
|
type: integer
|
|
description: Maximum input length of the decimal part (without decimal point).
|
|
WaitUserValidationFlag:
|
|
type: boolean
|
|
default: true
|
|
description: Indicates that the user must confirm the entered characters,
|
|
when the maximum allowed length is reached. During the processing of an
|
|
Input command `TextString`, `DigitString` or `DecimalString` with `MaxLength`
|
|
or `MaxDecimalLength` present in the request.
|
|
DefaultInputString:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Default string value for an input command. On the `TextString`,
|
|
`DigitString` and `DecimalString` input commands: default string displayed
|
|
on the input field before entering the string. In `GetConfirmation` input
|
|
command: **Y** for yes, **N** for no.'
|
|
DefaultLayoutString:
|
|
type: string
|
|
pattern: ^.+$
|
|
StringMask:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: String mask to get information requiring a specific format.
|
|
For the processing of an Input command `TextString`, `DigitString` or
|
|
`DecimalString`. Some information as date or plate number required to
|
|
be entered with a certain format.
|
|
FromRightToLeftFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if the entered character has to be displayed from
|
|
the right to the left of the display field.
|
|
MaskCharactersFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates to mask the characters entered by the user (i.e.
|
|
replacing in the display of the input, the entered character by a standard
|
|
character as *).
|
|
BeepKeyFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates, when the user press a key, if a beep has to be generated
|
|
(value True).
|
|
GlobalCorrectionFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates, when the user presses the Correct function key in
|
|
an input entry, if all the entered characters are removed (value True)
|
|
or only the last entered character if any (value False).
|
|
DisableCancelFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if the Cancel function key has to be deactivated
|
|
(value True).
|
|
DisableCorrectFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if the Correct function key has to be deactivated
|
|
(value True). During the processing of an Input command `GetConfirmation`,
|
|
`SiteManager`, or `GetMenuEntry`.
|
|
DisableValidFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if the Valid function key has to be deactivated (value
|
|
True). During the processing of an Input command `GetConfirmation`, `SiteManager`,
|
|
or `GetMenuEntry`.
|
|
MenuBackFlag:
|
|
type: boolean
|
|
default: false
|
|
description: If it has the value True, it indicates that the Back function
|
|
key (respectively Home function key) may be used to go back to the immediate
|
|
upper level of the menu. If it has the value False, it indicates that
|
|
the current menu level has no parent menu.
|
|
required:
|
|
- Device
|
|
- InfoQualify
|
|
- InputCommand
|
|
Input:
|
|
type: object
|
|
properties:
|
|
InputCommand:
|
|
$ref: '#/components/schemas/InputCommand'
|
|
description: 'Type of requested input. Can be: **GetConfirmation**, **TextString**,
|
|
**DigitString**, **DecimalString** or **GetMenuEntry**.
|
|
|
|
Possible values:
|
|
|
|
* **DecimalString**
|
|
|
|
* **DigitString**
|
|
|
|
* **GetAnyKey**
|
|
|
|
* **GetConfirmation**
|
|
|
|
* **GetFunctionKey**
|
|
|
|
* **GetMenuEntry**
|
|
|
|
* **Password**
|
|
|
|
* **SiteManager**
|
|
|
|
* **TextString**'
|
|
ConfirmedFlag:
|
|
type: boolean
|
|
description: Indicates te response of the user from the `GetConfirmation`
|
|
input command.
|
|
FunctionKey:
|
|
type: integer
|
|
description: The number of the function key which is typed by the Customer
|
|
on the POI or the Cashier on the Sale Terminal.
|
|
TextInput:
|
|
type: string
|
|
description: The text typed by the Customer on the POI or by the Cashier
|
|
on the Sale Terminal.
|
|
DigitInput:
|
|
type: integer
|
|
description: The digits typed by the Customer on the POI or by the Cashier
|
|
on the Sale Terminal.
|
|
Password:
|
|
type: string
|
|
description: The text password typed by the Customer on the POI or by the
|
|
Cashier on the Sale Terminal.
|
|
MenuEntryNumber:
|
|
type: array
|
|
items:
|
|
type: integer
|
|
description: The index of the menu item (from 1 to n) which is selected
|
|
by the Cashier on the Sale Terminal. The value -1 indicates that the
|
|
immediate upper level of the menu is requested. The value 0 indicates
|
|
that the root of the menu is requested.
|
|
description: The index of the menu item (from 1 to n) which is selected
|
|
by the Cashier on the Sale Terminal. The value -1 indicates that the immediate
|
|
upper level of the menu is requested. The value 0 indicates that the root
|
|
of the menu is requested.
|
|
required:
|
|
- InputCommand
|
|
InputResult:
|
|
type: object
|
|
properties:
|
|
Device:
|
|
$ref: '#/components/schemas/Device'
|
|
description: 'Logical device located on a Sale Terminal or a POI Terminal,
|
|
in terms of class of information to output (display, print or store),
|
|
or input (keyboard) for the Cashier or the Customer.
|
|
|
|
Possible values:
|
|
|
|
* **CashierDisplay**
|
|
|
|
* **CashierInput**
|
|
|
|
* **CustomerDisplay**
|
|
|
|
* **CustomerInput**'
|
|
InfoQualify:
|
|
$ref: '#/components/schemas/InfoQualify'
|
|
description: 'Qualification of the information to send to an output logical
|
|
device, to display or print to the Cashier or the Customer.
|
|
|
|
Possible values:
|
|
|
|
* **CustomerAssistance**
|
|
|
|
* **Display**
|
|
|
|
* **Document**
|
|
|
|
* **Error**
|
|
|
|
* **Input**
|
|
|
|
* **POIReplication**
|
|
|
|
* **Receipt**
|
|
|
|
* **Sound**
|
|
|
|
* **Status**
|
|
|
|
* **Voucher**'
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
Input:
|
|
$ref: '#/components/schemas/Input'
|
|
description: Data entered by the user, related to the input command.
|
|
required:
|
|
- Device
|
|
- InfoQualify
|
|
- Response
|
|
PrintOutput:
|
|
type: object
|
|
properties:
|
|
DocumentQualifier:
|
|
$ref: '#/components/schemas/DocumentQualifier'
|
|
description: 'Qualification of the document to print to the Cashier or the
|
|
Customer. Allows the manager of the printer, Sale or POI Terminal, to
|
|
send information to a physical printer or to use the paper type accordingly.
|
|
|
|
Possible values:
|
|
|
|
* **CashierReceipt**
|
|
|
|
* **CustomerReceipt**
|
|
|
|
* **Document**
|
|
|
|
* **Journal**
|
|
|
|
* **SaleReceipt**
|
|
|
|
* **Voucher**'
|
|
ResponseMode:
|
|
$ref: '#/components/schemas/ResponseMode'
|
|
description: 'Message response awaited by the initiator of the Request.
|
|
Allows various types and synchronisation of requests for Print or Sound.
|
|
|
|
Possible values:
|
|
|
|
* **Immediate**
|
|
|
|
* **NotRequired**
|
|
|
|
* **PrintEnd**
|
|
|
|
* **SoundEnd**'
|
|
IntegratedPrintFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Type of the print integrated in other prints. Allows a separated
|
|
printing (paper cut if available), or integration with the sale receipt
|
|
or other print. If the printing is integrated, the response is always
|
|
immediate, even if the `ResponseMode` is set to `PrintEnd`.
|
|
RequiredSignatureFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates that the cardholder payment receipt requires a physical
|
|
signature by the Customer.
|
|
OutputContent:
|
|
$ref: '#/components/schemas/OutputContent'
|
|
description: Content to display or print. This is a sequence of elements
|
|
if they have different formats.
|
|
required:
|
|
- DocumentQualifier
|
|
- ResponseMode
|
|
- OutputContent
|
|
SoundContent:
|
|
type: object
|
|
properties:
|
|
SoundFormat:
|
|
$ref: '#/components/schemas/SoundFormat'
|
|
description: 'Possible values:
|
|
|
|
* **MessageRef**
|
|
|
|
* **SoundRef**
|
|
|
|
* **Text**'
|
|
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'
|
|
description: 'Possible values:
|
|
|
|
* **ISO0**
|
|
|
|
* **ISO1**
|
|
|
|
* **ISO2**
|
|
|
|
* **ISO3**'
|
|
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 `LoginRequest` message.'
|
|
properties:
|
|
DateTime:
|
|
type: string
|
|
format: date-time
|
|
description: Date and Time. In the Login request message, the Sale System
|
|
gives its date and time to the POI System. In the Login response, the
|
|
POI System gives its date and time to the Sale System.
|
|
SaleSoftware:
|
|
$ref: '#/components/schemas/SaleSoftware'
|
|
description: Information related to the software of the Sale System which
|
|
manages the Sale to POI protocol.
|
|
SaleTerminalData:
|
|
$ref: '#/components/schemas/SaleTerminalData'
|
|
description: 'Information related to the software and hardware feature of
|
|
the Sale Terminal.
|
|
|
|
Present if the login involve a Sale Terminal.'
|
|
TrainingModeFlag:
|
|
type: boolean
|
|
default: false
|
|
description: 'Training mode.
|
|
|
|
This flag indicates to the POI that the entire session will be not used
|
|
to make real transaction, but is used for test of system or operator training.'
|
|
OperatorLanguage:
|
|
type: string
|
|
pattern: ^[a-z]{2,2}$
|
|
description: 'Language of the Cashier or Operator.
|
|
|
|
Default value for Device type displays.'
|
|
OperatorID:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Identification of the Cashier or Operator.
|
|
|
|
Four conditions to send it:
|
|
|
|
* The Sale System wants the POI to log it in the transaction log.
|
|
|
|
* Because of reconciliation with total on OperatorID.
|
|
|
|
* Because the POI needs it.
|
|
|
|
* Acquirer or issuer need it.'
|
|
ShiftNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Shift number.
|
|
|
|
Same as OperatorID.'
|
|
TokenRequestedType:
|
|
$ref: '#/components/schemas/TokenRequestedType'
|
|
description: "Type of token replacing the PAN of a payment card to identify\
|
|
\ the payment\n mean of the customer. It allows, for a merchant, to use\
|
|
\ a token for a transaction\n only or for a longer period.\nPossible values:\n\
|
|
* **Customer**\n* **Transaction**"
|
|
CustomerOrderReq:
|
|
$ref: '#/components/schemas/CustomerOrderReq'
|
|
description: 'List of customer order open, closed or both to be sent in
|
|
the response messages.
|
|
|
|
Possible values:
|
|
|
|
* **Both**
|
|
|
|
* **Closed**
|
|
|
|
* **Open**'
|
|
POISerialNumber:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Serial number of a POI Terminal.
|
|
|
|
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
|
|
description: Indicates that the POI terminal is able to or has to go to
|
|
maintenance. Sent in the Logout Request to express that after closing
|
|
the session, the POI may go to maintenance.
|
|
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'
|
|
description: "Action to realise on a transaction. In an `EnableService`\
|
|
\ request message:\n - Starts a transaction by a swipe-ahead mechanism,\
|
|
\ with the services which are enabled.\n - Aborts a swipe-ahead transaction\
|
|
\ or started by a `CardAcquisition`, and not followed by a service request\
|
|
\ from the Sale System to complete the transaction.\nPossible values:\n\
|
|
* **AbortTransaction**\n* **StartTransaction**"
|
|
ServicesEnabled:
|
|
$ref: '#/components/schemas/ServicesEnabled'
|
|
description: 'Services which are enabled before the start-up of a transaction.
|
|
|
|
Mandatory if `TransactionAction` is `StartTransaction`, absent if not.
|
|
|
|
Possible values:
|
|
|
|
* **CardAcquisition**
|
|
|
|
* **Loyalty**
|
|
|
|
* **Payment**'
|
|
DisplayOutput:
|
|
$ref: '#/components/schemas/DisplayOutput'
|
|
description: Information to display and the way to process the display.
|
|
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 `PaymentRequest` message.'
|
|
properties:
|
|
SaleData:
|
|
$ref: '#/components/schemas/SaleData'
|
|
description: Data related to the Sale System.
|
|
PaymentTransaction:
|
|
$ref: '#/components/schemas/PaymentTransaction'
|
|
description: Data related to the payment and loyalty transaction.
|
|
PaymentData:
|
|
$ref: '#/components/schemas/PaymentData'
|
|
description: 'Data related to the payment transaction.
|
|
|
|
If one data element is present.'
|
|
LoyaltyData:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LoyaltyData'
|
|
description: 'Data related to a Loyalty program or account.
|
|
|
|
Loyalty cards used with the payment transaction and read by the Sale System.'
|
|
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'
|
|
description: Data related to the Sale System.
|
|
CardAcquisitionTransaction:
|
|
$ref: '#/components/schemas/CardAcquisitionTransaction'
|
|
description: Data related to the payment and loyalty card acquisition.
|
|
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'
|
|
description: Data related to the Sale System.
|
|
LoyaltyTransaction:
|
|
$ref: '#/components/schemas/LoyaltyTransaction'
|
|
description: Data related to the loyalty transaction.
|
|
LoyaltyData:
|
|
$ref: '#/components/schemas/LoyaltyData'
|
|
description: Data related to a Loyalty program or account.
|
|
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'
|
|
description: Data related to the Sale System.
|
|
StoredValueData:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/StoredValueData'
|
|
description: Data related to the stored value card.
|
|
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'
|
|
description: Identification of a previous POI transaction.
|
|
ReversedAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: 'Amount of the payment or loyalty to reverse..
|
|
|
|
ReversedAmount is implicitely the AuthorizedAmount if absent.'
|
|
ReversalReason:
|
|
$ref: '#/components/schemas/ReversalReason'
|
|
description: 'Reason of the payment or loyalty reversal..
|
|
|
|
Possible values:
|
|
|
|
* **CustCancel**
|
|
|
|
* **Malfunction**
|
|
|
|
* **MerchantCancel**
|
|
|
|
* **Unable2Compl**'
|
|
CustomerOrder:
|
|
$ref: '#/components/schemas/CustomerOrder'
|
|
required:
|
|
- OriginalPOITransaction
|
|
- ReversalReason
|
|
ReconciliationRequest:
|
|
type: object
|
|
description: 'Content of the Reconciliation Request message.
|
|
|
|
It conveys Information related to the Reconciliation requested by the Sale
|
|
System.'
|
|
properties:
|
|
ReconciliationType:
|
|
$ref: '#/components/schemas/ReconciliationType'
|
|
description: 'Type of Reconciliation requested by the Sale to the POI.
|
|
|
|
Possible values:
|
|
|
|
* **AcquirerReconciliation**
|
|
|
|
* **AcquirerSynchronisation**
|
|
|
|
* **PreviousReconciliation**
|
|
|
|
* **SaleReconciliation**'
|
|
AcquirerID:
|
|
type: array
|
|
items:
|
|
type: integer
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Could be present only if ReconciliationType is AcquirerReconciliation
|
|
or AcquirerSynchronisation.'
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Could be present only if ReconciliationType is AcquirerReconciliation
|
|
or AcquirerSynchronisation.'
|
|
POIReconciliationID:
|
|
type: integer
|
|
description: 'Identification of the reconciliation period between Sale and
|
|
POI.
|
|
|
|
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'
|
|
description: 'Indicates the hierarchical structure of the reconciliation
|
|
result of the Sale to POI reconciliation.
|
|
|
|
Required to present totals per value of element included in this cluster
|
|
(POI Terminal, Sale Terminal, Cashier, Shift, TotalsGroupID).
|
|
|
|
Possible values:
|
|
|
|
* **OperatorID**
|
|
|
|
* **POIID**
|
|
|
|
* **SaleID**
|
|
|
|
* **ShiftNumber**
|
|
|
|
* **TotalsGroupID**'
|
|
TotalFilter:
|
|
$ref: '#/components/schemas/TotalFilter'
|
|
description: 'Filter to compute the totals.
|
|
|
|
Used for the Get Totals, to request totals for a (or a combination of)
|
|
particular value of the POI Terminal, Sale Terminal, Cashier, Shift, or
|
|
TotalsGroupID.'
|
|
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'
|
|
description: Data related to the account pointed by the payment card.
|
|
LoyaltyAccountReq:
|
|
$ref: '#/components/schemas/LoyaltyAccountReq'
|
|
description: Data related to a requested Loyalty program or account.
|
|
TransactionStatusRequest:
|
|
type: object
|
|
description: 'Content of the TransactionStatus Request message.
|
|
|
|
It conveys Information requested for status of the last or current Payment,
|
|
Loyalty or Reversal transaction.'
|
|
properties:
|
|
MessageReference:
|
|
$ref: '#/components/schemas/MessageReference'
|
|
description: 'Identification of a previous POI transaction.
|
|
|
|
Present if it contains any data.'
|
|
ReceiptReprintFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Request to reprint the POI receipt(s). Allows reprinting a
|
|
receipt with a `TransactionStatus` message
|
|
DocumentQualifier:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/DocumentQualifier'
|
|
description: 'Qualification of the document to print to the Cashier or the
|
|
Customer. Allows the manager of the printer, Sale or POI Terminal, to
|
|
send the information to a particular physical printer or to use the paper
|
|
type accordingly.
|
|
|
|
Possible values:
|
|
|
|
* **CashierReceipt**
|
|
|
|
* **CustomerReceipt**
|
|
|
|
* **Document**
|
|
|
|
* **Journal**
|
|
|
|
* **SaleReceipt**
|
|
|
|
* **Voucher**'
|
|
AbortRequest:
|
|
type: object
|
|
description: 'Body of the Abort Request message.
|
|
|
|
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).'
|
|
properties:
|
|
MessageReference:
|
|
$ref: '#/components/schemas/MessageReference'
|
|
description: Identification of a previous POI transaction.
|
|
AbortReason:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: Reason of aborting a transaction.
|
|
DisplayOutput:
|
|
$ref: '#/components/schemas/DisplayOutput'
|
|
description: 'Information to display and the way to process the display.
|
|
|
|
To display an abort message to the Customer.'
|
|
required:
|
|
- MessageReference
|
|
- AbortReason
|
|
EventNotification:
|
|
type: object
|
|
description: 'Content of the EventNotification message.
|
|
|
|
It conveys Information related to the event, and possible action (maintenance,
|
|
message to display).'
|
|
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'
|
|
description: 'Event the POI notifies to the Sale System.
|
|
|
|
Possible values:
|
|
|
|
* **Abort**
|
|
|
|
* **BeginMaintenance**
|
|
|
|
* **CardInserted**
|
|
|
|
* **CardRemoved**
|
|
|
|
* **Completed**
|
|
|
|
* **CustomerLanguage**
|
|
|
|
* **EndMaintenance**
|
|
|
|
* **Initialised**
|
|
|
|
* **KeyPressed**
|
|
|
|
* **OutOfOrder**
|
|
|
|
* **Reject**
|
|
|
|
* **SaleAdmin**
|
|
|
|
* **SaleWakeUp**
|
|
|
|
* **SecurityAlarm**
|
|
|
|
* **Shutdown**
|
|
|
|
* **StopAssistance**
|
|
|
|
* **UseAnotherCardForPreauth**'
|
|
EventDetails:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Information about the event the POI notifies to the Sale System.
|
|
|
|
If present, the Sale logs it for further examination.'
|
|
RejectedMessage:
|
|
type: string
|
|
format: byte
|
|
pattern: ^.+$
|
|
description: 'Message request rejected by the receiver.
|
|
|
|
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.
|
|
DisplayOutput:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/DisplayOutput'
|
|
description: 'Information to display and the way to process the display.
|
|
|
|
To display an event message.'
|
|
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: 'Identification of a POI System or a POI Terminal for the Sale
|
|
to POI protocol.
|
|
|
|
MessageHeader.POIID.'
|
|
HostDiagnosisFlag:
|
|
type: boolean
|
|
default: false
|
|
description: Indicates if Host Diagnosis are required.
|
|
AcquirerID:
|
|
type: array
|
|
items:
|
|
type: integer
|
|
description: 'Identification of the Acquirer.
|
|
|
|
Present if requesting the diagnosis of these hosts only.'
|
|
description: 'Identification of the Acquirer.
|
|
|
|
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'
|
|
description: 'Information to display and the way to process the display.
|
|
|
|
Complete display content for output devices. At most one DisplayOutput
|
|
per Device/ InfoQualify pair.'
|
|
required:
|
|
- DisplayOutput
|
|
InputRequest:
|
|
type: object
|
|
description: Content of the `InputRequest` message. It conveys the data to display
|
|
and how to process it. In addition to the display on the Input Device, it
|
|
might contain an operation (the `DisplayOutput` element) per Display Device
|
|
type.
|
|
properties:
|
|
DisplayOutput:
|
|
$ref: '#/components/schemas/DisplayOutput'
|
|
description: Information to display and the way to process the display.
|
|
InputData:
|
|
$ref: '#/components/schemas/InputData'
|
|
description: Information related to an Input request. It conveys the target
|
|
input logical device, the type of input command, and possible minimum
|
|
and maximum length of the input. In addition, if the requestor might require
|
|
to receive an Event Notification if a card is inserted in a card reader,
|
|
with the `NotifyCardInputFlag`.
|
|
required:
|
|
- InputData
|
|
InputUpdate:
|
|
type: object
|
|
description: 'Definition: Content of the Input Update message. : It conveys
|
|
|
|
update 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: 'Content of the Print Request message.
|
|
|
|
It conveys the complete data to print and how to process the print.'
|
|
properties:
|
|
PrintOutput:
|
|
$ref: '#/components/schemas/PrintOutput'
|
|
description: Information to print and how to process it.
|
|
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). APDU request for Card
|
|
Reader device request. For specific card like synchronous card, a private
|
|
value should be used in accordance to ISO 7816- 4 (private range D0-FE).
|
|
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'
|
|
description: Result of a message request processing.
|
|
POISystemData:
|
|
$ref: '#/components/schemas/POISystemData'
|
|
description: 'Information related to the POI System.
|
|
|
|
Returned if the response result is Success.'
|
|
TokenRequestStatus:
|
|
type: boolean
|
|
description: If token is managed by the POI, the status of the token request.
|
|
CustomerOrderStatus:
|
|
type: boolean
|
|
description: If the POI supports the CustomerOrder functionality, the status
|
|
of the customer order.
|
|
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'
|
|
description: Result of a message request processing.
|
|
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'
|
|
description: Result of a message request processing.
|
|
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'
|
|
description: Result of a message request processing.
|
|
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'
|
|
description: Result of a message request processing.
|
|
SaleData:
|
|
$ref: '#/components/schemas/SaleData'
|
|
description: 'Data related to the Sale System.
|
|
|
|
Copy.'
|
|
POIData:
|
|
$ref: '#/components/schemas/POIData'
|
|
description: Data related to the POI System.
|
|
PaymentResult:
|
|
$ref: '#/components/schemas/PaymentResult'
|
|
description: 'Data related to the result of a processed payment transaction.
|
|
|
|
If one data element is present.'
|
|
LoyaltyResult:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LoyaltyResult'
|
|
description: 'Data related to the result of a processed loyalty transaction.
|
|
|
|
Loyalty cards used with the payment transaction.'
|
|
PaymentReceipt:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/PaymentReceipt'
|
|
description: Customer or Merchant payment receipt. If the payment receipts
|
|
are printed by the Sale system and the POI or the Sale does not implement
|
|
the Print exchange (Basic profile).
|
|
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'
|
|
description: Result of a message request processing.
|
|
SaleData:
|
|
$ref: '#/components/schemas/SaleData'
|
|
description: Data related to the Sale System.
|
|
POIData:
|
|
$ref: '#/components/schemas/POIData'
|
|
description: Data related to the POI System.
|
|
PaymentBrand:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Type of payment card.
|
|
|
|
Brands available for payment by the card and not chosen by the Customer.'
|
|
description: 'Type of payment card.
|
|
|
|
Brands available for payment by the card and not chosen by the Customer.'
|
|
PaymentInstrumentData:
|
|
$ref: '#/components/schemas/PaymentInstrumentData'
|
|
description: 'Data related to the instrument of payment for the transaction.
|
|
|
|
If this type of payment card is configured to send information if the
|
|
CardAcquisition response.'
|
|
LoyaltyAccount:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LoyaltyAccount'
|
|
description: Data related to the loyalty System.
|
|
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'
|
|
description: Result of a message request processing.
|
|
SaleData:
|
|
$ref: '#/components/schemas/SaleData'
|
|
description: Data related to the Sale System.
|
|
POIData:
|
|
$ref: '#/components/schemas/POIData'
|
|
description: Data related to the POI System.
|
|
LoyaltyResult:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LoyaltyResult'
|
|
description: 'Data related to the result of a processed loyalty transaction.
|
|
|
|
If loyalty account identified.'
|
|
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'
|
|
description: Result of a message request processing.
|
|
SaleData:
|
|
$ref: '#/components/schemas/SaleData'
|
|
description: Data related to the Sale System.
|
|
POIData:
|
|
$ref: '#/components/schemas/POIData'
|
|
description: Data related to the POI System.
|
|
StoredValueResult:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/StoredValueResult'
|
|
description: 'Result of loading/reloading a stored value card..
|
|
|
|
If StoredValueResponse.Result is Success or Partial, one entry per StoredValueRequest.StoredValueData
|
|
loaded or activated.'
|
|
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'
|
|
description: Result of a message request processing.
|
|
POIData:
|
|
$ref: '#/components/schemas/POIData'
|
|
description: 'Data related to the POI System.
|
|
|
|
If Result is Success.'
|
|
OriginalPOITransaction:
|
|
$ref: '#/components/schemas/OriginalPOITransaction'
|
|
ReversedAmount:
|
|
type: number
|
|
maximum: 99999999.999999
|
|
minimum: 0.0
|
|
description: 'Amount of the payment or loyalty to reverse..
|
|
|
|
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'
|
|
description: Result of a message request processing.
|
|
ReconciliationType:
|
|
$ref: '#/components/schemas/ReconciliationType'
|
|
description: 'Type of Reconciliation requested by the Sale to the POI.
|
|
|
|
Possible values:
|
|
|
|
* **AcquirerReconciliation**
|
|
|
|
* **AcquirerSynchronisation**
|
|
|
|
* **PreviousReconciliation**
|
|
|
|
* **SaleReconciliation**'
|
|
POIReconciliationID:
|
|
type: integer
|
|
description: 'Identification of the reconciliation period between Sale and
|
|
POI.
|
|
|
|
Absent if ReconciliationType is `AcquirerReconciliation`.'
|
|
TransactionTotals:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TransactionTotals'
|
|
description: 'Result of the Sale to POI Reconciliation processing.
|
|
|
|
If `Response.Result` is Success.'
|
|
required:
|
|
- Response
|
|
- ReconciliationType
|
|
GetTotalsResponse:
|
|
type: object
|
|
description: 'Content of the Reconciliation Response message.
|
|
|
|
It conveys Information related to the Reconciliation transaction processed
|
|
by the POI System.'
|
|
properties:
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
POIReconciliationID:
|
|
type: integer
|
|
description: Identification of the reconciliation period between Sale and
|
|
POI.
|
|
TransactionTotals:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TransactionTotals'
|
|
description: 'Result of the Sale to POI Reconciliation processing.
|
|
|
|
If `Response.Result` is Success.'
|
|
required:
|
|
- Response
|
|
- POIReconciliationID
|
|
BalanceInquiryResponse:
|
|
type: object
|
|
description: 'Content of the Balance Inquiry Response message.
|
|
|
|
It conveys the balance and the identification of the associated payment, loyalty
|
|
or stored value account.'
|
|
properties:
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
PaymentAccountStatus:
|
|
$ref: '#/components/schemas/PaymentAccountStatus'
|
|
description: 'Data related to the result of a Balance Inquiry request.
|
|
|
|
If BalanceInquiryRequest. PaymentAccount present.'
|
|
LoyaltyAccountStatus:
|
|
$ref: '#/components/schemas/LoyaltyAccountStatus'
|
|
description: 'Data related to the result of a loyalty Balance Inquiry.
|
|
|
|
If BalanceInquiryRequest. LoyaltyData present.'
|
|
PaymentReceipt:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/PaymentReceipt'
|
|
required:
|
|
- Response
|
|
CardReaderAPDUResponse:
|
|
type: object
|
|
description: 'Content of the Card Reader APDU Response message.
|
|
|
|
It contains the result of the requested service, APDU response sent by the
|
|
chip of the card in response to the APDU request.'
|
|
properties:
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
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: 'Content of the TransactionStatus Response message.
|
|
|
|
It conveys Information related to the status of the last or current Payment,
|
|
Loyalty or Reversal transaction.'
|
|
properties:
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
MessageReference:
|
|
$ref: '#/components/schemas/MessageReference'
|
|
description: 'Identification of a previous POI transaction.
|
|
|
|
If `Response.Result` is Success.'
|
|
RepeatedMessageResponse:
|
|
$ref: '#/components/schemas/RepeatedMessageResponse'
|
|
description: 'Content of the requested Message Response.
|
|
|
|
If Result is Success (process completed).'
|
|
required:
|
|
- Response
|
|
AbortResponse:
|
|
type: object
|
|
description: A successful `AbortRequest` returns a response with a **200 OK**
|
|
HTTP status code and no body.
|
|
properties: {}
|
|
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'
|
|
description: Result of a message request processing.
|
|
LoggedSaleID:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: ^.+$
|
|
description: 'Sale Terminal logged to.
|
|
|
|
If Sale Terminal logged to this POI Terminal.'
|
|
description: 'Sale Terminal logged to.
|
|
|
|
If Sale Terminal logged to this POI Terminal.'
|
|
POIStatus:
|
|
$ref: '#/components/schemas/POIStatus'
|
|
description: 'State of a POI Terminal.
|
|
|
|
If `Response.Result` is Success.'
|
|
HostStatus:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/HostStatus'
|
|
description: State of a Host.
|
|
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'
|
|
description: 'Information related to the result the output (display, print,
|
|
input).
|
|
|
|
One per DisplayOutput item of the request, and in the same order.'
|
|
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'
|
|
description: 'Information related to the result the output (display, print,
|
|
input).
|
|
|
|
If DisplayOutput present in the request.'
|
|
InputResult:
|
|
$ref: '#/components/schemas/InputResult'
|
|
description: Contains the result and the content of the input.
|
|
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'
|
|
description: 'Qualification of the document to print to the Cashier or the
|
|
Customer. Allows the manager of the printer, Sale or POI Terminal, to
|
|
send information to a physical printer or to use the paper type accordingly.
|
|
|
|
Possible values:
|
|
|
|
* **CashierReceipt**
|
|
|
|
* **CustomerReceipt**
|
|
|
|
* **Document**
|
|
|
|
* **Journal**
|
|
|
|
* **SaleReceipt**
|
|
|
|
* **Voucher**'
|
|
Response:
|
|
$ref: '#/components/schemas/Response'
|
|
description: Result of a message request processing.
|
|
required:
|
|
- DocumentQualifier
|
|
- Response
|
|
securitySchemes:
|
|
ApiKeyAuth:
|
|
in: header
|
|
name: X-API-Key
|
|
type: apiKey
|
|
BasicAuth:
|
|
scheme: basic
|
|
type: http
|