Nodejs library to accept bkash payments on your backend application. BKASH API WRAPPER
npm install bkash-payment-apiNodejs library to accept bkash payments on your backend application. BKASH API WRAPPER


- Express from main Author Shahriar Shojib may not work
- Implements all the methods required to get accepted as a merchant on bKash
- Written in typescript
- Get intellisense in when interacting with the library vscode
- Get Documentation and examples right inside your code editor vscode
- Get Bkash Response Intellisense
- Abort Request when an executePayment request exceeds 30 seconds and get an error so that you can query the payment
- Get Human Readable exceptions when some error response is returned from bKash in progress
---
> npm install bkash-payment-api
> yarn add bkash-payment-api
---
https://checkout.sandbox.bka.sh/v1.2.0-beta for sandboxhttps://tokenized.pay.bka.sh/v1.2.0-beta for productionCreate Payment Sandbox Test also get the paymentID from responsepaymentID and enter the response in Execute Payment Sandbox Test> file bkash.js
``javascript
const { BkashGateway } = require('bkash-payment-api');
const bkashConfig = {
baseURL: 'https://checkout.sandbox.bka.sh/v1.2.0-beta', //do not add a trailing slash
key: 'abcdxxx2369',
username: 'bkashTest',
password: 'bkashPassword1',
secret: 'bkashSup3rS3cRet',
};
const bkash = new BkashGateway(config);
module.exports = bkash;
`
> file bkash.ts
`typescript
import { BkashGateway IBkashConstructor } from 'bkash-payment-api';
const bkashConfig: IBkashConstructor = {
//get intellisense here
baseURL: 'https://checkout.sandbox.bka.sh/v1.2.0-beta', //do not add a trailing slash
key: 'abcdxx2369',
username: 'bkashTest',
password: 'bkashPassword1',
secret: 'bkashSup3rS3cRet',
};
const bkash = new BkashGateway(config);
export default bkash;
`
---
`javascript
const paymentRequest = {
amount: 1000,
orderID: 'ORD1020069',
intent: 'sale',
callBack: 'https://example.com/bkash/callback',
};
const result = await bkash.createPayment(paymentRequest);
console.log(result);
`
---
`javascript`
const paymentId = createPaymentRequest.paymentID; // sample payment ID
const result = await bkash.executePayment(paymentId);
---
`javascript`
const paymentId = createPaymentRequest.paymentID; // sample payment ID
const result = await bkash.queryPayment(paymentId);
---
`javascript`
const result = await bkash.searchTransaction('TRX22347463XX');
---
`javascript
const refundTransactionData = {
paymentID: '22423169',
amount: '25.69', //do not add more than two decimal points
trxID: 'TRX22347463XX';
sku: 'SK256519';
}
const result = await bkash.refundTransaction(refundTransactionData);
`
---
`javascript`
const result = await bkash.refundStatus('TRX22347463XX', '12437969');
---
- Please Follow the code style and use the prettier config and eslint config provided in the repository
- Feel free to open issues or pull request for any issues and bugfixesproject
- If you want to implement new features or write documentation about existing features feel free to do it as well
- To see a list of missing features or to-do's, please visit the section of the github repository
---
> MIT
> DISCLAIMER: This software comes with absolutely no warranty and is not affiliated with the company Bkash` in any way. Use at your own risk. Author and Contributors are not responsible for any financial damages, outages etc.