Access Gateway Outbound Host API
Reference
Data Model

Data Model

Field-level reference for every Host API message.

  • Requests (MineSec → you): fields marked Yes are always sent. Other fields may be left out; null fields are never sent.
  • Responses (you → MineSec): fields marked Yes must be returned.
  • Accept and ignore fields you do not recognize. New optional fields may be added over time.

Card

Card transaction request

FieldTypeRequiredDescription
acptIdstringYesMineSec routing entry (acceptance) used for this request.
actionTypeActionTypeYesAction on the transaction. See ActionType.
amountValuestringYesAmount as a decimal string with the currency's ISO decimal places.
batchIdstringYesMineSec batch ID.
batchNostringYesBatch number.
cardDatamap<string,string>EMV tags: map of tag (hex) to value (hex).
consumerDeviceConsumerPaymentDeviceForm factor the card was presented on.
currencystringYesISO 4217 alpha-3 currency code.
cvmPerformedCvmPerformedYesCardholder verification performed.
enbrTranIdstringYesMineSec transaction ID. Idempotency key for QR.
entryModeEntryModeYesHow the card was read.
installmentInstallmentPresent only on tranType: SALE when the cardholder selected an installment plan; omitted otherwise. The older tranType: INSTALL never carries it. Carried unchanged on the reversal, void and batch upload of the sale, so externalPlanCode always matches the original sale even if the plan configuration later changes.
isReversalbooleantrue when this request reverses the original.
linkedEnbrTranIdstringenbrTranId of the original transaction.
mccstringYesMerchant category code.
merchantAddressstringYesMerchant address.
merchantDeviceMerchantDeviceYesAcceptance device type.
merchantNamestringYesMerchant name.
orgApprovalCodestringapprovalCode of the original transaction.
orgAuthDatestringWhen the original preauth (AUTH) was requested, the same value as that request's timestamp. Sent when the original transaction is a preauth.
orgRrnstringrrn of the original transaction.
orgSaleDatestringWhen the original sale (SALE, INSTALL or AUTH_COMP) was requested, the same value as that request's timestamp. Sent when the original transaction is a sale.
orgTracestringtrace of the original transaction.
paymentMethodPaymentMethodYesCard scheme or wallet.
pinBlockPinBlockEncrypted PIN block. Present when the cardholder entered a PIN.
posExtramap<string,string>Key-value data passed through from the POS, plus your own keys from the acceptance's extraParams.
posReferencestringReference set by the POS application.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
profileIdstringYesMineSec merchant profile ID.
sdkIdstringID of the SoftPOS App or Embedded Payment SDK installation that took the payment.
subMidstringSub-merchant ID, when configured.
subTidstringSub-terminal ID, when configured.
timestampstringYesRequest time, ISO 8601 UTC.
tracestringYesPer-message sequence number (system trace audit number).
track2DataTrack2DataEncrypted Track2. Present when a Track2 key is set up for your host.
tranTypeTranTypeYesTransaction type. See TranType.

Card transaction response

FieldTypeRequiredDescription
approvalCodestringAuthorization code from the issuer or host.
hostReferenceIdstringYour own reference for this message.
respCodestringYesResult code. 00 = success.
respMessagestringHuman-readable result.
rrnstringYour host's retrieval reference number.
extramap<string,string>Host-specific key-value data.

PinBlock

Encrypted PIN block. EMV tag 99 is never sent in cardData.

FieldTypeRequiredDescription
pinKsnstringDUKPT KSN for the PIN block key (TDES: 20 hex, AES: 24 hex). Omitted when the PIN key is a static key.
datastringYesHex encrypted PIN block (ISO format-0 for TDES, format-4 for AES).

Track2Data

Encrypted Track2 data. EMV tag 57 is never sent in cardData; read the PAN from here after decryption.

FieldTypeRequiredDescription
track2KsnstringYesDUKPT KSN for the Track2 data key.
datastringYesHex encrypted Track2 data (DUKPT data-encryption).
track2LengthintegerYesNumber of hex characters of Track2 before encryption. The plaintext is zero-padded up to the cipher block size (8 bytes TDES, 16 bytes AES) before encryption, so after decrypting take the first track2Length hex characters and discard the rest. Counts hex characters, not bytes: 38 means 19 bytes of Track2.

