@crediblemark/buayar 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -50,10 +50,13 @@ var DuitkuProvider = class extends BasePaymentProvider {
50
50
  async createInvoice(params, config) {
51
51
  const { orderId, amount, productDetails, customer, returnUrl, callbackUrl } = params;
52
52
  const { merchantCode, apiKey, sandbox } = config;
53
- const url = sandbox ? "https://sandbox.duitku.com/webapi/api/merchant/v2/inquiry" : "https://passport.duitku.com/webapi/api/merchant/v2/inquiry";
53
+ const url = sandbox ? "https://api-sandbox.duitku.com/api/merchant/createInvoice" : "https://api-prod.duitku.com/api/merchant/createInvoice";
54
54
  const integerAmount = Math.round(amount);
55
- const rawSignature = merchantCode + orderId + integerAmount.toString() + apiKey;
56
- const signature = import_crypto.default.createHash("md5").update(rawSignature).digest("hex");
55
+ const rawPayloadSignature = merchantCode + orderId + integerAmount.toString() + apiKey;
56
+ const payloadSignature = import_crypto.default.createHash("md5").update(rawPayloadSignature).digest("hex");
57
+ const timestamp = Date.now().toString();
58
+ const rawHeaderSignature = merchantCode + timestamp + apiKey;
59
+ const headerSignature = import_crypto.default.createHash("sha256").update(rawHeaderSignature).digest("hex");
57
60
  const payload = {
58
61
  merchantCode,
59
62
  paymentAmount: integerAmount,
@@ -61,7 +64,7 @@ var DuitkuProvider = class extends BasePaymentProvider {
61
64
  productDetails,
62
65
  email: customer.email,
63
66
  phoneNumber: customer.phone || "",
64
- signature,
67
+ signature: payloadSignature,
65
68
  callbackUrl,
66
69
  returnUrl,
67
70
  expiryPeriod: 1440
@@ -71,7 +74,11 @@ var DuitkuProvider = class extends BasePaymentProvider {
71
74
  const response = await fetch(url, {
72
75
  method: "POST",
73
76
  headers: {
74
- "Content-Type": "application/json"
77
+ "Content-Type": "application/json",
78
+ "Accept": "application/json",
79
+ "x-duitku-signature": headerSignature,
80
+ "x-duitku-timestamp": timestamp,
81
+ "x-duitku-merchantcode": merchantCode
75
82
  },
76
83
  body: JSON.stringify(payload)
77
84
  });
package/dist/index.mjs CHANGED
@@ -11,10 +11,13 @@ var DuitkuProvider = class extends BasePaymentProvider {
11
11
  async createInvoice(params, config) {
12
12
  const { orderId, amount, productDetails, customer, returnUrl, callbackUrl } = params;
13
13
  const { merchantCode, apiKey, sandbox } = config;
14
- const url = sandbox ? "https://sandbox.duitku.com/webapi/api/merchant/v2/inquiry" : "https://passport.duitku.com/webapi/api/merchant/v2/inquiry";
14
+ const url = sandbox ? "https://api-sandbox.duitku.com/api/merchant/createInvoice" : "https://api-prod.duitku.com/api/merchant/createInvoice";
15
15
  const integerAmount = Math.round(amount);
16
- const rawSignature = merchantCode + orderId + integerAmount.toString() + apiKey;
17
- const signature = crypto.createHash("md5").update(rawSignature).digest("hex");
16
+ const rawPayloadSignature = merchantCode + orderId + integerAmount.toString() + apiKey;
17
+ const payloadSignature = crypto.createHash("md5").update(rawPayloadSignature).digest("hex");
18
+ const timestamp = Date.now().toString();
19
+ const rawHeaderSignature = merchantCode + timestamp + apiKey;
20
+ const headerSignature = crypto.createHash("sha256").update(rawHeaderSignature).digest("hex");
18
21
  const payload = {
19
22
  merchantCode,
20
23
  paymentAmount: integerAmount,
@@ -22,7 +25,7 @@ var DuitkuProvider = class extends BasePaymentProvider {
22
25
  productDetails,
23
26
  email: customer.email,
24
27
  phoneNumber: customer.phone || "",
25
- signature,
28
+ signature: payloadSignature,
26
29
  callbackUrl,
27
30
  returnUrl,
28
31
  expiryPeriod: 1440
@@ -32,7 +35,11 @@ var DuitkuProvider = class extends BasePaymentProvider {
32
35
  const response = await fetch(url, {
33
36
  method: "POST",
34
37
  headers: {
35
- "Content-Type": "application/json"
38
+ "Content-Type": "application/json",
39
+ "Accept": "application/json",
40
+ "x-duitku-signature": headerSignature,
41
+ "x-duitku-timestamp": timestamp,
42
+ "x-duitku-merchantcode": merchantCode
36
43
  },
37
44
  body: JSON.stringify(payload)
38
45
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crediblemark/buayar",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Unified Payment Gateway SDK for CredBuild platforms and sites",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",