POST /payment

Request sent to terminal to initiate payment. It conveys Information related to the Payment transaction to process. Content of the PaymentRequest message.

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
LoyaltyData[] Array No

Data related to a Loyalty program or account. Loyalty cards used with the payment transaction and read by the Sale System.

LoyaltyData[].LoyaltyAmount Object No

Amount of a loyalty account. When the Sale System want to award the Loyalty account (not for BalanceInquiryRequest).

LoyaltyData[].LoyaltyAmount.Currency String No

Currency of a monetary amount.

LoyaltyData[].LoyaltyAmount.LoyaltyUnit String No

Unit of a loyalty amount. The amount could be expressed in point or in a monetary value and a currency. Possible values:

  • Monetary
  • Point

Possible values:

  • "Point"
  • "Monetary"
LoyaltyData[].LoyaltyAmount.AmountValue Number Yes

Value of an amount.

LoyaltyData[].CardAcquisitionReference Object No

Reference to the last CardAcquisition, to use the same card. If the loyalty account ID comes from a previous CardAcquisition.

LoyaltyData[].CardAcquisitionReference.TimeStamp String Yes

Date and time of a transaction for the Sale System, the POI System or the Acquirer. Ensures the uniqueness of a transaction and indicates the time when the event occurs in the EventNotification message.

LoyaltyData[].CardAcquisitionReference.TransactionID String Yes

Unique identification of a transaction to identify the transaction on the Sale System (e.g. ticket number), or the POI System.

LoyaltyData[].LoyaltyAccountID Object No

Identification of a Loyalty account. If loyalty identification of the loyalty account is realised by the Sale System.

LoyaltyData[].LoyaltyAccountID.IdentificationSupport String No

Support of the loyalty account identification. Allows knowing where and how you have found the loyalty account identification. Possible values:

  • HybridCard
  • LinkedCard
  • LoyaltyCard
  • NoCard

Possible values:

  • "LoyaltyCard"
  • "NoCard"
  • "HybridCard"
  • "LinkedCard"
LoyaltyData[].LoyaltyAccountID.LoyaltyID String Yes

Loyalty account identification conforming to the IdentificationType.

LoyaltyData[].LoyaltyAccountID.EntryMode[] Array Yes

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
LoyaltyData[].LoyaltyAccountID.IdentificationType String Yes

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

Possible values:

  • "PAN"
  • "AccountNumber"
  • "BarCode"
  • "PhoneNumber"
  • "ISOTrack2"
PaymentData Object No

Data related to the payment transaction. If one data element is present.

PaymentData.RequestedValidityDate String No

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.

PaymentData.CustomerOrder Object No

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.

PaymentData.CustomerOrder.Currency String No

Currency of a monetary amount.

PaymentData.CustomerOrder.StartDate String Yes

Date time of the beginning of an operation.

PaymentData.CustomerOrder.SaleReferenceID String Yes

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.

PaymentData.CustomerOrder.AccessedBy String No

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.

PaymentData.CustomerOrder.EndDate String No

Date time of the end of an operation.

PaymentData.CustomerOrder.CurrentAmount Number Yes

Total amount of all completed transactions of a customer order.

PaymentData.CustomerOrder.ForecastedAmount Number Yes

Depending on the choice of the sale system it could equal the initial amount of the order or the global amount of the order. If ForecastedAmount equals the initial amount of the order it will allow the system to follow any additional payment. In case of equality with the global amount of the order, the system will then be able to follow remaining amounts.

PaymentData.CustomerOrder.CustomerOrderID String No

Additional and optional identification of a customer order.

PaymentData.CustomerOrder.OpenOrderState Boolean No

Specifies if a customer order is currently Open. An open customer order is an order waiting for further operations.

Default value: true

PaymentData.CustomerOrder.AdditionalInformation String No

Unqualified information.

PaymentData.CardAcquisitionReference Object No

Reference to the last CardAcquisition, to use the same card. If the loyalty account ID comes from a previous CardAcquisition.

PaymentData.CardAcquisitionReference.TimeStamp String Yes

Date and time of a transaction for the Sale System, the POI System or the Acquirer. Ensures the uniqueness of a transaction and indicates the time when the event occurs in the EventNotification message.

