Dashboard
Two Factor Authentication
How to enable two-factor authentication?
Download the Google authenticator app from the play store (Android) or App Store (iOS)
After downloading the Google Authenticator app, tap on the “Add” button as shown here.


Select “Scan a QR code” from the popup
- Scan the QR code on the 2FA screen on your desktop using your device (sample shown below)
- Enter the 6 digit OTP (displayed on your device) in the OTP field (sample shown below)
- Click on “Enable 2FA and login”




Once the above mentioned steps are completed, please re-enter the username and password, followed by the OTP screen wherein you have to enter the OTP (regenerated periodically) as seen on the Authenticator. This process needs to be followed each time you log in to the dashboard.
Reset Password
The password associated with the Juspay account can be reset by following the below steps
- Click on "Forgot Password?" option on the login page of the dashboard


- Enter the username/ merchantId of the account for which the password has to be updated and click on "Reset"


- An email with the link to reset the password would be triggered to the registered email address. The subject of the email will be Express checkout dashboard reset password


- Open the link and enter the new password and then click on Confirm.


- You may now login to the dashboard with the updated password.
Please reach out to [email protected] if the email address associated with your Juspay account has to be updated.
Reset 2FA
If you have lost the devices or uninstalled the Authenticator app? Do not worry, you can reset the 2 factor Authentication setup on the Juspay account by following the below steps.
- Enter the respective username and password of the Juspay account and click on Login
- In the next screen, click on "Reset Two-Factor Authentication?"


-
An email with the link to reset the 2FA would be triggered to the registered email address. The subject of the email will be Express checkout dashboard reset two-factor authentication
-
Click on the link and follow the steps mentioned here to setup the 2FA for your Juspay account.
Users
Operations dashboard is based on rule-based access to users. This access control is determined by
merchant’s admin while creating the users.


Merchant’s admin can give read-only or read+modify access to different modules listed here.
In the above illustration:
User will have read access to Orders and has read+write (modify) access to refunds.
Note: Juspay will create the Admin and share credentials
Orders
Order View:
When clicked on ‘Orders’ on the left panel the list of orders is shown. And the user can select the time frame to view the orders


- Customer Id: Unique Id of the customer that was passed during transaction by merchant
- Order Id: Unique Id created during payment and one order can have multiple transaction Id's as the customer may retry payments
- Created At: Transaction timestamp
- Amount: Transaction amount
- Order Status: Juspay provides different order status and explanation as below
Order Status | Description |
---|---|
NEW | New created order (order created but the customer didn’t commence the transaction) |
SUCCESS | Successful/ Charged Transaction |
PENDING_AUTHENTICATION | Authentication in progress (status is not confirmed yet) |
AUTHENTICATION_FAILED | User didn’t complete the transaction |
AUTHORIZATION_FAILED | User completed transaction but the bank refused |
JUSPAY_DECLINED | User input is not accepted by underlying PG |
AUTHORIZING | Transaction status pending from bank |
COD INITIATED | Initiated Doesn’t appear for the regular merchant (Created for an edge case) |
VOID_INITIATED | Void pending for the pre-authorized transaction |
VOIDED | Void is successful for the pre-authorized transaction |
AUTHORIZED | Transaction is Authorised but not captured |
Note: Pending statuses are updated when Juspay receives updated status from underlying PG and status is sent to the merchant via webhooks
Order View
Using status
User can view the orders based on order status by selecting one of the order statuses


Using Order Type
Users can view the orders based on the type of the order by choosing any one of the types provided.
Order Type | Description |
---|---|
MANDATE PAYMENT | Recurring mandate transaction |
MANDATE REGISTER | Mandate registration transaction |
TPV PAYMENT | The TPV transactions |
ORDER PAYMENT | All the other transactions |


Order Search
If user wish to search for specific order then can type the order id or customer id


Also, user can use the advanced search option to search order based on transaction id, customer email, phone or UDF parameters


Order Details:
If the user wants to drill down a specific order then click on a particular entry in order list


