Authorisation notification

Contis API service notifies the client about approved and declined authorisations. Two parameters – Action code and Action Detail – indicate whether a authorisation was a success or failure and the reason for failure.

Note: In payment authorisation, the parameter Authorised Amount denotes the transaction amount as “Primary Hold Amount” which is held by Contis during transaction.

The parameter Fee Amount denotes the fee charged on the transaction as “Secondary Hold Amount”.

Authorisation notification parameters

Parameters Type Description Default value
NotificationType string Three-digit unique identifier of notification. Numeric value “052” denotes the Authorisation notification. Blank
CardID integer Unique Identifier of the card Blank
AccountNumber string Eight-digit account number of the consumer. 00000000
SortCode string Six-digit number that identifies the branch of the bank where consumer holds account. Blank
TransactionID integer Unique identifier of the transaction. Blank
ProcessingCode integer Unique identifier of the type of transaction. The code identifies whether a transaction is a authorisation, a balance inquiry; sale or cash, or any other transaction. Refer Processing look up values in the table.
AuthorizationDate string The date and time of authorisation. The format is yyyyMMddHHmmss. Blank
LocalDate string The date and time of authorisation in local time zone. The format is yyyyMMddHHmmss. Blank
AuthorisedAmount integer The amount authorised for card transaction. Blank
CardHolderCurrency integer The currency of the card transaction. Identified by the ISO currency code. Blank
TransactionAmount integer The transaction amount. Blank
TransactionCurrency integer The currency of the transaction amount. Blank
CashBackAmount integer Shows cashback on card transactions, if any. Blank
MCC integer Four-digit numeric code that identifies the merchant’s type of business, product or service Blank
IsCreditAuthorisation bool Indicates whether card transaction is credit type or not. If “true” then transaction is a credit transaction. Blank
CardAcceptorID string Unique identifier of facility, merchant or POS that accepts the consumer’s card for payment. It is a number that can be 1 to 15 digits long and in some cases contains a dash, “-“. Provided by VISA. Blank
TerminalCode string Unique identifier of the terminal where card is swiped. Provided by Visa. Blank
TerminalLocation string The location of the terminal where card is swiped. Provided by Visa. Blank
TerminalStreet string The street where card is swiped at a POS or an ATM terminal. Provided by Visa. Blank
TerminalCity string The city where card is swiped at a POS or an ATM terminal. Blank
TerminalCountry string The country where card is swiped at a POS or ATM terminal. Provided by Visa. Blank
ApprovalCode string Approval Code provided by Visa. Provided by Visa. Blank
IsCardPresent bool Indicates whether card was present or not present during the transaction. If “true” then card was present. Blank
IsCardHolderPresent bool Indicates whether consumer “swiped” or “did not swipe” the card at terminal during card transaction. If “true” then card was swiped by the consumer. Blank
CardAcceptorCountryCode integer Indicates country from which card transaction has been done. Denoted by three -digit ISO country code. Blank
IsPinPresent bool Indicates whether PIN “was present” or “not present” during the the card transaction. If “true” then PIN “was present”. Blank
STAN integer SYSTEM TRACE AUDIT NUMBER provided by Visa. Blank
RRN string RETRIEVAL REFERENCE NUMBER and is provided by Visa. Blank
TransactionIndicator integer Represents Transaction Indicator. Refer Transaction Indicator look up values in the table. Blank
AcquiringInstituteID string Unique identifier of the Acquirer’s Institution. Provided by Visa Blank
ForwardingInstitutionID string Unique identifier of the forwarding or processing institution. Provided by Visa. Blank
ClientReferenceNumber string Client provided reference number returned by Contis for tracking or auditing. Blank
Description string The description of transaction authorisation. Blank
FeeAmount integer Fee charged for the transaction. Blank
ActionCode string Three digit code that identifies a successful authorisation or failed authorisation.



ActionDetail string Represents the state of Authorisation. For successful authorisation, ActionDetail would be ‘Normal, approve’ or ‘PartialAuth’. And for failed auth, it will show the failure reason. Blank
FeatureCode string Two-digit card feature code that identifies the feature relating to the authorisation. Look-up values are given as below. Blank
POSEntryMode string Code that identifies the method used to enter the cardholder account number and card expiration date.
This code specifies whether the entire magnetic stripe is included in an authorization request. Refer POS Entry Mode look up values in the table.
IsReversal bool value 1 or 0. Indicates whether card transaction is reversal or not. If “1” then transaction is a reversal transaction. 0
SecurityHash string String value generated through hash logic with all of the above parameters (To verify the values posted on URL) Blank

Example of authorisation notification

Parameter name Value
NotificationType 052
CardID 123
AccountNumber 00123456
SortCode 623053
TransactionID 318015050782975
ProcessingCode 1
AuthorizationDate 13/03/2018 10:40:35
LocalDate 13/03/2018 10:40:32
AuthorisedAmount 123
CardHolderCurrency 826
TransactionAmount 123
TransactionCurrency 826
MCC 6011
IsCreditAuthorisation False
CardAcceptorID Acceptor123
TerminalCode ATM01
TerminalLocation ACQUIRER NAME
TerminalCity Skipton
TerminalCountry GB
ApprovalCode 002974
IsCardPresent True
IsCardHolderPresent True
CardAcceptorCountryCode 826
IsPinPresent True
STAN 2974
RRN 801511002974
TransactionIndicator 1
AcquiringInstituteID 012345678901
ClientReferenceNumber Ref123
Description Test transaction
FeeAmount 20
ActionCode 000
ActionDetail Normal, Approve
FeatureCode 01
POSEntryMode 5
IsReversal 0
Security Hash 79c7053f1d7845fb96fd00237b3e5e0c8a9c8c9b0f2a55eff1a53df9c848d928