Installment

Resolved installment instruction. MineSec validates the selection against the merchant's configured plans before sending; the host must not calculate interest or amortization from it.

FieldTypeRequiredDescription
installmentCountintegerYesNumber of installments. For REVOLVING it applies to revolving.remainingAmount, excluding the initial payment.
interestModelInterestModelYesWhether the plan charges interest.
installmentTypeInstallmentTypeYesRegular or revolving.
externalPlanCodestringAcquirer-defined plan code, when the integration requires one.
revolvingRevolvingPresent only when installmentType is REVOLVING.
issuerPreapprovalReferencestringIssuer preapproval reference, when required and available.

Revolving

Split of the transaction amount for a REVOLVING installment: 0 < initialPaymentAmount < amountValue, and remainingAmount = amountValue - initialPaymentAmount.

FieldTypeRequiredDescription
initialPaymentAmountAmountYesAmount paid upfront. Same currency as the transaction; value uses the currency's ISO decimal fraction, as amountValue.
remainingAmountAmountYesAmount spread over installmentCount. Same currency as the transaction; value uses the currency's ISO decimal fraction, as amountValue.

Sign-on request

FieldTypeRequiredDescription
acptIdstringYesMineSec routing entry (acceptance) used for this request.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
profileIdstringYesMineSec merchant profile ID.
subMidstringSub-merchant ID, when configured.
subTidstringSub-terminal ID, when configured.
timestampstringYesRequest time, ISO 8601 UTC.
tracestringYesPer-message sequence number (system trace audit number).

Sign-on response

FieldTypeRequiredDescription
hostReferenceIdstringYour own reference for this message.
respCodestringYesResult code. 00 = success.
respMessagestringHuman-readable result.
extramap<string,string>Host-specific key-value data.

Sign-off request

FieldTypeRequiredDescription
acptIdstringYesMineSec routing entry (acceptance) used for this request.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
profileIdstringYesMineSec merchant profile ID.
subMidstringSub-merchant ID, when configured.
subTidstringSub-terminal ID, when configured.
timestampstringYesRequest time, ISO 8601 UTC.
tracestringYesPer-message sequence number (system trace audit number).

Sign-off response

FieldTypeRequiredDescription
respCodestringYesResult code. 00 = success.
respMessagestringHuman-readable result.
extramap<string,string>Host-specific key-value data.

Settlement request

FieldTypeRequiredDescription
acptIdstringYesMineSec routing entry (acceptance) used for this request.
batchIdstringYesMineSec batch ID.
batchNostringYesBatch number.
isSecondbooleantrue for the settlement sent again after batch upload.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
profileIdstringYesMineSec merchant profile ID.
summaryarray<Settlement summary>YesTotals grouped by type, status and payment method.
timestampstringYesRequest time, ISO 8601 UTC.
tracestringYesPer-message sequence number (system trace audit number).

Settlement summary

FieldTypeRequiredDescription
countnumberYesNumber of transactions.
paymentMethodPaymentMethodCard scheme or wallet.
totalAmountYesTotal amount.
tranStatusTranStatusYesTransaction status.
tranTypeTranTypeYesTransaction type. See TranType.

Settlement response

FieldTypeRequiredDescription
hostReferenceIdstringYour own reference for this message.
respCodestringYesResult code. 00 = success.
respMessagestringHuman-readable result.
extramap<string,string>Host-specific key-value data.

QR

QR payment request

Creates an MPQR order or charges a scanned CPQR code. consumerCode is required for CPQR.