Order Information shows above shown details
- Amount: Transaction amount, refund amount (if any)
- Customer-related: Customer mail, mobile
- Order related: order id, PG used, the order created timestamp and order modified timestamp (if the status is updated later point)
- UDF related: User Defined Data that was passed by the merchant during a transaction
The most important point to view is Order Status so the user can initiate fulfillment activity.
Order - Transaction Details
After selecting the order, when clicked on ‘transactions’ tab, the user can view the transaction details
One order can have one or more transactions as customer retries are considered as transactions and listed under same order id.


Download Order Report
User can download the report by clicking on ‘Download Orders’ button


Sample report format:


Fields: Order Id, Currency, Amount, Status, Customer Id, Customer email, Customer Phone, Order Type,
Order UUID, Product Id, Mandate feature, Promotion Discount, Amount Refunded, Refunded Entirely,
Merchant Id, Return URL, Description, Date Creation, Last Modified, UDF (1 to 10)
Note: Downloading reports for large data operations will be a time-consuming effort. Alternatively, Juspay can set auto-mailer for the report.
Refunds
The user selects the order and then clicks on ‘Refunds’ tab


(Shows that there are no refunds marked against the order)
Marking Refund:
To mark the refund for an Order Id, user to click on the ‘Create Refund’ button


User to enter the amount and click on ‘Refund Amount’
Note: User can mark multiple refunds against the same order id as long as the sum of those refunds doesn’t exceed transaction amount
Refund Status


Once the refund is marked for an order then it will be shown in the dashboard (under the order and ‘refunds’ tab)
The explanation for refund status:
- Pending: Juspay has marked refund and sent a refund request to underlying PG
- Success: Refund has been successfully executed by underlying PG
- Failure: Refund is failed
- Manual Review: Refunds that are pending more than 10 days goes into manual review
Note: refunds are queued before sent to underlying PG. Refunds may take max. 7 days to reach customer’s account or card and delay is specific to underlying PG and its banks
Batch Refunds
User can mark multiple refunds by uploading a single file by selecting ‘Batch Refund’ on left side panel


Note: Batch files uploaded are shown here.
Create Batch Refund
When the user clicks on ‘create batch refund’ button, the console is shown to upload the file.


The batch file should be in .csv format and details should be in below format


Gateways
Gateways
Upon clicking the gateways tab, the user can select the payment service providers (aggregator, bank PG, wallets, containers or lending products) that need to be enabled


- The merchant should procure the credentials from the concerned Payment Service provider.
- Merchant to make sure the payment modes (a card, banks, UPI, etc.) are enabled by the service
provider - If a merchant wishes to enable direct debit for wallets or S2S flow then make sure those features are approved and enabled for the merchant’s account
Refer Annexure 1 for credentials that are given by various service providers
Configuration - Sample


Above is the configuration of Pay.
- Merchant has to enter the credentials: Salt, Merchant key
- If the merchant wants to enable EMI then toggle the Fetch EMI Plans to ‘True’
Once done, the merchant has to enable the payment instruments, banks and Save gateway.


Razorpay oAuth Configuration
Click on Create Gateway from the GATEWAY section and choose RAZORPAY
Set the test mode based on the environment to which the transaction has to be routed
Click on "Authorize"


You will be redirected to Razorpay dashboard.
Tick the Terms & Conditions check box and click on "Authorize"


Login to with the Razorpay dashboard credentials


After successful login, you would be redirected back to Juspay panel. Enable the required fields based on business use case and click on Proceed to Configuration


Enable the required payment modes and save gateway


View and Edit


