@crm-rocketlink/crm-model 1.0.2 → 1.0.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.
Files changed (55) hide show
  1. package/package.json +28 -28
  2. package/src/dtos/campaign.request.dto.ts +4 -4
  3. package/src/dtos/category.request.dto.ts +8 -8
  4. package/src/dtos/common/base.request.dto.ts +4 -4
  5. package/src/dtos/common/paginated.request.dto.ts +6 -6
  6. package/src/dtos/common/paginated.response.dto.ts +11 -11
  7. package/src/dtos/csv.request.dto.ts +8 -8
  8. package/src/dtos/csv.response.dto.ts +9 -9
  9. package/src/dtos/csvRow.request.dto.ts +13 -13
  10. package/src/dtos/empTransactions.request.dto.ts +5 -5
  11. package/src/dtos/event.request.dto.ts +9 -9
  12. package/src/dtos/fastify.d.ts +18 -18
  13. package/src/dtos/field.request.dto.ts +4 -4
  14. package/src/dtos/hook.request.dto.ts +9 -9
  15. package/src/dtos/hookProfile.request.dto.ts +7 -7
  16. package/src/dtos/lead.request.dto.ts +11 -11
  17. package/src/dtos/offer.request.dto.ts +15 -15
  18. package/src/dtos/order.request.dto.ts +22 -22
  19. package/src/dtos/product.request.dto.ts +9 -9
  20. package/src/dtos/subscription.request.dto.ts +20 -20
  21. package/src/dtos/transaction.request.dto.ts +13 -13
  22. package/src/dtos/transactionError.request.dto.ts +9 -9
  23. package/src/gateways/adapters/dtos/transaction-emp.request.dto.ts +21 -21
  24. package/src/gateways/adapters/dtos/transaction-finxp.request.dto.ts +9 -9
  25. package/src/gateways/adapters/dtos/transaction-novalnet.request.dto.ts +21 -21
  26. package/src/gateways/adapters/model/transactionEmp.model.ts +223 -223
  27. package/src/gateways/adapters/model/transactionFinXP.model.ts +193 -193
  28. package/src/gateways/adapters/model/transactionNovalNet.model.ts +224 -224
  29. package/src/gateways/providers/model/genesis.constants.ts +30 -30
  30. package/src/gateways/providers/model/genesis.model.ts +89 -89
  31. package/src/gateways/providers/model/novalNetManual.model.ts +119 -119
  32. package/src/index.ts +64 -64
  33. package/src/model/campaign.model.ts +15 -15
  34. package/src/model/category.model.ts +7 -7
  35. package/src/model/csv.model.ts +76 -76
  36. package/src/model/empTransactions.model.ts +8 -8
  37. package/src/model/event.model.ts +6 -6
  38. package/src/model/fastify.d.ts +18 -18
  39. package/src/model/field.model.ts +16 -16
  40. package/src/model/gateway.model.ts +49 -49
  41. package/src/model/hook.model.ts +12 -12
  42. package/src/model/hookOutbox.model.ts +12 -12
  43. package/src/model/hookProfile.model.ts +18 -18
  44. package/src/model/lead.model.ts +28 -28
  45. package/src/model/mid.model.ts +25 -25
  46. package/src/model/offer.model.ts +25 -25
  47. package/src/model/order.model.ts +40 -40
  48. package/src/model/paymentData.model.ts +58 -58
  49. package/src/model/product.model.ts +11 -11
  50. package/src/model/subscription.model.ts +28 -28
  51. package/src/model/transaction.model.ts +31 -31
  52. package/src/model/transactionError.model.ts +16 -16
  53. package/src/util/constants.ts +104 -104
  54. package/src/util/dateUtils.ts +71 -71
  55. package/tsconfig.json +27 -27
