Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagecpp
retailModule.signal(NexoSignal.CardDetected);

retailModule.signal(NexoSignal.Busy);
retailModule.signal(NexoSignal.Available);

Test Cases

...

Examples

Login

2022-03-21 11:20:26,869 TRACE [ntrig] # login
2022-03-21 11:20:26,878 TRACE [ntrig] Sending the content of "login.xml" (501 bytes)
2022-03-21 11:20:26,878 TRACE [ntrig] Waiting for 500 milliseconds
2022-03-21 11:20:26,886 TRACE [ntrig] Received from the POI:

NexoRetail Feature

PaymentLogin

XML message Login request

Expand
titlexml message simple paymentlogin request

<?xml version="1.0"?>
<SaleToPOIRequest>
<MessageHeader ProtocolVersion="3.0" MessageClass="Service" MessageCategory="PaymentLogin" MessageType="Request" ServiceID="21" SaleID="ArkosSales" POIID="AFDB0001" />
<PaymentRequest>
<SaleData SaleReferenceID<LoginRequest OperatorLanguage="ArkosSale42">
<SaleTransactionID TransactionIDen" OperatorID="1" TimeStamp="2019fbe">
<DateTime>2019-08-21T1421T13:4821:0523+05:00" 00</>
</SaleData>
<PaymentTransaction>
<AmountsReq CurrencyDateTime>
<SaleSoftware ManufacturerID="EURAmadis" RequestedAmountApplicationName="1.00" />
<SaleItem ItemID="Banane" ProductCode="77662389" ItemAmount="3" >
<UnitPrice>0.79</UnitPrice>
</SaleItem>
</PaymentTransaction>
<PaymentData PaymentType="NormalArkosSalesInterface" SoftwareVersion="0.2.3" CertificationCode="NotCertified" />
</PaymentRequest>LoginRequest>
</SaleToPOIRequest>

Trace

Expand
titlexml message

XML message Login response

<?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader

MessageClass

ServiceID="

Service

1"

MessageType

POIID="

Response

AFDB0001"

MessageCategory

MessageType="

Login

Response" ProtocolVersion="3.0"

ServiceID

SaleID="

1

ArkosSales"

POIID

MessageCategory="

AFDB0001

Login"

SaleID

MessageClass="

ArkosSales

Service" /><LoginResponse><Response Result="Success" /><POISystemData><DateTime>2022-03-

21T11

21T12:

20

40:

27

34.

208

160-04:00</DateTime><POISoftware

ManufacturerID="Manufacturer"

SoftwareVersion="1.0" CertificationCode="NA" ApplicationName="Application"

CertificationCode

ManufacturerID="

NA

Manufacturer" /><POIStatus GlobalStatus="OK" /></POISystemData></LoginResponse></SaleToPOIResponse>

2022-03-21 11:20:27,385 TRACE [ntrig] # prepay
2022-03-21 11:20:27,393 TRACE [ntrig] Sending the content of "payNatixis.xml" (736 bytes)
2022-03-21 11:20:27,393 TRACE [ntrig] # end of script
2022-03-21 11:20:37,962 TRACE [ntrig] Received from the POI:

Simple Payment

NexoRetail Feature

Payment

XML message Payment request

Expand
titlexml message simple payment

<?xml version="1.0"

encoding="UTF-8"?><SaleToPOIRequest><MessageHeader SaleID="AFDB0001

?>
<SaleToPOIRequest>
<MessageHeader MessageClass="Service" MessageCategory="

Display

Payment" MessageType="Request" ServiceID="2"

MessageClass

SaleID="

Device" DeviceID="1

ArkosSales" POIID="

ArkosSales

AFDB0001" /

><DisplayRequest><DisplayOutput Device

>
<PaymentRequest>
<SaleData SaleReferenceID="

CashierDisplay" ResponseRequiredFlag

ArkosSale42">
<SaleTransactionID TransactionID="

False

1"

InfoQualify

TimeStamp="