FieldTypeRequiredDescription
enbrTranIdstringYesIdempotency key of the payment.
srsTranIdstringMineSec order number of the transaction, generated by MineSec (for example M1866239185331064832). Use it with enbrTranId to look a transaction up with MineSec.
tracestringYesPer-message sequence number.
posReferencestringReference set by the POS application.
extOrderIdstringThe merchant's own order number.
pboIdstringYesYour account (PBO) ID at MineSec.
isvIdstringisvId of the profile: the partner (ISV) that runs the merchant, when set.
profileIdstringYesMineSec merchant profile.
providerMchIdstringproviderMchId of the profile: the merchant ID in your own system, when set.
providerReferencestringproviderReference of the profile: your own reference for the merchant.
shopIdstringshopId of the profile, when set.
shopNamestringshopName of the profile, when set.
acptIdstringYesThe acceptance (routing entry) used.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
subMidstringWallet sub-merchant id.
subTidstringSub-terminal ID, when configured.
sdkIdstringID of the SoftPOS App or Embedded Payment SDK installation that took the payment.
merchantDeviceMerchantDeviceYesAcceptance device type.
qrModeQrModeYesMerchant-presented or consumer-presented.
tranTypestringYesOnly SALE is supported.
amountValuestringYesSame formatting as /transactions.
currencystringYesISO 4217 alpha-3 currency code.
paymentMethodQrPaymentMethodYesCard scheme or wallet.
consumerCodeConsumerCodeThe scanned customer code. Required for CPQR.
qrExpirySecondsintegerMPQR: requested validity. The host may shorten it with expiresAt; MineSec closes the order at whichever comes first.
notifyUrlstringWhere to send the notify for this transaction. Call it unchanged, never build it. Omitted when no notify is set up for the host.
merchantNamestringYesMerchant name.
merchantAddressstringYesMerchant address.
merchantCitystringYesmerchantCity of the profile. EMVCo MPM tag 60. Sent as an empty string when the profile has none.
merchantCountrystringYesISO 3166-1 alpha-2. EMVCo MPM tag 58.
merchantPostalCodestringmerchantPostalCode of the profile, when set.
mccstringYesMerchant category code.
batchIdstringFor reference only. QR is normally host-captured.
batchNostringFor reference only.
posExtramap<string,string>Your own keys from the acceptance's extraParams.
timestampstringYesRequest time, ISO 8601 UTC.

QR inquiry request

FieldTypeRequiredDescription
enbrTranIdstringYesThe payment or the refund being queried.
srsTranIdstringMineSec order number of the transaction, generated by MineSec (for example M1866239185331064832). Use it with enbrTranId to look a transaction up with MineSec.
tracestringYesPer-message sequence number.
posReferencestringReference set by the POS application.
extOrderIdstringThe merchant's own order number.
pboIdstringYesYour account (PBO) ID at MineSec.
isvIdstringisvId of the profile: the partner (ISV) that runs the merchant, when set.
profileIdstringYesMineSec merchant profile.
providerMchIdstringproviderMchId of the profile: the merchant ID in your own system, when set.
providerReferencestringproviderReference of the profile: your own reference for the merchant.
shopIdstringshopId of the profile, when set.
shopNamestringshopName of the profile, when set.
acptIdstringYesThe acceptance (routing entry) used.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
subMidstringWallet sub-merchant id.
subTidstringSub-terminal ID, when configured.
sdkIdstringID of the SoftPOS App or Embedded Payment SDK installation that took the payment.
inquiryTypeQrInquiryTypeYesWhether a payment or a refund is queried.
rrnstringrrn from the host's create response. Sent when known.
batchIdstringFor reference only. QR is normally host-captured.
batchNostringFor reference only.
timestampstringYesRequest time, ISO 8601 UTC.

QR cancellation request

FieldTypeRequiredDescription
enbrTranIdstringYesThe payment being cancelled.
enbrActionIdstringYesTells two cancellation attempts on one payment apart.
srsTranIdstringMineSec order number of the transaction, generated by MineSec (for example M1866239185331064832). Use it with enbrTranId to look a transaction up with MineSec.
tracestringYesPer-message sequence number.
posReferencestringReference set by the POS application.
extOrderIdstringThe merchant's own order number.
pboIdstringYesYour account (PBO) ID at MineSec.
isvIdstringisvId of the profile: the partner (ISV) that runs the merchant, when set.
profileIdstringYesMineSec merchant profile.
providerMchIdstringproviderMchId of the profile: the merchant ID in your own system, when set.
providerReferencestringproviderReference of the profile: your own reference for the merchant.
shopIdstringshopId of the profile, when set.
shopNamestringshopName of the profile, when set.
acptIdstringYesThe acceptance (routing entry) used.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
subMidstringWallet sub-merchant id.
subTidstringSub-terminal ID, when configured.
sdkIdstringID of the SoftPOS App or Embedded Payment SDK installation that took the payment.
reasonQrCancelReasonYesWhy the payment is cancelled.
rrnstringrrn from the host's create response. Sent when known.
batchIdstringFor reference only. QR is normally host-captured.
batchNostringFor reference only.
timestampstringYesRequest time, ISO 8601 UTC.

