Remote Host Authorization
Remote Host Authorization (RHA) is a functionality that provides you as an on-boarding partner, the capability to authorize (or forbid) real-time transactions.
When a cardholder attempts to make a card transaction using an account configured on ISAC system, the following process occurs:
The merchant sends an authorization message to the card network.
The card network sends an authorization message to the ISAC platform.
The ISAC platform authenticates and authorizes the transaction.
ISAC platform forwards the authorization request to the remote host.
The remote host authorizes the request and sends the transaction response.
The response received from the remote host is mapped to the network's response code and is sent to the network.
Finally, the ISAC platform sends the transaction notification to the webhook endpoint.

To configure RHA, you must follow the below steps:
Send a one-on-one email to Happay POC, containing a username, password, and URL.
This URL must be configured to accept a POST request and validate it using basic authentication.
The request timeout is set to 4 seconds, so make sure you perform all your operations within the timeout duration.
You must respond back with either of the following http status codes. Any other statuses will be treated as the Remote Host’s server fault and the Happay platform will deny this transaction.
200 - Transaction Approved By Remote Host
402 - Transaction Denied By Remote Host
For Balance Enquiry transactions, you are expected to send 200 http status code and
balancein the response. A sample response is mentioned below
RHA Request
RHA Response
RHA Request Details
transaction_id
string
M
Unique reference to the transaction
card_id
string
M
Reference to the card
user_id
string
M
Reference to the user
account_id
string
M
Account Id of the user
txn_date
string
M
Transaction Date time stamp
txn_type
string
M
Refer below for more details
txn_code
string
M
Refers to transaction code
channel
string
M
Mode of the transaction (POS, ATM, ECOM)
mcc
string
M
Merchant category code
mid
string
M
Merchant Id
rrn
string
M
Retrieval Reference Number
stan
string
M
-
terminal_id
string
M
Terminal Id
aid
string
M
Acquirer Id
is_afd_applicable
bool
M
Denotes if afd is applicable
acquiring_details.amount
numeric
M
Acquiring amount is the amount sent by the acquirer in the country's local currency.
acquiring_details.currency.alpha_code
string
M
Transaction’s Acquiring Currency represents the local currency with which the transaction was performed.
acquiring_details.currency.numeric_code
numeric
M
Transaction’s Acquiring Numeric Code
acquiring_details.currency.exponent
numeric
M
This field indicates the number of decimal places used to represent subunits (such as paise) in the currency
authentication_details.pin_verified
bool
M
Denotes if pin is verified
authentication_details.cvv_verified
bool
M
Denotes if cvv is verified
merchant.name
string
M
Merchant name
merchant.city
string
M
Merchant city
merchant.state
string
M
Merchant state
merchant.country
string
M
Merchant country
transaction_details.amount
numeric
M
Transaction Amount. In case of international transactions, this would represent the converted value in INR.
transaction_details.currency.alpha_code
string
M
Transaction Currency Code. This would always be in INR
transaction_details.currency.numeric_code
numeric
M
Numeric Transaction Currency Code
transaction_details.currency.exponent
numeric
M
This field indicates the number of decimal places used to represent subunits (such as paise) in the currency
acquiring_details.fee_details.fee_applicable
bool
M
Denotes if there is any fees applicable
acquiring_details.fee_details.fee_type
string
M
Denotes if the fee is DEBIT/CREDIT to the customer
acquiring_details.fee_details.amount
numeric
M
Fee amount
acquiring_details.fee_details.currency.alpha_code
string
M
Fee currency
acquiring_details.fee_details.currency.numeric_code
numeric
M
Numeric code for fee currency
acquiring_details.fee_details.currency.exponent
numeric
M
This field indicates the number of decimal places used to represent subunits (such as paise) in the currency
sub_txn_type.txn_condition
string
O
This refers to the sub type of transaction such as EMI/SI. Possible values are EMI_TRANSACTION, STANDING_INSTRUCTION, ACCOUNT_STATUS_INQUIRY
sub_txn_type.mandate.is_applicable
bool
O
Denotes if mandate is applicable
sub_txn_type.mandate.txn_type
string
O
Denotes type of SI transaction. Possible values are REGISTER_MANDATE, DEREGISTER_MANDATE, UPDATE_MANDATE, INTIMATE_PRE_DEBIT, DEREGISTER_MANDATE_FOR_CARD
sub_txn_type.mandate.number_of_instalments
string
O
Denotes total number of payment instalments
sub_txn_type.mandate.init_date
string
O
Preferred date for SI initialization
sub_txn_type.mandate.min_amount
string
O
Minimum Amount for which SI can be initiated.
sub_txn_type.mandate.max_amount
string
O
Maximum Amount for which SI can be initiated.
sub_txn_type.mandate.start_date
string
O
SI start date
sub_txn_type.mandate.end_date
string
O
SI end date
sub_txn_type.mandate.mode
string
O
SMS/EMAIL
sub_txn_type.mandate.freq_indicator
string
O
Mandate frequency indicator(DAILY/WEEKLY)
sub_txn_type.mandate.txn_id
string
O
Mandate id populated by npci during mandate registration
sub_txn_type.emi.is_applicable
bool
O
Denotes if EMI is applicable
sub_txn_type.emi.amount
string
O
EMI amount
sub_txn_type.emi.total_amount
string
O
Total amount
sub_txn_type.emi.number_of_instalments
string
O
Number of EMI instalments
sub_txn_type.emi.interest_rate
string
O
EMI interest rate
is_pre_auth
bool
O
Denotes if the transaction is a PreAuth transaction
is_dcc
bool
O
Denotes if it's a DCC transaction
pan_entry_mode
string
M
Point of service entry mode - This is used to indicate the method used to enter the
account number.
location
string
M
location could take values as either DOM or INTL representing domestic and international transaction respectively
Transaction Types
txn_type
Description
txn_indicator
AUTH
Card Authorization transaction
Debit
AUTH_ADVICE
For any card authorization, if any pre-auth was done, you will get the actual transaction details here.
Debit
REVERSAL
This is the immediate reversal of the authorized transactions.
Credit
REVERSAL_ADVICE
This is the immediate reversal of the authorized transactions.
Credit
CR_EXTEND_LIMIT
This is the reversal due to settlement - An example: Payments on Credit Flipkart/Amazon. If you are returning an item, the refund amount gets posted back to the cardholder. Here the txn_type will be CR_EXTEND_LIMIT. This is basically known as Refunds.
Credit
FP_CE_WITHDRAW_LIMIT
In case, the acquirer merchant claims more than the authorized Debit transaction(surcharge on IRCTC, fuel stations, etc), an extra debit is posted to the cardholder.
Debit
NULLIFY_CLEARED
Denotes that merchant has claimed the amount transacted during real time AUTH transaction
Debit
Last updated