POIReplication"><OutputContent OutputFormat="Text"><OutputText>InsertOrPresentCard</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:20:39,054 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader MessageClass="Device" DeviceID="1" MessageType="Request" POIID="ArkosSales" SaleID="AFDB0001" MessageCategory="Display" ServiceID="2" /><DisplayRequest><DisplayOutput ResponseRequiredFlag="False" Device="CashierDisplay" InfoQualify="POIReplication"><OutputContent OutputFormat="Text"><OutputText>PleaseWait</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:20:40,281 TRACE [ntrig] Received from the POI:

2019-08-21T14:48:05+05:00" />
</SaleData>
<PaymentTransaction>
<AmountsReq Currency="EUR" RequestedAmount="1.00" />
<SaleItem ItemID="Banane" ProductCode="77662389" ItemAmount="3" >
<UnitPrice>0.79</UnitPrice>
</SaleItem>
</PaymentTransaction>
<PaymentData PaymentType="Normal" />
</PaymentRequest>
</SaleToPOIRequest>

XML message Payment response

Expand
titlexml message simple payment response

<?xml version="1.0" encoding="UTF-8"?

><SaleToPOIRequest><MessageHeader POIID

><SaleToPOIResponse>
<MessageHeader MessageType="

ArkosSales" DeviceID="1

Response" MessageClass="

Device" SaleID="AFDB0001

Service" MessageCategory="

Display

Payment"

MessageType="Request"

ServiceID="2

" /><DisplayRequest><DisplayOutput ResponseRequiredFlag="False" InfoQualify="POIReplication" Device="CashierDisplay"><OutputContent OutputFormat=

"

Text"><OutputText>Approved</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:20:51,797 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader ServiceID="2" MessageType="Response" MessageCategory="Payment"

POIID="AFDB0001" SaleID="ArkosSales

" MessageClass=

"

Service" /><PaymentResponse><Response

/>
<PaymentResponse>
<Response Result="

Failure" ErrorCondition="DeviceOut"><AdditionalResponse>Internal system error: MissingDataField { field: "PaymentData" }</AdditionalResponse></Response><SaleData><SaleTransactionID TransactionID="1"

Success"/>
<SaleData>
<SaleTransactionID TimeStamp="2019-08-21T14:48:05+05:00" TransactionID="1"/

></SaleData><POIData><POITransactionID

>
</SaleData>
<POIData>
<POITransactionID TransactionID="0000000017" TimeStamp="2022-03-

21T11

21T13:

20

15:

52

13.

119

277-04:00

" TransactionID="Undefined" /></POIData></PaymentResponse></SaleToPOIResponse>

...

"/>
</POIData>
<PaymentResult PaymentType="Normal">
<PaymentInstrumentData>
<PaymentInstrumentType>Card</PaymentInstrumentType>
<CardData>
<PaymentBrand>Carte a Piste</PaymentBrand>
<MaskedPAN>5219********0517</MaskedPAN>
<EntryMode>MagStripe</EntryMode>
</CardData>
</PaymentInstrumentData>
<AmountsResp AuthorizedAmount="1" Currency="EUR"/>
<PaymentAcquirerData MerchantID="00000NEXOMER001" AcquirerPOIID="ASA00007" AcquirerID="Processor A Short Name">
<ApprovalCode>002026</ApprovalCode>
</PaymentAcquirerData>
<AmadisTicketData>
<TVR>0000000000</TVR>
<TSI>0000</TSI>
<ApplicationPreferredName>Carte a Piste</ApplicationPreferredName>
<CVM>3F0000</CVM>
<ARC>3030</ARC>
</AmadisTicketData>
</PaymentResult>
</PaymentResponse>
</SaleToPOIResponse>

Simple Payment with cashback

NexoRetail Feature

Payment with cashback

XML message Payment request

2022-03-21 11:48:16,923 TRACE [ntrig] # login
Expand
titlexml message payment request with cashback

2022-03-21 11:48:16,924 TRACE [ntrig] Sending the content of "login.xml" (501 bytes)
2022-03-21 11:48:16,925 TRACE [ntrig] Waiting for 500 milliseconds
2022-03-21 11:48:16,928 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader ?>
<SaleToPOIRequest>
<MessageHeader MessageClass="Service" ProtocolVersion="3.0" MessageCategory="LoginPayment" MessageType="ResponseRequest" POIIDServiceID="AFDB00012" SaleID="ArkosSales" ServiceIDPOIID="1AFDB0001" /><LoginResponse><Response Result>
<PaymentRequest>
<SaleData SaleReferenceID="Success" /><POISystemData><DateTime>2022-03-21T11:48:17.244-04:00</DateTime><POISoftware ManufacturerID="Manufacturer" ApplicationName="Application" SoftwareVersion="1.0" CertificationCode="NA" /><POIStatus GlobalStatus="OK" /></POISystemData></LoginResponse></SaleToPOIResponse>
2022-03-21 11:48:17,430 TRACE [ntrig] # prepay
2022-03-21 11:48:17,431 TRACE [ntrig] Sending the content of "payNatixis.xml" (761 bytes)
2022-03-21 11:48:17,432 TRACE [ntrig] # end of script
2022-03-21 11:48:19,721 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader ServiceID="2" POIID="ArkosSales" SaleID="AFDB0001" MessageCategory="Display" MessageType="Request" MessageClass="Device" DeviceID="1" /><DisplayRequest><DisplayOutput InfoQualify="POIReplication" Device="CashierDisplay" ResponseRequiredFlag="False"><OutputContent OutputFormat="Text"><OutputText>InsertOrPresentCard</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:48:20,763 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader MessageType="Request" MessageClass="Device" DeviceID="1" POIID="ArkosSales" SaleID="AFDB0001" MessageCategory="Display" ServiceID="2" /><DisplayRequest><DisplayOutput InfoQualify="POIReplication" ResponseRequiredFlag="False" Device="CashierDisplay"><OutputContent OutputFormat="Text"><OutputText>PleaseWait</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:48:21,535 TRACE [ntrig] Received from the POI: ArkosSale42">
<SaleTransactionID TransactionID="1" TimeStamp="2019-08-21T14:48:05+05:00" />
</SaleData>
<PaymentTransaction>
<AmountsReq Currency="EUR" RequestedAmount="50.00" CashBackAmount="20.00"/>
<SaleItem ItemID="Banane" ProductCode="77662389" ItemAmount="3" >
<UnitPrice>0.79</UnitPrice>
</SaleItem>
</PaymentTransaction>
<PaymentData PaymentType="Normal" />
</PaymentRequest>
</SaleToPOIRequest>

XML message Payment response

Expand
titlexml message payment response with cashback

<?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader POIID="ArkosSales" SaleID>
<SaleToPOIResponse>
<MessageHeader POIID="AFDB0001" ServiceID="2" DeviceID="1" MessageCategory="DisplayPayment" MessageType="Request" MessageClass="Device" /><DisplayRequest><DisplayOutput ResponseRequiredFlag="False" Device="CashierDisplay" InfoQualify="POIReplication"><OutputContent OutputFormat="Text"><OutputText>Approved</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:48:25,136 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader SaleID="ArkosSales" ServiceID="2" MessageCategory=" Payment" MessageType="Response" SaleID="ArkosSales" POIID=" AFDB0001" MessageClass="Service"/><PaymentResponse><Response >
<PaymentResponse>
<Response Result="Failure" ErrorCondition="DeviceOut"><AdditionalResponse>Internal system error: MissingDataField { field: "PaymentData" }</AdditionalResponse></Response><SaleData><SaleTransactionID Success"/>
<SaleData>
<SaleTransactionID TransactionID="1" TimeStamp="2019-08-21T14:48:05+05:00"/></SaleData><POIData><POITransactionID >
</SaleData>
<POIData>
<POITransactionID TransactionID="Undefined0000000018" TimeStamp="2022-03-21T1121T13:4822:2543.453151-04:00"/></POIData></PaymentResponse></SaleToPOIResponse>

Trace

Expand
titlexml message