QR refund request

FieldTypeRequiredDescription
enbrTranIdstringYesIdempotency key of the refund itself, not the original payment.
srsTranIdstringMineSec order number of the transaction, generated by MineSec (for example M1866239185331064832). Use it with enbrTranId to look a transaction up with MineSec.
tracestringYesPer-message sequence number.
posReferencestringReference set by the POS application.
extOrderIdstringThe merchant's own order number.
pboIdstringYesYour account (PBO) ID at MineSec.
isvIdstringisvId of the profile: the partner (ISV) that runs the merchant, when set.
profileIdstringYesMineSec merchant profile.
providerMchIdstringproviderMchId of the profile: the merchant ID in your own system, when set.
providerReferencestringproviderReference of the profile: your own reference for the merchant.
shopIdstringshopId of the profile, when set.
shopNamestringshopName of the profile, when set.
acptIdstringYesThe acceptance (routing entry) used.
primaryMidstringYesprimaryMid of the acceptance.
primaryTidstringYesprimaryTid of the acceptance.
subMidstringWallet sub-merchant id.
subTidstringSub-terminal ID, when configured.
sdkIdstringID of the SoftPOS App or Embedded Payment SDK installation that took the payment.
amountValuestringYesAmount to refund. Same formatting as /transactions.
currencystringYesISO 4217 alpha-3 currency code.
notifyUrlstringWhere to send the notify for this transaction. Call it unchanged, never build it. Omitted when no notify is set up for the host.
linkedEnbrTranIdstringYesThe original payment.
orgRrnstringYesrrn of the original payment.
batchIdstringFor reference only. QR is normally host-captured.
batchNostringFor reference only.
timestampstringYesRequest time, ISO 8601 UTC.

QR result

Result of a QR payment or refund. Returned by every /qr-payments endpoint and sent as the notify body.

