1.0.7 • Published 4 years ago
@iwandede/ads v1.0.7
DOKU AGENT DEPOSIT SYSTEM (ADS)
Module Integrated API DOKU
This is not official DOKU
About DOKU
Established in 2007, we are the pioneers in online payment and the first with a risk management system in Indonesia. From sales, payment, purchase, transfer and lend, everything is possible with DOKU. With more than 10 years of experience, supported by a dedicated team, certified internationally and supervised under Bank of Indonesia, we are ready to be your partner in assisting you with all your transactional needs. More >>
Installation
npm install @iwandede/ads --save or yarn add @iwandede/ads
Pre-requisites
You must have a merchant account on DOKU, as you can only get your keys (Merchant ID and Shared Key) after registering.
Usage module
Below is all example usage the module
Initial
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
Check Network
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
// Promise result
payment.NetworkManagement().then(response => {
// response in json format
console.log(response);
}).catch(err => {
// response in json format
console.error(response);
})
Login
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE": options.merchantid,
"LOGINNAME" : <username>,
"PASSWORD" : <password>
}
// Promise result
payment.login(data).then(response => {
// response in json format
console.log(response);
}).catch(err => {
// response in json format
console.error(response);
})
Topup Init
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE" : options.merchantid,
"SESSIONID" : <sessionid> // Session for each success login
"REQUESTTYPE" : 1, //Agent will receive email top up deposit confirmation
"AMOUNT" : 10543, //Transfer amount. Last three digits are randomized,
"TOPUPCHANNEL" : "PULSA",
"SENDERBANKNAME" : "BANK NAME",
"SENDERBANKACCOUNTNAME": "BANK ACCOUNT NAME",
"PASSWORD" : "YOUR PASSWORD"
}
// Promise result
payment.TopUpInit(data).then(response => console.log(response))
.catch(err => console.error(response))
Check Last Balance
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE": options.merchantid,
"SESSIONID" : "SESSION FROM LOGIN METHOD",
}
// Promise result
payment.CheckLastBalance(data)
.then(response => console.log(response)).catch(err => console.error(err))
Inquiry
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE" : options.merchantid,
"SESSIONID" : "<Session for each success login>",
"BILLERID" . : "<BILLERID from list documentation>",
"ACCOUNT_NUMBER": "<Account Number or Phone number>",
"ADDITIONALDATA1": "Additional Information",
"ADDITIONALDATA2": "Additional Information 2",
"ADDITIONALDATA3": "Additional Information 3"
}
// Promise result
payment.Inquiry(data)
.then(response => console.log(response)).catch(err => console.error(err))
Payment
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE" : options.merchantid,
"SESSIONID" : "<Session for each success login>",
"BILLERID" : "<BILLERID from list documentation>",
"ACCOUNT_NUMBER" : "<Account Number or Phone number>",
"INQUIRYID" : "<Inquiry ID>",
"AMOUNT" : "90500.00",
"BILL_ID" . : "1",
"ADDITIONALDATA1": "Additional Information",
"ADDITIONALDATA2": "Additional Information 2",
"ADDITIONALDATA3": "Additional Information 3"
}
// Promise result
payment.Payment(data)
.then(response => console.log(response)).catch(err => console.error(err))
Advise
const DOKU = require('@iwandede/ads');
const options = {
url : <URL GIVEN BY DOKU>, //String
key : <KEY GIVEN BY DOKU>, //String
merchantid : <MERCHANTID GIVEN BY DOKU> //Srting
}
const payment = new DOKU(options);
const data = {
"CHANNELCODE" : options.merchantid,
"SESSIONID" : "<Session for each success login>",
"BILLERID" : "<BILLERID from list documentation>",
"ACCOUNT_NUMBER" : "<Account Number or Phone number>",
"HOST_REFERENCE_NUMBER" : "<Inquiry ID>",
"AMOUNT" : "90500.00",
"BILL_ID" . : "1",
"ADDITIONALDATA1": "Additional Information",
"ADDITIONALDATA2": "Additional Information 2",
"ADDITIONALDATA3": "Additional Information 3"
}
// Promise result
payment.Advise(data)
.then(response => console.log(response)).catch(err => console.error(err))
Documentation of integration can be seen or contact DOKU Contact