@muhammedaksam/sipay-node 1.0.5 → 1.1.0
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/esm/index.js +16 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/resources/branded-solution.js +0 -7
- package/dist/esm/resources/branded-solution.js.map +1 -1
- package/dist/esm/resources/cards.js +74 -0
- package/dist/esm/resources/cards.js.map +1 -0
- package/dist/esm/resources/cashout.js +17 -0
- package/dist/esm/resources/cashout.js.map +1 -0
- package/dist/esm/resources/marketplace.js +58 -0
- package/dist/esm/resources/marketplace.js.map +1 -0
- package/dist/esm/resources/payment-completion.js +41 -0
- package/dist/esm/resources/payment-completion.js.map +1 -0
- package/dist/esm/resources/payments.js +34 -1
- package/dist/esm/resources/payments.js.map +1 -1
- package/dist/esm/resources/recurring.js +4 -12
- package/dist/esm/resources/recurring.js.map +1 -1
- package/dist/esm/resources/sub-merchant.js +84 -0
- package/dist/esm/resources/sub-merchant.js.map +1 -0
- package/dist/esm/types/index.js +2 -1
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/status-codes.js +292 -0
- package/dist/esm/types/status-codes.js.map +1 -0
- package/dist/esm/utils/http-client.js +14 -3
- package/dist/esm/utils/http-client.js.map +1 -1
- package/dist/esm/utils/index.js +158 -15
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/status-code-helpers.js +158 -0
- package/dist/esm/utils/status-code-helpers.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -1
- package/dist/index.js.map +1 -1
- package/dist/resources/branded-solution.d.ts +1 -5
- package/dist/resources/branded-solution.d.ts.map +1 -1
- package/dist/resources/branded-solution.js +0 -7
- package/dist/resources/branded-solution.js.map +1 -1
- package/dist/resources/cards.d.ts +76 -0
- package/dist/resources/cards.d.ts.map +1 -0
- package/dist/resources/cards.js +78 -0
- package/dist/resources/cards.js.map +1 -0
- package/dist/resources/cashout.d.ts +28 -0
- package/dist/resources/cashout.d.ts.map +1 -0
- package/dist/resources/cashout.js +21 -0
- package/dist/resources/cashout.js.map +1 -0
- package/dist/resources/commissions.d.ts +2 -2
- package/dist/resources/commissions.d.ts.map +1 -1
- package/dist/resources/marketplace.d.ts +87 -0
- package/dist/resources/marketplace.d.ts.map +1 -0
- package/dist/resources/marketplace.js +62 -0
- package/dist/resources/marketplace.js.map +1 -0
- package/dist/resources/payment-completion.d.ts +21 -0
- package/dist/resources/payment-completion.d.ts.map +1 -0
- package/dist/resources/payment-completion.js +78 -0
- package/dist/resources/payment-completion.js.map +1 -0
- package/dist/resources/payments.d.ts +21 -7
- package/dist/resources/payments.d.ts.map +1 -1
- package/dist/resources/payments.js +34 -1
- package/dist/resources/payments.js.map +1 -1
- package/dist/resources/recurring.d.ts +0 -9
- package/dist/resources/recurring.d.ts.map +1 -1
- package/dist/resources/recurring.js +4 -12
- package/dist/resources/recurring.js.map +1 -1
- package/dist/resources/sub-merchant.d.ts +136 -0
- package/dist/resources/sub-merchant.d.ts.map +1 -0
- package/dist/resources/sub-merchant.js +88 -0
- package/dist/resources/sub-merchant.js.map +1 -0
- package/dist/types/index.d.ts +373 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +16 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/status-codes.d.ts +125 -0
- package/dist/types/status-codes.d.ts.map +1 -0
- package/dist/types/status-codes.js +300 -0
- package/dist/types/status-codes.js.map +1 -0
- package/dist/utils/http-client.d.ts.map +1 -1
- package/dist/utils/http-client.js +14 -3
- package/dist/utils/http-client.js.map +1 -1
- package/dist/utils/index.d.ts +50 -5
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +170 -16
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/status-code-helpers.d.ts +42 -0
- package/dist/utils/status-code-helpers.d.ts.map +1 -0
- package/dist/utils/status-code-helpers.js +164 -0
- package/dist/utils/status-code-helpers.js.map +1 -0
- package/package.json +11 -9
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../src/resources/marketplace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,UAAU,CAAC;AAGlB,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC,CAAC;IACH,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,WAAY,SAAQ,aAAa;IAC5C;;OAEG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,UAAU,CAAC,EACtE,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;IAkBxD;;OAEG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,EACzD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;IAKxD;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,cAAc,CAAC,EAC1D,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IAKvD;;OAEG;IACG,WAAW,CACf,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,cAAc,CAAC,EAC1D,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAKnD;;OAEG;IACG,cAAc,CAClB,eAAe,EAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,EACzD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAKjD;;OAEG;IACG,kBAAkB,CACtB,WAAW,EAAE,IAAI,CAAC,yBAAyB,EAAE,cAAc,CAAC,EAC5D,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;IAKzD;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,cAAc,CAAC,EAC1D,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;CAIxD"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Marketplace = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
class Marketplace extends base_1.SipayResource {
|
|
7
|
+
/**
|
|
8
|
+
* Make a marketplace payment (non-secure/2D)
|
|
9
|
+
*/
|
|
10
|
+
async pay2D(paymentData, options) {
|
|
11
|
+
const data = this.addMerchantKey(paymentData);
|
|
12
|
+
// Generate hash key for marketplace payment
|
|
13
|
+
// Hash format: total|installments_number|currency_code|merchant_key|invoice_id
|
|
14
|
+
const hashKey = (0, utils_1.generatePaymentHashKey)(data.total, data.installments_number || 1, data.currency_code, data.merchant_key, data.invoice_id, this.client['config'].appSecret);
|
|
15
|
+
data.hash_key = hashKey;
|
|
16
|
+
return this.post('/api/marketplace/sale/pay/smart/non-secure', data, options);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Make a marketplace payment with 3D Secure
|
|
20
|
+
*/
|
|
21
|
+
async pay3D(paymentData, options) {
|
|
22
|
+
const data = this.addMerchantKey(paymentData);
|
|
23
|
+
return this.post('/api/marketplace/sale/pay/smart/secure', data, options);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Refund a marketplace payment
|
|
27
|
+
*/
|
|
28
|
+
async refund(refundData, options) {
|
|
29
|
+
const data = this.addMerchantKey(refundData);
|
|
30
|
+
return this.post('/ccpayment/api/marketplace/sale/refund', data, options);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Check status of a marketplace payment
|
|
34
|
+
*/
|
|
35
|
+
async checkStatus(statusData, options) {
|
|
36
|
+
const data = this.addMerchantKey(statusData);
|
|
37
|
+
return this.post('/ccpayment/api/marketplace/sale/check/status', data, options);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Get settlements information
|
|
41
|
+
*/
|
|
42
|
+
async getSettlements(settlementsData, options) {
|
|
43
|
+
const data = this.addMerchantKey(settlementsData);
|
|
44
|
+
return this.post('/ccpayment/api/settlements', data, options);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Approve a marketplace transaction
|
|
48
|
+
*/
|
|
49
|
+
async approveTransaction(approveData, options) {
|
|
50
|
+
const data = this.addMerchantKey(approveData);
|
|
51
|
+
return this.post('/ccpayment/api/marketplace/sale/transaction/approve', data, options);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Process payout to sub merchants
|
|
55
|
+
*/
|
|
56
|
+
async payout(payoutData, options) {
|
|
57
|
+
const data = this.addMerchantKey(payoutData);
|
|
58
|
+
return this.post('/ccpayment/api/marketplace/sub-merchant/payout', data, options);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.Marketplace = Marketplace;
|
|
62
|
+
//# sourceMappingURL=marketplace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.js","sourceRoot":"","sources":["../../src/resources/marketplace.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAWvC,oCAAkD;AA8DlD,MAAa,WAAY,SAAQ,oBAAa;IAC5C;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,WAAsE,EACtE,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAA2B,CAAC;QAExE,4CAA4C;QAC5C,+EAA+E;QAC/E,MAAM,OAAO,GAAG,IAAA,8BAAsB,EACpC,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,mBAAmB,IAAI,CAAC,EAC7B,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChC,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,4CAA4C,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,WAAyD,EACzD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,wCAAwC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,UAA0D,EAC1D,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,wCAAwC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,UAA0D,EAC1D,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,8CAA8C,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,eAAyD,EACzD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAA4D,EAC5D,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,qDAAqD,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,UAA0D,EAC1D,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,gDAAgD,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpF,CAAC;CACF;AA1FD,kCA0FC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { SipayApiResponse, RequestOptions, PaymentCompleteResponse } from '../types';
|
|
3
|
+
export interface PaymentCompleteRequest {
|
|
4
|
+
merchant_key: string;
|
|
5
|
+
invoice_id: string;
|
|
6
|
+
order_id: string;
|
|
7
|
+
status: 'complete' | 'cancel';
|
|
8
|
+
hash_key: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class PaymentCompletion extends SipayResource {
|
|
11
|
+
/**
|
|
12
|
+
* Complete or cancel a 3D payment transaction
|
|
13
|
+
* This is used for merchant 3D model where payment completion is done by merchant
|
|
14
|
+
*/
|
|
15
|
+
completePayment(completionData: Omit<PaymentCompleteRequest, 'merchant_key' | 'hash_key'>, options?: RequestOptions): Promise<SipayApiResponse<PaymentCompleteResponse>>;
|
|
16
|
+
/**
|
|
17
|
+
* Generate hash key for payment completion (using official method)
|
|
18
|
+
*/
|
|
19
|
+
private generatePaymentCompletionHashKey;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=payment-completion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payment-completion.d.ts","sourceRoot":"","sources":["../../src/resources/payment-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAIrF,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,iBAAkB,SAAQ,aAAa;IAClD;;;OAGG;IACG,eAAe,CACnB,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,UAAU,CAAC,EACzE,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;IAkBrD;;OAEG;IACH,OAAO,CAAC,gCAAgC;CAiCzC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.PaymentCompletion = void 0;
|
|
37
|
+
const base_1 = require("./base");
|
|
38
|
+
const crypto = __importStar(require("crypto"));
|
|
39
|
+
const { createHash, createCipheriv } = crypto;
|
|
40
|
+
class PaymentCompletion extends base_1.SipayResource {
|
|
41
|
+
/**
|
|
42
|
+
* Complete or cancel a 3D payment transaction
|
|
43
|
+
* This is used for merchant 3D model where payment completion is done by merchant
|
|
44
|
+
*/
|
|
45
|
+
async completePayment(completionData, options) {
|
|
46
|
+
const data = this.addMerchantKey(completionData);
|
|
47
|
+
// Generate hash key using the payment completion format
|
|
48
|
+
// Hash format: merchant_key|invoice_id|order_id|status
|
|
49
|
+
const hashKey = this.generatePaymentCompletionHashKey(this.client['config'].merchantKey, data.invoice_id, data.order_id, data.status, this.client['config'].appSecret);
|
|
50
|
+
data.hash_key = hashKey;
|
|
51
|
+
return this.post('/payment/complete', data, options);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Generate hash key for payment completion (using official method)
|
|
55
|
+
*/
|
|
56
|
+
generatePaymentCompletionHashKey(merchantKey, invoiceId, orderId, status, appSecret) {
|
|
57
|
+
try {
|
|
58
|
+
const data = merchantKey + '|' + invoiceId + '|' + orderId + '|' + status;
|
|
59
|
+
const iv = createHash('sha1').update(String(Math.random())).digest('hex').slice(0, 16);
|
|
60
|
+
const password = createHash('sha1').update(appSecret).digest('hex');
|
|
61
|
+
const salt = createHash('sha1').update(String(Math.random())).digest('hex').slice(0, 4);
|
|
62
|
+
const saltWithPassword = createHash('sha256')
|
|
63
|
+
.update(password + salt)
|
|
64
|
+
.digest('hex')
|
|
65
|
+
.slice(0, 32);
|
|
66
|
+
const cipher = createCipheriv('aes-256-cbc', saltWithPassword, iv);
|
|
67
|
+
let encrypted = cipher.update(data, 'binary', 'base64');
|
|
68
|
+
encrypted += cipher.final('base64');
|
|
69
|
+
const msgBundle = iv + ':' + salt + ':' + encrypted;
|
|
70
|
+
return msgBundle.replace(/\//g, '__');
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
throw new Error(`Payment completion hash key generation failed: ${error}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.PaymentCompletion = PaymentCompletion;
|
|
78
|
+
//# sourceMappingURL=payment-completion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payment-completion.js","sourceRoot":"","sources":["../../src/resources/payment-completion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAuC;AAEvC,+CAAiC;AACjC,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;AAU9C,MAAa,iBAAkB,SAAQ,oBAAa;IAClD;;;OAGG;IACH,KAAK,CAAC,eAAe,CACnB,cAAyE,EACzE,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAA2B,CAAC;QAE3E,wDAAwD;QACxD,uDAAuD;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,gCAAgC,CACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EACjC,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChC,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACK,gCAAgC,CACtC,WAAmB,EACnB,SAAiB,EACjB,OAAe,EACf,MAAc,EACd,SAAiB;QAEjB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,WAAW,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;YAE1E,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAEvF,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEpE,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAExF,MAAM,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC;iBAC1C,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACvB,MAAM,CAAC,KAAK,CAAC;iBACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAEhB,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAEnE,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACxD,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEpC,MAAM,SAAS,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,SAAS,CAAC;YAEpD,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kDAAkD,KAAK,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;CACF;AA9DD,8CA8DC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { SipayResource } from './base';
|
|
2
|
-
import { Payment2DRequest, Payment3DRequest, GetPosRequest, PosInfo, SipayApiResponse, RequestOptions, OrderStatusRequest, RefundRequest } from '../types';
|
|
2
|
+
import { Payment2DRequest, Payment3DRequest, GetPosRequest, PosInfo, SipayApiResponse, RequestOptions, OrderStatusRequest, RefundRequest, ConfirmPaymentRequest, InstallmentsResponse, GetTokenRequest, TokenResponse, Payment2DResponse, Payment3DResponse, PaymentStatusResponse, RefundResponse, ConfirmPaymentResponse } from '../types';
|
|
3
3
|
export declare class Payments extends SipayResource {
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Make a 2D payment (without 3D Secure authentication)
|
|
6
6
|
*/
|
|
7
|
-
pay2D(paymentData: Omit<Payment2DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse
|
|
7
|
+
pay2D(paymentData: Omit<Payment2DRequest, 'merchant_key' | 'hash_key'>, options?: RequestOptions): Promise<SipayApiResponse<Payment2DResponse>>;
|
|
8
8
|
/**
|
|
9
9
|
* Process a 3D payment (with 3D Secure authentication)
|
|
10
10
|
* Returns HTML form that should be rendered and auto-submitted
|
|
11
11
|
*/
|
|
12
|
-
pay3D(paymentData: Omit<Payment3DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse
|
|
12
|
+
pay3D(paymentData: Omit<Payment3DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<Payment3DResponse>>;
|
|
13
13
|
/**
|
|
14
14
|
* Get POS information and installment options for a credit card
|
|
15
15
|
*/
|
|
@@ -17,14 +17,28 @@ export declare class Payments extends SipayResource {
|
|
|
17
17
|
/**
|
|
18
18
|
* Check the status of a payment
|
|
19
19
|
*/
|
|
20
|
-
checkStatus(statusData: Omit<OrderStatusRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse
|
|
20
|
+
checkStatus(statusData: Omit<OrderStatusRequest, 'merchant_key' | 'hash_key'>, options?: RequestOptions): Promise<SipayApiResponse<PaymentStatusResponse>>;
|
|
21
|
+
/**
|
|
22
|
+
* Confirm a pre-authorization payment
|
|
23
|
+
*/
|
|
24
|
+
confirmPayment(confirmData: Omit<ConfirmPaymentRequest, 'merchant_key' | 'hash_key'>, options?: RequestOptions): Promise<SipayApiResponse<ConfirmPaymentResponse>>;
|
|
21
25
|
/**
|
|
22
26
|
* Refund a payment
|
|
23
27
|
*/
|
|
24
|
-
refund(refundData: Omit<RefundRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse
|
|
28
|
+
refund(refundData: Omit<RefundRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<RefundResponse>>;
|
|
29
|
+
/**
|
|
30
|
+
* Get merchant active installments
|
|
31
|
+
* Note: This endpoint uses Bearer token authentication
|
|
32
|
+
*/
|
|
33
|
+
getInstallments(options?: RequestOptions): Promise<SipayApiResponse<InstallmentsResponse>>;
|
|
34
|
+
/**
|
|
35
|
+
* Get authentication token
|
|
36
|
+
* Used for Bearer token authentication in certain endpoints
|
|
37
|
+
*/
|
|
38
|
+
getToken(tokenData: GetTokenRequest, options?: RequestOptions): Promise<SipayApiResponse<TokenResponse>>;
|
|
25
39
|
/**
|
|
26
40
|
* Legacy 2D payment method (maintains compatibility)
|
|
27
41
|
*/
|
|
28
|
-
pay(paymentData: Omit<Payment2DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse
|
|
42
|
+
pay(paymentData: Omit<Payment2DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<Payment2DResponse>>;
|
|
29
43
|
}
|
|
30
44
|
//# sourceMappingURL=payments.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../src/resources/payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACd,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../src/resources/payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAOlB,qBAAa,QAAS,SAAQ,aAAa;IACzC;;OAEG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,GAAG,UAAU,CAAC,EAChE,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IAkB/C;;;OAGG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IAK/C;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,EAC5C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;IAQvC;;OAEG;IACG,WAAW,CACf,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,GAAG,UAAU,CAAC,EACjE,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAenD;;OAEG;IACG,cAAc,CAClB,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,cAAc,GAAG,UAAU,CAAC,EACrE,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;IAgBpD;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,EAC/C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAK5C;;;OAGG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAKhG;;;OAGG;IACG,QAAQ,CACZ,SAAS,EAAE,eAAe,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAI3C;;OAEG;IACG,GAAG,CACP,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;CAIhD"}
|
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Payments = void 0;
|
|
4
4
|
const base_1 = require("./base");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
5
6
|
class Payments extends base_1.SipayResource {
|
|
6
7
|
/**
|
|
7
|
-
*
|
|
8
|
+
* Make a 2D payment (without 3D Secure authentication)
|
|
8
9
|
*/
|
|
9
10
|
async pay2D(paymentData, options) {
|
|
10
11
|
const data = this.addMerchantKey(paymentData);
|
|
12
|
+
// Generate hash key for payment verification
|
|
13
|
+
const hashKey = (0, utils_1.generatePaymentHashKey)(data.total, data.installments_number || 1, data.currency_code, this.client['config'].merchantKey, data.invoice_id, this.client['config'].appSecret);
|
|
14
|
+
data.hash_key = hashKey;
|
|
11
15
|
return this.post('/api/paySmart2D', data, options);
|
|
12
16
|
}
|
|
13
17
|
/**
|
|
@@ -33,8 +37,22 @@ class Payments extends base_1.SipayResource {
|
|
|
33
37
|
*/
|
|
34
38
|
async checkStatus(statusData, options) {
|
|
35
39
|
const data = this.addMerchantKey(statusData);
|
|
40
|
+
// Generate hash key for status check
|
|
41
|
+
const hashKey = (0, utils_1.generateStatusHashKey)(data.invoice_id, this.client['config'].merchantKey, this.client['config'].appSecret);
|
|
42
|
+
data.hash_key = hashKey;
|
|
36
43
|
return this.post('/api/checkstatus', data, options);
|
|
37
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Confirm a pre-authorization payment
|
|
47
|
+
*/
|
|
48
|
+
async confirmPayment(confirmData, options) {
|
|
49
|
+
const data = this.addMerchantKey(confirmData);
|
|
50
|
+
// Generate hash key for payment confirmation
|
|
51
|
+
// Hash format: merchant_key|invoice_id|status
|
|
52
|
+
const hashKey = (0, utils_1.generateConfirmPaymentHashKey)(data.merchant_key, data.invoice_id, data.status, this.client['config'].appSecret);
|
|
53
|
+
data.hash_key = hashKey;
|
|
54
|
+
return this.post('/api/confirmPayment', data, options);
|
|
55
|
+
}
|
|
38
56
|
/**
|
|
39
57
|
* Refund a payment
|
|
40
58
|
*/
|
|
@@ -42,6 +60,21 @@ class Payments extends base_1.SipayResource {
|
|
|
42
60
|
const data = this.addMerchantKey(refundData);
|
|
43
61
|
return this.post('/api/refund', data, options);
|
|
44
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Get merchant active installments
|
|
65
|
+
* Note: This endpoint uses Bearer token authentication
|
|
66
|
+
*/
|
|
67
|
+
async getInstallments(options) {
|
|
68
|
+
// This endpoint doesn't require request body, only headers with Bearer token
|
|
69
|
+
return this.post('/api/installments', {}, options);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get authentication token
|
|
73
|
+
* Used for Bearer token authentication in certain endpoints
|
|
74
|
+
*/
|
|
75
|
+
async getToken(tokenData, options) {
|
|
76
|
+
return this.post('/api/token', tokenData, options);
|
|
77
|
+
}
|
|
45
78
|
/**
|
|
46
79
|
* Legacy 2D payment method (maintains compatibility)
|
|
47
80
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/resources/payments.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;
|
|
1
|
+
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/resources/payments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import { SipayResource } from './base';
|
|
2
|
-
import { RecurringQueryRequest, RecurringPlanProcessRequest, SipayApiResponse, RequestOptions } from '../types';
|
|
3
2
|
export declare class Recurring extends SipayResource {
|
|
4
|
-
/**
|
|
5
|
-
* Query recurring payment information
|
|
6
|
-
*/
|
|
7
|
-
query(queryData: RecurringQueryRequest, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
8
|
-
/**
|
|
9
|
-
* Process a recurring payment plan
|
|
10
|
-
*/
|
|
11
|
-
processPlan(planData: RecurringPlanProcessRequest, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
12
3
|
}
|
|
13
4
|
//# sourceMappingURL=recurring.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recurring.d.ts","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"recurring.d.ts","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAOvC,qBAAa,SAAU,SAAQ,aAAa;CAK3C"}
|
|
@@ -2,19 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Recurring = void 0;
|
|
4
4
|
const base_1 = require("./base");
|
|
5
|
+
// Note: Recurring payment functionality is handled through the regular payment endpoints
|
|
6
|
+
// by including recurring parameters (recurring_payment_number, recurring_payment_cycle,
|
|
7
|
+
// recurring_payment_interval, recurring_web_hook_key) in the payment request.
|
|
8
|
+
// See the Payment2DRequest and Payment3DRequest interfaces for these parameters.
|
|
5
9
|
class Recurring extends base_1.SipayResource {
|
|
6
|
-
/**
|
|
7
|
-
* Query recurring payment information
|
|
8
|
-
*/
|
|
9
|
-
async query(queryData, options) {
|
|
10
|
-
return this.post('/api/QueryRecurring', queryData, options);
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Process a recurring payment plan
|
|
14
|
-
*/
|
|
15
|
-
async processPlan(planData, options) {
|
|
16
|
-
return this.post('/api/recurring/plan/process', planData, options);
|
|
17
|
-
}
|
|
18
10
|
}
|
|
19
11
|
exports.Recurring = Recurring;
|
|
20
12
|
//# sourceMappingURL=recurring.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recurring.js","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;
|
|
1
|
+
{"version":3,"file":"recurring.js","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAEvC,yFAAyF;AACzF,wFAAwF;AACxF,8EAA8E;AAC9E,iFAAiF;AAEjF,MAAa,SAAU,SAAQ,oBAAa;CAK3C;AALD,8BAKC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { SipayApiResponse, RequestOptions, SubMerchantAddResponse, SubMerchantEditResponse, SubMerchantDeleteResponse, SubMerchantListResponse, SubMerchantPFAddResponse, SubMerchantPFDeleteResponse, SubMerchantPFViewResponse, SubMerchantPFListResponse, SubMerchantPayoutResponse } from '../types';
|
|
3
|
+
export interface AddSubMerchantRequest {
|
|
4
|
+
merchant_key: string;
|
|
5
|
+
sub_merchant_name: string;
|
|
6
|
+
sub_merchant_email: string;
|
|
7
|
+
sub_merchant_phone: string;
|
|
8
|
+
identity_number: string;
|
|
9
|
+
sub_merchant_description: string;
|
|
10
|
+
full_company_name: string;
|
|
11
|
+
authorized_person_name: string;
|
|
12
|
+
authorized_person_email: string;
|
|
13
|
+
authorized_person_phone: string;
|
|
14
|
+
contact_person_phone: string;
|
|
15
|
+
business_area: string;
|
|
16
|
+
zip_code: string;
|
|
17
|
+
iban_no: string;
|
|
18
|
+
is_enable_auto_withdrawal: string;
|
|
19
|
+
settlement_id: number;
|
|
20
|
+
auto_approval_days?: number;
|
|
21
|
+
automatic_withdrawal_configuration?: {
|
|
22
|
+
currency_code: string;
|
|
23
|
+
auto_withdrawal_settlement_id: number;
|
|
24
|
+
auto_withdrawal_remain_amount: number;
|
|
25
|
+
};
|
|
26
|
+
currency_code: string;
|
|
27
|
+
auto_withdrawal_settlement_id: number;
|
|
28
|
+
auto_withdrawal_remain_amount: number;
|
|
29
|
+
}
|
|
30
|
+
export interface EditSubMerchantRequest {
|
|
31
|
+
merchant_key: string;
|
|
32
|
+
sub_merchant_key: string;
|
|
33
|
+
sub_merchant_name?: string;
|
|
34
|
+
sub_merchant_email?: string;
|
|
35
|
+
sub_merchant_phone?: string;
|
|
36
|
+
identity_number?: string;
|
|
37
|
+
sub_merchant_description?: string;
|
|
38
|
+
full_company_name?: string;
|
|
39
|
+
authorized_person_name?: string;
|
|
40
|
+
authorized_person_email?: string;
|
|
41
|
+
authorized_person_phone?: string;
|
|
42
|
+
contact_person_phone?: string;
|
|
43
|
+
business_area?: string;
|
|
44
|
+
zip_code?: string;
|
|
45
|
+
iban_no?: string;
|
|
46
|
+
is_enable_auto_withdrawal?: string;
|
|
47
|
+
settlement_id?: number;
|
|
48
|
+
auto_approval_days?: number;
|
|
49
|
+
automatic_withdrawal_configuration?: {
|
|
50
|
+
currency_code: string;
|
|
51
|
+
auto_withdrawal_settlement_id: number;
|
|
52
|
+
auto_withdrawal_remain_amount: number;
|
|
53
|
+
};
|
|
54
|
+
currency_code?: string;
|
|
55
|
+
auto_withdrawal_settlement_id?: number;
|
|
56
|
+
auto_withdrawal_remain_amount?: number;
|
|
57
|
+
}
|
|
58
|
+
export interface DeleteSubMerchantRequest {
|
|
59
|
+
merchant_key: string;
|
|
60
|
+
sub_merchant_key: string;
|
|
61
|
+
}
|
|
62
|
+
export interface ListSubMerchantRequest {
|
|
63
|
+
merchant_key: string;
|
|
64
|
+
}
|
|
65
|
+
export interface AddSubMerchantPFRequest {
|
|
66
|
+
merchant_key: string;
|
|
67
|
+
sub_merchant_key: string;
|
|
68
|
+
sub_merchant_name: string;
|
|
69
|
+
sub_merchant_email: string;
|
|
70
|
+
sub_merchant_phone: string;
|
|
71
|
+
sub_merchant_address: string;
|
|
72
|
+
sub_merchant_tax_office: string;
|
|
73
|
+
sub_merchant_tax_number: string;
|
|
74
|
+
sub_merchant_identity_number: string;
|
|
75
|
+
sub_merchant_iban: string;
|
|
76
|
+
}
|
|
77
|
+
export interface DeleteSubMerchantPFRequest {
|
|
78
|
+
merchant_key: string;
|
|
79
|
+
sub_merchant_key: string;
|
|
80
|
+
}
|
|
81
|
+
export interface ViewSubMerchantPFRequest {
|
|
82
|
+
merchant_key: string;
|
|
83
|
+
sub_merchant_key: string;
|
|
84
|
+
}
|
|
85
|
+
export interface ListSubMerchantPFRequest {
|
|
86
|
+
merchant_key: string;
|
|
87
|
+
}
|
|
88
|
+
export interface PayoutRequest {
|
|
89
|
+
merchant_key: string;
|
|
90
|
+
payout_data: Array<{
|
|
91
|
+
sub_merchant_id: string;
|
|
92
|
+
amount: string;
|
|
93
|
+
currency_code: string;
|
|
94
|
+
}>;
|
|
95
|
+
hash_key: string;
|
|
96
|
+
}
|
|
97
|
+
export declare class SubMerchant extends SipayResource {
|
|
98
|
+
/**
|
|
99
|
+
* Add a new standard sub merchant
|
|
100
|
+
*/
|
|
101
|
+
add(subMerchantData: Omit<AddSubMerchantRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantAddResponse>>;
|
|
102
|
+
/**
|
|
103
|
+
* Edit a standard sub merchant
|
|
104
|
+
*/
|
|
105
|
+
edit(editData: Omit<EditSubMerchantRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantEditResponse>>;
|
|
106
|
+
/**
|
|
107
|
+
* Delete a standard sub merchant
|
|
108
|
+
*/
|
|
109
|
+
delete(deleteData: Omit<DeleteSubMerchantRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantDeleteResponse>>;
|
|
110
|
+
/**
|
|
111
|
+
* List all standard sub merchants
|
|
112
|
+
*/
|
|
113
|
+
list(listData?: Omit<ListSubMerchantRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantListResponse>>;
|
|
114
|
+
/**
|
|
115
|
+
* Add a new sub merchant PF (Physical Person)
|
|
116
|
+
*/
|
|
117
|
+
addPF(subMerchantData: Omit<AddSubMerchantPFRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantPFAddResponse>>;
|
|
118
|
+
/**
|
|
119
|
+
* Delete a sub merchant PF
|
|
120
|
+
*/
|
|
121
|
+
deletePF(deleteData: Omit<DeleteSubMerchantPFRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantPFDeleteResponse>>;
|
|
122
|
+
/**
|
|
123
|
+
* View details of a sub merchant PF
|
|
124
|
+
*/
|
|
125
|
+
viewPF(viewData: Omit<ViewSubMerchantPFRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantPFViewResponse>>;
|
|
126
|
+
/**
|
|
127
|
+
* List all sub merchants PF
|
|
128
|
+
*/
|
|
129
|
+
listPF(listData?: Omit<ListSubMerchantPFRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantPFListResponse>>;
|
|
130
|
+
/**
|
|
131
|
+
* Make payout to sub merchants
|
|
132
|
+
* Hash format: sub_merchant_id|currency_code|amount for each payout item
|
|
133
|
+
*/
|
|
134
|
+
payout(payoutData: Omit<PayoutRequest, 'merchant_key' | 'hash_key'>, options?: RequestOptions): Promise<SipayApiResponse<SubMerchantPayoutResponse>>;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=sub-merchant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sub-merchant.d.ts","sourceRoot":"","sources":["../../src/resources/sub-merchant.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SubMerchant = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
class SubMerchant extends base_1.SipayResource {
|
|
7
|
+
/**
|
|
8
|
+
* Add a new standard sub merchant
|
|
9
|
+
*/
|
|
10
|
+
async add(subMerchantData, options) {
|
|
11
|
+
const data = this.addMerchantKey(subMerchantData);
|
|
12
|
+
return this.post('/api/sub-merchant/add', data, options);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Edit a standard sub merchant
|
|
16
|
+
*/
|
|
17
|
+
async edit(editData, options) {
|
|
18
|
+
const data = this.addMerchantKey(editData);
|
|
19
|
+
return this.post('/api/sub-merchant/edit', data, options);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Delete a standard sub merchant
|
|
23
|
+
*/
|
|
24
|
+
async delete(deleteData, options) {
|
|
25
|
+
const data = this.addMerchantKey(deleteData);
|
|
26
|
+
return this.post('/api/sub-merchant/delete', data, options);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* List all standard sub merchants
|
|
30
|
+
*/
|
|
31
|
+
async list(listData, options) {
|
|
32
|
+
const data = this.addMerchantKey(listData || {});
|
|
33
|
+
return this.post('/api/sub-merchant/list', data, options);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Add a new sub merchant PF (Physical Person)
|
|
37
|
+
*/
|
|
38
|
+
async addPF(subMerchantData, options) {
|
|
39
|
+
const data = this.addMerchantKey(subMerchantData);
|
|
40
|
+
return this.post('/api/addSubMerchantPF', data, options);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Delete a sub merchant PF
|
|
44
|
+
*/
|
|
45
|
+
async deletePF(deleteData, options) {
|
|
46
|
+
const data = this.addMerchantKey(deleteData);
|
|
47
|
+
return this.post('/api/deleteSubMerchantPF', data, options);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* View details of a sub merchant PF
|
|
51
|
+
*/
|
|
52
|
+
async viewPF(viewData, options) {
|
|
53
|
+
const data = this.addMerchantKey(viewData);
|
|
54
|
+
return this.post('/api/subMerchantPF/view', data, options);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* List all sub merchants PF
|
|
58
|
+
*/
|
|
59
|
+
async listPF(listData, options) {
|
|
60
|
+
const data = this.addMerchantKey(listData || {});
|
|
61
|
+
return this.post('/api/listSubMerchantPF', data, options);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Make payout to sub merchants
|
|
65
|
+
* Hash format: sub_merchant_id|currency_code|amount for each payout item
|
|
66
|
+
*/
|
|
67
|
+
async payout(payoutData, options) {
|
|
68
|
+
const data = this.addMerchantKey(payoutData);
|
|
69
|
+
// Generate hash key for payout
|
|
70
|
+
// According to the spec: $data = $submerchant.'|'.$currency_code.'|'.$amount;
|
|
71
|
+
// We need to generate hash for the first payout item (or combined if multiple)
|
|
72
|
+
if (data.payout_data && data.payout_data.length > 0) {
|
|
73
|
+
const firstPayout = data.payout_data[0];
|
|
74
|
+
const hashParts = [
|
|
75
|
+
firstPayout.sub_merchant_id,
|
|
76
|
+
firstPayout.currency_code,
|
|
77
|
+
firstPayout.amount,
|
|
78
|
+
];
|
|
79
|
+
data.hash_key = (0, utils_1.generateHashKey)(hashParts, this.client['config'].appSecret);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
throw new Error('Payout data is required');
|
|
83
|
+
}
|
|
84
|
+
return this.post('/ccpayment/api/marketplace/sub-merchant/payout', data, options);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.SubMerchant = SubMerchant;
|
|
88
|
+
//# sourceMappingURL=sub-merchant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sub-merchant.js","sourceRoot":"","sources":["../../src/resources/sub-merchant.ts"],"names":[],"mappings":"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"}
|