FieldTypeRequiredDescription
respCodestringYesThe host's own result code, kept for diagnostics. Must be 00 when status is PENDING or SUCCESS.
respMessagestringHuman-readable result. Required when status is FAILED.
statusQrStatusYesOutcome of the payment or refund.
failureCodeQrFailureCodeRequired when status is FAILED.
enbrTranIdstringYesEcho of the request.
rrnstringThe host's own reference for this payment or refund, issued at create time. MineSec stores it, sends it back on every follow-up call and searches by it. Required when status is PENDING, SUCCESS or REVERSED, and the same value in every response for one payment. It may be absent only when the host holds no order: a payment rejected before an order was created, or a cancellation for a create the host never received. Put the wallet's own transaction id, if different, in extra.walletTransactionId.
approvalCodestringCard scheme QR only.
networkMerchantIdstringThe merchant id on the wallet or scheme side.
primaryMidstringEcho of the request. Expected on a notify.
primaryTidstringEcho of the request. Expected on a notify.
paymentMethodstringRequired when status is SUCCESS, and then concrete, never UNIFIED_QR. A QrPaymentMethod value. A wallet missing from that list is still accepted; ask MineSec to add it.
amountValuestringYesEcho of the request. Checked by MineSec.
currencystringYesEcho of the request. Checked by MineSec.
qrCodeQrCodeMPQR: the QR to display while status is PENDING.
expiresAtstringMPQR: when the QR stops being payable. ISO 8601 UTC.
paidAtstringWhen the payment succeeded. ISO 8601 UTC.
payerPayerPayer details, when available.
payerAmountstringCross-border wallets: what the payer was charged.
exchangeRatestringCross-border wallets: rate applied.
discountAmountstringDiscount applied by the wallet, if any.
settlementDatestringYour settlement date for this payment.
settlementReferencestringYour settlement reference.
linkedEnbrTranIdstringRefunds: the original payment.
orgRrnstringRefunds: rrn of the original payment.
refundedAtstringRefunds: when the refund succeeded. ISO 8601 UTC.
refundedAmountstringRefund inquiries: the amount refunded.
extramap<string,string>Host-specific values, stored with the transaction. walletTransactionId: the wallet or scheme transaction id (the number on the payer's receipt), when it differs from rrn.

QR notify

The fields of the QR result plus the event. Sent once per final status, never for PENDING.

FieldTypeRequiredDescription
eventIdstringYesUnique per event. Repeated on a retry of the same event.
eventTypeQrEventTypeYesPayment or refund.
eventTimestringYesISO 8601 UTC.
respCodestringYesThe host's own result code, kept for diagnostics. Must be 00 when status is PENDING or SUCCESS.
respMessagestringHuman-readable result. Required when status is FAILED.
statusQrStatusYesOutcome of the payment or refund.
failureCodeQrFailureCodeRequired when status is FAILED.
enbrTranIdstringYesEcho of the request.
rrnstringThe host's own reference for this payment or refund, issued at create time. MineSec stores it, sends it back on every follow-up call and searches by it. Required when status is PENDING, SUCCESS or REVERSED, and the same value in every response for one payment. It may be absent only when the host holds no order: a payment rejected before an order was created, or a cancellation for a create the host never received. Put the wallet's own transaction id, if different, in extra.walletTransactionId.
approvalCodestringCard scheme QR only.
networkMerchantIdstringThe merchant id on the wallet or scheme side.
primaryMidstringEcho of the request. Expected on a notify.
primaryTidstringEcho of the request. Expected on a notify.
paymentMethodstringRequired when status is SUCCESS, and then concrete, never UNIFIED_QR. A QrPaymentMethod value. A wallet missing from that list is still accepted; ask MineSec to add it.
amountValuestringYesEcho of the request. Checked by MineSec.
currencystringYesEcho of the request. Checked by MineSec.
qrCodeQrCodeMPQR: the QR to display while status is PENDING.
expiresAtstringMPQR: when the QR stops being payable. ISO 8601 UTC.
paidAtstringWhen the payment succeeded. ISO 8601 UTC.
payerPayerPayer details, when available.
payerAmountstringCross-border wallets: what the payer was charged.
exchangeRatestringCross-border wallets: rate applied.
discountAmountstringDiscount applied by the wallet, if any.
settlementDatestringYour settlement date for this payment.
settlementReferencestringYour settlement reference.
linkedEnbrTranIdstringRefunds: the original payment.
orgRrnstringRefunds: rrn of the original payment.
refundedAtstringRefunds: when the refund succeeded. ISO 8601 UTC.
refundedAmountstringRefund inquiries: the amount refunded.
extramap<string,string>Host-specific values, stored with the transaction. walletTransactionId: the wallet or scheme transaction id (the number on the payer's receipt), when it differs from rrn.

QR notify acknowledgement

FieldTypeRequiredDescription
respCodestringYesResult code. 00 = success.
respMessagestringHuman-readable result.

ConsumerCode

The customer's code scanned by the merchant.

FieldTypeRequiredDescription
valuestringYesThe scanned content. A one-time payment token.
formatQrConsumerCodeFormatYesEncoding of the code.
scanMethodQrScanMethodHow the code was captured.

QrCode

The QR to display.

FieldTypeRequiredDescription
contentstringYesThe payload to render as a QR.
formatQrCodeFormatYesEncoding of the code.
referencestringReference carried inside the QR, e.g. the EMVCo reference label seen on the payer's statement.

Payer

FieldTypeRequiredDescription
idstringThe wallet's opaque user id.
institutionstringThe payer's bank or wallet, for national schemes.
maskedAccountstringMasked payer account.
fundingSourcestringe.g. BALANCE, CARD.

Common

Amount

FieldTypeRequiredDescription
currencystringYesISO 4217 alpha-3 currency code.
valuestringYesAmount as a decimal string.

Enums

TranType

SALE, REFUND, AUTH, AUTH_COMP, DEFERRED_AUTH, INSTALL

The Host API sends SALE, REFUND, AUTH, AUTH_COMP and INSTALL.

ActionType

NEW, ADJUST, VOID, AUTH_COMP, LINK_REFUND, CONFIRM, MERCHANT_PRESENT_QR, CONSUMER_PRESENT_QR, NOTIFIED, INQUIRY, CLOSE, INCREMENTAL_AUTH

On /transactions the Host API sends NEW, VOID, AUTH_COMP and LINK_REFUND. See Transaction types.

TranStatus

PROCESSING, APPROVED, DECLINED, VOIDED, REVERSED, AUTH_ONLY, ADJUSTED

PaymentMethod

VISA, MASTERCARD, UNIONPAY, AMEX, JCB, DISCOVER, DINERS, MAESTRO, HIMYAN, NAPS, MY_DEBIT, ELO, CPACE, NAPAS, TROY, TAKAPAY, SADEEQ, UNKNOWN

EntryMode

NFC, SWIPE, CHIP, FALLBACK, MANUAL_KEYED, MERCHANT_PRESENT, CONSUMER_PRESENT, RETRIEVE, UNKNOWN

CvmPerformed

NO_CVM, SIGNATURE, PIN, OFFLINE_PIN, CDCVM

MerchantDevice

SOFTPOS, TERMINAL, MPOS, OTHER

ConsumerPaymentDevice

Card, MobilePhone, Tablet, MiniCard, Watch, MobileTag, KeyFob, Case, Other

InstallmentType

REGULAR, REVOLVING

InterestModel

WITH_INTEREST, NO_INTEREST

QrMode

MPQR: merchant presented, the host returns a QR to display. CPQR: consumer presented, the merchant scans the customer's code and the host charges it.

MPQR, CPQR

QrStatus

The only field MineSec uses for the outcome. CLOSED: cancelled or expired before any money moved. REVERSED: charged, then returned by a cancellation.

PENDING, SUCCESS, FAILED, CLOSED, REVERSED

QrPaymentMethod

Payment methods accepted on the QR endpoints. UNIFIED_QR is the aggregated code: the host identifies the wallet and returns the concrete method on SUCCESS.

ALIPAY, WECHAT, VISA_QR, MASTERCARD_QR, UNIONPAY_QR, SHOPEE_PAY_QR, GRAB_PAY_QR, ALIPAY_PLUS_QR, DUIT_NOW_QR, PAY_NOW, PH_QR, JCB_EMV_QR, LINEPAY_QR, EZ_PAY, PI_QR, ESUNWALLET_QR, TAIWANPAY_QR, EASYWALLET_QR, JKOPAY_QR, IPASSMONEY_PAY_QR, ICASH_PAY_QR, PLUSPAY_QR, PXPAYPLUS_QR, GAMA_PAY_QR, OPAY_QR, LINEPAYMONEY_QR, PAYPAY_QR, BCCARD_QR, NETS_QR, NTTDATA_QR, UCARD, CUP, SMARTPAY, BONUSPAY_QR, CASHLEZ_QR, UNIFIED_QR

QrConsumerCodeFormat

How the scanned consumer code is encoded.

BARCODE_NUMERIC, QR_TEXT, EMV_CPM_BASE64

QrScanMethod

How the merchant captured the consumer code.

CAMERA, SCANNER

QrCodeFormat

How qrCode.content is to be rendered.

EMVCO_MPM, URL, RAW

QrInquiryType

Whether enbrTranId names a payment or a refund.

PAYMENT, REFUND

QrCancelReason

TIMEOUT: MineSec got no final status in time. MERCHANT_VOID: the merchant voids a paid transaction.

USER_CANCELLED, TIMEOUT, MERCHANT_VOID

QrEventType

Whether the notify reports a payment or a refund.

PAYMENT, REFUND

QrFailureCode

Why a payment or refund is FAILED. Use one of the listed codes where one fits: CODE_EXPIRED, CODE_INVALID, INSUFFICIENT_FUNDS, USER_CANCELLED, RISK_REJECTED, LIMIT_EXCEEDED, UNSUPPORTED_WALLET, DUPLICATE, SYSTEM_ERROR. UNSUPPORTED_WALLET: the host cannot place a UNIFIED_QR consumer code, or the merchant does not accept its wallet. A code outside the list is accepted and treated as a generic failure.