PaymentData.CardAcquisitionReference.TransactionID String Yes

Unique identification of a transaction to identify the transaction on the Sale System (e.g. ticket number), or the POI System.

PaymentData.SplitPaymentFlag Boolean No

Indicates if the payment of the Sale transaction is split. Allows the POI to decline payment means that cannot accept split payment.

Default value: false

PaymentData.PaymentInstrumentData Object No

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.

PaymentData.PaymentInstrumentData.PaymentInstrumentType String Yes

Type of payment instrument. Possible values:

  • Card
  • Cash
  • Check
  • Mobile
  • StoredValue

Possible values:

  • "Card"
  • "StoredValue"
  • "Mobile"
  • "Check"
  • "Cash"
PaymentData.PaymentInstrumentData.ProtectedCardData String No

Sensitive information related to the payment card, protected by CMS. SensitiveCardData protected by CMS EnvelopedData.

PaymentData.PaymentInstrumentData.StoredValueAccountID Object No

Identification of the stored value account or the stored value card and the associated product sold by the Sale System for stored value requests.

PaymentData.PaymentInstrumentData.StoredValueAccountID.StoredValueProvider String No

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.)

PaymentData.PaymentInstrumentData.StoredValueAccountID.ExpiryDate Integer No

Date after which the card cannot be used. If EMV expiry date is present, it overrides Track2 information. Format is MMYY.

PaymentData.PaymentInstrumentData.StoredValueAccountID.EntryMode[] Array Yes

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
PaymentData.PaymentInstrumentData.StoredValueAccountID.StoredValueAccountType String Yes

Type of stored value account. Allows the distinction of the stored value instrument to access the stored value account. Possible values:

  • GiftCard
  • Other
  • PhoneCard

Possible values:

  • "PhoneCard"
  • "GiftCard"
  • "Other"
PaymentData.PaymentInstrumentData.StoredValueAccountID.IdentificationType String Yes

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

Possible values:

  • "PAN"
  • "AccountNumber"
  • "BarCode"
  • "PhoneNumber"
  • "ISOTrack2"
PaymentData.PaymentInstrumentData.StoredValueAccountID.StoredValueID String Yes

Stored value account identification. The identification of the stored value account conforming to the IdentificationType.

PaymentData.PaymentInstrumentData.StoredValueAccountID.OwnerName String No

Name of the owner of a stored value account.

PaymentData.PaymentInstrumentData.CardData Object No

Information related to the payment card used for the transaction. If PaymentInstrumentType is Card.

PaymentData.PaymentInstrumentData.CardData.AllowedProductCode[] Array No

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.

PaymentData.PaymentInstrumentData.CardData.ProtectedCardData String No

Sensitive information related to the payment card, protected by CMS. SensitiveCardData protected by CMS EnvelopedData.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[] Array No

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.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].Currency String No

Currency of a monetary amount.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].StartDate String Yes

Date time of the beginning of an operation.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].SaleReferenceID String Yes

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.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].AccessedBy String No

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.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].EndDate String No

Date time of the end of an operation.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].CurrentAmount Number Yes

Total amount of all completed transactions of a customer order.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].ForecastedAmount Number Yes

Depending on the choice of the sale system it could equal the initial amount of the order or the global amount of the order. If ForecastedAmount equals the initial amount of the order it will allow the system to follow any additional payment. In case of equality with the global amount of the order, the system will then be able to follow remaining amounts.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].CustomerOrderID String No

Additional and optional identification of a customer order.

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].OpenOrderState Boolean No

Specifies if a customer order is currently Open. An open customer order is an order waiting for further operations.

Default value: true

PaymentData.PaymentInstrumentData.CardData.CustomerOrder[].AdditionalInformation String No

Unqualified information.

PaymentData.PaymentInstrumentData.CardData.PaymentBrand String No

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.

PaymentData.PaymentInstrumentData.CardData.PaymentAccountRef String No

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.

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData Object No

Sensitive information related to the payment card, entered or read by the Sale System. If structure non empty and unprotected.

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.TrackData[] Array No

Magnetic track or magnetic ink characters line. If EntryMode is MagStripe or RFID .

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.TrackData[].TrackNumb Integer No

Card track number.

Default value: 2

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.TrackData[].TrackFormat String No

