@vqnguyen1/piece-fis-ibs 0.0.4 → 0.0.5

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 (36) hide show
  1. package/package.json +2 -2
  2. package/project.json +22 -0
  3. package/src/index.ts +320 -0
  4. package/src/lib/actions/bank-control.ts +378 -0
  5. package/src/lib/actions/customer.ts +1574 -0
  6. package/src/lib/actions/deposit.ts +749 -0
  7. package/src/lib/actions/get-customer.ts +73 -0
  8. package/src/lib/actions/loan.ts +925 -0
  9. package/src/lib/actions/search-customers.ts +143 -0
  10. package/src/lib/actions/security.ts +170 -0
  11. package/tsconfig.json +19 -0
  12. package/tsconfig.lib.json +10 -0
  13. package/src/index.d.ts +0 -16
  14. package/src/index.js +0 -204
  15. package/src/index.js.map +0 -1
  16. package/src/lib/actions/bank-control.d.ts +0 -110
  17. package/src/lib/actions/bank-control.js +0 -371
  18. package/src/lib/actions/bank-control.js.map +0 -1
  19. package/src/lib/actions/customer.d.ts +0 -888
  20. package/src/lib/actions/customer.js +0 -1563
  21. package/src/lib/actions/customer.js.map +0 -1
  22. package/src/lib/actions/deposit.d.ts +0 -406
  23. package/src/lib/actions/deposit.js +0 -739
  24. package/src/lib/actions/deposit.js.map +0 -1
  25. package/src/lib/actions/get-customer.d.ts +0 -12
  26. package/src/lib/actions/get-customer.js +0 -69
  27. package/src/lib/actions/get-customer.js.map +0 -1
  28. package/src/lib/actions/loan.d.ts +0 -506
  29. package/src/lib/actions/loan.js +0 -910
  30. package/src/lib/actions/loan.js.map +0 -1
  31. package/src/lib/actions/search-customers.d.ts +0 -17
  32. package/src/lib/actions/search-customers.js +0 -127
  33. package/src/lib/actions/search-customers.js.map +0 -1
  34. package/src/lib/actions/security.d.ts +0 -38
  35. package/src/lib/actions/security.js +0 -173
  36. package/src/lib/actions/security.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vqnguyen1/piece-fis-ibs",
3
- "version": "0.0.4",
3
+ "version": "0.0.5",
4
4
  "license": "MIT",
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -19,4 +19,4 @@
19
19
  "@activepieces/pieces-common": "*",
20
20
  "@activepieces/shared": "*"
21
21
  }
