aeremmiddleware 1.0.25 → 1.0.27
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/README.md +28 -28
- package/dist/Finance/Ingenico.types.d.ts +1 -0
- package/dist/Finance/auFinance.d.ts +33 -2
- package/dist/Finance/auFinance.js +8 -3
- package/dist/Finance/auFinance.js.map +1 -1
- package/dist/Finance/index.d.ts +2 -0
- package/dist/Finance/index.js +2 -0
- package/dist/Finance/index.js.map +1 -1
- package/dist/Finance/ingenico.js +3 -6
- package/dist/Finance/ingenico.js.map +1 -1
- package/dist/Finance/ingenicoHtml.js +114 -114
- package/dist/Finance/ingenicoHtml.js.map +1 -1
- package/dist/Finance/novel.d.ts +2 -1
- package/dist/Finance/novel.js +8 -8
- package/dist/Finance/novel.js.map +1 -1
- package/dist/Finance/novel.types.js +1 -1
- package/dist/Finance/novel.types.js.map +1 -1
- package/dist/Finance/setu.d.ts +107 -0
- package/dist/Finance/setu.js +499 -0
- package/dist/Finance/setu.js.map +1 -0
- package/dist/Finance/setu.types.d.ts +39 -0
- package/dist/Finance/setu.types.js +3 -0
- package/dist/Finance/setu.types.js.map +1 -0
- package/dist/Socials/Sms.types.js +1 -1
- package/dist/Socials/Sms.types.js.map +1 -1
- package/dist/Socials/Whatsapp.types.js +1 -1
- package/dist/Socials/Whatsapp.types.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +21 -21
- package/src/Finance/Ingenico.types.ts +22 -21
- package/src/Finance/auEncrypt.ts +32 -32
- package/src/Finance/auFinance.ts +115 -75
- package/src/Finance/crimeCheck.ts +212 -212
- package/src/Finance/crimecheck.types.ts +31 -31
- package/src/Finance/encrypt.ts +18 -18
- package/src/Finance/idfy.ts +542 -542
- package/src/Finance/index.ts +16 -15
- package/src/Finance/ingenico.ts +104 -110
- package/src/Finance/ingenicoHtml.ts +119 -119
- package/src/Finance/novel.ts +233 -231
- package/src/Finance/novel.types.ts +30 -30
- package/src/Finance/qbrik.ts +828 -828
- package/src/Finance/qbrik.types.ts +131 -131
- package/src/Finance/setu.ts +560 -0
- package/src/Finance/setu.types.ts +44 -0
- package/src/PushNotification/index.ts +5 -5
- package/src/PushNotification/pushNotificationFCM.ts +37 -37
- package/src/Socials/Sms.types.ts +9 -9
- package/src/Socials/SmsSender.ts +78 -78
- package/src/Socials/Whatsapp.types.ts +95 -95
- package/src/Socials/index.ts +6 -6
- package/src/Socials/whatsApp.ts +188 -188
- package/src/index.ts +9 -9
- package/tsconfig.json +111 -111
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sms.types.js","sourceRoot":"","sources":["../../src/Socials/Sms.types.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAGT;AAHH,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;AACrB,CAAC,EAHS,QAAQ,
|
|
1
|
+
{"version":3,"file":"Sms.types.js","sourceRoot":"","sources":["../../src/Socials/Sms.types.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAGT;AAHH,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;AACrB,CAAC,EAHS,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Whatsapp.types.js","sourceRoot":"","sources":["../../src/Socials/Whatsapp.types.ts"],"names":[],"mappings":";;;AA4FE,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;AACrB,CAAC,EAHW,QAAQ,
|
|
1
|
+
{"version":3,"file":"Whatsapp.types.js","sourceRoot":"","sources":["../../src/Socials/Whatsapp.types.ts"],"names":[],"mappings":";;;AA4FE,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;AACrB,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export declare const AeremMiddleware: {
|
|
|
6
6
|
crimecheck: typeof import("./Finance/crimeCheck").default;
|
|
7
7
|
qbrik: typeof import("./Finance/qbrik").default;
|
|
8
8
|
auFinance: typeof import("./Finance/auFinance").default;
|
|
9
|
+
setu: typeof import("./Finance/setu").default;
|
|
9
10
|
};
|
|
10
11
|
socials: {
|
|
11
12
|
whatsapp: typeof import("./Socials/whatsApp").default;
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "aeremmiddleware",
|
|
3
|
+
"version": "1.0.27",
|
|
4
|
+
"description": "",
|
|
5
|
+
"type": "dist/index.d.ts",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"prod": "node ./build/src/index.js"
|
|
10
|
+
},
|
|
11
|
+
"keywords": [],
|
|
12
|
+
"author": "",
|
|
13
|
+
"license": "ISC",
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"axios": "^1.5.1",
|
|
16
|
+
"fcm-node": "^1.6.1"
|
|
17
|
+
},
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@types/node": "^20.8.2"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
export interface MandateDataType {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
export interface MandateDataType {
|
|
2
|
+
merchantId: string;
|
|
3
|
+
txnId: string;
|
|
4
|
+
totalamount: string;
|
|
5
|
+
accountNo: string;
|
|
6
|
+
consumerId: string;
|
|
7
|
+
consumerMobileNo: string;
|
|
8
|
+
consumerEmailId: string;
|
|
9
|
+
debitStartDate: string;
|
|
10
|
+
debitEndDate: string;
|
|
11
|
+
maxAmount: string;
|
|
12
|
+
amountType: string;
|
|
13
|
+
frequency: string;
|
|
14
|
+
cardNumber?: string;
|
|
15
|
+
expMonth?: string;
|
|
16
|
+
expYear?: string;
|
|
17
|
+
cvvCode?: string;
|
|
18
|
+
paymentMode: string;
|
|
19
|
+
ifscCode: string;
|
|
20
|
+
accountType: string;
|
|
21
|
+
returnUrl: string;
|
|
22
|
+
}
|
package/src/Finance/auEncrypt.ts
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { createCipheriv, createDecipheriv, pbkdf2Sync } from "crypto";
|
|
2
|
-
|
|
3
|
-
export function encrypt(keyString: string, plaintext: string): string {
|
|
4
|
-
const salt = Buffer.from([
|
|
5
|
-
73, 118, 97, 110, 32, 77, 101, 100, 118, 101, 100, 101, 118,
|
|
6
|
-
]);
|
|
7
|
-
const key = pbkdf2Sync(keyString, salt, 1000, 384, "sha1");
|
|
8
|
-
const iv = Buffer.alloc(16);
|
|
9
|
-
key.copy(iv, 0, 32, 48);
|
|
10
|
-
const cipher = createCipheriv("aes-256-cbc", key.slice(0, 32), iv);
|
|
11
|
-
const encrypted = Buffer.concat([
|
|
12
|
-
cipher.update(plaintext, "utf16le"),
|
|
13
|
-
cipher.final(),
|
|
14
|
-
]);
|
|
15
|
-
return encrypted.toString("base64");
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function decrypt(keyString: string, encryptedData: string): string {
|
|
19
|
-
const salt = Buffer.from([
|
|
20
|
-
73, 118, 97, 110, 32, 77, 101, 100, 118, 101, 100, 101, 118,
|
|
21
|
-
]);
|
|
22
|
-
const key = pbkdf2Sync(keyString, salt, 1000, 384, "sha1");
|
|
23
|
-
const iv = Buffer.alloc(16);
|
|
24
|
-
key.copy(iv, 0, 32, 48);
|
|
25
|
-
const encryptedText = Buffer.from(encryptedData, "base64");
|
|
26
|
-
const decipher = createDecipheriv("aes-256-cbc", key.slice(0, 32), iv);
|
|
27
|
-
const decrypted = Buffer.concat([
|
|
28
|
-
decipher.update(encryptedText),
|
|
29
|
-
decipher.final(),
|
|
30
|
-
]);
|
|
31
|
-
return decrypted.toString("utf16le");
|
|
32
|
-
}
|
|
1
|
+
import { createCipheriv, createDecipheriv, pbkdf2Sync } from "crypto";
|
|
2
|
+
|
|
3
|
+
export function encrypt(keyString: string, plaintext: string): string {
|
|
4
|
+
const salt = Buffer.from([
|
|
5
|
+
73, 118, 97, 110, 32, 77, 101, 100, 118, 101, 100, 101, 118,
|
|
6
|
+
]);
|
|
7
|
+
const key = pbkdf2Sync(keyString, salt, 1000, 384, "sha1");
|
|
8
|
+
const iv = Buffer.alloc(16);
|
|
9
|
+
key.copy(iv, 0, 32, 48);
|
|
10
|
+
const cipher = createCipheriv("aes-256-cbc", key.slice(0, 32), iv);
|
|
11
|
+
const encrypted = Buffer.concat([
|
|
12
|
+
cipher.update(plaintext, "utf16le"),
|
|
13
|
+
cipher.final(),
|
|
14
|
+
]);
|
|
15
|
+
return encrypted.toString("base64");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function decrypt(keyString: string, encryptedData: string): string {
|
|
19
|
+
const salt = Buffer.from([
|
|
20
|
+
73, 118, 97, 110, 32, 77, 101, 100, 118, 101, 100, 101, 118,
|
|
21
|
+
]);
|
|
22
|
+
const key = pbkdf2Sync(keyString, salt, 1000, 384, "sha1");
|
|
23
|
+
const iv = Buffer.alloc(16);
|
|
24
|
+
key.copy(iv, 0, 32, 48);
|
|
25
|
+
const encryptedText = Buffer.from(encryptedData, "base64");
|
|
26
|
+
const decipher = createDecipheriv("aes-256-cbc", key.slice(0, 32), iv);
|
|
27
|
+
const decrypted = Buffer.concat([
|
|
28
|
+
decipher.update(encryptedText),
|
|
29
|
+
decipher.final(),
|
|
30
|
+
]);
|
|
31
|
+
return decrypted.toString("utf16le");
|
|
32
|
+
}
|
package/src/Finance/auFinance.ts
CHANGED
|
@@ -1,75 +1,115 @@
|
|
|
1
|
-
import axios, { AxiosResponse } from "axios";
|
|
2
|
-
import { decrypt, encrypt } from "./auEncrypt";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
?
|
|
49
|
-
:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
1
|
+
import axios, { AxiosResponse } from "axios";
|
|
2
|
+
import { decrypt, encrypt } from "./auEncrypt";
|
|
3
|
+
|
|
4
|
+
interface PayloadType {
|
|
5
|
+
mbSvcProviderName: string;
|
|
6
|
+
channel: string;
|
|
7
|
+
mbDateFrom: string;
|
|
8
|
+
mbCustMailId: string;
|
|
9
|
+
mbCustFonCellNum: string;
|
|
10
|
+
mbSvcProviderCode: string;
|
|
11
|
+
mbSponserBankCode: string;
|
|
12
|
+
mbFrequencyType: string;
|
|
13
|
+
requestId: string;
|
|
14
|
+
mbCustName: string;
|
|
15
|
+
mbRefNumber: string;
|
|
16
|
+
mbMandateCategory: string;
|
|
17
|
+
mbDRAccountNumber: string;
|
|
18
|
+
mbMandateType: string;
|
|
19
|
+
mbDateTo: string;
|
|
20
|
+
mbRelRefNumber: string;
|
|
21
|
+
mbCustFonLandNum: string;
|
|
22
|
+
mbDRBankCode: string;
|
|
23
|
+
mbAmount: string;
|
|
24
|
+
mbPaymentType: string;
|
|
25
|
+
responseURL: string;
|
|
26
|
+
mbDRAccountType: string;
|
|
27
|
+
mbFrequencyCode: string;
|
|
28
|
+
mbFixedAmount: string;
|
|
29
|
+
referenceCode: string;
|
|
30
|
+
mbCustPAN: string;
|
|
31
|
+
username: string;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
class AuFinanceApiWrapper {
|
|
35
|
+
private isUAT: boolean;
|
|
36
|
+
private enachEndpoint: string | undefined;
|
|
37
|
+
private baseUrl: string;
|
|
38
|
+
private encryptionKey: string;
|
|
39
|
+
private authEndpoint = "/oauth/accesstoken?grant_type=client_credentials";
|
|
40
|
+
private emandateWithUserConfirmationEndpoint =
|
|
41
|
+
"/EmandateUserRegistrationRestService/userconfirmation";
|
|
42
|
+
private emandateWithoutUserConfirmationEndpoint =
|
|
43
|
+
"/EmandateUserRegistrationRestService/withoutUserConfirmation";
|
|
44
|
+
|
|
45
|
+
constructor(isUAT: boolean) {
|
|
46
|
+
this.isUAT = isUAT;
|
|
47
|
+
this.baseUrl = this.isUAT
|
|
48
|
+
? "https://api.aubankuat.in"
|
|
49
|
+
: "https://api.aubank.in";
|
|
50
|
+
this.encryptionKey = this.isUAT
|
|
51
|
+
? "545932040048E8B4FAF59DCC6B20B042AE7B3DD9C282C53B6A0E66599CC01693"
|
|
52
|
+
: "4F773AF556F047DE1D379A122321BF363579FCEB04EAF5E1A47C043754DCAA9C";
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
async getAccessToken({
|
|
56
|
+
clientId,
|
|
57
|
+
clientSecret,
|
|
58
|
+
}: {
|
|
59
|
+
clientId: string;
|
|
60
|
+
clientSecret: string;
|
|
61
|
+
}): Promise<AxiosResponse> {
|
|
62
|
+
try {
|
|
63
|
+
const authString = `${clientId}:${clientSecret}`;
|
|
64
|
+
const base64Auth = Buffer.from(authString).toString("base64");
|
|
65
|
+
|
|
66
|
+
const response = await axios.get(`${this.baseUrl}${this.authEndpoint}`, {
|
|
67
|
+
headers: {
|
|
68
|
+
Authorization: `Basic ${base64Auth}`,
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
return response;
|
|
73
|
+
} catch (error) {
|
|
74
|
+
throw error;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
async auEmandate({
|
|
79
|
+
requireUserConsent,
|
|
80
|
+
accessToken,
|
|
81
|
+
jsonData,
|
|
82
|
+
}: {
|
|
83
|
+
requireUserConsent: boolean;
|
|
84
|
+
accessToken: string;
|
|
85
|
+
jsonData: PayloadType;
|
|
86
|
+
}): Promise<any> {
|
|
87
|
+
requireUserConsent
|
|
88
|
+
? (this.enachEndpoint = this.emandateWithUserConfirmationEndpoint)
|
|
89
|
+
: (this.enachEndpoint = this.emandateWithoutUserConfirmationEndpoint);
|
|
90
|
+
|
|
91
|
+
let jsonString = JSON.stringify(jsonData);
|
|
92
|
+
const encryptedData = encrypt(this.encryptionKey, jsonString);
|
|
93
|
+
|
|
94
|
+
const headers = {
|
|
95
|
+
Authorization: `Bearer ${accessToken}`,
|
|
96
|
+
"Content-Type": "application/json",
|
|
97
|
+
};
|
|
98
|
+
const body = {
|
|
99
|
+
encvalue: encryptedData,
|
|
100
|
+
};
|
|
101
|
+
try {
|
|
102
|
+
const response = await axios.post(
|
|
103
|
+
`${this.baseUrl}${this.enachEndpoint}`,
|
|
104
|
+
body,
|
|
105
|
+
{ headers: headers }
|
|
106
|
+
);
|
|
107
|
+
const res = response.data;
|
|
108
|
+
const decryptedData = decrypt(this.encryptionKey, res);
|
|
109
|
+
return decryptedData;
|
|
110
|
+
} catch (error: any) {
|
|
111
|
+
throw error;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
export default AuFinanceApiWrapper;
|