Merchant can view the configured gateways for the account and edit the gateway configuration ( enable/disable banks) based on business needs.
Route Scores
The merchant may want to force to route certain cards to a particular gateway (force routing). Merchant can
use this section to configure such force routings and that will ignore the routing logic. For more clarity
refer below section that covers types of routings and use cases.
ISIN Route
ISIN (Issuer Identifier number or BIN number i.e. first 6 digits of the bank. Merchant can configure BINs that needs to be processed through the specific payment provider
Use Case: HDFC is offering a discount on few BINs and merchant has to use only HDFC bank PG to process it. Merchant can configure those BINs (ISIN) and select HDFC gateway and set preference score to 2.


Issuer Route
Merchant can configure issuing bank and select the gateway for force routing by setting preference score to 2.
Use Case: HDFC is running a discount on HDFC cards and merchant has to process cards only through HDFC PG.


Card Brand Route:
If the merchant wants to force to certain card brands (Visa, MasterCard, Maestro, RuPay) through a
particular PG only then merchant to select the card brand and processing gateway and set preference score to 2.
Use Case: Diners card is processed only by HDFC PG. In this case, card-based routing will make sure Diners card always go through HDFC PG.


Note: Diners can be processed by aggregator who uses HDFC PG as well. This configuration can be done during PG configuration by enabling Diners (provided your aggregator is ready to enable it)
Priority Logics:
Select Priority Logics tab under to define routing logic as per business requirement
Routing logic Merchant can enable two types for routing logic.
a. Simple Routing
Merchant will define primary and secondary service providers. In simple words, if Primary is down
then the transaction will be processed by secondary. Example: If Billdesk is down then Payu will
process transactions.


b. Custom Logic
Depending on business requirements, the merchant can write routing logic
Few of the possibilities:
● Channel-Based: Website, Android, iOS
● Volume Based: Split volume between two or more service providers
● Bank-based: Send particular bank’s transaction to one service provider
● Card type based: Debit or credit card
● Card brand based: Visa, MasterCard, RuPay, etc.
Routing logic can be complex as per your business logic. Example: 30% of website transaction of ICICI
bank Visa Credit card to be proceeded by PayU as primary and BillDesk as secondary.


Merchant to click on Create New Logic and write the logic. Refer Annexure 2 for samples.
● Merchant can delete or edit/update the logic
● Once merchant submits the priority logic, Juspay support team will review the syntax and correctness of logic and then approve it.
● Logic will be effective as soon as it is approved by Juspay team
Note: Merchant to add comments in the logic so Juspay team can verify the logic written by the merchant does what it is expected to do.
Setting
General
In this section, the merchant can configure generic settings such as Return URL (return page that is shown after completion of the transaction) or order session timeout, etc.




Note: Although it is self-explanatory do not hesitate to consult Juspay team in case of doubts as these are critical configurations.
Security
Section to add API keys, RSA keys and IP whitelisting.
- The API key required for authentication can be generated by clicking on "Create New API key".
- For generating the merchantKeyId required for signature generation, click on "Upload new RSA key" and upload the public key in .pem format.
- For whitelisting the IP's, click on "Add New IP". Kinldy note that once the IP's are whitelisted, the API request from only these IP's would be accepted.


Response key is used for HMAC Signature verification.
Card Encoding Key is used for encrypt the card details from the client before initiating the transaction.


Conflicts


It may be possible that transaction status doesn’t reach finite status (success or failure) in real time. Some transaction may go into pending state and become success at a later point of time and these transactions are called ‘conflicted transactions’.
Juspay will ping the payment service provider to fetch updated status and new status can be pushed to the merchant.
By enabling ‘notify on status conflict’ and providing a valid email address under 'Conflict Status Email', Juspay would trigger an email notification to the provided email id whenever there is a conflicted transaction.
'Auto Refund of Conflicted Transactions'- If the merchant wants to automatically refund the conflicted transaction then enable the option (The default threshold is 10 minutes)
'Auto Refund of Conflicted Transactions Threshold in Mins'- Enter a threshold in minutes beyond that you would want Juspay to automatically refund the transaction. The default threshold is 10 minutes.
'Auto Refunds in Multiple Charged Transactions'- Enable the flag if Juspay should automatically refund the transaction(s) if there are multiple charged transactions against a single order.
Webhooks
Juspay fetches the updated status from payment service providers and updated status can be pushed to the merchant through webhooks. Merchant can configure the webhooks in this section.
The webhook can be Authenticated by providing a Basic HTTP authentication.
If you want Juspay to post a custom headers during the webhook notification, you may configure them by click on "Create Webhook" and provide the respective "Name" and the "value".
Webhook Events- You may choose the required events from the provided list for which


Batch Card Delete
If customer wants merchant to delete saved card (s) then merchant can use the dashboard to achieve it by uploading batch file of customer ids of which card needs to be deleted.




Note Sensitive activity so contact Juspay team before attempting the delete activity
comment: # (------------------------------------ Annexure 1 Card Tab ------------------------------------ )
Annexure 1: Credentials of Payment Service Providers
- Airtel Money
Gateway Reference ID | Salt | Merchant Id | Test Mode (T/F) |
---|
- Axis Card
Gateway Reference ID | Access Code | Merchant Id | AMA Username |
---|---|---|---|
AMA Password | Secret Key | Staged Transaction (T / F) | Multi Currency Supported (T / F) |
- Axis NB
Gateway Reference ID | Axis Merchant Code | Axis Secure Secret | Test Mode (T/F) |
---|
- Axis UPI
Gateway Reference Id | Payee VPA | MCC | QR Code Format |
---|---|---|---|
QR Code size | Waiting Page Expiry in Seconds | Use Txn UUID as Tr (T / F) | Test Mode (T / F) |
- Amazon Pay
Gateway Reference Id | Seller Id | Access Key |
---|---|---|
Secret Key | Test Mode (T / F) |
- BillDesk
Gateway Reference Id | Merchant Id | Checksum Key | Rupay Bank Code |
---|---|---|---|
Amex Bank Code | Legacy Redirect (T / F) | Card Redirect (T / F) | Hashing Algorithm |
NB Redirect (T / F) | Wallet Redirect (T / F) | Amex Redirect (T / F) | EMI Redirect (T / F) |
Rewards Redirect (T / F) | Rupay Redirect (T / F) | Enable Subscription (T / F) |
- Blazepay (of PayU)
Gateway Reference Id | Merchant Id | Secret Key |
---|---|---|
Access Key | Test Mode (True / False) |
- CCAvenue V2
Gateway Reference Id | Merchant Id | Access Code |
---|---|---|
Secret Key | Enable S2S integration (T / F) | Test Mode (True / False) |
- Citi
Gateway Reference Id | Merchant Code | Merchant Key | Test Mode (T / F) |
---|
- Citrus
Gateway Reference Id | Merchant Id | Secret Key |
---|---|---|
Access Key | Test Mode (T / F) |
- Cyber Source
Gateway Reference Id | Merchant Id | User name | Cybersource Account |
---|---|---|---|
Direct Authorization for un | User order id as | Certificate | Test Mode (T / F) |
- EBS V3
Gateway Reference Id | Account Id | Secret |
---|---|---|
Page Id | Test Mode (T / F) |
- Epay later
Gateway Reference Id | mCode | API Key | AES Key |
---|---|---|---|
IV | Category | Test Mode (T / F) |
- Freecharge
Gateway Reference Id | Merchant Id | Secret Key |
---|---|---|
Direct Debit (T / F) | Test Mode (T / F) |
- Google Pay
Required if Googlepay is being used via Banks. If Googlepay is being used via an aggregator then there is no separate gateway configuration required. It can be enabled from the payment methods configuration of the Aggregator.
Gateway Reference Id | Payee VPA | Payee Name |
---|---|---|
MCC | Test Mode (T / F) |
- GoCashfree
Gateway Reference Id | App Id | Secret Key |
---|---|---|
Is Pre-Authorisation Enabled (T / F) | Test Mode (T / F) |
- HDFC
Gateway Reference Id | Tranportal Id | Tranportal Password | Test Mode (T / F) |
---|
- HDFC UPI
Gateway Reference Id | Payee VPA | MCC | QR Code Format |
---|---|---|---|
QR Code Size | Waiting page expiry in seconds | Use Txn UUID as Tr (T / F) | Test Mode (T / F) |
- HDFC IVR
Gateway Reference Id | Tranportal Id | Tranportal Password |
---|
- HSBC UPI
Gateway Reference Id | Payee VPA | MCC | QR Code Format |
---|---|---|---|
QR Code Size | Waiting page expiry in seconds | Use Txn UUID as Tr (T/F) | Test Mode (T / F) |
- ICICI UPI
Gateway Reference Id | Payee VPA | MCC |
---|---|---|
QR Code Format | QR Code Size | Waiting page expiry in seconds |
Use Txn UUID as Tr (T / F) | Transaction Reference Prefix | Test Mode (T / F) |
- IPG
Gateway Reference Id | Store Id | User Id | User Secret |
---|---|---|---|
Password | Certificate Password | Certificate |
- Jio Money
Gateway Reference Id | Merchant Id | Client Id | Channel |
---|---|---|---|
Checksum Key | Direct Debit(T/F) | Test Mode(T/F) |
- Kotak UPI
Gateway Reference Id | Payee VPA | MCC |
---|---|---|
QR Code Format | QR Code Size | Waiting page expiry in seconds |
Use Txn UUID as Tr (T / F) | Transaction Reference Prefix | Test Mode(T/F) |
- Kotak
Gateway Reference Id | Merchant Id | Terminal Id | Passcode |
---|---|---|---|
Merchant Category Code | Secure Secret Key | Encryption Key | Test Mode(T/F) |
- SIMPL
Gateway Reference Id | App Id | Test Mode(T/F) |
---|
- MIGS
Gateway Reference Id | Merchant Id | Secure Secret |
---|---|---|
Access Code | AMA User name | AMA Password |
Staged Transaction (T / F) | Multi Currency Supported (T / F) | Enable Subscription (T / F) |
- Mobikwik
Gateway Reference Id | Merchant Name | Merchant Id |
---|---|---|
Secret Key | SI Key | Direct Debit (True / False) |
Register user automatically (T / F) | Test Mode(T/F) |
- mPESA
Gateway Reference Id | Merchant Code | User Name | Password |
---|---|---|---|
Secret Key | Channel Id | Direct Debit (T / F) | Test Mode(T/F) |
- Ola Postpaid
Gateway Reference Id | Merchant Access Token | Merchant Name | Merchant Private Key |
---|---|---|---|
Salt | Password | Ola Public Key | Test Mode(T/F) |
- Ola Money
Gateway Reference Id | User Name | Password | Salt |
---|---|---|---|
Access Token | Coupon Code | Direct Debit (T / F) | Test Mode (T/ F) |
- PayPal
Gateway Reference Id | Client Id | Secret | Test Mode (T/ F) |
---|
- PayU
Gateway Reference Id | Salt | Merchant Key | Save Sodexo Token (T/F) |
---|---|---|---|
Enable Subscription (T/F) | Fetch EMI Plans (T/F) | Test Mode (T/ F) |
- PhonePe
Gateway Reference Id | Merchant Id | Salt Key 1 | Salt Key 2 |
---|---|---|---|
Customer Id | Direct Debit (True / False) | Test Mode (T/ F) |
- PayTM
Gateway Reference Id | MID | Client Id | website |
---|---|---|---|
Merchant Key | Secret Key | Channel Id | Industry Type Id |
Scope | Hash Customer Id | Enable S2S integration (T/F) | Seamless Transaction (T/F) |
Direct Debit (T/F) | Process Authorizing | Enable withdraw flow (Direct | Use New end point |
Test Mode (T/ F) |
- PayU
Gateway Reference Id | Salt | Merchant Key | Save Sodexo Token (T/F) |
---|---|---|---|
Enable Subscription (T/F) | Fetch EMI Plans (T/F) | Test Mode (T/ F) |
- RazorPay
Gateway Reference Id | Test Mode (T/ F) | Authorize (To initiate OAuth) |
---|
- ShopSe
Gateway Reference Id | Authorization | Test Mode (T/ F) |
---|
- Stripe
Gateway Reference Id | Secret Key | Publishable Key | Test Mode (T/ F) |
---|
- Sodexo
Gateway Reference Id | Merchant Id | Terminal Id |
---|---|---|
Fetch Balance while list card | Save Sodexo Token Implicitly (T / F) | Test Mode (T/ F) |
- TechProcess
Gateway Reference Id | Merchant Code | Encryption Key | Encryption IV |
---|---|---|---|
Scheme Code | Amex Card bank code | International card bank code | Debit card bank code |
Credit Card bank code | Test Mode (T/ F) |
- Yes Bank UPI
Gateway Reference Id | Payee VPA | QR Default Format | QR Default Size |
---|---|---|---|
MCC | Waiting page expiry in seconds | Use Txn UUID as Tr (T / F) | Test Mode (T / F) |
- Zaakpay
Gateway Reference Id | Merchant Id | Encryption Key Id |
---|---|---|
Secret Key | Public Key for RSA | Test Mode (T / F) |
- Zestmoney
Gateway Reference Id | Client Id | Client Secret Key |
---|---|---|
Merchant Secret Key | Test Mode (T / F) |
- Payfort
Gateway Reference Id | Access Code | Merchant Id | Encryption Key |
---|---|---|---|
Decryption Key | Encryption Method | Test Mode |
- PAYTM_V2
Gateway Reference Id | MID | Ind Type Id |
---|---|---|
Channel Id | Client Id | Website |
Merchant Key | s2s enable | Enable Card Mandate |
Enable Emandate | Test Mode(T/F) | Card Direct Otp Enabled |
- EASEBUZZ
Gateway Reference Id | Key | Salt |
---|---|---|
Test Mode(T/F) |
- SEZZLE
Gateway Reference Id | Public Key | Private Key |
---|---|---|
Test Mode(T/F) |
- PayGlocal
Gateway Reference Id | Merchant Id | Private Key KId |
---|---|---|
Public Key KId | Private Key | Public Key |
Test Mode |
Annexure 2: Sample Routing logics
Refer Documentation on Routing logic:
Samples
Example 1: Routing based on Channel
If you wish to route the transaction based on channel say web or mobile.
def priorities = ['HDFC', 'ICICI', 'PAYU']
// above is the default priority
if (order.udf1 == 'web') {
priorities = ['HDFC','PAYU','ICICI']
}
else if (order.udf1 == 'mobile' && order.udf2 == 'android')
priorities = ['ICICI','HDFC','PAYU']
}
setGatewayPriority(priorities)
Example 2 : Volume based Routing
// def myGateways = ['HDFC','ICICI']
// Goal: 50% approx split between two gateways
if(currentTimeMillis % 10 < 5) {
setGatewayPriority(['HDFC', 'ICICI'])
}
else {
setGatewayPriority(['ICICI', 'HDFC'])
}
// def myGateways = ["HDFC","ICICI", "AXIS"]
// Goal: 1/2 split between two gateways and use third as backup
if(currentTimeMillis % 10 < 5) {
setGatewayPriority(['HDFC', 'ICICI', 'AXIS'])
}
else {
setGatewayPriority(['ICICI', 'HDFC', 'AXIS'])
}
Example 3 : Issuer based Routing
def priorities = [ 'HDFC', 'ICICI' ]
// default priorities
if (payment.cardIssuer == 'ICICI Bank') {
// if ICICI Bank card, use ICICI
priorities = [ 'ICICI', 'HDFC' ]
}
else if (order.udf1 == 'mobile' && order.udf2 == 'android')
// for android transactions, use ICICI
priorities = [ 'ICICI', 'HDFC' ]
}
else { // for everything else use HDFC as primary
priorities = [ 'HDFC', 'ICICI' ]
}
setGatewayPriority(priorities)