22
- }
22
+ }
package/project.json ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "pieces-fis-ibs",
3
+ "$schema": "../../../../node_modules/nx/schemas/project-schema.json",
4
+ "sourceRoot": "packages/pieces/custom/fis-ibs/src",
5
+ "projectType": "library",
6
+ "targets": {
7
+ "build": {
8
+ "executor": "@nx/js:tsc",
9
+ "outputs": ["{options.outputPath}"],
10
+ "options": {
11
+ "outputPath": "dist/packages/pieces/custom/fis-ibs",
12
+ "main": "packages/pieces/custom/fis-ibs/src/index.ts",
13
+ "tsConfig": "packages/pieces/custom/fis-ibs/tsconfig.lib.json",
14
+ "assets": [
15
+ "packages/pieces/custom/fis-ibs/*.md",
16
+ "packages/pieces/custom/fis-ibs/*.png"
17
+ ]
18
+ }
19
+ }
20
+ },
21
+ "tags": []
22
+ }
package/src/index.ts ADDED
@@ -0,0 +1,320 @@
1
+ import { createPiece, PieceAuth, Property } from '@activepieces/pieces-framework';
2
+ import { PieceCategory } from '@activepieces/shared';
3
+ import { createCustomApiCallAction } from '@activepieces/pieces-common';
4
+
5
+ // Security actions
6
+ import {
7
+ security_ping,
8
+ security_change_racf_password,
9
+ security_validate_racf_user,
10
+ } from './lib/actions/security';
11
+
12
+ // Bank Control actions
13
+ import {
14
+ bank_control_get_branch_detail,
15
+ bank_control_get_branch_info,
16
+ bank_control_get_processing_date,
17
+ bank_control_get_holiday_calendar,
18
+ bank_control_get_gl_account,
19
+ bank_control_get_institution_info,
20
+ bank_control_get_officer,
21
+ bank_control_get_product_codes,
22
+ bank_control_get_transaction_codes,
23
+ bank_control_get_routing_number,
24
+ } from './lib/actions/bank-control';
25
+
26
+ // Customer actions
27
+ import {
28
+ customer_get,
29
+ customer_delete,
30
+ customer_create_individual,
31
+ customer_create_organization,
32
+ customer_get_combined,
33
+ customer_update_combined,
34
+ customer_accounts_address_edit,
35
+ customer_accounts_delete,
36
+ customer_accounts_get_name_address,
37
+ customer_accounts_update_name_address,
38
+ customer_accounts_create,
39
+ customer_accounts_update_related_address,
40
+ customer_address_edit,
41
+ customer_update_addresses,
42
+ customer_get_aliases,
43
+ customer_create_alias,
44
+ customer_update_alias,
45
+ customer_delete_alias,
46
+ customer_get_due_diligence,
47
+ customer_update_due_diligence,
48
+ customer_get_email_addresses,
49
+ customer_create_email_address,
50
+ customer_delete_email_address,
51
+ customer_get_phone_numbers,
52
+ customer_create_phone_number,
53
+ customer_update_phone_number,
54
+ customer_delete_phone_number,
55
+ customer_search_by_name,
56
+ customer_search_by_customer_number,
57
+ customer_search_by_tax_number,
58
+ customer_search_by_phone,
59
+ customer_search_by_cip_id,
60
+ customer_get_statements,
61
+ customer_create_combined_statement,
62
+ customer_update_combined_statement,
63
+ customer_delete_combined_statement,
64
+ customer_get_remarks,
65
+ customer_create_remark,
66
+ customer_update_remark,
67
+ customer_delete_remark,
68
+ customer_get_relationships,
69
+ customer_create_relationship,
70
+ customer_update_relationship,
71
+ customer_delete_relationship,
72
+ customer_get_profile,
73
+ customer_update_profile,
74
+ } from './lib/actions/customer';
75
+
76
+ // Deposit actions
77
+ import {
78
+ deposit_get_account,
79
+ deposit_create_account,
80
+ deposit_update_account,
81
+ deposit_close_account,
82
+ deposit_get_balance,
83
+ deposit_get_interest_rates,
84
+ deposit_update_interest_rates,
85
+ deposit_get_transactions,
86
+ deposit_post_transaction,
87
+ deposit_reverse_transaction,
88
+ deposit_transfer,
89
+ deposit_get_holds,
90
+ deposit_create_hold,
91
+ deposit_update_hold,
92
+ deposit_release_hold,
93
+ deposit_get_escrow_accounts,
94
+ deposit_create_escrow_account,
95
+ deposit_update_escrow_account,
96
+ deposit_calculate,
97
+ deposit_originate,
98
+ deposit_update_maintenance,
99
+ } from './lib/actions/deposit';
100
+
101
+ // Loan actions
102
+ import {
103
+ loan_get_account,
104
+ loan_create_account,
105
+ loan_update_account,
106
+ loan_get_notes,
107
+ loan_create_note,
108
+ loan_get_note_balances,
109
+ loan_renew_note,
110
+ loan_increase_note,
111
+ loan_get_payment_info,
112
+ loan_post_payment,
113
+ loan_reverse_payment,
114
+ loan_get_collateral,
115
+ loan_create_collateral,
116
+ loan_update_collateral,
117
+ loan_delete_collateral,
118
+ loan_get_fees,
119
+ loan_create_fee,
120
+ loan_get_payoff_quote,
121
+ loan_payoff,
122
+ loan_change_rate_immediate,
123
+ loan_get_pending_rate_changes,
124
+ loan_get_transactions,
125
+ loan_disburse,
126
+ loan_board,
127
+ } from './lib/actions/loan';
128
+
129
+ export const fisIbsAuth = PieceAuth.CustomAuth({
130
+ description: 'FIS IBS API credentials',
131
+ required: true,
132
+ props: {
133
+ baseUrl: Property.ShortText({
134
+ displayName: 'Base URL',
135
+ description: 'The base URL for the FIS IBS API (e.g., https://api-gw-uat.fisglobal.com/rest)',
136
+ required: true,
137
+ defaultValue: 'https://api-gw-uat.fisglobal.com/rest',
138
+ }),
139
+ organizationId: Property.ShortText({
140
+ displayName: 'Organization ID',
141
+ description: 'Your FIS Organization ID',
142
+ required: true,
143
+ }),
144
+ sourceId: Property.ShortText({
145
+ displayName: 'Source ID',
146
+ description: 'Source ID provided by FIS (e.g., APIGWY)',
147
+ required: true,
148
+ defaultValue: 'APIGWY',
149
+ }),
150
+ applicationId: Property.ShortText({
151
+ displayName: 'Application ID',
152
+ description: 'Application ID for your integration',
153
+ required: true,
154
+ }),
155
+ ibsAuthorization: PieceAuth.SecretText({
156
+ displayName: 'IBS Authorization',
157
+ description: 'Authorization token for IBS APIs',
158
+ required: true,
159
+ }),
160
+ securityTokenType: Property.StaticDropdown({
161
+ displayName: 'Security Token Type',
162
+ description: 'Type of security token being used',
163
+ required: false,
164
+ options: {
165
+ options: [
166
+ { label: 'JWT', value: 'JWT' },
167
+ { label: 'SAML', value: 'SAML' },
168
+ { label: 'OAuth', value: 'OAuth' },
169
+ ],
170
+ },
171
+ defaultValue: 'JWT',
172
+ }),
173
+ },
174
+ });
175
+
176
+ export const fisIbs = createPiece({
177
+ displayName: 'FIS IBS',
178
+ auth: fisIbsAuth,
179
+ minimumSupportedRelease: '0.20.0',
180
+ logoUrl: 'https://s6.imgcdn.dev/Y1izHg.jpg',
181
+ authors: ['vqnguyen1'],
182
+ categories: [PieceCategory.BUSINESS_INTELLIGENCE],
183
+ actions: [
184
+ // Security & Authentication (3)
185
+ security_ping,
186
+ security_change_racf_password,
187
+ security_validate_racf_user,
188
+
189
+ // Bank Control (10)
190
+ bank_control_get_branch_detail,
191
+ bank_control_get_branch_info,
192
+ bank_control_get_processing_date,
193
+ bank_control_get_holiday_calendar,
194
+ bank_control_get_gl_account,
195
+ bank_control_get_institution_info,
196
+ bank_control_get_officer,
197
+ bank_control_get_product_codes,
198
+ bank_control_get_transaction_codes,
199
+ bank_control_get_routing_number,
200
+
201
+ // Customer actions (46)
202
+ customer_get,
203
+ customer_delete,
204
+ customer_create_individual,
205
+ customer_create_organization,
206
+ customer_get_combined,
207
+ customer_update_combined,
208
+ customer_accounts_address_edit,
209
+ customer_accounts_delete,
210
+ customer_accounts_get_name_address,
211
+ customer_accounts_update_name_address,
212
+ customer_accounts_create,
213
+ customer_accounts_update_related_address,
214
+ customer_address_edit,
215
+ customer_update_addresses,
216
+ customer_get_aliases,
217
+ customer_create_alias,
218
+ customer_update_alias,
219
+ customer_delete_alias,
220
+ customer_get_due_diligence,
221
+ customer_update_due_diligence,
222
+ customer_get_email_addresses,
223
+ customer_create_email_address,
224
+ customer_delete_email_address,
225
+ customer_get_phone_numbers,
226
+ customer_create_phone_number,
227
+ customer_update_phone_number,
228
+ customer_delete_phone_number,
229
+ customer_search_by_name,
230
+ customer_search_by_customer_number,
231
+ customer_search_by_tax_number,
232
+ customer_search_by_phone,
233
+ customer_search_by_cip_id,
234
+ customer_get_statements,
235
+ customer_create_combined_statement,
236
+ customer_update_combined_statement,
237
+ customer_delete_combined_statement,
238
+ customer_get_remarks,
239
+ customer_create_remark,
240
+ customer_update_remark,
241
+ customer_delete_remark,
242
+ customer_get_relationships,
243
+ customer_create_relationship,
244
+ customer_update_relationship,
245
+ customer_delete_relationship,
246
+ customer_get_profile,
247
+ customer_update_profile,
248
+
249
+ // Deposit actions (21)
250
+ deposit_get_account,
251
+ deposit_create_account,
252
+ deposit_update_account,
253
+ deposit_close_account,
254
+ deposit_get_balance,
255
+ deposit_get_interest_rates,
256
+ deposit_update_interest_rates,
257
+ deposit_get_transactions,
258
+ deposit_post_transaction,
259
+ deposit_reverse_transaction,
260
+ deposit_transfer,
261
+ deposit_get_holds,
262
+ deposit_create_hold,
263
+ deposit_update_hold,
264
+ deposit_release_hold,
265
+ deposit_get_escrow_accounts,
266
+ deposit_create_escrow_account,
267
+ deposit_update_escrow_account,
268
+ deposit_calculate,
269
+ deposit_originate,
270
+ deposit_update_maintenance,
271
+
272
+ // Loan actions (24)
273
+ loan_get_account,
274
+ loan_create_account,
275
+ loan_update_account,
276
+ loan_get_notes,
277
+ loan_create_note,
278
+ loan_get_note_balances,
279
+ loan_renew_note,
280
+ loan_increase_note,
281
+ loan_get_payment_info,
282
+ loan_post_payment,
283
+ loan_reverse_payment,
284
+ loan_get_collateral,
285
+ loan_create_collateral,
286
+ loan_update_collateral,
287
+ loan_delete_collateral,
288
+ loan_get_fees,
289
+ loan_create_fee,
290
+ loan_get_payoff_quote,
291
+ loan_payoff,
292
+ loan_change_rate_immediate,
293
+ loan_get_pending_rate_changes,
294
+ loan_get_transactions,
295
+ loan_disburse,
296
+ loan_board,
297
+
298
+ // Custom API call for any other endpoints
299
+ createCustomApiCallAction({
300
+ baseUrl: (auth) => (auth as any).baseUrl || 'https://api-gw-uat.fisglobal.com/rest',
301
+ auth: fisIbsAuth,
302
+ authMapping: async (auth) => {
303
+ const authObj = auth as any;
304
+ const uuid = crypto.randomUUID();
305
+ const headers: Record<string, string> = {
306
+ 'organization-id': authObj.organizationId,
307
+ 'source-id': authObj.sourceId,
308
+ 'application-id': authObj.applicationId,
309
+ 'uuid': uuid,
310
+ 'ibs-authorization': authObj.ibsAuthorization,
311
+ };
312
+ if (authObj.securityTokenType) {
313
+ headers['security-token-type'] = authObj.securityTokenType;
314
+ }
315
+ return headers;
316
+ },
317
+ }),
318
+ ],
319
+ triggers: [],
320
+ });