@gofynd/fdk-client-javascript 1.0.0 → 1.0.1

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 (104) hide show
  1. package/documentation/application/CATALOG.md +371 -371
  2. package/documentation/application/ORDER.md +272 -272
  3. package/documentation/application/PAYMENT.md +269 -269
  4. package/documentation/platform/CATALOG.md +1678 -1664
  5. package/documentation/platform/COMPANYPROFILE.md +201 -201
  6. package/documentation/platform/ORDER.md +1442 -1323
  7. package/documentation/platform/PAYMENT.md +88 -88
  8. package/index.js +7 -1
  9. package/package.json +1 -1
  10. package/sdk/application/Cart/CartApplicationClient.js +302 -0
  11. package/sdk/application/Cart/CartApplicationValidator.js +1 -0
  12. package/sdk/application/Catalog/CatalogApplicationClient.js +378 -0
  13. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +17 -17
  14. package/sdk/application/Catalog/CatalogApplicationModel.js +500 -500
  15. package/sdk/application/Catalog/CatalogApplicationValidator.js +1 -0
  16. package/sdk/application/Common/CommonApplicationClient.js +22 -0
  17. package/sdk/application/Common/CommonApplicationValidator.js +1 -0
  18. package/sdk/application/Communication/CommunicationApplicationClient.js +41 -0
  19. package/sdk/application/Communication/CommunicationApplicationValidator.js +1 -0
  20. package/sdk/application/Configuration/ConfigurationApplicationClient.js +200 -0
  21. package/sdk/application/Configuration/ConfigurationApplicationValidator.js +1 -0
  22. package/sdk/application/Content/ContentApplicationClient.js +215 -0
  23. package/sdk/application/Content/ContentApplicationValidator.js +1 -0
  24. package/sdk/application/FileStorage/FileStorageApplicationClient.js +33 -0
  25. package/sdk/application/FileStorage/FileStorageApplicationValidator.js +1 -0
  26. package/sdk/application/Lead/LeadApplicationClient.js +81 -0
  27. package/sdk/application/Lead/LeadApplicationValidator.js +1 -0
  28. package/sdk/application/Logistic/LogisticApplicationClient.js +44 -0
  29. package/sdk/application/Logistic/LogisticApplicationValidator.js +1 -0
  30. package/sdk/application/Order/OrderApplicationClient.js +146 -0
  31. package/sdk/application/Order/OrderApplicationModel.d.ts +20 -20
  32. package/sdk/application/Order/OrderApplicationModel.js +329 -329
  33. package/sdk/application/Order/OrderApplicationValidator.js +1 -0
  34. package/sdk/application/Payment/PaymentApplicationClient.js +528 -0
  35. package/sdk/application/Payment/PaymentApplicationModel.d.ts +5 -5
  36. package/sdk/application/Payment/PaymentApplicationModel.js +391 -391
  37. package/sdk/application/Payment/PaymentApplicationValidator.js +1 -0
  38. package/sdk/application/PosCart/PosCartApplicationClient.js +329 -0
  39. package/sdk/application/PosCart/PosCartApplicationValidator.js +1 -0
  40. package/sdk/application/Rewards/RewardsApplicationClient.js +81 -0
  41. package/sdk/application/Rewards/RewardsApplicationValidator.js +1 -0
  42. package/sdk/application/Share/ShareApplicationClient.js +87 -0
  43. package/sdk/application/Share/ShareApplicationValidator.js +1 -0
  44. package/sdk/application/Theme/ThemeApplicationClient.js +44 -0
  45. package/sdk/application/Theme/ThemeApplicationValidator.js +1 -0
  46. package/sdk/application/User/UserApplicationClient.js +405 -0
  47. package/sdk/application/User/UserApplicationValidator.js +1 -0
  48. package/sdk/common/AxiosHelper.js +1 -1
  49. package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.js +114 -0
  50. package/sdk/platform/Analytics/AnalyticsPlatformClient.js +58 -0
  51. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +46 -0
  52. package/sdk/platform/Billing/BillingPlatformClient.js +160 -0
  53. package/sdk/platform/Cart/CartPlatformApplicationClient.js +246 -0
  54. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +29 -29
  55. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +839 -48
  56. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +3 -3
  57. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +9 -9
  58. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +54 -54
  59. package/sdk/platform/Catalog/CatalogPlatformClient.js +1149 -96
  60. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +58 -57
  61. package/sdk/platform/Catalog/CatalogPlatformModel.js +1626 -1614
  62. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +6 -6
  63. package/sdk/platform/Catalog/CatalogPlatformValidator.js +20 -20
  64. package/sdk/platform/Common/CommonPlatformClient.js +26 -0
  65. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +587 -0
  66. package/sdk/platform/Communication/CommunicationPlatformClient.js +15 -0
  67. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +179 -0
  68. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +11 -11
  69. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +269 -269
  70. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +382 -0
  71. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +282 -0
  72. package/sdk/platform/Content/ContentPlatformApplicationClient.js +866 -0
  73. package/sdk/platform/Discount/DiscountPlatformClient.js +152 -0
  74. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +54 -0
  75. package/sdk/platform/FileStorage/FileStoragePlatformClient.js +76 -0
  76. package/sdk/platform/Inventory/InventoryPlatformClient.js +161 -0
  77. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +162 -0
  78. package/sdk/platform/Lead/LeadPlatformClient.js +140 -0
  79. package/sdk/platform/Order/OrderPlatformApplicationClient.js +55 -0
  80. package/sdk/platform/Order/OrderPlatformClient.d.ts +15 -6
  81. package/sdk/platform/Order/OrderPlatformClient.js +674 -15
  82. package/sdk/platform/Order/OrderPlatformModel.d.ts +67 -60
  83. package/sdk/platform/Order/OrderPlatformModel.js +1559 -1623
  84. package/sdk/platform/Order/OrderPlatformValidator.d.ts +2 -1
  85. package/sdk/platform/Order/OrderPlatformValidator.js +10 -4
  86. package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +26 -0
  87. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +165 -0
  88. package/sdk/platform/Payment/PaymentPlatformClient.js +139 -0
  89. package/sdk/platform/Payment/PaymentPlatformModel.js +137 -137
  90. package/sdk/platform/PlatformApplicationClient.d.ts +2217 -2243
  91. package/sdk/platform/PlatformApplicationClient.js +2514 -2524
  92. package/sdk/platform/PlatformClient.d.ts +2217 -2243
  93. package/sdk/platform/PlatformClient.js +2514 -2524
  94. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +169 -0
  95. package/sdk/platform/Share/SharePlatformApplicationClient.js +53 -0
  96. package/sdk/platform/Theme/ThemePlatformApplicationClient.js +293 -0
  97. package/sdk/platform/User/UserPlatformApplicationClient.js +145 -0
  98. package/sdk/platform/Webhook/WebhookPlatformClient.js +90 -0
  99. package/sdk/public/Configuration/ConfigurationPublicClient.js +25 -0
  100. package/sdk/public/Configuration/ConfigurationPublicValidator.js +3 -1
  101. package/sdk/public/Inventory/InventoryPublicClient.js +75 -0
  102. package/sdk/public/Inventory/InventoryPublicValidator.js +3 -1
  103. package/sdk/public/Webhook/WebhookPublicClient.js +29 -0
  104. package/sdk/public/Webhook/WebhookPublicValidator.js +3 -1