Card track format. Possible values:

  • AAMVA
  • ISO

Possible values:

  • "AAMVA"
  • "ISO"
PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.TrackData[].TrackValue String Yes

Card track content.

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.PAN Integer No

Primary Account Number.

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.ExpiryDate Integer No

Date after which the card cannot be used. If EntryMode is File.

PaymentData.PaymentInstrumentData.CardData.SensitiveCardData.CardSeqNumb Integer No

Card Sequence Number. If EntryMode is File, Keyed, or Manual.

PaymentData.PaymentInstrumentData.CardData.EntryMode[] Array No

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
PaymentData.PaymentInstrumentData.CardData.PaymentToken Object No

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.

PaymentData.PaymentInstrumentData.CardData.PaymentToken.ExpiryDateTime String No

Expiry date and time. Limits the validity of a payment token.

PaymentData.PaymentInstrumentData.CardData.PaymentToken.TokenValue String Yes

Payment token replacing the PAN of the payment card to identify the payment mean of the customer.

PaymentData.PaymentInstrumentData.CardData.PaymentToken.TokenRequestedType String Yes

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

Possible values:

  • "Customer"
  • "Transaction"
PaymentData.PaymentInstrumentData.CardData.CardCountryCode Integer No

Country Code attached to the card (3 numerics). If available in the card.

PaymentData.PaymentInstrumentData.CardData.AllowedProduct[] Array No

Product that is payable by the payment card.

PaymentData.PaymentInstrumentData.CardData.AllowedProduct[].EanUpc Integer No

Standard product code of item purchased with the transaction.

PaymentData.PaymentInstrumentData.CardData.AllowedProduct[].ProductLabel String No

Product name of an item purchased with the transaction.

PaymentData.PaymentInstrumentData.CardData.AllowedProduct[].ProductCode Integer Yes

Product code of item purchased with the transaction.

PaymentData.PaymentInstrumentData.CardData.AllowedProduct[].AdditionalProductInfo String No

Additionl information related to the line item.

PaymentData.PaymentInstrumentData.CardData.MaskedPan String No

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.

PaymentData.PaymentInstrumentData.CheckData Object No

Information related to the paper check used for the transaction. If PaymentInstrumentType is Check.

PaymentData.PaymentInstrumentData.CheckData.TrackData Object No

Magnetic track or magnetic ink characters line. Mandatory if CheckNumber absent.

PaymentData.PaymentInstrumentData.CheckData.TrackData.TrackNumb Integer No

Card track number.

Default value: 2

PaymentData.PaymentInstrumentData.CheckData.TrackData.TrackFormat String No

Card track format. Possible values:

  • AAMVA
  • ISO

Possible values:

  • "AAMVA"
  • "ISO"
PaymentData.PaymentInstrumentData.CheckData.TrackData.TrackValue String Yes

Card track content.

PaymentData.PaymentInstrumentData.CheckData.AccountNumber String No

Identification of the customer account. Mandatory if TrackData absent.

PaymentData.PaymentInstrumentData.CheckData.Country String No

Country of the bank check. Absent if country of the Sale system.

PaymentData.PaymentInstrumentData.CheckData.BankID String No

Identification of the bank. Mandatory if TrackData absent.

PaymentData.PaymentInstrumentData.CheckData.CheckNumber String No

Identification of the bank check. Mandatory if TrackData absent.

PaymentData.PaymentInstrumentData.CheckData.CheckCardNumber String No

Check guarantee card number. If provided by the customer.

PaymentData.PaymentInstrumentData.CheckData.TypeCode String No

Type of bank check. Possible values:

  • Company
  • Personal

Possible values:

  • "Company"
  • "Personal"
PaymentData.PaymentInstrumentData.MobileData Object No

Information related to the mobile for the payment transaction. If PaymentInstrumentType is Mobile.

PaymentData.PaymentInstrumentData.MobileData.MaskedMSISDN Integer No

Masked Mobile Subscriber Integrated Service Digital Network. If data available.

PaymentData.PaymentInstrumentData.MobileData.Geolocation Object No

Geographic location specified by geographic or UTM coordinates. If data available.

