nexo Sale (Purchase) Message Layouts

This document describes the business-relevant elements used by the Gateway for Sale, also called Purchase, with these nexo Acquirer v6 messages:

  • AcceptorAuthorisationRequestV06 - caaa.001.001.06, used for an online Sale
  • AcceptorAuthorisationResponseV06 - caaa.002.001.06, containing the authorisation result
  • AcceptorCompletionAdviceV06 - caaa.003.001.06, used for an offline Sale advice
  • AcceptorCompletionAdviceResponseV06 - caaa.004.001.06, acknowledging the advice

Independent of the chosen message type, you would also need to consider the common elements of a nexo message.

Use these tables together with the nexo Acquirer v6 Message Definition Report and the corresponding XSD.

Presence: m = mandatory, c = conditional, o = optional, - = not used by the Gateway for that message.

Message overview

MessagePurposeSale selection
AcceptorAuthorisationRequestV06 (caaa.001.001.06)Requests online authorisation and immediate financial capture for a Purchase.Use Hdr/MsgFctn=FAUQ, Tx/TxCaptr=true, and Tx/TxTp=CRDP.
AcceptorAuthorisationResponseV06 (caaa.002.001.06)Returns the approved, partially approved, or declined result.The response to FAUQ uses Hdr/MsgFctn=FAUP.
AcceptorCompletionAdviceV06 (caaa.003.001.06)Reports a successful offline Purchase.Use Hdr/MsgFctn=FCMV, Tx/TxCaptr=true, Tx/TxTp=CRDP, and Tx/TxSucss=true.
AcceptorCompletionAdviceResponseV06 (caaa.004.001.06)Acknowledges that the advice was accepted and processed.The response to FCMV uses Hdr/MsgFctn=FCMK.

Sale scenario selection

ScenarioMessageRequired transaction valuesGateway processing
Online Salecaaa.001TxCaptr=true, TxTp=CRDPCreates an online Sale and returns the authorisation result in caaa.002.
Offline Sale advicecaaa.003TxCaptr=true, TxTp=CRDP, TxSucss=trueRecords and submits an offline Sale advice.

Common request and advice elements

The following fields are common to the online Sale request and the Sale completion advice. Message-specific transaction fields are documented later.