@@ -3,18 +3,12 @@ const Joi = require("joi");
3
3
  class PaymentModel {
4
4
  static AggregatorConfigDetail() {
5
5
  return Joi.object({
6
- config_type: Joi.string().allow("").required(),
7
-
8
- key: Joi.string().allow("").required(),
9
-
10
- verify_api: Joi.string().allow("").allow(null),
11
-
12
6
  pin: Joi.string().allow("").allow(null),
13
7
 
14
- secret: Joi.string().allow("").required(),
15
-
16
8
  merchant_id: Joi.string().allow("").allow(null),
17
9
 
10
+ secret: Joi.string().allow("").required(),
11
+
18
12
  user_id: Joi.string().allow("").allow(null),
19
13
 
20
14
  sdk: Joi.boolean().allow(null),
@@ -22,30 +16,36 @@ class PaymentModel {
22
16
  api: Joi.string().allow("").allow(null),
23
17
 
24
18
  merchant_key: Joi.string().allow("").allow(null),
19
+
20
+ config_type: Joi.string().allow("").required(),
21
+
22
+ key: Joi.string().allow("").required(),
23
+
24
+ verify_api: Joi.string().allow("").allow(null),
25
25
  });
26
26
  }
27
27
 
28
28
  static AggregatorsConfigDetailResponse() {
29
29
  return Joi.object({
30
+ razorpay: PaymentModel.AggregatorConfigDetail(),
31
+
30
32
  env: Joi.string().allow("").required(),
31
33
 
32
- ccavenue: PaymentModel.AggregatorConfigDetail(),
34
+ success: Joi.boolean().required(),
33
35
 
34
- juspay: PaymentModel.AggregatorConfigDetail(),
36
+ rupifi: PaymentModel.AggregatorConfigDetail(),
35
37
 
36
38
  mswipe: PaymentModel.AggregatorConfigDetail(),
37
39
 
38
- razorpay: PaymentModel.AggregatorConfigDetail(),
40
+ payumoney: PaymentModel.AggregatorConfigDetail(),
39
41
 
40
- simpl: PaymentModel.AggregatorConfigDetail(),
42
+ juspay: PaymentModel.AggregatorConfigDetail(),
41
43
 
42
- payumoney: PaymentModel.AggregatorConfigDetail(),
44
+ simpl: PaymentModel.AggregatorConfigDetail(),
43
45
 
44
46
  stripe: PaymentModel.AggregatorConfigDetail(),
45
47
 
46
- success: Joi.boolean().required(),
47
-
48
- rupifi: PaymentModel.AggregatorConfigDetail(),
48
+ ccavenue: PaymentModel.AggregatorConfigDetail(),
49
49
  });
50
50
  }
51
51
 
@@ -59,9 +59,9 @@ class PaymentModel {
59
59
 
60
60
  static HttpErrorCodeAndResponse() {
61
61
  return Joi.object({
62
- success: Joi.boolean().required(),
63
-
64
62
  error: PaymentModel.ErrorCodeAndDescription().required(),
63
+
64
+ success: Joi.boolean().required(),
65
65
  });
66
66
  }
67
67
 
@@ -69,10 +69,10 @@ class PaymentModel {
69
69
  return Joi.object({
70
70
  card_id: Joi.string().allow("").allow(null).required(),
71
71
 
72
- nickname: Joi.string().allow(""),
73
-
74
72
  name_on_card: Joi.string().allow(""),
75
73
 
74
+ nickname: Joi.string().allow(""),
75
+
76
76
  refresh: Joi.boolean().allow(null),
77
77
  });
78
78
  }
@@ -81,9 +81,9 @@ class PaymentModel {
81
81
  return Joi.object({
82
82
  data: Joi.any().required(),
83
83
 
84
- success: Joi.boolean().required(),
85
-
86
84
  message: Joi.string().allow(""),
85
+
86
+ success: Joi.boolean().required(),
87
87
  });
88
88
  }
89
89
 
@@ -101,47 +101,47 @@ class PaymentModel {
101
101
  return Joi.object({
102
102
  cards: PaymentModel.CardPaymentGateway().required(),
103
103
 
104
- success: Joi.boolean().required(),
105
-
106
104
  message: Joi.string().allow("").required(),
105
+
106
+ success: Joi.boolean().required(),
107
107
  });
108
108
  }
109
109
 
110
110
  static Card() {
111
111
  return Joi.object({
112
- card_reference: Joi.string().allow("").allow(null),
113
-
114
- card_fingerprint: Joi.string().allow("").allow(null),
115
-
116
112
  card_isin: Joi.string().allow("").allow(null),
117
113
 
118
- card_brand: Joi.string().allow("").allow(null),
114
+ exp_year: Joi.number().allow(null),
119
115
 
120
116
  compliant_with_tokenisation_guidelines: Joi.boolean().allow(null),
121
117
 
122
- exp_year: Joi.number().allow(null),
118
+ nickname: Joi.string().allow("").allow(null),
123
119
 
124
- aggregator_name: Joi.string().allow("").required(),
120
+ expired: Joi.boolean().allow(null),
125
121
 
126
- card_issuer: Joi.string().allow("").allow(null),
122
+ card_reference: Joi.string().allow("").allow(null),
127
123
 
128
- nickname: Joi.string().allow("").allow(null),
124
+ card_fingerprint: Joi.string().allow("").allow(null),
125
+
126
+ card_brand_image: Joi.string().allow("").allow(null),
127
+
128
+ aggregator_name: Joi.string().allow("").required(),
129
129
 
130
130
  card_token: Joi.string().allow("").allow(null),
131
131
 
132
- card_name: Joi.string().allow("").allow(null),
132
+ card_number: Joi.string().allow("").allow(null),
133
133
 
134
- expired: Joi.boolean().allow(null),
134
+ card_type: Joi.string().allow("").allow(null),
135
135
 
136
- exp_month: Joi.number().allow(null),
136
+ card_issuer: Joi.string().allow("").allow(null),
137
137
 
138
- card_brand_image: Joi.string().allow("").allow(null),
138
+ card_brand: Joi.string().allow("").allow(null),
139
139
 
140
- card_number: Joi.string().allow("").allow(null),
140
+ exp_month: Joi.number().allow(null),
141
141
 
142
142
  card_id: Joi.string().allow("").allow(null),
143
143
 
144
- card_type: Joi.string().allow("").allow(null),
144
+ card_name: Joi.string().allow("").allow(null),
145
145
  });
146
146
  }
147
147
 
@@ -149,9 +149,9 @@ class PaymentModel {
149
149
  return Joi.object({
150
150
  data: Joi.array().items(PaymentModel.Card()),
151
151
 
152
- success: Joi.boolean().required(),
153
-
154
152
  message: Joi.string().allow("").required(),
153
+
154
+ success: Joi.boolean().required(),
155
155
  });
156
156
  }
157
157
 
@@ -163,29 +163,29 @@ class PaymentModel {
163
163
 
164
164
  static DeleteCardsResponse() {
165
165
  return Joi.object({
166
- success: Joi.boolean().required(),
167
-
168
166
  message: Joi.string().allow("").allow(null),
167
+
168
+ success: Joi.boolean().required(),
169
169
  });
170
170
  }
171
171
 
172
172
  static ValidateCustomerRequest() {
173
173
  return Joi.object({
174
- merchant_params: Joi.any(),
175
-
176
- transaction_amount_in_paise: Joi.number().required(),
174
+ order_items: Joi.array().items(Joi.any()),
177
175
 
178
176
  phone_number: Joi.string().allow("").required(),
179
177
 
180
- aggregator: Joi.string().allow("").required(),
181
-
182
- billing_address: Joi.any(),
178
+ merchant_params: Joi.any(),
183
179
 
184
180
  payload: Joi.string().allow("").allow(null),
185
181
 
186
- order_items: Joi.array().items(Joi.any()),
187
-
188
182
  delivery_address: Joi.any(),
183
+
184
+ aggregator: Joi.string().allow("").required(),
185
+
186
+ transaction_amount_in_paise: Joi.number().required(),
187
+
188
+ billing_address: Joi.any(),
189
189
  });
190
190
  }
191
191
 
@@ -193,187 +193,153 @@ class PaymentModel {
193
193
  return Joi.object({
194
194
  data: Joi.any().required(),
195
195
 
196
- success: Joi.boolean().required(),
197
-
198
196
  message: Joi.string().allow("").required(),
197
+
198
+ success: Joi.boolean().required(),
199
199
  });
200
200
  }
201
201
 
202
202
  static ChargeCustomerRequest() {
203
203
  return Joi.object({
204
- transaction_token: Joi.string().allow("").allow(null),
204
+ verified: Joi.boolean().allow(null),
205
205
 
206
- aggregator: Joi.string().allow("").required(),
206
+ amount: Joi.number().allow(null).required(),
207
207
 
208
208
  order_id: Joi.string().allow("").required(),
209
209
 
210
- verified: Joi.boolean().allow(null),
210
+ transaction_token: Joi.string().allow("").allow(null),
211
211
 
212
- amount: Joi.number().allow(null).required(),
212
+ aggregator: Joi.string().allow("").required(),
213
213
  });
214
214
  }
215
215
 
216
216
  static ChargeCustomerResponse() {
217
217
  return Joi.object({
218
- aggregator: Joi.string().allow("").required(),
218
+ status: Joi.string().allow("").required(),
219
219
 
220
- order_id: Joi.string().allow("").required(),
220
+ success: Joi.boolean().required(),
221
221
 
222
- message: Joi.string().allow("").required(),
222
+ delivery_address_id: Joi.string().allow("").allow(null),
223
223
 
224
- cart_id: Joi.string().allow("").allow(null),
224
+ message: Joi.string().allow("").required(),
225
225
 
226
- delivery_address_id: Joi.string().allow("").allow(null),
226
+ order_id: Joi.string().allow("").required(),
227
227
 
228
- success: Joi.boolean().required(),
228
+ cart_id: Joi.string().allow("").allow(null),
229
229
 
230
- status: Joi.string().allow("").required(),
230
+ aggregator: Joi.string().allow("").required(),
231
231
  });
232
232
  }
233
233
 
234
234
  static PaymentInitializationRequest() {
235
235
  return Joi.object({
236
- email: Joi.string().allow("").required(),
236
+ timeout: Joi.number().allow(null),
237
237
 
238
- vpa: Joi.string().allow("").allow(null),
238
+ customer_id: Joi.string().allow("").required(),
239
239
 
240
- aggregator: Joi.string().allow("").required(),
240
+ method: Joi.string().allow("").required(),
241
241
 
242
- merchant_order_id: Joi.string().allow("").required(),
242
+ vpa: Joi.string().allow("").allow(null),
243
243
 
244
- order_id: Joi.string().allow("").required(),
244
+ merchant_order_id: Joi.string().allow("").required(),
245
245
 
246
- currency: Joi.string().allow("").required(),
246
+ amount: Joi.number().allow(null).required(),
247
247
 
248
- timeout: Joi.number().allow(null),
248
+ email: Joi.string().allow("").required(),
249
249
 
250
- contact: Joi.string().allow("").required(),
250
+ currency: Joi.string().allow("").required(),
251
251
 
252
- amount: Joi.number().allow(null).required(),
252
+ order_id: Joi.string().allow("").required(),
253
253
 
254
- customer_id: Joi.string().allow("").required(),
254
+ razorpay_payment_id: Joi.string().allow("").allow(null),
255
255
 
256
- method: Joi.string().allow("").required(),
256
+ aggregator: Joi.string().allow("").required(),
257
257
 
258
- razorpay_payment_id: Joi.string().allow("").allow(null),
258
+ contact: Joi.string().allow("").required(),
259
259
  });
260
260
  }
261
261
 
262
262
  static PaymentInitializationResponse() {
263
263
  return Joi.object({
264
- vpa: Joi.string().allow("").allow(null),
264
+ customer_id: Joi.string().allow("").allow(null),
265
265
 
266
- polling_url: Joi.string().allow("").required(),
266
+ status: Joi.string().allow(""),
267
267
 
268
- upi_poll_url: Joi.string().allow("").allow(null),
268
+ method: Joi.string().allow("").required(),
269
269
 
270
- merchant_order_id: Joi.string().allow("").required(),
270
+ vpa: Joi.string().allow("").allow(null),
271
271
 
272
- aggregator: Joi.string().allow("").required(),
272
+ upi_poll_url: Joi.string().allow("").allow(null),
273
273
 
274
- virtual_id: Joi.string().allow("").allow(null),
274
+ success: Joi.boolean().required(),
275
275
 
276
- currency: Joi.string().allow("").allow(null),
276
+ merchant_order_id: Joi.string().allow("").required(),
277
277
 
278
- timeout: Joi.number().allow(null),
278
+ aggregator_order_id: Joi.string().allow(""),
279
279
 
280
280
  amount: Joi.number().allow(null),
281
281
 
282
- aggregator_order_id: Joi.string().allow(""),
282
+ timeout: Joi.number().allow(null),
283
283
 
284
- razorpay_payment_id: Joi.string().allow("").allow(null),
284
+ bqr_image: Joi.string().allow("").allow(null),
285
285
 
286
- customer_id: Joi.string().allow("").allow(null),
286
+ virtual_id: Joi.string().allow("").allow(null),
287
287
 
288
- success: Joi.boolean().required(),
288
+ currency: Joi.string().allow("").allow(null),
289
289
 
290
- bqr_image: Joi.string().allow("").allow(null),
290
+ polling_url: Joi.string().allow("").required(),
291
291
 
292
- status: Joi.string().allow(""),
292
+ razorpay_payment_id: Joi.string().allow("").allow(null),
293
293
 
294
- method: Joi.string().allow("").required(),
294
+ aggregator: Joi.string().allow("").required(),
295
295
  });
296
296
  }
297
297
 
298
298
  static PaymentStatusUpdateRequest() {
299
299
  return Joi.object({
300
- email: Joi.string().allow("").required(),
300
+ customer_id: Joi.string().allow("").required(),
301
301
 
302
- vpa: Joi.string().allow("").required(),
302
+ status: Joi.string().allow("").required(),
303
303
 
304
- aggregator: Joi.string().allow("").required(),
304
+ method: Joi.string().allow("").required(),
305
305
 
306
- merchant_order_id: Joi.string().allow("").required(),
306
+ vpa: Joi.string().allow("").required(),
307
307
 
308
- order_id: Joi.string().allow("").required(),
308
+ merchant_order_id: Joi.string().allow("").required(),
309
309
 
310
- currency: Joi.string().allow("").required(),
310
+ amount: Joi.number().allow(null).required(),
311
311
 
312
- contact: Joi.string().allow("").required(),
312
+ email: Joi.string().allow("").required(),
313
313
 
314
- amount: Joi.number().allow(null).required(),
314
+ currency: Joi.string().allow("").required(),
315
315
 
316
- customer_id: Joi.string().allow("").required(),
316
+ order_id: Joi.string().allow("").required(),
317
317
 
318
- status: Joi.string().allow("").required(),
318
+ aggregator: Joi.string().allow("").required(),
319
319
 
320
- method: Joi.string().allow("").required(),
320
+ contact: Joi.string().allow("").required(),
321
321
  });
322
322
  }
323
323
 
324
324
  static PaymentStatusUpdateResponse() {
325
325
  return Joi.object({
326
- retry: Joi.boolean().required(),
327
-
328
- aggregator_name: Joi.string().allow("").required(),
326
+ status: Joi.string().allow("").required(),
329
327
 
330
328
  redirect_url: Joi.string().allow("").allow(null),
331
329
 
332
330
  success: Joi.boolean().allow(null),
333
331
 
334
- status: Joi.string().allow("").required(),
335
- });
336
- }
337
-
338
- static AggregatorRoute() {
339
- return Joi.object({
340
- payment_flow: Joi.string().allow("").allow(null),
341
-
342
- data: Joi.any().allow(null),
343
-
344
- api_link: Joi.string().allow("").allow(null),
332
+ aggregator_name: Joi.string().allow("").required(),
345
333
 
346
- payment_flow_data: Joi.string().allow("").allow(null),
334
+ retry: Joi.boolean().required(),
347
335
  });
348
336
  }
349
337
 
350
- static PaymentFlow() {
338
+ static IntentAppErrorList() {
351
339
  return Joi.object({
352
- fynd: PaymentModel.AggregatorRoute(),
353
-
354
- bqr_razorpay: PaymentModel.AggregatorRoute(),
355
-
356
- juspay: PaymentModel.AggregatorRoute(),
357
-
358
- ccavenue: PaymentModel.AggregatorRoute(),
359
-
360
- jiopay: PaymentModel.AggregatorRoute(),
361
-
362
- mswipe: PaymentModel.AggregatorRoute(),
363
-
364
- upi_razorpay: PaymentModel.AggregatorRoute(),
365
-
366
- razorpay: PaymentModel.AggregatorRoute(),
367
-
368
- simpl: PaymentModel.AggregatorRoute(),
369
-
370
- epaylater: PaymentModel.AggregatorRoute(),
371
-
372
- stripe: PaymentModel.AggregatorRoute(),
373
-
374
- rupifi: PaymentModel.AggregatorRoute(),
340
+ code: Joi.string().allow("").allow(null),
375
341
 
376
- payubiz: PaymentModel.AggregatorRoute(),
342
+ package_name: Joi.string().allow("").allow(null),
377
343
  });
378
344
  }
379
345
 
@@ -387,18 +353,10 @@ class PaymentModel {
387
353
 
388
354
  static IntentApp() {
389
355
  return Joi.object({
390
- code: Joi.string().allow("").allow(null),
391
-
392
- display_name: Joi.string().allow("").allow(null),
393
-
394
356
  logos: PaymentModel.PaymentModeLogo(),
395
357
 
396
- package_name: Joi.string().allow("").allow(null),
397
- });
398
- }
358
+ display_name: Joi.string().allow("").allow(null),
399
359
 
400
- static IntentAppErrorList() {
401
- return Joi.object({
402
360
  code: Joi.string().allow("").allow(null),
403
361
 
404
362
  package_name: Joi.string().allow("").allow(null),
@@ -407,105 +365,147 @@ class PaymentModel {
407
365
 
408
366
  static PaymentModeList() {
409
367
  return Joi.object({
410
- card_issuer: Joi.string().allow("").allow(null),
411
-
412
- aggregator_name: Joi.string().allow("").required(),
413
-
414
- card_name: Joi.string().allow("").allow(null),
415
-
416
- expired: Joi.boolean().allow(null),
417
-
418
- name: Joi.string().allow("").allow(null),
368
+ card_number: Joi.string().allow("").allow(null),
419
369
 
420
- exp_month: Joi.number().allow(null),
370
+ display_name: Joi.string().allow("").allow(null),
421
371
 
422
- timeout: Joi.number().allow(null),
372
+ card_issuer: Joi.string().allow("").allow(null),
423
373
 
424
374
  card_brand: Joi.string().allow("").allow(null),
425
375
 
426
- card_id: Joi.string().allow("").allow(null),
376
+ intent_flow: Joi.boolean().allow(null),
427
377
 
428
- intent_app: Joi.array().items(PaymentModel.IntentApp()),
378
+ exp_month: Joi.number().allow(null),
429
379
 
430
380
  intent_app_error_dict_list: Joi.array().items(
431
381
  PaymentModel.IntentAppErrorList()
432
382
  ),
433
383
 
434
- retry_count: Joi.number().allow(null),
435
-
436
384
  exp_year: Joi.number().allow(null),
437
385
 
438
- display_priority: Joi.number().allow(null),
386
+ compliant_with_tokenisation_guidelines: Joi.boolean().allow(null),
439
387
 
440
- card_token: Joi.string().allow("").allow(null),
388
+ retry_count: Joi.number().allow(null),
441
389
 
442
- fynd_vpa: Joi.string().allow("").allow(null),
390
+ card_brand_image: Joi.string().allow("").allow(null),
443
391
 
444
- cod_limit_per_order: Joi.number().allow(null),
392
+ card_type: Joi.string().allow("").allow(null),
393
+
394
+ logo_url: PaymentModel.PaymentModeLogo(),
445
395
 
446
396
  cod_limit: Joi.number().allow(null),
447
397
 
448
- card_type: Joi.string().allow("").allow(null),
398
+ code: Joi.string().allow("").allow(null),
449
399
 
450
- display_name: Joi.string().allow("").allow(null),
400
+ timeout: Joi.number().allow(null),
451
401
 
452
- card_reference: Joi.string().allow("").allow(null),
402
+ merchant_code: Joi.string().allow("").allow(null),
453
403
 
454
- card_isin: Joi.string().allow("").allow(null),
404
+ nickname: Joi.string().allow("").allow(null),
455
405
 
456
- compliant_with_tokenisation_guidelines: Joi.boolean().allow(null),
406
+ aggregator_name: Joi.string().allow("").required(),
457
407
 
458
- card_brand_image: Joi.string().allow("").allow(null),
408
+ fynd_vpa: Joi.string().allow("").allow(null),
459
409
 
460
- code: Joi.string().allow("").allow(null),
410
+ card_id: Joi.string().allow("").allow(null),
461
411
 
462
- card_fingerprint: Joi.string().allow("").allow(null),
412
+ cod_limit_per_order: Joi.number().allow(null),
463
413
 
464
- intent_flow: Joi.boolean().allow(null),
414
+ intent_app: Joi.array().items(PaymentModel.IntentApp()),
465
415
 
466
- logo_url: PaymentModel.PaymentModeLogo(),
416
+ card_isin: Joi.string().allow("").allow(null),
467
417
 
468
- nickname: Joi.string().allow("").allow(null),
418
+ remaining_limit: Joi.number().allow(null),
469
419
 
470
- merchant_code: Joi.string().allow("").allow(null),
420
+ expired: Joi.boolean().allow(null),
471
421
 
472
- remaining_limit: Joi.number().allow(null),
422
+ card_reference: Joi.string().allow("").allow(null),
473
423
 
474
- card_number: Joi.string().allow("").allow(null),
424
+ card_fingerprint: Joi.string().allow("").allow(null),
475
425
 
476
426
  intent_app_error_list: Joi.array().items(Joi.string().allow("")),
427
+
428
+ card_token: Joi.string().allow("").allow(null),
429
+
430
+ display_priority: Joi.number().allow(null),
431
+
432
+ name: Joi.string().allow("").allow(null),
433
+
434
+ card_name: Joi.string().allow("").allow(null),
477
435
  });
478
436
  }
479
437
 
480
438
  static RootPaymentMode() {
481
439
  return Joi.object({
482
- display_name: Joi.string().allow("").required(),
440
+ is_pay_by_card_pl: Joi.boolean().allow(null),
483
441
 
484
- save_card: Joi.boolean().allow(null),
442
+ aggregator_name: Joi.string().allow("").allow(null),
485
443
 
486
- add_card_enabled: Joi.boolean().allow(null),
444
+ display_name: Joi.string().allow("").required(),
487
445
 
488
- aggregator_name: Joi.string().allow("").allow(null),
446
+ save_card: Joi.boolean().allow(null),
489
447
 
490
448
  display_priority: Joi.number().required(),
491
449
 
492
450
  list: Joi.array().items(PaymentModel.PaymentModeList()),
493
451
 
452
+ anonymous_enable: Joi.boolean().allow(null),
453
+
494
454
  name: Joi.string().allow("").required(),
495
455
 
496
- is_pay_by_card_pl: Joi.boolean().allow(null),
456
+ add_card_enabled: Joi.boolean().allow(null),
457
+ });
458
+ }
497
459
 
498
- anonymous_enable: Joi.boolean().allow(null),
460
+ static AggregatorRoute() {
461
+ return Joi.object({
462
+ data: Joi.any().allow(null),
463
+
464
+ api_link: Joi.string().allow("").allow(null),
465
+
466
+ payment_flow_data: Joi.string().allow("").allow(null),
467
+
468
+ payment_flow: Joi.string().allow("").allow(null),
499
469
  });
500
470
  }
501
471
 
502
- static PaymentOptionAndFlow() {
472
+ static PaymentFlow() {
503
473
  return Joi.object({
504
- payment_flows: PaymentModel.PaymentFlow().required(),
474
+ razorpay: PaymentModel.AggregatorRoute(),
475
+
476
+ epaylater: PaymentModel.AggregatorRoute(),
477
+
478
+ jiopay: PaymentModel.AggregatorRoute(),
479
+
480
+ fynd: PaymentModel.AggregatorRoute(),
481
+
482
+ rupifi: PaymentModel.AggregatorRoute(),
483
+
484
+ mswipe: PaymentModel.AggregatorRoute(),
485
+
486
+ bqr_razorpay: PaymentModel.AggregatorRoute(),
505
487
 
488
+ juspay: PaymentModel.AggregatorRoute(),
489
+
490
+ simpl: PaymentModel.AggregatorRoute(),
491
+
492
+ stripe: PaymentModel.AggregatorRoute(),
493
+
494
+ ccavenue: PaymentModel.AggregatorRoute(),
495
+
496
+ upi_razorpay: PaymentModel.AggregatorRoute(),
497
+
498
+ payubiz: PaymentModel.AggregatorRoute(),
499
+ });
500
+ }
501
+
502
+ static PaymentOptionAndFlow() {
503
+ return Joi.object({
506
504
  payment_option: Joi.array()
507
505
  .items(PaymentModel.RootPaymentMode())
508
506
  .required(),
507
+
508
+ payment_flows: PaymentModel.PaymentFlow().required(),
509
509
  });
510
510
  }
511
511
 
@@ -535,11 +535,11 @@ class PaymentModel {
535
535
 
536
536
  static EpaylaterBannerData() {
537
537
  return Joi.object({
538
+ display: Joi.boolean().required(),
539
+
538
540
  message: Joi.string().allow(""),
539
541
 
540
542
  status: Joi.string().allow(""),
541
-
542
- display: Joi.boolean().required(),
543
543
  });
544
544
  }
545
545
 
@@ -599,10 +599,10 @@ class PaymentModel {
599
599
  return Joi.object({
600
600
  upi_vpa: Joi.string().allow("").required(),
601
601
 
602
- customer_name: Joi.string().allow("").required(),
603
-
604
602
  status: Joi.string().allow("").required(),
605
603
 
604
+ customer_name: Joi.string().allow("").required(),
605
+
606
606
  is_valid: Joi.boolean().required(),
607
607
  });
608
608
  }
@@ -621,19 +621,19 @@ class PaymentModel {
621
621
 
622
622
  display_name: Joi.string().allow(""),
623
623
 
624
- name: Joi.string().allow("").required(),
625
-
626
624
  logo_small: Joi.string().allow("").required(),
627
625
 
628
626
  logo_large: Joi.string().allow("").required(),
627
+
628
+ name: Joi.string().allow("").required(),
629
629
  });
630
630
  }
631
631
 
632
632
  static TransferModeDetails() {
633
633
  return Joi.object({
634
- display_name: Joi.string().allow("").required(),
635
-
636
634
  items: Joi.array().items(PaymentModel.TransferItemsDetails()),
635
+
636
+ display_name: Joi.string().allow("").required(),
637
637
  });
638
638
  }
639
639
 
@@ -645,9 +645,9 @@ class PaymentModel {
645
645
 
646
646
  static UpdateRefundTransferModeRequest() {
647
647
  return Joi.object({
648
- enable: Joi.boolean().required(),
649
-
650
648
  transfer_mode: Joi.string().allow("").required(),
649
+
650
+ enable: Joi.boolean().required(),
651
651
  });
652
652
  }
653
653
 
@@ -659,135 +659,135 @@ class PaymentModel {
659
659
 
660
660
  static OrderBeneficiaryDetails() {
661
661
  return Joi.object({
662
- account_holder: Joi.string().allow("").required(),
662
+ address: Joi.string().allow("").required(),
663
663
 
664
- bank_name: Joi.string().allow("").required(),
664
+ email: Joi.string().allow("").required(),
665
665
 
666
- modified_on: Joi.string().allow("").required(),
666
+ display_name: Joi.string().allow("").required(),
667
667
 
668
- address: Joi.string().allow("").required(),
668
+ account_holder: Joi.string().allow("").required(),
669
669
 
670
- ifsc_code: Joi.string().allow("").required(),
670
+ delights_user_name: Joi.string().allow("").allow(null),
671
671
 
672
- account_no: Joi.string().allow("").required(),
672
+ created_on: Joi.string().allow("").required(),
673
673
 
674
- branch_name: Joi.string().allow(""),
674
+ beneficiary_id: Joi.string().allow("").required(),
675
675
 
676
- email: Joi.string().allow("").required(),
676
+ id: Joi.number().required(),
677
677
 
678
- subtitle: Joi.string().allow("").required(),
678
+ title: Joi.string().allow("").required(),
679
679
 
680
- created_on: Joi.string().allow("").required(),
680
+ mobile: Joi.string().allow(""),
681
681
 
682
- transfer_mode: Joi.string().allow("").required(),
682
+ modified_on: Joi.string().allow("").required(),
683
683
 
684
- id: Joi.number().required(),
684
+ comment: Joi.string().allow(""),
685
685
 
686
- display_name: Joi.string().allow("").required(),
686
+ subtitle: Joi.string().allow("").required(),
687
687
 
688
- delights_user_name: Joi.string().allow("").allow(null),
688
+ transfer_mode: Joi.string().allow("").required(),
689
689
 
690
- is_active: Joi.boolean().required(),
690
+ bank_name: Joi.string().allow("").required(),
691
691
 
692
- beneficiary_id: Joi.string().allow("").required(),
692
+ is_active: Joi.boolean().required(),
693
693
 
694
- title: Joi.string().allow("").required(),
694
+ ifsc_code: Joi.string().allow("").required(),
695
695
 
696
- mobile: Joi.string().allow(""),
696
+ branch_name: Joi.string().allow(""),
697
697
 
698
- comment: Joi.string().allow(""),
698
+ account_no: Joi.string().allow("").required(),
699
699
  });
700
700
  }
701
701
 
702
702
  static OrderBeneficiaryResponse() {
703
703
  return Joi.object({
704
- show_beneficiary_details: Joi.boolean(),
705
-
706
704
  beneficiaries: Joi.array().items(PaymentModel.OrderBeneficiaryDetails()),
705
+
706
+ show_beneficiary_details: Joi.boolean(),
707
707
  });
708
708
  }
709
709
 
710
710
  static NotFoundResourceError() {
711
711
  return Joi.object({
712
+ success: Joi.boolean().required(),
713
+
712
714
  code: Joi.string().allow("").required(),
713
715
 
714
716
  description: Joi.string().allow("").required(),
715
-
716
- success: Joi.boolean().required(),
717
717
  });
718
718
  }
719
719
 
720
720
  static IfscCodeResponse() {
721
721
  return Joi.object({
722
+ branch_name: Joi.string().allow("").required(),
723
+
722
724
  bank_name: Joi.string().allow("").required(),
723
725
 
724
726
  success: Joi.boolean(),
725
-
726
- branch_name: Joi.string().allow("").required(),
727
727
  });
728
728
  }
729
729
 
730
730
  static ErrorCodeDescription() {
731
731
  return Joi.object({
732
+ success: Joi.boolean().required(),
733
+
732
734
  code: Joi.string().allow("").required(),
733
735
 
734
736
  description: Joi.string().allow("").required(),
735
-
736
- success: Joi.boolean().required(),
737
737
  });
738
738
  }
739
739
 
740
740
  static AddBeneficiaryViaOtpVerificationRequest() {
741
741
  return Joi.object({
742
- otp: Joi.string().allow("").required(),
743
-
744
742
  hash_key: Joi.string().allow("").required(),
745
743
 
746
744
  request_id: Joi.string().allow("").required(),
745
+
746
+ otp: Joi.string().allow("").required(),
747
747
  });
748
748
  }
749
749
 
750
750
  static AddBeneficiaryViaOtpVerificationResponse() {
751
751
  return Joi.object({
752
- success: Joi.boolean(),
753
-
754
752
  message: Joi.string().allow("").required(),
753
+
754
+ success: Joi.boolean(),
755
755
  });
756
756
  }
757
757
 
758
758
  static WrongOtpError() {
759
759
  return Joi.object({
760
- description: Joi.string().allow("").required(),
760
+ is_verified_flag: Joi.boolean().required(),
761
761
 
762
762
  success: Joi.string().allow("").required(),
763
763
 
764
- is_verified_flag: Joi.boolean().required(),
764
+ description: Joi.string().allow("").required(),
765
765
  });
766
766
  }
767
767
 
768
768
  static BeneficiaryModeDetails() {
769
769
  return Joi.object({
770
- email: Joi.string().allow("").required(),
770
+ vpa: Joi.string().allow("").allow(null),
771
771
 
772
- mobile: Joi.string().allow("").required(),
772
+ address: Joi.string().allow(""),
773
773
 
774
- ifsc_code: Joi.string().allow("").required(),
774
+ bank_name: Joi.string().allow("").required(),
775
+
776
+ email: Joi.string().allow("").required(),
775
777
 
776
778
  account_holder: Joi.string().allow("").required(),
777
779
 
778
- bank_name: Joi.string().allow("").required(),
780
+ mobile: Joi.string().allow("").required(),
779
781
 
780
- account_no: Joi.string().allow("").required(),
782
+ ifsc_code: Joi.string().allow("").required(),
781
783
 
782
784
  wallet: Joi.string().allow("").allow(null),
783
785
 
784
- address: Joi.string().allow(""),
785
-
786
786
  comment: Joi.string().allow(""),
787
787
 
788
- vpa: Joi.string().allow("").allow(null),
789
-
790
788
  branch_name: Joi.string().allow("").required(),
789
+
790
+ account_no: Joi.string().allow("").required(),
791
791
  });
792
792
  }
793
793
 
@@ -795,43 +795,43 @@ class PaymentModel {
795
795
  return Joi.object({
796
796
  shipment_id: Joi.string().allow("").required(),
797
797
 
798
- order_id: Joi.string().allow("").required(),
799
-
800
- transfer_mode: Joi.string().allow("").required(),
801
-
802
- otp: Joi.string().allow(""),
803
-
804
798
  request_id: Joi.string().allow(""),
805
799
 
800
+ order_id: Joi.string().allow("").required(),
801
+
806
802
  delights: Joi.boolean().required(),
807
803
 
808
804
  details: PaymentModel.BeneficiaryModeDetails().required(),
805
+
806
+ transfer_mode: Joi.string().allow("").required(),
807
+
808
+ otp: Joi.string().allow(""),
809
809
  });
810
810
  }
811
811
 
812
812
  static RefundAccountResponse() {
813
813
  return Joi.object({
814
- data: Joi.any(),
814
+ is_verified_flag: Joi.boolean(),
815
815
 
816
- success: Joi.boolean().required(),
816
+ data: Joi.any(),
817
817
 
818
818
  message: Joi.string().allow("").required(),
819
819
 
820
- is_verified_flag: Joi.boolean(),
820
+ success: Joi.boolean().required(),
821
821
  });
822
822
  }
823
823
 
824
824
  static BankDetailsForOTP() {
825
825
  return Joi.object({
826
- account_holder: Joi.string().allow("").required(),
827
-
828
826
  bank_name: Joi.string().allow("").required(),
829
827
 
830
- account_no: Joi.string().allow("").required(),
828
+ account_holder: Joi.string().allow("").required(),
831
829
 
832
830
  ifsc_code: Joi.string().allow("").required(),
833
831
 
834
832
  branch_name: Joi.string().allow("").required(),
833
+
834
+ account_no: Joi.string().allow("").required(),
835
835
  });
836
836
  }
837
837
 
@@ -853,11 +853,11 @@ class PaymentModel {
853
853
 
854
854
  static WalletOtpResponse() {
855
855
  return Joi.object({
856
+ is_verified_flag: Joi.string().allow("").required(),
857
+
856
858
  success: Joi.boolean(),
857
859
 
858
860
  request_id: Joi.string().allow("").required(),
859
-
860
- is_verified_flag: Joi.string().allow("").required(),
861
861
  });
862
862
  }
863
863
 
@@ -881,38 +881,38 @@ class PaymentModel {
881
881
  return Joi.object({
882
882
  payment_link_url: Joi.string().allow("").allow(null),
883
883
 
884
- polling_timeout: Joi.number().allow(null),
884
+ success: Joi.boolean().required(),
885
885
 
886
- external_order_id: Joi.string().allow("").allow(null),
886
+ amount: Joi.number().allow(null),
887
887
 
888
888
  payment_link_current_status: Joi.string().allow("").allow(null),
889
889
 
890
- status_code: Joi.number().required(),
891
-
892
- amount: Joi.number().allow(null),
890
+ message: Joi.string().allow("").required(),
893
891
 
894
892
  merchant_name: Joi.string().allow("").allow(null),
895
893
 
896
- success: Joi.boolean().required(),
894
+ external_order_id: Joi.string().allow("").allow(null),
895
+
896
+ status_code: Joi.number().required(),
897
897
 
898
- message: Joi.string().allow("").required(),
898
+ polling_timeout: Joi.number().allow(null),
899
899
  });
900
900
  }
901
901
 
902
902
  static ErrorDescription() {
903
903
  return Joi.object({
904
- merchant_order_id: Joi.string().allow("").allow(null),
905
-
906
904
  payment_transaction_id: Joi.string().allow("").allow(null),
907
905
 
908
906
  expired: Joi.boolean().allow(null),
909
907
 
910
- merchant_name: Joi.string().allow("").allow(null),
908
+ merchant_order_id: Joi.string().allow("").allow(null),
911
909
 
912
910
  amount: Joi.number().allow(null),
913
911
 
914
912
  msg: Joi.string().allow("").allow(null),
915
913
 
914
+ merchant_name: Joi.string().allow("").allow(null),
915
+
916
916
  cancelled: Joi.boolean().allow(null),
917
917
 
918
918
  invalid_id: Joi.boolean().allow(null),
@@ -923,41 +923,41 @@ class PaymentModel {
923
923
  return Joi.object({
924
924
  error: PaymentModel.ErrorDescription(),
925
925
 
926
- success: Joi.boolean().required(),
927
-
928
926
  status_code: Joi.number().required(),
929
927
 
930
928
  message: Joi.string().allow("").required(),
929
+
930
+ success: Joi.boolean().required(),
931
931
  });
932
932
  }
933
933
 
934
934
  static CreatePaymentLinkMeta() {
935
935
  return Joi.object({
936
+ amount: Joi.string().allow("").required(),
937
+
938
+ pincode: Joi.string().allow("").required(),
939
+
936
940
  checkout_mode: Joi.string().allow("").required(),
937
941
 
938
942
  cart_id: Joi.string().allow("").required(),
939
943
 
940
944
  assign_card_id: Joi.string().allow("").allow(null),
941
-
942
- amount: Joi.string().allow("").required(),
943
-
944
- pincode: Joi.string().allow("").required(),
945
945
  });
946
946
  }
947
947
 
948
948
  static CreatePaymentLinkRequest() {
949
949
  return Joi.object({
950
- email: Joi.string().allow("").required(),
950
+ mobile_number: Joi.string().allow("").required(),
951
951
 
952
- external_order_id: Joi.string().allow("").required(),
952
+ amount: Joi.number().required(),
953
953
 
954
- meta: PaymentModel.CreatePaymentLinkMeta().required(),
954
+ email: Joi.string().allow("").required(),
955
955
 
956
- description: Joi.string().allow("").allow(null),
956
+ meta: PaymentModel.CreatePaymentLinkMeta().required(),
957
957
 
958
- amount: Joi.number().required(),
958
+ external_order_id: Joi.string().allow("").required(),
959
959
 
960
- mobile_number: Joi.string().allow("").required(),
960
+ description: Joi.string().allow("").allow(null),
961
961
  });
962
962
  }
963
963
 
@@ -965,15 +965,15 @@ class PaymentModel {
965
965
  return Joi.object({
966
966
  payment_link_url: Joi.string().allow("").allow(null),
967
967
 
968
- polling_timeout: Joi.number().allow(null),
968
+ success: Joi.boolean().required(),
969
969
 
970
- status_code: Joi.number().required(),
970
+ message: Joi.string().allow("").required(),
971
971
 
972
- payment_link_id: Joi.string().allow("").allow(null),
972
+ status_code: Joi.number().required(),
973
973
 
974
- success: Joi.boolean().required(),
974
+ polling_timeout: Joi.number().allow(null),
975
975
 
976
- message: Joi.string().allow("").required(),
976
+ payment_link_id: Joi.string().allow("").allow(null),
977
977
  });
978
978
  }
979
979
 
@@ -985,81 +985,81 @@ class PaymentModel {
985
985
 
986
986
  static ResendPaymentLinkResponse() {
987
987
  return Joi.object({
988
- success: Joi.boolean().required(),
989
-
990
988
  polling_timeout: Joi.number().allow(null),
991
989
 
992
990
  status_code: Joi.number().required(),
993
991
 
994
992
  message: Joi.string().allow("").required(),
993
+
994
+ success: Joi.boolean().required(),
995
995
  });
996
996
  }
997
997
 
998
998
  static CancelPaymentLinkResponse() {
999
999
  return Joi.object({
1000
- success: Joi.boolean().required(),
1001
-
1002
1000
  status_code: Joi.number().required(),
1003
1001
 
1004
1002
  message: Joi.string().allow("").required(),
1003
+
1004
+ success: Joi.boolean().required(),
1005
1005
  });
1006
1006
  }
1007
1007
 
1008
1008
  static PollingPaymentLinkResponse() {
1009
1009
  return Joi.object({
1010
- order_id: Joi.string().allow("").allow(null),
1011
-
1012
- http_status: Joi.number().allow(null),
1010
+ status: Joi.string().allow("").allow(null),
1013
1011
 
1014
- aggregator_name: Joi.string().allow("").allow(null),
1012
+ redirect_url: Joi.string().allow("").allow(null),
1015
1013
 
1016
1014
  success: Joi.boolean().allow(null),
1017
1015
 
1018
- status_code: Joi.number().allow(null),
1019
-
1020
1016
  amount: Joi.number().allow(null),
1021
1017
 
1022
- redirect_url: Joi.string().allow("").allow(null),
1023
-
1024
- payment_link_id: Joi.string().allow("").allow(null),
1018
+ aggregator_name: Joi.string().allow("").allow(null),
1025
1019
 
1026
1020
  message: Joi.string().allow("").allow(null),
1027
1021
 
1028
- status: Joi.string().allow("").allow(null),
1022
+ http_status: Joi.number().allow(null),
1023
+
1024
+ order_id: Joi.string().allow("").allow(null),
1025
+
1026
+ status_code: Joi.number().allow(null),
1027
+
1028
+ payment_link_id: Joi.string().allow("").allow(null),
1029
1029
  });
1030
1030
  }
1031
1031
 
1032
1032
  static PaymentMethodsMeta() {
1033
1033
  return Joi.object({
1034
+ merchant_code: Joi.string().allow("").required(),
1035
+
1034
1036
  payment_identifier: Joi.string().allow("").required(),
1035
1037
 
1036
1038
  payment_gateway: Joi.string().allow("").required(),
1037
-
1038
- merchant_code: Joi.string().allow("").required(),
1039
1039
  });
1040
1040
  }
1041
1041
 
1042
1042
  static CreateOrderUserPaymentMethods() {
1043
1043
  return Joi.object({
1044
- meta: PaymentModel.PaymentMethodsMeta().required(),
1045
-
1046
1044
  name: Joi.string().allow("").required(),
1047
1045
 
1046
+ meta: PaymentModel.PaymentMethodsMeta().required(),
1047
+
1048
1048
  mode: Joi.string().allow("").required(),
1049
1049
  });
1050
1050
  }
1051
1051
 
1052
1052
  static CreateOrderUserRequest() {
1053
1053
  return Joi.object({
1054
- payment_methods: PaymentModel.CreateOrderUserPaymentMethods().required(),
1054
+ failure_callback_url: Joi.string().allow("").required(),
1055
1055
 
1056
1056
  success_callback_url: Joi.string().allow("").required(),
1057
1057
 
1058
- failure_callback_url: Joi.string().allow("").required(),
1058
+ currency: Joi.string().allow("").required(),
1059
1059
 
1060
1060
  meta: Joi.any().allow(null),
1061
1061
 
1062
- currency: Joi.string().allow("").required(),
1062
+ payment_methods: PaymentModel.CreateOrderUserPaymentMethods().required(),
1063
1063
 
1064
1064
  payment_link_id: Joi.string().allow("").required(),
1065
1065
  });
@@ -1067,25 +1067,25 @@ class PaymentModel {
1067
1067
 
1068
1068
  static CreateOrderUserData() {
1069
1069
  return Joi.object({
1070
- email: Joi.string().allow("").allow(null),
1070
+ customer_id: Joi.string().allow("").allow(null),
1071
1071
 
1072
- aggregator: Joi.string().allow("").allow(null),
1072
+ method: Joi.string().allow("").allow(null),
1073
1073
 
1074
1074
  merchant_order_id: Joi.string().allow("").allow(null),
1075
1075
 
1076
- order_id: Joi.string().allow("").allow(null),
1076
+ amount: Joi.number().allow(null),
1077
1077
 
1078
- currency: Joi.string().allow("").allow(null),
1078
+ email: Joi.string().allow("").allow(null),
1079
1079
 
1080
- contact: Joi.string().allow("").allow(null),
1080
+ callback_url: Joi.string().allow("").allow(null),
1081
1081
 
1082
- amount: Joi.number().allow(null),
1082
+ currency: Joi.string().allow("").allow(null),
1083
1083
 
1084
- customer_id: Joi.string().allow("").allow(null),
1084
+ order_id: Joi.string().allow("").allow(null),
1085
1085
 
1086
- callback_url: Joi.string().allow("").allow(null),
1086
+ aggregator: Joi.string().allow("").allow(null),
1087
1087
 
1088
- method: Joi.string().allow("").allow(null),
1088
+ contact: Joi.string().allow("").allow(null),
1089
1089
  });
1090
1090
  }
1091
1091
 
@@ -1093,17 +1093,17 @@ class PaymentModel {
1093
1093
  return Joi.object({
1094
1094
  payment_confirm_url: Joi.string().allow("").allow(null),
1095
1095
 
1096
- message: Joi.string().allow("").required(),
1097
-
1098
- order_id: Joi.string().allow("").allow(null),
1099
-
1100
- status_code: Joi.number().required(),
1096
+ success: Joi.boolean().required(),
1101
1097
 
1102
1098
  data: PaymentModel.CreateOrderUserData(),
1103
1099
 
1104
- success: Joi.boolean().required(),
1100
+ message: Joi.string().allow("").required(),
1105
1101
 
1106
1102
  callback_url: Joi.string().allow("").allow(null),
1103
+
1104
+ order_id: Joi.string().allow("").allow(null),
1105
+
1106
+ status_code: Joi.number().required(),
1107
1107
  });
1108
1108
  }
1109
1109
 
@@ -1119,13 +1119,13 @@ class PaymentModel {
1119
1119
 
1120
1120
  static CreditSummary() {
1121
1121
  return Joi.object({
1122
- balance: PaymentModel.BalanceDetails(),
1123
-
1124
- status_message: Joi.string().allow("").required(),
1125
-
1126
1122
  status: Joi.string().allow("").required(),
1127
1123
 
1128
1124
  merchant_customer_ref_id: Joi.string().allow("").required(),
1125
+
1126
+ status_message: Joi.string().allow("").required(),
1127
+
1128
+ balance: PaymentModel.BalanceDetails(),
1129
1129
  });
1130
1130
  }
1131
1131
 
@@ -1139,9 +1139,9 @@ class PaymentModel {
1139
1139
 
1140
1140
  static RedirectURL() {
1141
1141
  return Joi.object({
1142
- signup_url: Joi.string().allow("").required(),
1143
-
1144
1142
  status: Joi.boolean().required(),
1143
+
1144
+ signup_url: Joi.string().allow("").required(),
1145
1145
  });
1146
1146
  }
1147
1147
 
@@ -1155,11 +1155,11 @@ class PaymentModel {
1155
1155
 
1156
1156
  static CreditDetail() {
1157
1157
  return Joi.object({
1158
+ status: Joi.boolean().required(),
1159
+
1158
1160
  signup_url: Joi.string().allow("").required(),
1159
1161
 
1160
1162
  is_registered: Joi.boolean().required(),
1161
-
1162
- status: Joi.boolean().required(),
1163
1163
  });
1164
1164
  }
1165
1165
 
@@ -1173,99 +1173,81 @@ class PaymentModel {
1173
1173
 
1174
1174
  static KYCAddress() {
1175
1175
  return Joi.object({
1176
- city: Joi.string().allow("").required(),
1176
+ addressline1: Joi.string().allow("").required(),
1177
1177
 
1178
- ownership_type: Joi.string().allow("").allow(null),
1178
+ addressline2: Joi.string().allow("").allow(null),
1179
1179
 
1180
- state: Joi.string().allow("").required(),
1180
+ ownership_type: Joi.string().allow("").allow(null),
1181
1181
 
1182
- land_mark: Joi.string().allow("").allow(null),
1182
+ city: Joi.string().allow("").required(),
1183
1183
 
1184
- addressline2: Joi.string().allow("").allow(null),
1184
+ pincode: Joi.string().allow("").required(),
1185
1185
 
1186
- addressline1: Joi.string().allow("").required(),
1186
+ land_mark: Joi.string().allow("").allow(null),
1187
1187
 
1188
- pincode: Joi.string().allow("").required(),
1188
+ state: Joi.string().allow("").required(),
1189
1189
  });
1190
1190
  }
1191
1191
 
1192
- static UserPersonalInfoInDetails() {
1192
+ static BusinessDetails() {
1193
1193
  return Joi.object({
1194
- email: Joi.string().allow("").allow(null),
1195
-
1196
- phone: Joi.string().allow("").required(),
1197
-
1198
- middle_name: Joi.string().allow("").allow(null),
1199
-
1200
- fathers_name: Joi.string().allow("").allow(null),
1201
-
1202
- passport: Joi.string().allow("").allow(null),
1203
-
1204
- driving_license: Joi.string().allow("").allow(null),
1205
-
1206
- first_name: Joi.string().allow("").required(),
1194
+ fda: Joi.string().allow("").allow(null),
1207
1195
 
1208
- voter_id: Joi.string().allow("").allow(null),
1196
+ address: PaymentModel.KYCAddress(),
1209
1197
 
1210
- dob: Joi.string().allow("").allow(null).required(),
1198
+ fssai: Joi.string().allow("").allow(null),
1211
1199
 
1212
- gender: Joi.string().allow("").allow(null),
1200
+ business_type: Joi.string().allow("").allow(null),
1213
1201
 
1214
- last_name: Joi.string().allow("").allow(null),
1202
+ vintage: Joi.string().allow("").allow(null),
1215
1203
 
1216
1204
  pan: Joi.string().allow("").allow(null),
1217
1205
 
1218
- mothers_name: Joi.string().allow("").allow(null),
1206
+ gstin: Joi.string().allow("").allow(null),
1219
1207
 
1220
- email_verified: Joi.boolean().required(),
1208
+ shop_and_establishment: Joi.any(),
1221
1209
 
1222
- mobile_verified: Joi.boolean().required(),
1210
+ name: Joi.string().allow("").allow(null),
1223
1211
 
1224
- address_as_per_id: PaymentModel.KYCAddress().required(),
1212
+ business_ownership_type: Joi.string().allow("").allow(null),
1213
+
1214
+ entity_type: Joi.string().allow("").allow(null),
1225
1215
  });
1226
1216
  }
1227
1217
 
1228
- static DeviceDetails() {
1218
+ static UserPersonalInfoInDetails() {
1229
1219
  return Joi.object({
1230
- device_make: Joi.string().allow("").allow(null),
1231
-
1232
- device_type: Joi.string().allow("").allow(null),
1233
-
1234
- os: Joi.string().allow("").allow(null),
1220
+ phone: Joi.string().allow("").required(),
1235
1221
 
1236
- os_version: Joi.string().allow("").allow(null),
1222
+ mothers_name: Joi.string().allow("").allow(null),
1237
1223
 
1238
- device_model: Joi.string().allow("").allow(null),
1224
+ email_verified: Joi.boolean().required(),
1239
1225
 
1240
- identifier_type: Joi.string().allow("").allow(null),
1226
+ fathers_name: Joi.string().allow("").allow(null),
1241
1227
 
1242
- identification_number: Joi.string().allow("").allow(null),
1243
- });
1244
- }
1228
+ mobile_verified: Joi.boolean().required(),
1245
1229
 
1246
- static BusinessDetails() {
1247
- return Joi.object({
1248
- fssai: Joi.string().allow("").allow(null),
1230
+ last_name: Joi.string().allow("").allow(null),
1249
1231
 
1250
- gstin: Joi.string().allow("").allow(null),
1232
+ email: Joi.string().allow("").allow(null),
1251
1233
 
1252
- fda: Joi.string().allow("").allow(null),
1234
+ passport: Joi.string().allow("").allow(null),
1253
1235
 
1254
- business_ownership_type: Joi.string().allow("").allow(null),
1236
+ dob: Joi.string().allow("").allow(null).required(),
1255
1237
 
1256
- vintage: Joi.string().allow("").allow(null),
1238
+ pan: Joi.string().allow("").allow(null),
1257
1239
 
1258
- name: Joi.string().allow("").allow(null),
1240
+ driving_license: Joi.string().allow("").allow(null),
1259
1241
 
1260
- business_type: Joi.string().allow("").allow(null),
1242
+ middle_name: Joi.string().allow("").allow(null),
1261
1243
 
1262
- entity_type: Joi.string().allow("").allow(null),
1244
+ address_as_per_id: PaymentModel.KYCAddress().required(),
1263
1245
 
1264
- pan: Joi.string().allow("").allow(null),
1246
+ voter_id: Joi.string().allow("").allow(null),
1265
1247
 
1266
- address: PaymentModel.KYCAddress(),
1248
+ gender: Joi.string().allow("").allow(null),
1267
1249
 
1268
- shop_and_establishment: Joi.any(),
1250
+ first_name: Joi.string().allow("").required(),
1269
1251
  });
1270
1252
  }
1271
1253
 
@@ -1279,30 +1261,48 @@ class PaymentModel {
1279
1261
  });
1280
1262
  }
1281
1263
 
1282
- static CustomerOnboardingRequest() {
1264
+ static DeviceDetails() {
1283
1265
  return Joi.object({
1284
- aggregator: Joi.string().allow("").required(),
1266
+ device_make: Joi.string().allow("").allow(null),
1285
1267
 
1286
- personal_info: PaymentModel.UserPersonalInfoInDetails().required(),
1268
+ os_version: Joi.string().allow("").allow(null),
1287
1269
 
1288
- mcc: Joi.string().allow("").allow(null),
1270
+ device_type: Joi.string().allow("").allow(null),
1289
1271
 
1290
- device: PaymentModel.DeviceDetails(),
1272
+ device_model: Joi.string().allow("").allow(null),
1273
+
1274
+ identification_number: Joi.string().allow("").allow(null),
1275
+
1276
+ identifier_type: Joi.string().allow("").allow(null),
1277
+
1278
+ os: Joi.string().allow("").allow(null),
1279
+ });
1280
+ }
1291
1281
 
1282
+ static CustomerOnboardingRequest() {
1283
+ return Joi.object({
1292
1284
  business_info: PaymentModel.BusinessDetails(),
1293
1285
 
1294
- source: Joi.string().allow("").required(),
1286
+ personal_info: PaymentModel.UserPersonalInfoInDetails().required(),
1295
1287
 
1296
1288
  marketplace_info: PaymentModel.MarketplaceInfo(),
1289
+
1290
+ mcc: Joi.string().allow("").allow(null),
1291
+
1292
+ source: Joi.string().allow("").required(),
1293
+
1294
+ device: PaymentModel.DeviceDetails(),
1295
+
1296
+ aggregator: Joi.string().allow("").required(),
1297
1297
  });
1298
1298
  }
1299
1299
 
1300
1300
  static OnboardSummary() {
1301
1301
  return Joi.object({
1302
- redirect_url: Joi.string().allow("").required(),
1303
-
1304
1302
  session: Joi.any().required(),
1305
1303
 
1304
+ redirect_url: Joi.string().allow("").required(),
1305
+
1306
1306
  status: Joi.boolean().required(),
1307
1307
  });
1308
1308
  }