@muhammedaksam/sipay-node 0.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/LICENSE +21 -0
- package/README.md +346 -0
- package/dist/esm/index.js +45 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/resources/base.js +24 -0
- package/dist/esm/resources/base.js.map +1 -0
- package/dist/esm/resources/branded-solution.js +18 -0
- package/dist/esm/resources/branded-solution.js.map +1 -0
- package/dist/esm/resources/commissions.js +10 -0
- package/dist/esm/resources/commissions.js.map +1 -0
- package/dist/esm/resources/payments.js +50 -0
- package/dist/esm/resources/payments.js.map +1 -0
- package/dist/esm/resources/recurring.js +16 -0
- package/dist/esm/resources/recurring.js.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/utils/http-client.js +119 -0
- package/dist/esm/utils/http-client.js.map +1 -0
- package/dist/esm/utils/index.js +136 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +69 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/base.d.ts +12 -0
- package/dist/resources/base.d.ts.map +1 -0
- package/dist/resources/base.js +28 -0
- package/dist/resources/base.js.map +1 -0
- package/dist/resources/branded-solution.d.ts +15 -0
- package/dist/resources/branded-solution.d.ts.map +1 -0
- package/dist/resources/branded-solution.js +22 -0
- package/dist/resources/branded-solution.js.map +1 -0
- package/dist/resources/commissions.d.ts +9 -0
- package/dist/resources/commissions.d.ts.map +1 -0
- package/dist/resources/commissions.js +14 -0
- package/dist/resources/commissions.js.map +1 -0
- package/dist/resources/payments.d.ts +30 -0
- package/dist/resources/payments.d.ts.map +1 -0
- package/dist/resources/payments.js +54 -0
- package/dist/resources/payments.js.map +1 -0
- package/dist/resources/recurring.d.ts +13 -0
- package/dist/resources/recurring.d.ts.map +1 -0
- package/dist/resources/recurring.js +20 -0
- package/dist/resources/recurring.js.map +1 -0
- package/dist/types/index.d.ts +116 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/http-client.d.ts +16 -0
- package/dist/utils/http-client.d.ts.map +1 -0
- package/dist/utils/http-client.js +126 -0
- package/dist/utils/http-client.js.map +1 -0
- package/dist/utils/index.d.ts +36 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +178 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +72 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/utils/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import * as crypto from 'crypto';
|
|
2
|
+
/**
|
|
3
|
+
* Utility functions for Sipay SDK
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Generate hash key for payment requests
|
|
7
|
+
* Based on Sipay documentation requirements
|
|
8
|
+
*/
|
|
9
|
+
export function generateHashKey(merchantKey, invoiceId, amount, secretKey) {
|
|
10
|
+
const hashString = `${merchantKey}${invoiceId}${amount}${secretKey}`;
|
|
11
|
+
return crypto.createHash('sha256').update(hashString).digest('hex');
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Validate credit card number using Luhn algorithm
|
|
15
|
+
*/
|
|
16
|
+
export function validateCreditCard(cardNumber) {
|
|
17
|
+
const num = cardNumber.replace(/\D/g, '');
|
|
18
|
+
// Check if empty or less than 13 digits
|
|
19
|
+
if (num.length < 13 || num.length > 19) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
let sum = 0;
|
|
23
|
+
let isEven = false;
|
|
24
|
+
for (let i = num.length - 1; i >= 0; i--) {
|
|
25
|
+
let digit = parseInt(num.charAt(i), 10);
|
|
26
|
+
if (isEven) {
|
|
27
|
+
digit *= 2;
|
|
28
|
+
if (digit > 9) {
|
|
29
|
+
digit -= 9;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
sum += digit;
|
|
33
|
+
isEven = !isEven;
|
|
34
|
+
}
|
|
35
|
+
return sum % 10 === 0;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Format currency amount for Sipay API
|
|
39
|
+
*/
|
|
40
|
+
export function formatAmount(amount) {
|
|
41
|
+
return amount.toFixed(2);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Generate a unique invoice ID
|
|
45
|
+
*/
|
|
46
|
+
export function generateInvoiceId(prefix = 'INV') {
|
|
47
|
+
const timestamp = Date.now();
|
|
48
|
+
const random = Math.floor(Math.random() * 10000);
|
|
49
|
+
return `${prefix}${timestamp}${random}`;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Validate required payment fields
|
|
53
|
+
*/
|
|
54
|
+
export function validatePaymentData(data) {
|
|
55
|
+
const errors = [];
|
|
56
|
+
const requiredFields = [
|
|
57
|
+
'cc_holder_name',
|
|
58
|
+
'cc_no',
|
|
59
|
+
'expiry_month',
|
|
60
|
+
'expiry_year',
|
|
61
|
+
'currency_code',
|
|
62
|
+
'invoice_id',
|
|
63
|
+
'total',
|
|
64
|
+
'name',
|
|
65
|
+
'surname',
|
|
66
|
+
'items',
|
|
67
|
+
];
|
|
68
|
+
for (const field of requiredFields) {
|
|
69
|
+
if (!data[field]) {
|
|
70
|
+
errors.push(`Missing required field: ${field}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Validate credit card
|
|
74
|
+
if (data.cc_no && !validateCreditCard(data.cc_no)) {
|
|
75
|
+
errors.push('Invalid credit card number');
|
|
76
|
+
}
|
|
77
|
+
// Validate amount
|
|
78
|
+
if (data.total && (isNaN(data.total) || data.total <= 0)) {
|
|
79
|
+
errors.push('Invalid amount');
|
|
80
|
+
}
|
|
81
|
+
// Validate currency
|
|
82
|
+
const validCurrencies = ['TRY', 'USD', 'EUR'];
|
|
83
|
+
if (data.currency_code && !validCurrencies.includes(data.currency_code)) {
|
|
84
|
+
errors.push('Invalid currency code');
|
|
85
|
+
}
|
|
86
|
+
// Validate expiry
|
|
87
|
+
if (data.expiry_month) {
|
|
88
|
+
const month = parseInt(data.expiry_month, 10);
|
|
89
|
+
if (isNaN(month) || month < 1 || month > 12) {
|
|
90
|
+
errors.push('Invalid expiry month');
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
if (data.expiry_year) {
|
|
94
|
+
const year = parseInt(data.expiry_year, 10);
|
|
95
|
+
const currentYear = new Date().getFullYear();
|
|
96
|
+
if (isNaN(year) || year < currentYear || year > currentYear + 20) {
|
|
97
|
+
errors.push('Invalid expiry year');
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return errors;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Mask credit card number for logging
|
|
104
|
+
*/
|
|
105
|
+
export function maskCreditCard(cardNumber) {
|
|
106
|
+
const num = cardNumber.replace(/\D/g, '');
|
|
107
|
+
if (num.length <= 3) {
|
|
108
|
+
return '*'.repeat(num.length);
|
|
109
|
+
}
|
|
110
|
+
if (num.length <= 7) {
|
|
111
|
+
const firstThree = num.substring(0, 3);
|
|
112
|
+
const middle = '*'.repeat(num.length - 4);
|
|
113
|
+
const lastOne = num.substring(num.length - 1);
|
|
114
|
+
return `${firstThree}${middle}${lastOne}`;
|
|
115
|
+
}
|
|
116
|
+
const firstFour = num.substring(0, 4);
|
|
117
|
+
const lastFour = num.substring(num.length - 4);
|
|
118
|
+
const middle = '*'.repeat(Math.max(0, num.length - 8));
|
|
119
|
+
return `${firstFour}${middle}${lastFour}`;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Parse Sipay error response
|
|
123
|
+
*/
|
|
124
|
+
export function parseSipayError(error) {
|
|
125
|
+
if (error.response?.data) {
|
|
126
|
+
return {
|
|
127
|
+
code: error.response.data.status_code || 0,
|
|
128
|
+
message: error.response.data.status_description || error.response.data.message || 'Unknown error',
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
code: 0,
|
|
133
|
+
message: error.message || 'Network error',
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { SipayConfig } from './types';
|
|
2
|
+
import { Payments } from './resources/payments';
|
|
3
|
+
import { Recurring } from './resources/recurring';
|
|
4
|
+
import { BrandedSolution } from './resources/branded-solution';
|
|
5
|
+
import { Commissions } from './resources/commissions';
|
|
6
|
+
export declare class Sipay {
|
|
7
|
+
private client;
|
|
8
|
+
payments: Payments;
|
|
9
|
+
recurring: Recurring;
|
|
10
|
+
brandedSolution: BrandedSolution;
|
|
11
|
+
commissions: Commissions;
|
|
12
|
+
constructor(config: SipayConfig);
|
|
13
|
+
/**
|
|
14
|
+
* Manually authenticate with Sipay API
|
|
15
|
+
* Note: This is automatically called when needed, but can be called manually
|
|
16
|
+
*/
|
|
17
|
+
authenticate(): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Get the current authentication token
|
|
20
|
+
*/
|
|
21
|
+
getToken(): string | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Set a custom authentication token
|
|
24
|
+
*/
|
|
25
|
+
setToken(token: string): void;
|
|
26
|
+
}
|
|
27
|
+
export default Sipay;
|
|
28
|
+
export * from './types';
|
|
29
|
+
export { SipayHttpClient } from './utils/http-client';
|
|
30
|
+
export { SipayResource } from './resources/base';
|
|
31
|
+
export { Payments } from './resources/payments';
|
|
32
|
+
export { Recurring } from './resources/recurring';
|
|
33
|
+
export { BrandedSolution } from './resources/branded-solution';
|
|
34
|
+
export { Commissions } from './resources/commissions';
|
|
35
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,qBAAa,KAAK;IAChB,OAAO,CAAC,MAAM,CAAkB;IAEzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,WAAW,CAAC;gBAEpB,MAAM,EAAE,WAAW;IAU/B;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI9B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAG9B;AAGD,eAAe,KAAK,CAAC;AAGrB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Commissions = exports.BrandedSolution = exports.Recurring = exports.Payments = exports.SipayResource = exports.SipayHttpClient = exports.Sipay = void 0;
|
|
18
|
+
const http_client_1 = require("./utils/http-client");
|
|
19
|
+
const payments_1 = require("./resources/payments");
|
|
20
|
+
const recurring_1 = require("./resources/recurring");
|
|
21
|
+
const branded_solution_1 = require("./resources/branded-solution");
|
|
22
|
+
const commissions_1 = require("./resources/commissions");
|
|
23
|
+
class Sipay {
|
|
24
|
+
constructor(config) {
|
|
25
|
+
this.client = new http_client_1.SipayHttpClient(config);
|
|
26
|
+
// Initialize resources
|
|
27
|
+
this.payments = new payments_1.Payments(this.client);
|
|
28
|
+
this.recurring = new recurring_1.Recurring(this.client);
|
|
29
|
+
this.brandedSolution = new branded_solution_1.BrandedSolution(this.client);
|
|
30
|
+
this.commissions = new commissions_1.Commissions(this.client);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Manually authenticate with Sipay API
|
|
34
|
+
* Note: This is automatically called when needed, but can be called manually
|
|
35
|
+
*/
|
|
36
|
+
async authenticate() {
|
|
37
|
+
return this.client.authenticate();
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Get the current authentication token
|
|
41
|
+
*/
|
|
42
|
+
getToken() {
|
|
43
|
+
return this.client.getToken();
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Set a custom authentication token
|
|
47
|
+
*/
|
|
48
|
+
setToken(token) {
|
|
49
|
+
this.client.setToken(token);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.Sipay = Sipay;
|
|
53
|
+
// Default export
|
|
54
|
+
exports.default = Sipay;
|
|
55
|
+
// Named exports
|
|
56
|
+
__exportStar(require("./types"), exports);
|
|
57
|
+
var http_client_2 = require("./utils/http-client");
|
|
58
|
+
Object.defineProperty(exports, "SipayHttpClient", { enumerable: true, get: function () { return http_client_2.SipayHttpClient; } });
|
|
59
|
+
var base_1 = require("./resources/base");
|
|
60
|
+
Object.defineProperty(exports, "SipayResource", { enumerable: true, get: function () { return base_1.SipayResource; } });
|
|
61
|
+
var payments_2 = require("./resources/payments");
|
|
62
|
+
Object.defineProperty(exports, "Payments", { enumerable: true, get: function () { return payments_2.Payments; } });
|
|
63
|
+
var recurring_2 = require("./resources/recurring");
|
|
64
|
+
Object.defineProperty(exports, "Recurring", { enumerable: true, get: function () { return recurring_2.Recurring; } });
|
|
65
|
+
var branded_solution_2 = require("./resources/branded-solution");
|
|
66
|
+
Object.defineProperty(exports, "BrandedSolution", { enumerable: true, get: function () { return branded_solution_2.BrandedSolution; } });
|
|
67
|
+
var commissions_2 = require("./resources/commissions");
|
|
68
|
+
Object.defineProperty(exports, "Commissions", { enumerable: true, get: function () { return commissions_2.Commissions; } });
|
|
69
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAAsD;AAEtD,mDAAgD;AAChD,qDAAkD;AAClD,mEAA+D;AAC/D,yDAAsD;AAEtD,MAAa,KAAK;IAQhB,YAAY,MAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,6BAAe,CAAC,MAAM,CAAC,CAAC;QAE1C,uBAAuB;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,GAAG,IAAI,kCAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACF;AAvCD,sBAuCC;AAED,iBAAiB;AACjB,kBAAe,KAAK,CAAC;AAErB,gBAAgB;AAChB,0CAAwB;AACxB,mDAAsD;AAA7C,8GAAA,eAAe,OAAA;AACxB,yCAAiD;AAAxC,qGAAA,aAAa,OAAA;AACtB,iDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,iEAA+D;AAAtD,mHAAA,eAAe,OAAA;AACxB,uDAAsD;AAA7C,0GAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SipayHttpClient } from '../utils/http-client';
|
|
2
|
+
import { SipayApiResponse, RequestOptions } from '../types';
|
|
3
|
+
export declare abstract class SipayResource {
|
|
4
|
+
protected client: SipayHttpClient;
|
|
5
|
+
constructor(client: SipayHttpClient);
|
|
6
|
+
protected request<T = any>(method: 'GET' | 'POST', url: string, data?: any, options?: RequestOptions): Promise<SipayApiResponse<T>>;
|
|
7
|
+
protected get<T = any>(url: string, params?: any, options?: RequestOptions): Promise<SipayApiResponse<T>>;
|
|
8
|
+
protected post<T = any>(url: string, data?: any, options?: RequestOptions): Promise<SipayApiResponse<T>>;
|
|
9
|
+
protected postForm<T = any>(url: string, data?: any, options?: RequestOptions): Promise<SipayApiResponse<T>>;
|
|
10
|
+
protected addMerchantKey(data: any): any;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/resources/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE5D,8BAAsB,aAAa;IACjC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC;gBAEtB,MAAM,EAAE,eAAe;cAInB,OAAO,CAAC,CAAC,GAAG,GAAG,EAC7B,MAAM,EAAE,KAAK,GAAG,MAAM,EACtB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;cAIf,GAAG,CAAC,CAAC,GAAG,GAAG,EACzB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,GAAG,EACZ,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;cAIf,IAAI,CAAC,CAAC,GAAG,GAAG,EAC1B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;cAIf,QAAQ,CAAC,CAAC,GAAG,GAAG,EAC9B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAI/B,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG;CAMzC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SipayResource = void 0;
|
|
4
|
+
class SipayResource {
|
|
5
|
+
constructor(client) {
|
|
6
|
+
this.client = client;
|
|
7
|
+
}
|
|
8
|
+
async request(method, url, data, options) {
|
|
9
|
+
return this.client.request(method, url, data, options);
|
|
10
|
+
}
|
|
11
|
+
async get(url, params, options) {
|
|
12
|
+
return this.client.get(url, params, options);
|
|
13
|
+
}
|
|
14
|
+
async post(url, data, options) {
|
|
15
|
+
return this.client.post(url, data, options);
|
|
16
|
+
}
|
|
17
|
+
async postForm(url, data, options) {
|
|
18
|
+
return this.client.postForm(url, data, options);
|
|
19
|
+
}
|
|
20
|
+
addMerchantKey(data) {
|
|
21
|
+
return {
|
|
22
|
+
...data,
|
|
23
|
+
merchant_key: this.client['config'].merchantKey,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SipayResource = SipayResource;
|
|
28
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/resources/base.ts"],"names":[],"mappings":";;;AAGA,MAAsB,aAAa;IAGjC,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAES,KAAK,CAAC,OAAO,CACrB,MAAsB,EACtB,GAAW,EACX,IAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAI,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAES,KAAK,CAAC,GAAG,CACjB,GAAW,EACX,MAAY,EACZ,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAI,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAES,KAAK,CAAC,IAAI,CAClB,GAAW,EACX,IAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAES,KAAK,CAAC,QAAQ,CACtB,GAAW,EACX,IAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAES,cAAc,CAAC,IAAS;QAChC,OAAO;YACL,GAAG,IAAI;YACP,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW;SAChD,CAAC;IACJ,CAAC;CACF;AA9CD,sCA8CC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { BrandedSolutionRequest, BrandedStatusRequest, SipayApiResponse, RequestOptions } from '../types';
|
|
3
|
+
export declare class BrandedSolution extends SipayResource {
|
|
4
|
+
/**
|
|
5
|
+
* Create a branded payment link
|
|
6
|
+
*/
|
|
7
|
+
createPaymentLink(linkData: Omit<BrandedSolutionRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<{
|
|
8
|
+
link: string;
|
|
9
|
+
}>>;
|
|
10
|
+
/**
|
|
11
|
+
* Check the status of a branded payment
|
|
12
|
+
*/
|
|
13
|
+
checkStatus(statusData: Omit<BrandedStatusRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=branded-solution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branded-solution.d.ts","sourceRoot":"","sources":["../../src/resources/branded-solution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACf,MAAM,UAAU,CAAC;AAElB,qBAAa,eAAgB,SAAQ,aAAa;IAChD;;OAEG;IACG,iBAAiB,CACrB,QAAQ,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,EACtD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAK9C;;OAEG;IACG,WAAW,CACf,UAAU,EAAE,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,EACtD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;CAI7B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BrandedSolution = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
class BrandedSolution extends base_1.SipayResource {
|
|
6
|
+
/**
|
|
7
|
+
* Create a branded payment link
|
|
8
|
+
*/
|
|
9
|
+
async createPaymentLink(linkData, options) {
|
|
10
|
+
const data = this.addMerchantKey(linkData);
|
|
11
|
+
return this.post('/purchase/link', data, options);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Check the status of a branded payment
|
|
15
|
+
*/
|
|
16
|
+
async checkStatus(statusData, options) {
|
|
17
|
+
const data = this.addMerchantKey(statusData);
|
|
18
|
+
return this.post('/purchase/status', data, options);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.BrandedSolution = BrandedSolution;
|
|
22
|
+
//# sourceMappingURL=branded-solution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branded-solution.js","sourceRoot":"","sources":["../../src/resources/branded-solution.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAQvC,MAAa,eAAgB,SAAQ,oBAAa;IAChD;;OAEG;IACH,KAAK,CAAC,iBAAiB,CACrB,QAAsD,EACtD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,UAAsD,EACtD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CACF;AAtBD,0CAsBC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { CommissionRequest, SipayApiResponse, RequestOptions } from '../types';
|
|
3
|
+
export declare class Commissions extends SipayResource {
|
|
4
|
+
/**
|
|
5
|
+
* Get commission information for a currency
|
|
6
|
+
*/
|
|
7
|
+
getCommissions(commissionData: CommissionRequest, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=commissions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commissions.d.ts","sourceRoot":"","sources":["../../src/resources/commissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/E,qBAAa,WAAY,SAAQ,aAAa;IAC5C;;OAEG;IACG,cAAc,CAClB,cAAc,EAAE,iBAAiB,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;CAG7B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Commissions = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
class Commissions extends base_1.SipayResource {
|
|
6
|
+
/**
|
|
7
|
+
* Get commission information for a currency
|
|
8
|
+
*/
|
|
9
|
+
async getCommissions(commissionData, options) {
|
|
10
|
+
return this.get('/api/commissions', commissionData, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.Commissions = Commissions;
|
|
14
|
+
//# sourceMappingURL=commissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commissions.js","sourceRoot":"","sources":["../../src/resources/commissions.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAGvC,MAAa,WAAY,SAAQ,oBAAa;IAC5C;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,cAAiC,EACjC,OAAwB;QAExB,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;CACF;AAVD,kCAUC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { Payment2DRequest, Payment3DRequest, GetPosRequest, PosInfo, SipayApiResponse, RequestOptions, OrderStatusRequest, RefundRequest } from '../types';
|
|
3
|
+
export declare class Payments extends SipayResource {
|
|
4
|
+
/**
|
|
5
|
+
* Process a 2D payment (direct payment without 3D Secure)
|
|
6
|
+
*/
|
|
7
|
+
pay2D(paymentData: Omit<Payment2DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
8
|
+
/**
|
|
9
|
+
* Process a 3D payment (with 3D Secure authentication)
|
|
10
|
+
* Returns HTML form that should be rendered and auto-submitted
|
|
11
|
+
*/
|
|
12
|
+
pay3D(paymentData: Omit<Payment3DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
13
|
+
/**
|
|
14
|
+
* Get POS information and installment options for a credit card
|
|
15
|
+
*/
|
|
16
|
+
getPos(posData: Omit<GetPosRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse<PosInfo[]>>;
|
|
17
|
+
/**
|
|
18
|
+
* Check the status of a payment
|
|
19
|
+
*/
|
|
20
|
+
checkStatus(statusData: Omit<OrderStatusRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
21
|
+
/**
|
|
22
|
+
* Refund a payment
|
|
23
|
+
*/
|
|
24
|
+
refund(refundData: Omit<RefundRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
25
|
+
/**
|
|
26
|
+
* Legacy 2D payment method (maintains compatibility)
|
|
27
|
+
*/
|
|
28
|
+
pay(paymentData: Omit<Payment2DRequest, 'merchant_key'>, options?: RequestOptions): Promise<SipayApiResponse>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=payments.d.ts.map
|
|
@@ -0,0 +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;AAElB,qBAAa,QAAS,SAAQ,aAAa;IACzC;;OAEG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAK5B;;;OAGG;IACG,KAAK,CACT,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAK5B;;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,CAAC,EACpD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAK5B;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,EAC/C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAK5B;;OAEG;IACG,GAAG,CACP,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,EACnD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;CAI7B"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Payments = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
class Payments extends base_1.SipayResource {
|
|
6
|
+
/**
|
|
7
|
+
* Process a 2D payment (direct payment without 3D Secure)
|
|
8
|
+
*/
|
|
9
|
+
async pay2D(paymentData, options) {
|
|
10
|
+
const data = this.addMerchantKey(paymentData);
|
|
11
|
+
return this.post('/api/paySmart2D', data, options);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Process a 3D payment (with 3D Secure authentication)
|
|
15
|
+
* Returns HTML form that should be rendered and auto-submitted
|
|
16
|
+
*/
|
|
17
|
+
async pay3D(paymentData, options) {
|
|
18
|
+
const data = this.addMerchantKey(paymentData);
|
|
19
|
+
return this.postForm('/api/paySmart3D', data, options);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get POS information and installment options for a credit card
|
|
23
|
+
*/
|
|
24
|
+
async getPos(posData, options) {
|
|
25
|
+
const data = this.addMerchantKey({
|
|
26
|
+
...posData,
|
|
27
|
+
credit_card: posData.credit_card,
|
|
28
|
+
});
|
|
29
|
+
return this.post('/api/getpos', data, options);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check the status of a payment
|
|
33
|
+
*/
|
|
34
|
+
async checkStatus(statusData, options) {
|
|
35
|
+
const data = this.addMerchantKey(statusData);
|
|
36
|
+
return this.post('/api/checkstatus', data, options);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Refund a payment
|
|
40
|
+
*/
|
|
41
|
+
async refund(refundData, options) {
|
|
42
|
+
const data = this.addMerchantKey(refundData);
|
|
43
|
+
return this.post('/api/refund', data, options);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Legacy 2D payment method (maintains compatibility)
|
|
47
|
+
*/
|
|
48
|
+
async pay(paymentData, options) {
|
|
49
|
+
const data = this.addMerchantKey(paymentData);
|
|
50
|
+
return this.post('/api/pay', data, options);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.Payments = Payments;
|
|
54
|
+
//# sourceMappingURL=payments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/resources/payments.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAYvC,MAAa,QAAS,SAAQ,oBAAa;IACzC;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,WAAmD,EACnD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CACT,WAAmD,EACnD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAA4C,EAC5C,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;YAC/B,GAAG,OAAO;YACV,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,UAAoD,EACpD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,UAA+C,EAC/C,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CACP,WAAmD,EACnD,OAAwB;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;CACF;AAtED,4BAsEC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SipayResource } from './base';
|
|
2
|
+
import { RecurringQueryRequest, RecurringPlanProcessRequest, SipayApiResponse, RequestOptions } from '../types';
|
|
3
|
+
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
|
+
}
|
|
13
|
+
//# sourceMappingURL=recurring.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recurring.d.ts","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACf,MAAM,UAAU,CAAC;AAElB,qBAAa,SAAU,SAAQ,aAAa;IAC1C;;OAEG;IACG,KAAK,CACT,SAAS,EAAE,qBAAqB,EAChC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAI5B;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,2BAA2B,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gBAAgB,CAAC;CAG7B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Recurring = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
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
|
+
}
|
|
19
|
+
exports.Recurring = Recurring;
|
|
20
|
+
//# sourceMappingURL=recurring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recurring.js","sourceRoot":"","sources":["../../src/resources/recurring.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAQvC,MAAa,SAAU,SAAQ,oBAAa;IAC1C;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,SAAgC,EAChC,OAAwB;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,QAAqC,EACrC,OAAwB;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,6BAA6B,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;CACF;AApBD,8BAoBC"}
|