PaymentData.PaymentInstrumentData.MobileData.Geolocation.GeographicCoordinates Object No
PaymentData.PaymentInstrumentData.MobileData.Geolocation.GeographicCoordinates.Longitude String Yes

Angular measurement of the distance of a location on the earth east or west of the Greenwich observatory.

PaymentData.PaymentInstrumentData.MobileData.Geolocation.GeographicCoordinates.Latitude String Yes

Angular distance of a location on the earth south or north of the equator.

PaymentData.PaymentInstrumentData.MobileData.Geolocation.UTMCoordinates Object No
PaymentData.PaymentInstrumentData.MobileData.Geolocation.UTMCoordinates.UTMNorthward String Yes

Y-coordinate of the Universal Transverse Mercator coordinate system.

PaymentData.PaymentInstrumentData.MobileData.Geolocation.UTMCoordinates.UTMEastward String Yes

X-coordinate of the Universal Transverse Mercator coordinate system.

PaymentData.PaymentInstrumentData.MobileData.Geolocation.UTMCoordinates.UTMZone String Yes

UTM grid zone combination of the longitude zone (1 to 60) and the latitude band (C to X, excluding I and O).

PaymentData.PaymentInstrumentData.MobileData.ProtectedMobileData String No

Sensitive information related to the mobile phone, protected by CMS. SensitiveMobileData.

PaymentData.PaymentInstrumentData.MobileData.MobileNetworkCode Integer No

Identifies the mobile phone operator inside a country. If data available.

PaymentData.PaymentInstrumentData.MobileData.MobileCountryCode Integer No

Identifies the country of a mobile phone operator. If data available.

PaymentData.PaymentInstrumentData.MobileData.SensitiveMobileData Object No

Sensitive information related to the mobile phone. If unprotected mobile data.

PaymentData.PaymentInstrumentData.MobileData.SensitiveMobileData.MSISDN Integer Yes

Mobile Subscriber Integrated Service Digital Network (i.e. mobile phone number of the SIM card). Country, National Destination Code, and Subscriber Number.

PaymentData.PaymentInstrumentData.MobileData.SensitiveMobileData.IMSI Integer No

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)

PaymentData.PaymentInstrumentData.MobileData.SensitiveMobileData.IMEI Integer No

International Mobile Equipment Identity. Unique number associated with the mobile phone device.

PaymentData.Instalment Object No

Information related an instalment transaction. To request an instalment to the issuer, or to make individual instalments of a payment transaction.

PaymentData.Instalment.PeriodUnit String No

Type of instalment transaction. Possible values:

  • Annual
  • Daily
  • Monthly
  • Weekly

Possible values:

  • "Annual"
  • "Monthly"
  • "Daily"
  • "Weekly"
PaymentData.Instalment.Charges Number No

Charges related to a transaction. Charge related to the payment instalments.

PaymentData.Instalment.TotalNbOfPayments Integer No

Total number of payments. For instalment, the number of payments, including the first one.

PaymentData.Instalment.CumulativeAmount Number No

Sum of a collection of amounts. Total amount of the payment instalments.

PaymentData.Instalment.FirstAmount Number No

First amount of the payment instalments.

PaymentData.Instalment.FirstPaymentDate String No

First date of a payment. For instalment, the date of the first payments, if not immediate.

PaymentData.Instalment.PlanID String No

Identification of an instalment plan.

PaymentData.Instalment.SequenceNumber Integer No

Sequence number of the instalment. For an instalment payment transaction, number of the payment, from 1 to TotalNbOfPayments.

PaymentData.Instalment.Period Integer No

Period of time with defined unit of time. A period between 2 payment instalments.

PaymentData.Instalment.InstalmentType String No

Type of instalment transaction. For requesting an instalment payment transaction. Possible values:

  • DeferredInstalments
  • EqualInstalments
  • InequalInstalments

Possible values:

  • "EqualInstalments"
  • "DeferredInstalments"
  • "InequalInstalments"
PaymentData.PaymentType String No

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

Possible values:

  • "CashDeposit"
  • "Completion"
  • "Recurring"
  • "PaidOut"
  • "OneTimeReservation"
  • "Normal"
  • "Instalment"
  • "CashAdvance"
  • "Refund"
  • "IssuerInstalment"
  • "UpdateReservation"
  • "FirstReservation"
PaymentTransaction Object Yes