@@ -1,223 +1,223 @@
1
- import { Transaction } from "../../../model/transaction.model";
2
- import { BANKS } from "../../../model/gateway.model";
3
-
4
- export const TRANSACTION_EMP_STATUS = {
5
- approved: "approved",
6
- chargeback: "chargebacked",
7
- rejected: "rejected",
8
- declined: "declined",
9
- pending_async: "pending_async",
10
- };
11
-
12
- export function isTransactionEmp(t: Transaction): t is TransactionEmp {
13
- return t?.bank === BANKS.EMP;
14
- }
15
-
16
- export interface TransactionEmp extends Transaction {
17
- bank: typeof BANKS.EMP; //CRM info
18
- id?: number;
19
- type?: string; //apiResponse.transaction_type
20
- status?: string;
21
- unique_id?: string; //EMP transactionId
22
- transaction_id?: number; //orderId
23
- iban_account_no?: string; //apiResponse.bank_account_number
24
- bic_swift_code?: string; //apiResponse.bank_identifier_code
25
- technical_message?: string;// missing in CSV download
26
- message?: string; // missing in CSV download
27
- mode?: string; // missing in CSV download
28
- datetime_utc?: string; // apiResponse.timestamp
29
- descriptor?: string;
30
- amount?: string;
31
- currency?: string;
32
- sent_to_acquirer?: boolean;// missing in CSV download
33
- // the rest are coming only from the CSV download from the bank portal
34
- merchant?: string;
35
- terminal?: string;
36
- paymentType?: string;
37
- bankCode?: string;
38
- merchantTransactionId?: string;
39
- cardHolder?: string;
40
- cardBrand?: string;
41
- cardNumber?: string;
42
- countryBilling?: string;
43
- state?: string;
44
- errorClass?: string;
45
- errorMessage?: string;
46
- authCode?: string;
47
- rrn?: string;
48
- responseCode?: string;
49
- avsResponse?: string;
50
- cvvResult?: string;
51
- arn?: string;
52
- customerEmail?: string;
53
- binCountry?: string;
54
- cardType?: string;
55
- cardSubtype?: string;
56
- fraud?: string;
57
- regionClass?: string;
58
- schemeResponseCode?: string;
59
- schemeTransactionLinkId?: string;
60
- recurringAdviceCode?: string;
61
- recurringAdviceText?: string;
62
- fxTradingRate?: string;
63
- fxConvertedAmount?: string;
64
- fxTierId?: string;
65
- settlementTransactionCurrency?: string;
66
- eci?: string;
67
- mpi?: string;
68
- preauthorization?: string;
69
- captured?: string;
70
- transactionDescriptor?: string;
71
- customerName?: string;
72
- fundsStatus?: string;
73
- dateOfFundsStatus?: string;
74
- accountHolder?: string;
75
- digitableLine?: string;
76
- expiryDate?: string;
77
- schemeMaximumSettlementDate?: string;
78
- schemeAuthenticationDataQuality?: string;
79
- externalId?: string; // what is this?
80
- payeeId?: string;
81
- payeeUniqueId?: string;
82
- payeeName?: string;
83
- cb_reportDate?: string;
84
- cb_trxDate?: string;
85
- cb_merchant?: string;
86
- cb_terminal?: string;
87
- cb_reportType?: string;
88
- cb_transition?: string;
89
- cb_reportMessage?: string;
90
- cb_reportInfo?: string;
91
- cb_status?: string;
92
- cb_merchantTransactionId?: string;
93
- cb_uniqueId?: string;
94
- cb_referenceTransactionId?: string;
95
- cb_referenceTransactionType?: string;
96
- cb_currency?: string;
97
- cb_amountInMinorCurrencyUnit?: string;
98
- cb_cardHolder?: string;
99
- cb_cardBrand?: string;
100
- cb_cardNumber?: string;
101
- cb_email?: string;
102
- cb_country?: string;
103
- cb_remoteIp?: string;
104
- createdAt?: Date; //CRM info
105
- updatedAt?: Date; //CRM info
106
- }
107
- export interface TransactionEmpChargeback extends Transaction {
108
- bank: typeof BANKS.EMP;
109
- id?: number;
110
- reportDate?: string;
111
- trxDate?: string;
112
- merchant?: string;
113
- terminal?: string;
114
- reportType?: string;
115
- transition?: string;
116
- reportMessage?: string;
117
- reportInfo?: string;
118
- status?: string;
119
- merchantTransactionId?: string;
120
- unique_id?: string;
121
- referenceTransactionId?: string;
122
- referenceTransactionType?: string;
123
- currency?: string;
124
- amountInMinorCurrencyUnit?: string;
125
- cardHolder?: string;
126
- cardBrand?: string;
127
- cardNumber?: string;
128
- email?: string;
129
- country?: string;
130
- remoteIp?: string;
131
- createdAt?: Date;
132
- updatedAt?: Date;
133
- }
134
-
135
- export const empTransactionColumnMapper: Partial<Record<keyof TransactionEmp, string>> = {
136
- merchant: "Merchant",
137
- terminal: "Terminal",
138
- status: "Status",
139
- type: "Type",
140
- paymentType: "Payment Type",
141
- bankCode: "Bank Code",
142
- merchantTransactionId: "Merchant Transaction id",
143
- transaction_id: "Transaction id", // orderId
144
- currency: "Currency",
145
- amount: "Amount (with decimal mark per currency exponent)",
146
- cardHolder: "Card Holder",
147
- cardBrand: "Card Brand",
148
- cardNumber: "Card Number",
149
- countryBilling: "Country (Billing)",
150
- state: "State",
151
- datetime_utc: "DateTime (UTC)",
152
- errorClass: "ErrorClass",
153
- errorMessage: "ErrorMessage",
154
- authCode: "Auth Code",
155
- rrn: "RRN",
156
- responseCode: "Response Code",
157
- avsResponse: "AVS Response",
158
- cvvResult: "CVV Result",
159
- unique_id: "Unique ID", //transactionId
160
- arn: "ARN",
161
- customerEmail: "Customer email",
162
- binCountry: "BIN country",
163
- cardType: "Card type",
164
- cardSubtype: "Card subtype",
165
- fraud: "Fraud",
166
- descriptor: "Descriptor",
167
- regionClass: "Region class",
168
- schemeResponseCode: "Scheme Response Code",
169
- schemeTransactionLinkId: "Scheme Transaction Link ID",
170
- recurringAdviceCode: "Recurring Advice Code",
171
- recurringAdviceText: "Recurring Advice text",
172
- fxTradingRate: "FX trading rate",
173
- fxConvertedAmount: "FX converted amount",
174
- fxTierId: "FX tier ID",
175
- settlementTransactionCurrency: "Settlement Transaction Currency",
176
- eci: "ECI",
177
- mpi: "MPI",
178
- preauthorization: "Preauthorization",
179
- captured: "Captured",
180
- transactionDescriptor: "Transaction descriptor",
181
- iban_account_no: "IBAN / Account No",
182
- bic_swift_code: "BIC / SWIFT code",
183
- customerName: "Customer name",
184
- fundsStatus: "Funds status",
185
- dateOfFundsStatus: "Date of funds status",
186
- accountHolder: "Account holder",
187
- digitableLine: "Digitable line",
188
- expiryDate: "Expiry Date",
189
- schemeMaximumSettlementDate: "Scheme Maximum Settlement Date",
190
- schemeAuthenticationDataQuality: "Scheme Authentication Data Quality",
191
- externalId: "External ID",
192
- payeeId: "Payee ID",
193
- payeeUniqueId: "Payee Unique ID",
194
- payeeName: "Payee Name",
195
- };
196
- export const empTransactionColumnKeys = Object.keys(empTransactionColumnMapper);
197
- export const empTransactionColumnValues = Object.values(empTransactionColumnMapper);
198
-
199
- export const empChargebackColumnMapper: Partial<Record<keyof TransactionEmpChargeback, string>> = {
200
- reportDate: "Report Date",
201
- trxDate: "Trx Date",
202
- merchant: "Merchant",
203
- terminal: "Terminal",
204
- reportType: "Report Type",
205
- transition: "Transition",
206
- reportMessage: "Report Message",
207
- reportInfo: "Report Info",
208
- status: "Status",
209
- merchantTransactionId: "Merchant Transaction ID",
210
- unique_id: "Unique ID",
211
- referenceTransactionId: "Reference Transaction ID",
212
- referenceTransactionType: "Reference Transaction Type",
213
- currency: "Currency",
214
- amountInMinorCurrencyUnit: "Amount (in minor currency unit)",
215
- cardHolder: "Card Holder",
216
- cardBrand: "Card Brand",
217
- cardNumber: "Card Number",
218
- email: "Email",
219
- country: "Country",
220
- remoteIp: "Remote IP"
221
- };
222
- export const empChargebackColumnKeys = Object.keys(empChargebackColumnMapper);
223
- export const empChargebackColumnValues = Object.values(empChargebackColumnMapper);
1
+ import { Transaction } from "../../../model/transaction.model";
2
+ import { BANKS } from "../../../model/gateway.model";
3
+
4
+ export const TRANSACTION_EMP_STATUS = {
5
+ approved: "approved",
6
+ chargeback: "chargebacked",
7
+ rejected: "rejected",
8
+ declined: "declined",
9
+ pending_async: "pending_async",
10
+ };
11
+
12
+ export function isTransactionEmp(t: Transaction): t is TransactionEmp {
13
+ return t?.bank === BANKS.EMP;
14
+ }
15
+
16
+ export interface TransactionEmp extends Transaction {
17
+ bank: typeof BANKS.EMP; //CRM info
18
+ id?: number;
19
+ type?: string; //apiResponse.transaction_type
20
+ status?: string;
21
+ unique_id?: string; //EMP transactionId
22
+ transaction_id?: number; //orderId
23
+ iban_account_no?: string; //apiResponse.bank_account_number
24
+ bic_swift_code?: string; //apiResponse.bank_identifier_code
25
+ technical_message?: string;// missing in CSV download
26
+ message?: string; // missing in CSV download
27
+ mode?: string; // missing in CSV download
28
+ datetime_utc?: string; // apiResponse.timestamp
29
+ descriptor?: string;
30
+ amount?: string;
31
+ currency?: string;
32
+ sent_to_acquirer?: boolean;// missing in CSV download
33
+ // the rest are coming only from the CSV download from the bank portal
34
+ merchant?: string;
35
+ terminal?: string;
36
+ paymentType?: string;
37
+ bankCode?: string;
38
+ merchantTransactionId?: string;
39
+ cardHolder?: string;
40
+ cardBrand?: string;
41
+ cardNumber?: string;
42
+ countryBilling?: string;
43
+ state?: string;
44
+ errorClass?: string;
45
+ errorMessage?: string;
46
+ authCode?: string;
47
+ rrn?: string;
48
+ responseCode?: string;
49
+ avsResponse?: string;
50
+ cvvResult?: string;
51
+ arn?: string;
52
+ customerEmail?: string;
53
+ binCountry?: string;
54
+ cardType?: string;
55
+ cardSubtype?: string;
56
+ fraud?: string;
57
+ regionClass?: string;
58
+ schemeResponseCode?: string;
59
+ schemeTransactionLinkId?: string;
60
+ recurringAdviceCode?: string;
61
+ recurringAdviceText?: string;
62
+ fxTradingRate?: string;
63
+ fxConvertedAmount?: string;
64
+ fxTierId?: string;
65
+ settlementTransactionCurrency?: string;
66
+ eci?: string;
67
+ mpi?: string;
68
+ preauthorization?: string;
69
+ captured?: string;
70
+ transactionDescriptor?: string;
71
+ customerName?: string;
72
+ fundsStatus?: string;
73
+ dateOfFundsStatus?: string;
74
+ accountHolder?: string;
75
+ digitableLine?: string;
76
+ expiryDate?: string;
77
+ schemeMaximumSettlementDate?: string;
78
+ schemeAuthenticationDataQuality?: string;
79
+ externalId?: string; // what is this?
80
+ payeeId?: string;
81
+ payeeUniqueId?: string;
82
+ payeeName?: string;
83
+ cb_reportDate?: string;
84
+ cb_trxDate?: string;
85
+ cb_merchant?: string;
86
+ cb_terminal?: string;
87
+ cb_reportType?: string;
88
+ cb_transition?: string;
89
+ cb_reportMessage?: string;
90
+ cb_reportInfo?: string;
91
+ cb_status?: string;
92
+ cb_merchantTransactionId?: string;
93
+ cb_uniqueId?: string;
94
+ cb_referenceTransactionId?: string;
95
+ cb_referenceTransactionType?: string;
96
+ cb_currency?: string;
97
+ cb_amountInMinorCurrencyUnit?: string;
98
+ cb_cardHolder?: string;
99
+ cb_cardBrand?: string;
100
+ cb_cardNumber?: string;
101
+ cb_email?: string;
102
+ cb_country?: string;
103
+ cb_remoteIp?: string;
104
+ createdAt?: Date; //CRM info
105
+ updatedAt?: Date; //CRM info
106
+ }
107
+ export interface TransactionEmpChargeback extends Transaction {
108
+ bank: typeof BANKS.EMP;
109
+ id?: number;
110
+ reportDate?: string;
111
+ trxDate?: string;
112
+ merchant?: string;
113
+ terminal?: string;
114
+ reportType?: string;
115
+ transition?: string;
116
+ reportMessage?: string;
117
+ reportInfo?: string;
118
+ status?: string;
119
+ merchantTransactionId?: string;
120
+ unique_id?: string;
121
+ referenceTransactionId?: string;
122
+ referenceTransactionType?: string;
123
+ currency?: string;
124
+ amountInMinorCurrencyUnit?: string;
125
+ cardHolder?: string;
126
+ cardBrand?: string;
127
+ cardNumber?: string;
128
+ email?: string;
129
+ country?: string;
130
+ remoteIp?: string;
131
+ createdAt?: Date;
132
+ updatedAt?: Date;
133
+ }
134
+
135
+ export const empTransactionColumnMapper: Partial<Record<keyof TransactionEmp, string>> = {
136
+ merchant: "Merchant",
137
+ terminal: "Terminal",
138
+ status: "Status",
139
+ type: "Type",
140
+ paymentType: "Payment Type",
141
+ bankCode: "Bank Code",
142
+ merchantTransactionId: "Merchant Transaction id",
143
+ transaction_id: "Transaction id", // orderId
144
+ currency: "Currency",
145
+ amount: "Amount (with decimal mark per currency exponent)",
146
+ cardHolder: "Card Holder",
147
+ cardBrand: "Card Brand",
148
+ cardNumber: "Card Number",
149
+ countryBilling: "Country (Billing)",
150
+ state: "State",
151
+ datetime_utc: "DateTime (UTC)",
152
+ errorClass: "ErrorClass",
153
+ errorMessage: "ErrorMessage",
154
+ authCode: "Auth Code",
155
+ rrn: "RRN",
156
+ responseCode: "Response Code",
157
+ avsResponse: "AVS Response",
158
+ cvvResult: "CVV Result",
159
+ unique_id: "Unique ID", //transactionId
160
+ arn: "ARN",
161
+ customerEmail: "Customer email",
162
+ binCountry: "BIN country",
163
+ cardType: "Card type",
164
+ cardSubtype: "Card subtype",
165
+ fraud: "Fraud",
166
+ descriptor: "Descriptor",
167
+ regionClass: "Region class",
168
+ schemeResponseCode: "Scheme Response Code",
169
+ schemeTransactionLinkId: "Scheme Transaction Link ID",
170
+ recurringAdviceCode: "Recurring Advice Code",
171
+ recurringAdviceText: "Recurring Advice text",
172
+ fxTradingRate: "FX trading rate",
173
+ fxConvertedAmount: "FX converted amount",
174
+ fxTierId: "FX tier ID",
175
+ settlementTransactionCurrency: "Settlement Transaction Currency",
176
+ eci: "ECI",
177
+ mpi: "MPI",
178
+ preauthorization: "Preauthorization",
179
+ captured: "Captured",
180
+ transactionDescriptor: "Transaction descriptor",
181
+ iban_account_no: "IBAN / Account No",
182
+ bic_swift_code: "BIC / SWIFT code",
183
+ customerName: "Customer name",
184
+ fundsStatus: "Funds status",
185
+ dateOfFundsStatus: "Date of funds status",
186
+ accountHolder: "Account holder",
187
+ digitableLine: "Digitable line",
188
+ expiryDate: "Expiry Date",
189
+ schemeMaximumSettlementDate: "Scheme Maximum Settlement Date",
190
+ schemeAuthenticationDataQuality: "Scheme Authentication Data Quality",
191
+ externalId: "External ID",
192
+ payeeId: "Payee ID",
193
+ payeeUniqueId: "Payee Unique ID",
194
+ payeeName: "Payee Name",
195
+ };
196
+ export const empTransactionColumnKeys = Object.keys(empTransactionColumnMapper);
197
+ export const empTransactionColumnValues = Object.values(empTransactionColumnMapper);
198
+
199
+ export const empChargebackColumnMapper: Partial<Record<keyof TransactionEmpChargeback, string>> = {
200
+ reportDate: "Report Date",
201
+ trxDate: "Trx Date",
202
+ merchant: "Merchant",
203
+ terminal: "Terminal",
204
+ reportType: "Report Type",
205
+ transition: "Transition",
206
+ reportMessage: "Report Message",
207
+ reportInfo: "Report Info",
208
+ status: "Status",
209
+ merchantTransactionId: "Merchant Transaction ID",
210
+ unique_id: "Unique ID",
211
+ referenceTransactionId: "Reference Transaction ID",
212
+ referenceTransactionType: "Reference Transaction Type",
213
+ currency: "Currency",
214
+ amountInMinorCurrencyUnit: "Amount (in minor currency unit)",
215
+ cardHolder: "Card Holder",
216
+ cardBrand: "Card Brand",
217
+ cardNumber: "Card Number",
218
+ email: "Email",
219
+ country: "Country",
220
+ remoteIp: "Remote IP"
221
+ };
222
+ export const empChargebackColumnKeys = Object.keys(empChargebackColumnMapper);
223
+ export const empChargebackColumnValues = Object.values(empChargebackColumnMapper);