Lookup values for Processing Codes

Table showing the lookup values for Processing Code transactions.

Processing Code Description
0 Goods and services. Debit the customer account.
1 Cash Withdrawal/Cash Advance. Debit the customer account
9 Purchase with cashback
11 Quasi Cash
20 Purchase refund
26 Cardholder funds transfer
30 Balance Inquiry
40 Cardholder Account Transfer
70 PIN Change

Lookup values for FeatureCode

Table showing the lookup values for FeatureCode.

Feature Code Feature Name Feature Description
01 Purchase Payment by card terminal (without cashback)
02 E-commerce Purchase Online
03 ATM Withdrawal Withdrawal at ATM
04 Purchase Cashback Payment by card terminal with cashback
05 Refund or Correction Refund money
06 Balance Inquiry Balance Inquiry
07 PIN change Card PIN change
08 Auto fuel dispense Payment at fuel pump
09 Bill Payment Bill Payment
10 E-comm without CVV2 Online payment without CVV2
11 Mail phone order Mail order transactions
12 Recurring Recurring Payments
13 Quasi Cash Tran Withdraw from terminals other than ATM
14 VPP Visa Personal Payment
15 FIP Financial Institution Payment
16 Verification Account Verification
17 Estimated Estimated Transaction
18 EstimatedPartial Estimated Transaction with partial support terminal
19 COF Credential On File
97 In App Provisioning In App Provisioning (X Pay)
98 NFC Payment by contactless card
99 International Trans International Transaction

Lookup values for Transaction Indicator

Table showing the lookup values for Transaction Indicator.

1 Manual-one-time, single payment initiated by the cardholder
2 Recurring-multiple, ongoing payments for an indefinite term, until the cardholder or biller cancels the recurring payment arrangement
3 Installment-multiple payments for a specified term, usually until payment has been satisfied
5 Secure electronic commerce transaction
6 Non-authenticated security transaction at a 3-D secure-capable merchant, and merchant attempted to authenticate the cardholder using 3-D secure
7 Non-authenticated security transaction
8 Non-secure transaction

Lookup values for POS Entry Mode

Table showing the lookup values for POS Entry Mode.

0 Unknown or terminal not used
1 Manual (key entry).
2 Visa: Magnetic stripe read; CVV checking may not be possible.
PLUS: Track 2 contents read, but transaction not eligible for CVV checking.
3 Optical code
4 Reserved for future use.
5 Contact integrated circuit card read using VSDC chip data rules; Online CAM authentication method; iCVV checking possible.
6 Reserved for future use.
7 Contactless device-read-originated using qVSDC chip data rules; Online CAM authentication method; iCVV checking possible.
10 Credential on file: Merchant initiates transaction for cardholder using credentials stored on file.
90 Magnetic stripe read and exact content of Track 1 or Track 2 included (CVV check possible).
91 Contactless device-read-originated using magnetic stripe data rules; dCVV checking is possible; Online CAM checking possible for MSD CVN 17 only.
95 Integrated circuit card read; CVV or iCVV checking may not be possible.

To generate the Security Hash

Hash sequence:


HashDataString : 052&102331&00156880&608370&7837206057187383&0&20220324121006&20220324121005&4700&826&4700&826&&5999&False&VIP4003IP      &TERMID01&ACQUIRER NAME            &&CITY NAME    &US&187383&True&True&840&True&187383&032412187383&&012345678901&&&ACQUIRER NAME CITY NAME&450&000&Normal, approve&01&5 &0&
SecurityKey : abcdefghijklmnop
HashGenerationData : HashDataString + SecurityKey
Hash : 79c7053f1d7845fb96fd00237b3e5e0c8a9c8c9b0f2a55eff1a53df9c848d928

JSON Example

  "NotificationType": "052",
  "CardID": "102331",
  "AccountNumber": "00156880",
  "SortCode": "608370",
  "TransactionID": "7837206057187383",
  "ProcessingCode": "0",
  "AuthorizationDate": "20220324121006",
  "LocalDate": "20220324121005",
  "AuthorisedAmount": "4700",
  "CardHolderCurrency": "826",
  "TransactionAmount": "4700",
  "TransactionCurrency": "826",
  "CashBackAmount": "",
  "MCC": "5999",
  "IsCreditAuthorisation": "False",
  "CardAcceptorID": "VIP4003IP      ",
  "TerminalCode": "TERMID01",
  "TerminalLocation": "ACQUIRER NAME            ",
  "TerminalStreet": "",
  "TerminalCity": "CITY NAME    ",
  "TerminalCountry": "US",
  "ApprovalCode": "187383",
  "IsCardPresent": "True",
  "IsCardHolderPresent": "True",
  "CardAcceptorCountryCode": "840",
  "IsPinPresent": "True",
  "STAN": "187383",
  "RRN": "032412187383",
  "TransactionIndicator": "",
  "AcquiringInstituteID": "012345678901",
  "ForwardingInstitutionID": "",
  "ClientReferenceNumber": "",
  "Description": "ACQUIRER NAME CITY NAME",
  "FeeAmount": "450",
  "ActionCode": "000",
  "ActionDetail": "Normal, approve",
  "FeatureCode": "01",
  "POSEntryMode": "5 ",
  "IsReversal": "0",
  "SecurityHash": "79c7053f1d7845fb96fd00237b3e5e0c8a9c8c9b0f2a55eff1a53df9c848d928"