Validation codes for authorization events

Using the validation code to identify the type of action that triggered an event.

An authorization event uses a validation code to indicate what type of action generated it. You can find the card network's validation code in the response_code field.

If a validation fails, the Pismo platform uses a custom validation code to provide more specific reasons for why it failed. You can find the custom code for an event in the denial_code field.

An authorization event falls into one of two categories: stateless or stateful.

A stateless event is independent of other events. For example, if an event indicates that an invalid expiration date was provided, then the transaction is over. Of course, the card holder can enter the correct expiration date, but when they submit the new data, a new transaction is generated – a transaction that is completely independent of the old transaction. So "Invalid expiration date provided" is a stateless event.

On the other hand, if a card holder reports a card as stolen, the platform generates a "Card status ROBBED or THEFT" event. The platform needs to do more processing after issuing this event – to block the card, for example. Since this is an on-going transaction, it's a stateful event.

The following tables list all the custom codes that the Pismo platform uses for authorization events. An event only contains one of these codes if validation fails. Approved transactions don't have custom codes.

Authorization validations

Custom codeNameStateful or statelessZero Balance validationVisa denial codeMastercard denial codeTecBan denial codeRupay denial codeELO
OP1Generic errorBothX0563069605
OP1Incomplete transactionStatelessX1230303030
FR5Transaction made in Brazil with magnetic stripeStatelessX6357R95782
FR1CVV1 or CVC1 validationStatelessX8288571482
FR2CVV2 or CVC2 validationStatelessX8288571482
FR3IAV validationStatelessX6363066363
CEDInvalid expiration date providedStatelessX5454541454
FRHPOS (Point-of-Sale) entry mode validationStatelessX5858585858
FRECryptogram data validationStatelessX6357R95782
FRNChip field validationStatelessX6363R9E382
FROChip signature validationStatelessX8288R98182
FR6Password validationStatelessX5555555555
998Card hash not present in databaseStateless*X1414561414
FR7Card not present in databaseStateless*X1414141414
ANFAcceptance not foundStatefulX5757575757
IATInvalid account transactionStatefulX5757575757
CMDCard mode disabledStatefulX5757575757
VEVExpired virtual cardStatefulX5454545454
VNMExpired cardStatefulX5454545454
CTETransaction counter exceededStatefulX5454545454
CNDAccount blockedStateful6257575757
TSMPassword tries exceededStatefulX7575387575
FATATC validationStatefulX6363010582
DCMOriginal authorization not found at refundStateful1257125712
810Available insufficient balance validationStateful5151515151
810Available withdrawal limit validationStateful6161616161
LUTLedger timeoutStatefulN096069696
LUEError on update LedgerStatefulN096069696
PFTDenied by anti-fraudStateful5963576359
FL6Card blocked by anti-fraudStateful5957575759
MPCProgram config not foundStatefulX1496069696
PGEUnexpected error in processing code definitionStatefulX1496069696
UBNNFC disabledStatefulX57575757FM
ISEInsufficient statementsStateful5757065757
NCVEntry mode not allowed with no-CVMStateful5757575757
REDOperation not allowed by rulesStateful5757575757
REDRules do not honorStateful5757575757
REDRules internal errorStatefulN096069696
LUDLimit update duplicated ID errorStateful4696069696
RAEError on authorization amount calculationStatefulN096069696
RADRates API denialStateful57575757
LCTLedger account timeoutStatefulN096069696
LNFAccount not foundStateful1414561414
LAEAn unexpected error happened while fetching the account informationStateful1496069696
PCTA timeout occurred in processing code definitionStatefulN096069696
PCEUnexpected error in processing code definitionStateful1496069696
STDDenied by second authorizerBothXN09696
DCEdistributor-api communication errorBothXN0960696
ACEnetworktransactions-api communication errorBothXN096069696
DCCDCC transaction not allowed for programStateful5757`575757
DICInvalid country for DCC definitionStateful5757575757
DIYInvalid currency for DCC definitionStateful5757575757
PRNProgram not foundStatefulN096069696
PICProgram has invalid currency codeStateful5757575757
PRTA timeout occurred while fetching programStatefulN096069696
PREUnexpected error while fetching programStatefulN096069696
ZBPPartial authorization response invalid in Zero balance purchases.StatefulXN096069696
CV3CVC3 not configuredStatefulX5757575757
IINInvalid number of installmentsStateful5757575757
IMFInvalid message formatStatelessX1230303030
IMAInvalid MAC (message authentication code)Stateless89
ZBUUnavailable endpoint, zero balance client webhook returns 503 status code.StatefulXN096069696
ZBTZero balance client webhook throws timeout exception.StatefulXN096069696
ZBFZero balance client webhook returns 403 status code, forbidden.StatefulXN096069696
ZBAZero balance client webhook returns 401 status code, unauthorized.StatefulXN096069696
ZBEZero balance client webhook returns general errorStatefulXN096069696
ETRExceed time to reversalStatefulX12
HCEHSM communication errorStatefulXNO96069696

* Considered stateless despite querying database.

Card status validations

Any card status validation returns the denial code 05 for an account inquiry transaction type.

Custom codeCard statusStateful or statelessCard issuer authorizationVisa denial codeMastercard denial codeTecBan denial codeRupay denial codeELO
BNRROBBED or THEFTStatefulX4343434343
CSUCARD UNKNOWNStatefulX1457565714

Card token validations

Custom codeCard token statusStateful or statelessCard issuer authorizationVisa denial codeMastercard denial codeTecBan denial codeRupay denial codeELO
Z26Not foundStatefulX1414575712
Z27Status unknownStatefulX1457575712