TagDescriptionAuthorisation RequestCompletion Advice
Hdr/PrtcolVrsnProtocol version. Use 6.0.mm
Hdr/XchgIdExchange ID assigned by the terminal for this message.mm
Hdr/ReTrnsmssnCntrRetransmission counter. It is not part of caaa.001; use it in an advice retry when applicable.-o
Hdr/CreDtTmDate and time when the message was created. Include a timezone.mm
Hdr/InitgPty/IdIdentifies the sending terminal host or application.mm
Hdr/RcptPty/IdIdentifies the configured Gateway recipient.oo
Hdr/RcptPty/RmotAccs/AccsCdRemote-access or one-time access code when required by the configured payment flow.oo
Hdr/Tracblt/...Optional traceability information.
See link
oo
Envt/Acqrr/Id/IdAcquirer ID. The Gateway requires the value even though the XSD marks the acquirer block optional.mm
Envt/Acqrr/ParamsVrsnVersion or load timestamp of the parameters used by the terminal.mm
Envt/Mrchnt/Id/IdMerchant ID. The Gateway requires the value even though the XSD marks the merchant block optional.mm
Envt/Mrchnt/CmonNmMerchant name supplied by the terminal.oo
Envt/Mrchnt/LctnCtgyMerchant-location category. NMDC identifies a nomadic merchant and makes the supplied address the service location.oo
Envt/Mrchnt/LctnAndCtct/PstlAdr/...Merchant or service-location address. If the postal-address block is present, supply its required XSD fields.oo
Envt/Mrchnt/LctnAndCtct/AddtlCtctInfAdditional merchant contact, station, or tenant information.oo
Envt/POI/Id/IdTerminal ID.mm
Envt/POI/Id/ShrtNmGateway terminal ID when it differs from the acquirer terminal ID.oo
Envt/POI/GrpIdGateway store or POI group ID.oo
Envt/POI/CpbltiesPOI capabilities block. The Gateway requires this block.mm
Envt/POI/Cpblties/CardRdngCpbltiesCard-reading capabilities supported by the POI.oo
Envt/POI/Cpblties/CrdhldrVrfctnCpbltiesCardholder-verification capabilities supported by the POI.oo
Envt/POI/Cpblties/OnLineCpbltiesPOI online capability. ONLN means online, OFLN means offline, and an absent or different value permits both.oo
Envt/POI/Cpblties/MsgCpblties/DstnMessage destination. CRDO requests the electronic-receipt indicator.oo
Envt/POI/Cmpnt/...Optional terminal serial number, type, provider, device, response-capability, or operating-system information.
See link
oo
Envt/CardCard environment block. It is mandatory in caaa.001 and optional in caaa.003. An offline Sale advice should copy the card information needed to process the transaction.mc
Envt/Card/PrtctdCardData/...Protected card data. Use this form when card data must be supplied in production.cc
Envt/Card/PlainCardData/...PAN, expiry date, sequence number, or track data. Use clear card data only in an appropriately secured non-production test.cc
Envt/Card/PmtAcctRefPayment account reference or supported hosted-data identifier.oo
Envt/Card/IssrBINIssuer BIN.oo
Envt/Card/CardCtryCdCard country code.oo
Envt/Card/CardCcyCdCard currency code.oo
Envt/Card/CardPdctPrflCard product profile used for grouping and reconciliation.oo
Envt/Card/CardBrndCard brand.oo
Envt/Crdhldr/NmCardholder name.oo
Envt/Crdhldr/BllgAdr/...Billing address used when address-verification data is applicable.oo
Cntxt/PmtCntxtPayment context block. The Gateway requires this block.mm
Cntxt/PmtCntxt/CardPresIndicates whether the card was present.oo
Cntxt/PmtCntxt/CrdhldrPresIndicates whether the cardholder was present.oo
Cntxt/PmtCntxt/OnLineCntxtIndicates whether the original processing context was online. It is available only in the Completion Advice structure.-o
Cntxt/PmtCntxt/AttndncCntxtAttendance context. When absent, the Gateway treats the transaction as attended.oo
Cntxt/PmtCntxt/TxChanlTransaction channel.oo
Cntxt/PmtCntxt/CardDataNtryMdCard-data entry mode. The Gateway requires this field.mm
Cntxt/PmtCntxt/FllbckIndFallback indicator: FFLB, SFLB, or NFLB.oo
Cntxt/PmtCntxt/SpprtdOptnSupported payment options understood by the terminal. The Gateway consumes this field from the Authorisation Request but not from Completion Advice.o-
Cntxt/SaleCntxt/SaleIdSale system or workstation ID used for transaction reporting and downstream feeds.oo
Cntxt/SaleCntxt/CshrIdOperator or cashier ID.oo
Cntxt/SaleCntxt/InvcNbInvoice number used for reporting.oo
Cntxt/SaleCntxt/SpnsrdMrchnt/...Sponsored merchant information.oo
Tx/MrchntCtgyCdMerchant category code.mm
Tx/CardPrgrmmPropsdCard programme proposed by the terminal.oo
Tx/TxId/TxDtTmDate and time of the current transaction. Include a timezone.mm
Tx/TxId/TxRefTerminal-assigned reference of the current transaction. It must be unique within the applicable terminal and time scope.mm
Tx/InitrTxIdInitiator transaction ID used for correlation.oo
Tx/RcncltnIdReconciliation ID associated with the transaction.oo
Tx/TxDtls/CcyTransaction currency.mm
Tx/TxDtls/TtlAmtTotal Purchase amount.mm
Tx/TxDtls/AmtQlfrAmount qualifier for a scenario such as an incremental or decremental amount. Omit for an ordinary Sale.oo
Tx/TxDtls/DtldAmt/AmtGoodsAndSvcsGoods-and-services portion of the total amount.oo
Tx/TxDtls/DtldAmt/CshBckCashback amount when cashback is requested and supported.oo
Tx/TxDtls/DtldAmt/GrttyGratuity or tip amount.oo
Tx/TxDtls/AcctTpCard account type, when selected.oo
Tx/TxDtls/UattnddLvlCtgyUnattended-level category.oo
Tx/TxDtls/SaleItmProduct or basket items.oo
Tx/TxDtls/ICCRltdDataEMV data, when applicable.oo
Tx/AddtlTxDataAdditional transaction data supported for the applicable payment scenario.oo
SctyTrlr/AuthntcdDataMessage Authentication Value. Send it when message security or MAC validation is enabled for the connection.oo

Acceptor Authorisation Request for an online Sale

AcceptorAuthorisationRequestV06 - caaa.001.001.06

Root path: Document/AccptrAuthstnReq/AuthstnReq

Required Sale values

TagValueDescriptionPresence
Hdr/MsgFctnFAUQFinancial authorisation request.m
Tx/TxCaptrtrueRequests immediate capture.m
Tx/TxTpCRDPCard payment or Purchase.m

Additional Authorisation Request elements

TagDescriptionPresence
Tx/AddtlSvcRequests an additional service, for example cashback or another configured payment feature.o
Tx/SvcAttrService attribute used for a supported specialised scenario. Omit for an ordinary one-time Sale unless required by that scenario.o

Cardholder authentication and verification

Online cardholder authentication values belong in the Authorisation Request. A Completion Advice reports verification already performed by the terminal; it does not request a new online PIN or card-security-code check.

TagUsageAuthorisation RequestCompletion Advice
Envt/Crdhldr/Authntcn/AuthntcnMtdUse NPIN for online PIN or CSCV for card security code verification.c-
Envt/Crdhldr/Authntcn/CrdhldrOnLinePIN/NcrptdPINBlckEncrypted online PIN block.c-
Envt/Crdhldr/Authntcn/CrdhldrOnLinePIN/PINFrmtPIN block format.c-
Envt/Crdhldr/Authntcn/PrtctdAuthntcnValProtected card security code. It is consumed only with AuthntcnMtd=CSCV and takes precedence over AuthntcnVal.c-
Envt/Crdhldr/Authntcn/AuthntcnValClear card security code value. Use only in an appropriately secured non-production test.c-
Envt/Crdhldr/TxVrfctnRsltVerification already performed by the terminal, such as offline PIN.o-
Tx/TxVrfctnRsltVerification already performed by the terminal in a Completion Advice.-o