Data related to the payment and loyalty transaction.

PaymentTransaction.OriginalPOITransaction Object No

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.

PaymentTransaction.OriginalPOITransaction.AcquirerID Integer No

Identification of the Acquirer. Restrict to the Acquirer if present.

PaymentTransaction.OriginalPOITransaction.ReuseCardDataFlag Boolean No

Indicates if the card data has to be retrieved from a previous transaction.

Default value: true

PaymentTransaction.OriginalPOITransaction.POITransactionID Object No

Unique identification of a POI transaction for a POI. Absent if SaleReferenceID is sufficient to identify the transaction.

PaymentTransaction.OriginalPOITransaction.POITransactionID.TimeStamp String Yes

Date and time of a transaction for the Sale System, the POI System or the Acquirer. Ensures the uniqueness of a transaction and indicates the time when the event occurs in the EventNotification message.

PaymentTransaction.OriginalPOITransaction.POITransactionID.TransactionID String Yes

Unique identification of a transaction to identify the transaction on the Sale System (e.g. ticket number), or the POI System.

PaymentTransaction.OriginalPOITransaction.POIID String No

Identification of a payment terminal for the NEXO SaletoPOI protocol. If original transaction is coming from another POI.

PaymentTransaction.OriginalPOITransaction.HostTransactionID Object No

Identification of the transaction by the host in charge of the stored value transaction. If POITransactionID not present.

PaymentTransaction.OriginalPOITransaction.HostTransactionID.TimeStamp String Yes

Date and time of a transaction for the Sale System, the POI System or the Acquirer. Ensures the uniqueness of a transaction and indicates the time when the event occurs in the EventNotification message.

PaymentTransaction.OriginalPOITransaction.HostTransactionID.TransactionID String Yes

Unique identification of a transaction to identify the transaction on the Sale System (e.g. ticket number), or the POI System.

PaymentTransaction.OriginalPOITransaction.ApprovalCode String No

Code assigned to a transaction approval by the Acquirer. If referral.

PaymentTransaction.OriginalPOITransaction.AmountValue Number No

Value of an amount.

PaymentTransaction.OriginalPOITransaction.SaleID String No

Identification of a Sale System for the NEXO SaletoPOI protocol.

PaymentTransaction.SaleItem[] Array No

Sale items of a transaction. In loyalty or value added payment card transaction, the items of the sale that are processed in the transaction.

PaymentTransaction.SaleItem[].ItemID Integer Yes

Item identification inside a transaction (0 to n).

PaymentTransaction.SaleItem[].ItemAmount Number Yes

Total amount of the item line.

PaymentTransaction.SaleItem[].TaxCode Integer No

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.

PaymentTransaction.SaleItem[].Quantity String No

Product quantity. If data is sent, POI has to store it and send it if the host protocol allows it.

PaymentTransaction.SaleItem[].SaleChannel Integer No

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.

PaymentTransaction.SaleItem[].EanUpc Integer No

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.

PaymentTransaction.SaleItem[].ProductLabel String No

Product name of an item purchased with the transaction.

PaymentTransaction.SaleItem[].ProductCode Integer Yes

Product code of item purchased with the transaction.

PaymentTransaction.SaleItem[].AdditionalProductInfo String No

Additional information related to the line item. If data sent, POI has to store it and send it if the host protocol allows it.

PaymentTransaction.SaleItem[].UnitPrice Number No

Price per unit of product. If Quantity is present.

PaymentTransaction.SaleItem[].UnitOfMeasure String No

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

Possible values:

  • "Foot"
  • "Centimetre"
  • "Other"
  • "Centilitre"
  • "Meter"
  • "UKGallon"
  • "USGallon"
  • "Inch"
  • "Gram"
  • "Quart"
  • "Case"
  • "Pound"
  • "Litre"
  • "Mile"
  • "Kilometre"
  • "Kilogram"
  • "Ounce"
  • "Pint"
  • "Yard"
PaymentTransaction.TransactionConditions Object No

Conditions on which the transaction must be processed.

PaymentTransaction.TransactionConditions.LoyaltyHandling String No

Type of Loyalty processing requested by the Sale System. Possible values:

  • Allowed
  • Forbidden
  • Processed
  • Proposed
  • Required

