61 lines
1.8 KiB
TypeScript
61 lines
1.8 KiB
TypeScript
import axios from 'axios';
|
|
|
|
const irs_url = 'http://h2h.elangpixiu.com/api/h2h';
|
|
const irs_id = 'PT0005';
|
|
const irs_pin = '04JFGC';
|
|
const irs_user = 'D10BD0';
|
|
const irs_pass = '6251F3';
|
|
|
|
export const doTransaction = async (
|
|
productCode,
|
|
destination,
|
|
idtrx,
|
|
supplier,
|
|
authorization,
|
|
typePaid,
|
|
) => {
|
|
try {
|
|
if (supplier.code == 'IRS') {
|
|
const res = await axios.get(
|
|
`${irs_url}?id=${irs_id}&pin=${irs_pin}&user=${irs_user}&pass=${irs_pass}&kodeproduk=${productCode}&tujuan=${destination}&counter=1&idtrx=${idtrx}`,
|
|
);
|
|
|
|
return res.data;
|
|
} else if (supplier.code == 'NIRS') {
|
|
const res = await axios.get(
|
|
`${supplier.url}?id=${supplier.irs_id}&pin=${supplier.irs_pin}&user=${supplier.irs_user}&pass=${supplier.irs_pass}&kodeproduk=${productCode}&tujuan=${destination}&counter=1&idtrx=${idtrx}`,
|
|
);
|
|
|
|
return res.data;
|
|
} else if (supplier.code == 'Hemat') {
|
|
if (authorization != "") {
|
|
console.log("initoken", authorization)
|
|
const options = {
|
|
headers: {'Content-Type': 'application/json',
|
|
'Authorization': 'Bearer ' + authorization}
|
|
};
|
|
const data = {
|
|
idtransaction: idtrx,
|
|
destination: `${destination}`,
|
|
code: `${productCode}`,
|
|
type: `${typePaid}`,
|
|
};
|
|
const res = await axios.post(`${supplier.url}/v1/transaction/request`, data, options);
|
|
|
|
return res.data;
|
|
}
|
|
}
|
|
|
|
const res = await axios.get(
|
|
`${supplier.url}?memberID=${supplier.irs_id}&pin=${supplier.irs_pin}&password=${supplier.irs_pass}&product=${productCode}&dest=${destination}&counter=1&refID=${idtrx}`,
|
|
);
|
|
|
|
return res.data;
|
|
|
|
console.log('restranshemat', res)
|
|
} catch (err) {
|
|
console.log('errtranshemat', err);
|
|
throw err;
|
|
}
|
|
};
|