LTS package, Officially supported by SSLCommerz Integration Team.
npm i sslcommerz-lts
constexpress=require('express')constapp=express()constSSLCommerzPayment=require('sslcommerz-lts')conststore_id='<your_store_id>'conststore_passwd='<your_store_password>'constis_live=false//true for live, false for sandboxconstport=3030//sslcommerz initapp.get('/init',(req,res)=>{constdata={total_amount: 100,currency: 'BDT',tran_id: 'REF123',// use unique tran_id for each api callsuccess_url: 'http://localhost:3030/success',fail_url: 'http://localhost:3030/fail',cancel_url: 'http://localhost:3030/cancel',ipn_url: 'http://localhost:3030/ipn',shipping_method: 'Courier',product_name: 'Computer.',product_category: 'Electronic',product_profile: 'general',cus_name: 'Customer Name',cus_email: 'customer@example.com',cus_add1: 'Dhaka',cus_add2: 'Dhaka',cus_city: 'Dhaka',cus_state: 'Dhaka',cus_postcode: '1000',cus_country: 'Bangladesh',cus_phone: '01711111111',cus_fax: '01711111111',ship_name: 'Customer Name',ship_add1: 'Dhaka',ship_add2: 'Dhaka',ship_city: 'Dhaka',ship_state: 'Dhaka',ship_postcode: 1000,ship_country: 'Bangladesh',};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.init(data).then(apiResponse=>{// Redirect the user to payment gatewayletGatewayPageURL=apiResponse.GatewayPageURLres.redirect(GatewayPageURL)console.log('Redirecting to: ',GatewayPageURL)});})app.listen(port,()=>{console.log(`Example app listening at http://localhost:${port}`)})//sslcommerz validation app.get('/validate',(req,res)=>{constdata={val_id:ADGAHHGDAKJ456454//that you go from sslcommerz response};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.validate(data).then(data=>{//process the response that got from sslcommerz // https://developer.sslcommerz.com/doc/v4/#order-validation-api});})//SSLCommerz initiateRefundapp.get('/initiate-refund',(req,res)=>{constdata={refund_amount:10,refund_remarks:'',bank_tran_id:CB5464321445456456,refe_id:EASY5645415455,};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.initiateRefund(data).then(data=>{//process the response that got from sslcommerz //https://developer.sslcommerz.com/doc/v4/#initiate-the-refund});})//SSLCommerz refundQueryapp.get('/refund-query',(req,res)=>{constdata={refund_ref_id:SL4561445410,};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.refundQuery(data).then(data=>{//process the response that got from sslcommerz//https://developer.sslcommerz.com/doc/v4/#initiate-the-refund});})//SSLCommerz transactionQueryByTransactionId//you also use this as internal methodapp.get('/transaction-query-by-transaction-id',(req,res)=>{constdata={tran_id:AKHLAKJS5456454,};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.transactionQueryByTransactionId(data).then(data=>{//process the response that got from sslcommerz//https://developer.sslcommerz.com/doc/v4/#by-session-id});})//SSLCommerz transactionQueryBySessionId//you also use this as internal methodapp.get('/transaction-query-by-session-id',(req,res)=>{constdata={sessionkey:AKHLAKJS5456454,};constsslcz=newSSLCommerzPayment(store_id,store_passwd,is_live)sslcz.transactionQueryBySessionId(data).then(data=>{//process the response that got from sslcommerz//https://developer.sslcommerz.com/doc/v4/#by-session-id});})- Find more details in SSLCommerz Developer's Guide
- For any technical queries: integration@sslcommerz.com
© 2019-2021 SSLCOMMERZ ALL RIGHTS RESERVED