Acceptor Completion Advice for a Sale

AcceptorCompletionAdviceV06 - caaa.003.001.06

Root path: Document/AccptrCmpltnAdvc/CmpltnAdvc

Required successful-Sale values

TagValueDescriptionPresence
Hdr/MsgFctnFCMVFinancial completion advice.m
Tx/TxCaptrtrueIndicates financial capture. Although optional in the XSD, the Gateway requires it.m
Tx/TxTpCRDPCard payment or Purchase.m
Tx/TxSucsstrueIndicates that the terminal-side Purchase succeeded.m

Additional response information in an advice

TagGateway treatmentPresence
Tx/AuthstnRslt/RspnToAuthstn/AddtlRspnInfAdditional response information is retained when supplied.o

Authorisation Response

AcceptorAuthorisationResponseV06 - caaa.002.001.06

Root path: Document/AccptrAuthstnRspn/AuthstnRspn

The response to a financial authorisation request uses Hdr/MsgFctn=FAUP.

Response tagDescriptionPresence
Tx/TxId/TxDtTmDate and time of the request transaction.m
Tx/TxId/TxRefTransaction reference copied from the request.m
Tx/RcptTxIdRecipient transaction ID assigned by the Gateway when available.o
Tx/TxDtls/CcyCurrency associated with the processed transaction.m
Tx/TxDtls/TtlAmtAmount associated with the processed transaction. For a partial approval, use the returned result and amount rather than assuming the full requested amount was approved.m
Tx/TxDtls/DtldAmt/...Returned goods-and-services, cashback, and gratuity amounts when available.o
Tx/TxDtls/ICCRltdDataEMV response data that the terminal must pass to the card when applicable.o
Tx/IntrchngDataScheme transaction identifier when returned by the processor.o
TxRspn/AuthstnRslt/AuthstnNtty/TpIdentifies whether the authorisation entity was the card issuer or an intermediary.o
TxRspn/AuthstnRslt/RspnToAuthstn/RspnAPPR = approved, PART = partially approved, DECL = declined.m
TxRspn/AuthstnRslt/RspnToAuthstn/RspnRsnResponse reason, limited to the nexo field length.o
TxRspn/AuthstnRslt/RspnToAuthstn/AddtlRspnInfAdditional processor or Gateway response information.o
TxRspn/AuthstnRslt/AuthstnCdAuthorisation code, padded to the required response length when necessary.o
TxRspn/AuthstnRslt/CmpltnReqrdIndicates whether a later completion message is required.m
TxRspn/TxVrfctnRsltAVS, card-security-code, manual-verification, or supported payment-specific verification results.o
TxRspn/ActnTerminal action such as display, print, PIN retry, or fall-forward when required.o
Envt/Card/MskdPANMasked PAN when available.o
Envt/Card/CardBrndResolved card brand when available.o
Envt/Card/PmtAcctRefPayment account reference or supported token identifier when requested and available.o

DECL is a business authorisation result. A malformed, unsupported, or invalid nexo message can instead produce an Acceptor Rejection and should not be treated as an issuer decline.

Completion Advice Response

AcceptorCompletionAdviceResponseV06 - caaa.004.001.06

Root path: Document/AccptrCmpltnAdvcRspn/CmpltnAdvcRspn

The response to a financial completion advice uses Hdr/MsgFctn=FCMK.

Response tagDescriptionPresence
Tx/TxId/TxDtTmDate and time of the advised transaction.m
Tx/TxId/TxRefTransaction reference copied from the advice.m
Tx/RcptTxIdRecipient transaction ID assigned by the Gateway when available.o
Tx/SaleRefIdSale or order reference associated with the advice.o
Tx/RspnAPPR when the advice was accepted and processed normally. This acknowledges the advice; it is not a new issuer authorisation decision.m
Envt/Card/MskdPANMasked PAN when available.o
Envt/Card/CardBrndResolved card brand when available.o
Envt/Card/PmtAcctRefPayment account reference when explicitly requested and available.o
TMSTrggrTerminal-management trigger when the Gateway requires the terminal to contact the TMS.o

Operational rules

RuleExpected behavior
Unique transaction keyUse a unique Tx/TxId/TxRef with the correct terminal ID and timestamp. Reusing a transaction key can invoke duplicate-message handling.
Advice retryRetransmit the same Completion Advice with an incremented Hdr/ReTrnsmssnCntr; do not create a different business transaction for a transport retry.
Response handlingTreat APPR, PART, and DECL as distinct outcomes. For PART, use the returned amount and follow the terminal's partial-approval rules.
EMV completionWhen Tx/TxDtls/ICCRltdData is returned in caaa.002, pass the required issuer response data to the card.
SecurityProtect card and authentication data and send SctyTrlr when the connection is configured for message authentication.

Did this page help you?
Want a quick overview?