@duc.trantrung/merchant-sdk
v1.0.0-SNAPSHOT
Published
## How to use SDK
Downloads
2
Readme
Node SDK for Merchant Integration
How to use SDK
Before using this SDK, you should run command below to install all needed packages.
npm install
For using this SDK, you might copy all files in src folder and paste it to your project. Then you should import 2 classess MerchantIntegrationOnline
, MerchantIntegrationOffline
in src
folder.
Config environment:
- stage : String : "PRD"/"STG"
- country : String : Country code of the merchant location. [Refer](https://countrycode.org/)
- partner_id : String - Unique ID for a partner. Retrieve from Developer Hom
- partner_secret : String - Secret key for a partner. Retrieve from Developer Home
- merchant_id : String - Retrieve from Developer Home.
- terminal_id : String - Retrieve from Developer Home. **Only available for POS (P2M)**
- client_id : String - Retrieve from Developer Home. **Only available for OnA**
- client_secret : String - Retrieve from Developer Home. **Only available for OnA**
- redirect_url : String - The url configured in Developer Home. **Only available for OnA**
How to configure for online
const clientOnline = new MerchantIntegrationOnline(stage,country,partner_id,partner_secret,merchant_id,client_id,client_secret,redirect_url)
How to configure for offline
const clientOffline = new MerchantIntegrationOffline(stage,country,partner_id,partner_secret,merchant_id,terminal_id)
Detail for APIs online
- Charge Init:
respChargeInit = clientOnline.onaChargeInit(partnerTxID, partnerGroupTxID, amount, currency, isSync, description, metaInfo, items, shippingDetails, hidePaymentMethods)
- Create Web Url:
respChargeInit = clientOnline.onaCreateWebUrl(partnerTxID, partnerGroupTxID, amount, currency, isSync, description, metaInfo, items, shippingDetails, hidePaymentMethods, state)
- get OAuth Token
respAuthCode = clientOnline.onaOAuthToken(partnerTxID,code)
- Charge Complete
respChargeComplete = clientOnline.onaChargeComplete(partnerTxID,respAuthCode.access_token)
5 Get Charge status
respChargeStatus = clientOnline.onaGetChargeStatus(partnerTxID, currency, respAuthCode.accessToken)
- refund online
response = clientOnline.onaRefund(refundPartnerTxID, amount, origPartnerTxID, description, respAuthCode.accessToken, currency)
- Get Refund Status
response = clientOnline.onaGetRefundStatus(partnerTxID, respAuthCode.accessToken, currency)
- Get One time charge status
response = clientOnline.onaGetOtcStatus(partnerTxID, respAuthCode.accessToken, currency)
Detail for APIs offline
- Create QR Code
respCreateQRCode= clientOffline.posCreateQRCode(msgID, partnerTxID, amount, currency)
- Get transaction detail:
resp= clientOffline.posGetTxnDetails(msgID, partnerTxID, currency)
- Cancel a Transaction
resp= clientOffline.posCancel(msgID, partnerTxID, origPartnerTxID, origTxID, currency)
- Refund a POS Payment
resp= clientOffline.posRefund(msgID, refundPartnerTxID, amount, currency, origPartnerTxID, description)
- Get refund transaction detail:
resp= clientOffline.posGetRefundDetails(msgID, refundPartnerTxID, currency)
- Perform a Transaction
resp= clientOffline.posPerformQRCode(msgID, partnerTxID, amount, currency, code)