Possible values:

  • "Proposed"
  • "Required"
  • "Forbidden"
  • "Processed"
  • "Allowed"
PaymentTransaction.TransactionConditions.AcquirerID[] Array No

Identification of the Acquirer. Restrict to these Acquirer if present.

PaymentTransaction.TransactionConditions.MerchantCategoryCode String No

The code which identifies the category of the transaction (MCC). The payment implies a specific MCC.

PaymentTransaction.TransactionConditions.ForceEntryMode[] Array No

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
PaymentTransaction.TransactionConditions.AllowedPaymentBrand[] Array No

Payment brands accepted for this transaction. Card payment brands allowed by the Sale System for the payment transaction. Restrict brand if data sent.

PaymentTransaction.TransactionConditions.DebitPreferredFlag Boolean No

The preferred type of payment is a debit transaction rather than a credit transaction.

PaymentTransaction.TransactionConditions.ForceOnlineFlag Boolean No

Indicates if the Cashier requires POI forces online access to the Acquirer. Go online if data sent.

Default value: false

PaymentTransaction.TransactionConditions.AllowedLoyaltyBrand[] Array No

Loyalty brands or programs allowed by the Sale System for the loyalty transaction. Restrict brand if data sent.

PaymentTransaction.AmountsReq Object Yes

Various amounts related to the payment and loyalty request from the Sale System.

PaymentTransaction.AmountsReq.Currency String Yes

Currency of a monetary amount.

PaymentTransaction.AmountsReq.TipAmount Number No

Amount paid for a tip. Allow the printing of the tip on the receipt, and to qualify the tip part of the amount.

PaymentTransaction.AmountsReq.PaidAmount Number No

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 of the amount. Split of the basket involves two Sale Transactions, and does not have to be recognised by the POI.

PaymentTransaction.AmountsReq.MinimumAmountToDeliver Number No

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.

PaymentTransaction.AmountsReq.MaximumCashBackAmount Number No

Maximum amount which could be requested for cash-back to the Sale System. Allows the Cashier to limit the amount value of cash-back to deliver to the Customer.

PaymentTransaction.AmountsReq.RequestedAmount Number Yes

Amount requested by the Sale for the payment.

PaymentTransaction.AmountsReq.CashBackAmount Number No

The cash-back part of the amount requested by the Sale for the payment.

PaymentTransaction.AmountsReq.MinimumSplitAmount Number No

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.

SaleData Object Yes

Data related to the Sale System.

SaleData.OperatorID String No

Identification of the Cashier or Operator.

SaleData.SaleToAcquirerData String No

Sale information intended for the Acquirer. Send to the Acquirer if present.

SaleData.ShiftNumber String No

Shift number. If different from the Login, see Login SaleData.

SaleData.SaleTransactionID Object Yes

Identification of a Sale transaction.

SaleData.SaleTransactionID.TimeStamp String Yes

Date and time of a transaction for the Sale System, the POI System or the Acquirer. Ensures the uniqueness of a transaction and indicates the time when the event occurs in the EventNotification message.

SaleData.SaleTransactionID.TransactionID String Yes

Unique identification of a transaction to identify the transaction on the Sale System (e.g. ticket number), or the POI System.

SaleData.SaleReferenceID String No

Identification of a Sale global transaction for a sequence of related POI transactions. If payment reservation.

SaleData.CustomerOrderReq[] Array No

List of customer order open, closed or both to be sent in the response messages. Possible values:

  • Both
  • Closed
  • Open
SaleData.SaleToPOIData String No

Sale information intended for the POI. Stored with the transaction.

SaleData.OperatorLanguage String No

Language of the Cashier or Operator. If different from the Login.

SaleData.SaleTerminalData Object No

Information related to the software and hardware features of the Sale Terminal. If content is not empty.

SaleData.SaleTerminalData.TotalsGroupID String No

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.TokenRequestedType String No

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

Possible values:

  • "Customer"
  • "Transaction"
SaleData.CustomerOrderID String No

Additional and optional identification of a customer order.

SaleData.SaleToIssuerData Object No

Sale information intended for the Issuer. Send to the Acquirer if present.

SaleData.SaleToIssuerData.StatementReference String No

Label to print on the bank statement.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.