2022-03-21 11:53:19,234 TRACE [ntrig] # login
2022-03-21 11:53:19,244 TRACE [ntrig] Sending the content of "login.xml" (501 bytes)
2022-03-21 11:53:19,245 TRACE [ntrig] Waiting for 500 milliseconds
2022-03-21 11:53:19,247 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader MessageClass="Service" MessageType="Response" ProtocolVersion="3.0" MessageCategory="Login" POIID="AFDB0001" ServiceID="1" SaleID="ArkosSales" /><LoginResponse><Response Result="Success" /><POISystemData><DateTime>2022-03-21T11:53:19.562-04:00</DateTime><POISoftware CertificationCode="NA" ApplicationName="Application" SoftwareVersion="1.0" ManufacturerID="Manufacturer" /><POIStatus GlobalStatus="OK" /></POISystemData></LoginResponse></SaleToPOIResponse>
2022-03-21 11:53:19,750 TRACE [ntrig] # prepay
2022-03-21 11:53:19,757 TRACE [ntrig] Sending the content of "payNatixis.xml" (761 bytes)
2022-03-21 11:53:19,757 TRACE [ntrig] # end of script
2022-03-21 11:53:22,065 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader MessageCategory="Display" DeviceID="1" MessageClass="Device" MessageType="Request" POIID="ArkosSales" SaleID="AFDB0001" ServiceID="2" /><DisplayRequest><DisplayOutput Device="CashierDisplay" InfoQualify="POIReplication" ResponseRequiredFlag="False"><OutputContent OutputFormat="Text"><OutputText>InsertOrPresentCard</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:53:23,108 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader SaleID="AFDB0001" MessageCategory="Display" ServiceID="2" POIID="ArkosSales" DeviceID="1" MessageType="Request" MessageClass="Device" /><DisplayRequest><DisplayOutput ResponseRequiredFlag="False" InfoQualify="POIReplication" Device="CashierDisplay"><OutputContent OutputFormat="Text"><OutputText>PleaseWait</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:53:23,847 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIRequest><MessageHeader SaleID="AFDB0001" MessageType="Request" MessageCategory="Display" DeviceID="1" POIID="ArkosSales" MessageClass="Device" ServiceID="2" /><DisplayRequest><DisplayOutput Device="CashierDisplay" InfoQualify="POIReplication" ResponseRequiredFlag="False"><OutputContent OutputFormat="Text"><OutputText>Approved</OutputText></OutputContent></DisplayOutput></DisplayRequest></SaleToPOIRequest>
2022-03-21 11:53:28,740 TRACE [ntrig] Received from the POI: <?xml version="1.0" encoding="UTF-8"?><SaleToPOIResponse><MessageHeader MessageCategory="Payment" MessageClass="Service" MessageType="Response" POIID="AFDB0001" SaleID="ArkosSales" ServiceID="2" /><PaymentResponse><Response Result="Failure" ErrorCondition="DeviceOut"><AdditionalResponse>Internal system error: MissingDataField { field: "PaymentData" }</AdditionalResponse></Response><SaleData><SaleTransactionID TimeStamp="2019-08-21T14:48:05+05:00" TransactionID="1" /></SaleData><POIData><POITransactionID TransactionID="Undefined" TimeStamp="2022-03-21T11:53:29.055-04:00" /></POIData></PaymentResponse><>
</POIData>
<PaymentResult PaymentType="Normal">
<PaymentInstrumentData>
<PaymentInstrumentType>Card</PaymentInstrumentType>
<CardData>
<PaymentBrand>Carte a Piste</PaymentBrand>
<MaskedPAN>5219********0517</MaskedPAN>
<EntryMode>MagStripe</EntryMode>
</CardData>
</PaymentInstrumentData>
<AmountsResp Currency="EUR" CashBackAmount="20" AuthorizedAmount="50"/>
<PaymentAcquirerData AcquirerPOIID="ASA00007" AcquirerID="Processor A Short Name" MerchantID="00000NEXOMER001">
<ApprovalCode>002027</ApprovalCode>
</PaymentAcquirerData>
<AmadisTicketData>
<TVR>0000000000</TVR>
<TSI>0000</TSI>
<ApplicationPreferredName>Carte a Piste</ApplicationPreferredName>
<CVM>3F0000</CVM>
<ARC>3030</ARC>
</AmadisTicketData>
</PaymentResult>
</PaymentResponse>
</SaleToPOIResponse>