Accept payments from your customers in a secure and quick manner with Cashlesso. Your customers get a streamlined flow with the ‘Checkout’ form for initiating payments. The payment details shared by your customer are tokenised by Cashlesso. tag as data attributes. You can submit additional fields, visible or hidden, along with the form.
With this sample code given below, Cashlesso ‘Checkout’ options will be passed as the HTML data attributes.
After the completion of the checkout process, an additional field <name=id> will be added to the form containing the script tag. Post this, the form is submitted automatically. With the authorisation of the payment made, the form along with the Cashlesso_payment_id to the action url.
Note: In the below mentioned code, replace the URL with the success callback URL of your website.
Cashlesso provides its customers with the ‘Retry’ option in case of a failure.
Web integration is the simplest, quick and easy way to integrate the Cashlesso in your Website. When using this mode of integration customers will be redirected from your checkout page to the Cashlesso payment page to collects payment details which has built-in support for Saved Cards, Credit and Debit Cards, UPI wallets and much more.
Payment page is Hosted at Cashlesso Servers which are PCI DSS compliant so that the merchant does not have to worry about the PCI DSS.
Enforce payment mode(RFU)
Sample Flow diagram
Alternatively, you can contact the integration support team/RM to get the keys.
Create the order form
Request URls
Integration: https://uat.cashlesso.com/pgui/jsp/paymentrequest
Production: https://www.cashlesso.com/pgui/jsp/paymentrequest
Every request is accompanied by a secure Hash that verifies the request’s Integrity as well as merchant identity. The secure Hash algorithm is SHA-256.
To generate secure Hash use the following method: Take all the request parameters that are to be
sent to cashlesso and sort them in ascending order according to the name of each field.
Now prepare a String of these sorted name value params with Tiled (~) as the separator like:
Next step is to append the Salt Key at the end of the parameter string given by Cashlesso Payment
Gateway to you. After adding you will get the following output (If salt key is b6200e78557e4e55)
Note: Please append the secret key in lower case without any separator after the last value.
After completing the above-mentioned process, you will have to call SHA 256 algorithm and pass the parameter string to the same and the SHA will return you the desired result as below
Hash value= {6797f1842deb4f3ebaead53e1bafd5a535d322b9fa3893f201fdb03933eeae09}
Now you must convert the generated value to the Upper Case, and you will get the final result as hash value
Hash value = 6797F1842DEB4F3EBAEAD53E1BAFD5A535D322B9FA3893F201FDB03933EEAE09
Once you have prepared the form the user can click on the submit button or you can implement an automatic javascript for form auto submit and user will be redirected to Cashlesso payment page.
Note: To maximize conversion, Cashlesso recommends that you redirect customers to the Payment Gateway in the same browser window.
Note: Amount format is in the least parts without decimals like INR 1200.23 will be written as 120023 and INR 1.00 as 100
You use these cards in your test suite.
The merchant application must validate the transaction response in the status response. This can be done as follows:
Match the response hash that is present in the response against the merchant application calculated hash value using the response params. In case the merchant hash does not match that transaction must not be considered a successful transaction.
For successful transaction RESPONSE_CODE is 000 and STATUS is “Captured” or “Approved”.
Note: Please ensure that response Hash is validated in your production system.
Call the status API and verify the result received real time.
Field name | Description | Required | Type^ | Min | Max | Example |
Merchant Details | ||||||
PAY_ID | Pay ID is a unique merchant identifier provided by Cashlesso | YES | NU | 16 | 16 | 160234578452178 |
ORDER_ID | Merchant reference number | YES | AN | 1 | 50 | ESN78452 |
RETURN_URL | Url of merchant website to get the response after transaction is processed | YES | CH | 5 | 1024 | http://www.response.com |
HASH | Unique value generated by SHA 256 hashing algorithm | YES | AN | 64 | 64 | 7995156CE4C40C44C41BECA3B9CE09B9 |
Customer Details | ||||||
CUST_NAME | Customer name | NO | CH | 1 | 150 | John Pal |
CUST_FIRST_NAME | Customer first name | NO | CH | 2 | 150 | John |
CUST_LAST_NAME | Customer last name | NO | CH | 2 | 150 | Pal |
CUST_STREET_ADDRESS1 | Customer address | NO | CH | 2 | 250 | House no-101 |
CUST_CITY | Customer city | NO | CH | 2 | 50 | Gurgaon |
CUST_STATE | Customer state | NO | CH | 2 | 100 | Haryana |
CUST_COUNTRY | Customer country | NO | CH | 2 | 100 | India |
CUST_ZIP | Customer zip | NO | AN | 6 | 9 | TWQ 123 |
CUST_PHONE* | Customer phone | NO | NU | 8 | 15 | 07417456565 |
CUST_ID* | Unique ID assigned to customer | NO | CH | 5 | 250 | CUST109328 |
CUST_EMAIL* | Customer email | NO | CH | 6 | 120 | john@test.com |
CUST_SHIP_LAST_NAME | Customer Shipping last name | NO | CH | 2 | 150 | Pal |
CUST_SHIP_FIRST_NAME | Customer shipping first name | NO | CH | 2 | 150 | John |
CUST_SHIP_NAME | Customer shipping name | NO | CH | 2 | 150 | John Pal |
CUST_SHIP_STREET_ADDRESS1 | Customer shipping address | NO | CH | 2 | 250 | House no-101 |
CUST_SHIP_STREET_ADDRESS2 | Customer shipping address | NO | CH | 2 | 250 | Block A |
CUST_SHIP_CITY | Customer shipping city | NO | CH | 2 | 50 | Gurgaon |
CUST_SHIP_STATE | Customer shipping state | NO | CH | 2 | 100 | Haryana |
CUST_SHIP_COUNTRY | Customer shipping country | NO | CH | 2 | 100 | India |
CUST_SHIP_ZIP | Customer shipping zip | NO | AN | 6 | 9 | 122001 |
CUST_SHIP_PHONE | Customer shipping phone | NO | NU | 8 | 15 | 07417456565 |
Payment Details | ||||||
AMOUNT** | Total Sale Amount | YES | NU | 3 | 12 | 100 |
CURRENCY_CODE | 3-digit code of the currency | YES | NU | 3 | 3 | 826 (ISO 4217 numeric code) |
Item Level Details | ||||||
PRODUCT_DESC | Description of product | NO | CH | 1 | 1024 | xyz |
^Abbreviation NU – Numeric, CH – Character, AN – Alphanumeric
Field name | Description | Example value |
CUST_NAME | Customer name | John Pal |
TXNTYPE | Type of transaction processed | SALE/AUTH |
AMOUNT | Total Sale Amount | 100 |
CURRENCY_CODE * | 3-digit code of the currency | 826 |
ORDER_ID | Merchant reference number | ESN78452 |
PAY_ID | Pay ID is given by Cashlesso | 160234578452178 |
TXN_ID | Transaction Id generated by Cashlesso to identify the current step | 150611417421130 |
PAYMENT_TYPE | Type of payment mode used by customer | CC/DC/NB |
MOP_TYPE | Method of payment | VI/MC/SBI |
CARD_MASK | Masked card number for card txns | 401200******1234 |
PG_REF_NUM | Id generated by Cashlesso. Use for further communication with Cashlesso, for tracking the full order | 150611417421129 |
RESPONSE_CODE * | Code for transaction status | 000 |
RESPONSE_MESSAGE * | Response message for transaction status | SUCCESS |
HASH* | Unique value generated by SHA 256 hashing algorithm | 7995156CE4C40C44C41BECA3B9CE09B9 |
ECI | Bank issued ECI flag | |
AUTH_CODE | Authorization code | 123456 |
RRN | Bank reference number | 789456132 |
AVR | Address verification flag | Y/N |
ACQ_ID | Bank reference number | KJDNI4UT873 |
STATUS | Transaction status | Approved/Captured/Declined |
CUST_EMAIL | Echo back field | john@gmail.com |
CUST_ID | Echo back field | |
CUST_PHONE | Echo back field | |
PG_TXN_MESSAGE | Detailed message for transaction | |
RETURN_URL | Merchant return URL in request | www.merchantsite.com/paymentresponse |
RESPONSE_DATE | Date of response | 12102019 |
RESPONSE_TIME | Time of response | 10:35:10 |
PRODUCT_DESC | Description of product | xyz |
CARD_ISSUER_BANK | Card issuing bank | SBI |
CARD_ISSUER_COUNTRY | Issuing country of the customer card | India |
TOTAL_AMOUNT | Total amount debited to customer in case of surcharge model | 10134 |
You can use these codes for your test suite.
Following are the various available Ecommerce plugins you can use:
Following are the various resources you can use: