@gofynd/fdk-client-javascript 1.4.2-beta.1 → 1.4.2-beta.10

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 (265) hide show
  1. package/README.md +1 -1
  2. package/package.json +3 -2
  3. package/sdk/application/ApplicationClient.js +20 -0
  4. package/sdk/application/Cart/CartApplicationClient.d.ts +1 -1
  5. package/sdk/application/Cart/CartApplicationClient.js +3 -5
  6. package/sdk/application/Cart/CartApplicationModel.d.ts +1634 -1742
  7. package/sdk/application/Cart/CartApplicationModel.js +1388 -1464
  8. package/sdk/application/Cart/CartApplicationValidator.d.ts +0 -4
  9. package/sdk/application/Cart/CartApplicationValidator.js +0 -4
  10. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +6 -3
  11. package/sdk/application/Catalog/CatalogApplicationClient.js +20 -7
  12. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +1917 -1917
  13. package/sdk/application/Catalog/CatalogApplicationModel.js +1613 -1613
  14. package/sdk/application/Catalog/CatalogApplicationValidator.d.ts +14 -0
  15. package/sdk/application/Catalog/CatalogApplicationValidator.js +6 -0
  16. package/sdk/application/Common/CommonApplicationModel.d.ts +235 -235
  17. package/sdk/application/Common/CommonApplicationModel.js +172 -172
  18. package/sdk/application/Communication/CommunicationApplicationModel.d.ts +72 -72
  19. package/sdk/application/Communication/CommunicationApplicationModel.js +64 -64
  20. package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +1492 -1626
  21. package/sdk/application/Configuration/ConfigurationApplicationModel.js +1038 -1180
  22. package/sdk/application/Content/ContentApplicationClient.d.ts +0 -36
  23. package/sdk/application/Content/ContentApplicationClient.js +0 -246
  24. package/sdk/application/Content/ContentApplicationModel.d.ts +546 -753
  25. package/sdk/application/Content/ContentApplicationModel.js +565 -817
  26. package/sdk/application/Content/ContentApplicationValidator.d.ts +1 -40
  27. package/sdk/application/Content/ContentApplicationValidator.js +0 -41
  28. package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +79 -79
  29. package/sdk/application/FileStorage/FileStorageApplicationModel.js +84 -84
  30. package/sdk/application/Lead/LeadApplicationModel.d.ts +417 -417
  31. package/sdk/application/Lead/LeadApplicationModel.js +301 -301
  32. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +0 -67
  33. package/sdk/application/Logistic/LogisticApplicationClient.js +0 -547
  34. package/sdk/application/Logistic/LogisticApplicationModel.d.ts +257 -712
  35. package/sdk/application/Logistic/LogisticApplicationModel.js +267 -755
  36. package/sdk/application/Logistic/LogisticApplicationValidator.d.ts +1 -211
  37. package/sdk/application/Logistic/LogisticApplicationValidator.js +0 -131
  38. package/sdk/application/Order/OrderApplicationClient.d.ts +3 -3
  39. package/sdk/application/Order/OrderApplicationClient.js +8 -32
  40. package/sdk/application/Order/OrderApplicationModel.d.ts +845 -853
  41. package/sdk/application/Order/OrderApplicationModel.js +816 -824
  42. package/sdk/application/Order/OrderApplicationValidator.d.ts +0 -20
  43. package/sdk/application/Order/OrderApplicationValidator.js +0 -8
  44. package/sdk/application/Payment/PaymentApplicationClient.d.ts +2 -46
  45. package/sdk/application/Payment/PaymentApplicationClient.js +10 -341
  46. package/sdk/application/Payment/PaymentApplicationModel.d.ts +1892 -2199
  47. package/sdk/application/Payment/PaymentApplicationModel.js +1235 -1506
  48. package/sdk/application/Payment/PaymentApplicationValidator.d.ts +14 -59
  49. package/sdk/application/Payment/PaymentApplicationValidator.js +10 -64
  50. package/sdk/application/PosCart/PosCartApplicationModel.d.ts +1396 -1429
  51. package/sdk/application/PosCart/PosCartApplicationModel.js +1233 -1257
  52. package/sdk/application/Rewards/RewardsApplicationModel.d.ts +214 -214
  53. package/sdk/application/Rewards/RewardsApplicationModel.js +211 -211
  54. package/sdk/application/Share/ShareApplicationModel.d.ts +114 -114
  55. package/sdk/application/Share/ShareApplicationModel.js +121 -121
  56. package/sdk/application/Theme/ThemeApplicationClient.d.ts +1 -1
  57. package/sdk/application/Theme/ThemeApplicationClient.js +3 -7
  58. package/sdk/application/Theme/ThemeApplicationModel.d.ts +783 -969
  59. package/sdk/application/Theme/ThemeApplicationModel.js +571 -867
  60. package/sdk/application/Theme/ThemeApplicationValidator.d.ts +0 -10
  61. package/sdk/application/Theme/ThemeApplicationValidator.js +0 -4
  62. package/sdk/application/User/UserApplicationClient.d.ts +0 -33
  63. package/sdk/application/User/UserApplicationClient.js +0 -239
  64. package/sdk/application/User/UserApplicationModel.d.ts +753 -768
  65. package/sdk/application/User/UserApplicationModel.js +731 -755
  66. package/sdk/application/User/UserApplicationValidator.d.ts +1 -34
  67. package/sdk/application/User/UserApplicationValidator.js +0 -36
  68. package/sdk/common/Clickstream.d.ts +1 -0
  69. package/sdk/common/Clickstream.js +254 -0
  70. package/sdk/common/Utility.js +1 -4
  71. package/sdk/partner/FileStorage/FileStoragePartnerModel.d.ts +72 -60
  72. package/sdk/partner/FileStorage/FileStoragePartnerModel.js +70 -58
  73. package/sdk/partner/PartnerClient.d.ts +0 -6
  74. package/sdk/partner/PartnerClient.js +0 -9
  75. package/sdk/partner/Theme/ThemePartnerClient.d.ts +0 -10
  76. package/sdk/partner/Theme/ThemePartnerClient.js +0 -80
  77. package/sdk/partner/Theme/ThemePartnerModel.d.ts +1178 -1153
  78. package/sdk/partner/Theme/ThemePartnerModel.js +830 -974
  79. package/sdk/partner/Theme/ThemePartnerValidator.d.ts +0 -1
  80. package/sdk/partner/Theme/ThemePartnerValidator.js +0 -9
  81. package/sdk/partner/index.d.ts +0 -3
  82. package/sdk/partner/index.js +0 -6
  83. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +2 -2
  84. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +123 -123
  85. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +109 -109
  86. package/sdk/platform/Billing/BillingPlatformClient.d.ts +1 -11
  87. package/sdk/platform/Billing/BillingPlatformClient.js +3 -110
  88. package/sdk/platform/Billing/BillingPlatformModel.d.ts +734 -800
  89. package/sdk/platform/Billing/BillingPlatformModel.js +732 -810
  90. package/sdk/platform/Billing/BillingPlatformValidator.d.ts +4 -43
  91. package/sdk/platform/Billing/BillingPlatformValidator.js +2 -29
  92. package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +11 -1
  93. package/sdk/platform/Cart/CartPlatformApplicationClient.js +81 -7
  94. package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +13 -5
  95. package/sdk/platform/Cart/CartPlatformApplicationValidator.js +12 -4
  96. package/sdk/platform/Cart/CartPlatformModel.d.ts +3223 -3328
  97. package/sdk/platform/Cart/CartPlatformModel.js +2875 -2946
  98. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +11 -15
  99. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +21 -52
  100. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +0 -27
  101. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +0 -11
  102. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +15 -27
  103. package/sdk/platform/Catalog/CatalogPlatformClient.js +93 -189
  104. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +617 -920
  105. package/sdk/platform/Catalog/CatalogPlatformModel.js +584 -919
  106. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +27 -41
  107. package/sdk/platform/Catalog/CatalogPlatformValidator.js +19 -31
  108. package/sdk/platform/Common/CommonPlatformModel.d.ts +255 -255
  109. package/sdk/platform/Common/CommonPlatformModel.js +187 -187
  110. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +37 -139
  111. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +52 -737
  112. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +3 -133
  113. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +1 -113
  114. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +1079 -1228
  115. package/sdk/platform/Communication/CommunicationPlatformModel.js +1090 -1262
  116. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +2 -8
  117. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +4 -32
  118. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +629 -658
  119. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +641 -675
  120. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.d.ts +0 -14
  121. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.js +0 -6
  122. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +8 -8
  123. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +4 -4
  124. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +2992 -3231
  125. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +2092 -2303
  126. package/sdk/platform/Configuration/ConfigurationPlatformValidator.d.ts +2 -2
  127. package/sdk/platform/Configuration/ConfigurationPlatformValidator.js +2 -2
  128. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +0 -391
  129. package/sdk/platform/Content/ContentPlatformApplicationClient.js +1074 -3656
  130. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +1 -351
  131. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +0 -410
  132. package/sdk/platform/Content/ContentPlatformModel.d.ts +972 -2071
  133. package/sdk/platform/Content/ContentPlatformModel.js +1039 -2355
  134. package/sdk/platform/Discount/DiscountPlatformClient.d.ts +2 -2
  135. package/sdk/platform/Discount/DiscountPlatformClient.js +2 -2
  136. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +174 -259
  137. package/sdk/platform/Discount/DiscountPlatformModel.js +163 -257
  138. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +6 -16
  139. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +8 -117
  140. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +4 -55
  141. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +2 -39
  142. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +821 -892
  143. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +833 -901
  144. package/sdk/platform/Finance/FinancePlatformClient.d.ts +0 -33
  145. package/sdk/platform/Finance/FinancePlatformClient.js +0 -240
  146. package/sdk/platform/Finance/FinancePlatformModel.d.ts +910 -1056
  147. package/sdk/platform/Finance/FinancePlatformModel.js +884 -1070
  148. package/sdk/platform/Finance/FinancePlatformValidator.d.ts +1 -38
  149. package/sdk/platform/Finance/FinancePlatformValidator.js +0 -38
  150. package/sdk/platform/Inventory/InventoryPlatformModel.d.ts +942 -942
  151. package/sdk/platform/Inventory/InventoryPlatformModel.js +1003 -1003
  152. package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +28 -38
  153. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +56 -137
  154. package/sdk/platform/Lead/LeadPlatformApplicationValidator.d.ts +29 -41
  155. package/sdk/platform/Lead/LeadPlatformApplicationValidator.js +21 -33
  156. package/sdk/platform/Lead/LeadPlatformModel.d.ts +601 -610
  157. package/sdk/platform/Lead/LeadPlatformModel.js +457 -471
  158. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +1 -11
  159. package/sdk/platform/Order/OrderPlatformApplicationClient.js +1 -93
  160. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +1 -28
  161. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +0 -18
  162. package/sdk/platform/Order/OrderPlatformClient.d.ts +22 -143
  163. package/sdk/platform/Order/OrderPlatformClient.js +160 -1190
  164. package/sdk/platform/Order/OrderPlatformModel.d.ts +4451 -5275
  165. package/sdk/platform/Order/OrderPlatformModel.js +4039 -4994
  166. package/sdk/platform/Order/OrderPlatformValidator.d.ts +21 -257
  167. package/sdk/platform/Order/OrderPlatformValidator.js +15 -216
  168. package/sdk/platform/Partner/PartnerPlatformModel.d.ts +22 -22
  169. package/sdk/platform/Partner/PartnerPlatformModel.js +22 -22
  170. package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +13 -119
  171. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +40 -750
  172. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +7 -143
  173. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +6 -133
  174. package/sdk/platform/Payment/PaymentPlatformClient.d.ts +1 -1
  175. package/sdk/platform/Payment/PaymentPlatformClient.js +1 -1
  176. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +2067 -2929
  177. package/sdk/platform/Payment/PaymentPlatformModel.js +1427 -2090
  178. package/sdk/platform/PlatformApplicationClient.d.ts +2 -2
  179. package/sdk/platform/PlatformApplicationClient.js +4 -4
  180. package/sdk/platform/PlatformClient.d.ts +2 -4
  181. package/sdk/platform/PlatformClient.js +4 -8
  182. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +204 -204
  183. package/sdk/platform/Rewards/RewardsPlatformModel.js +199 -199
  184. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +66 -142
  185. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +147 -645
  186. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +63 -131
  187. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +47 -126
  188. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +105 -217
  189. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +349 -1138
  190. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +989 -1588
  191. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +977 -1695
  192. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +133 -382
  193. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +102 -266
  194. package/sdk/platform/Share/SharePlatformModel.d.ts +147 -147
  195. package/sdk/platform/Share/SharePlatformModel.js +139 -139
  196. package/sdk/platform/Theme/ThemePlatformClient.d.ts +1 -11
  197. package/sdk/platform/Theme/ThemePlatformClient.js +3 -87
  198. package/sdk/platform/Theme/ThemePlatformModel.d.ts +765 -1133
  199. package/sdk/platform/Theme/ThemePlatformModel.js +561 -1009
  200. package/sdk/platform/Theme/ThemePlatformValidator.d.ts +4 -28
  201. package/sdk/platform/Theme/ThemePlatformValidator.js +2 -21
  202. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +1 -116
  203. package/sdk/platform/User/UserPlatformApplicationClient.js +86 -932
  204. package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +7 -224
  205. package/sdk/platform/User/UserPlatformApplicationValidator.js +5 -173
  206. package/sdk/platform/User/UserPlatformModel.d.ts +428 -765
  207. package/sdk/platform/User/UserPlatformModel.js +428 -679
  208. package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +37 -45
  209. package/sdk/platform/Webhook/WebhookPlatformClient.js +57 -61
  210. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +403 -448
  211. package/sdk/platform/Webhook/WebhookPlatformModel.js +309 -369
  212. package/sdk/platform/Webhook/WebhookPlatformValidator.d.ts +10 -7
  213. package/sdk/platform/Webhook/WebhookPlatformValidator.js +6 -6
  214. package/sdk/platform/index.d.ts +1 -1
  215. package/sdk/platform/index.js +2 -2
  216. package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +237 -237
  217. package/sdk/public/Configuration/ConfigurationPublicModel.js +174 -174
  218. package/sdk/public/Inventory/InventoryPublicModel.d.ts +237 -237
  219. package/sdk/public/Inventory/InventoryPublicModel.js +257 -257
  220. package/sdk/public/Partner/PartnerPublicModel.d.ts +104 -104
  221. package/sdk/public/Partner/PartnerPublicModel.js +113 -113
  222. package/sdk/public/PublicClient.d.ts +0 -4
  223. package/sdk/public/PublicClient.js +0 -8
  224. package/sdk/public/Webhook/WebhookPublicClient.d.ts +0 -33
  225. package/sdk/public/Webhook/WebhookPublicClient.js +0 -242
  226. package/sdk/public/Webhook/WebhookPublicModel.d.ts +15 -161
  227. package/sdk/public/Webhook/WebhookPublicModel.js +13 -189
  228. package/sdk/public/Webhook/WebhookPublicValidator.d.ts +1 -23
  229. package/sdk/public/Webhook/WebhookPublicValidator.js +0 -31
  230. package/sdk/public/index.d.ts +0 -2
  231. package/sdk/public/index.js +0 -4
  232. package/sdk/partner/Lead/LeadPartnerClient.d.ts +0 -125
  233. package/sdk/partner/Lead/LeadPartnerClient.js +0 -785
  234. package/sdk/partner/Lead/LeadPartnerModel.d.ts +0 -1127
  235. package/sdk/partner/Lead/LeadPartnerModel.js +0 -896
  236. package/sdk/partner/Lead/LeadPartnerValidator.d.ts +0 -12
  237. package/sdk/partner/Lead/LeadPartnerValidator.js +0 -67
  238. package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +0 -155
  239. package/sdk/partner/Logistics/LogisticsPartnerClient.js +0 -1195
  240. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +0 -372
  241. package/sdk/partner/Logistics/LogisticsPartnerModel.js +0 -442
  242. package/sdk/partner/Logistics/LogisticsPartnerValidator.d.ts +0 -16
  243. package/sdk/partner/Logistics/LogisticsPartnerValidator.js +0 -123
  244. package/sdk/partner/Webhook/WebhookPartnerClient.d.ts +0 -99
  245. package/sdk/partner/Webhook/WebhookPartnerClient.js +0 -753
  246. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +0 -566
  247. package/sdk/partner/Webhook/WebhookPartnerModel.js +0 -583
  248. package/sdk/partner/Webhook/WebhookPartnerValidator.d.ts +0 -12
  249. package/sdk/partner/Webhook/WebhookPartnerValidator.js +0 -74
  250. package/sdk/platform/Content/ContentPlatformClient.d.ts +0 -277
  251. package/sdk/platform/Content/ContentPlatformClient.js +0 -2011
  252. package/sdk/platform/Content/ContentPlatformValidator.d.ts +0 -247
  253. package/sdk/platform/Content/ContentPlatformValidator.js +0 -319
  254. package/sdk/public/Billing/BillingPublicClient.d.ts +0 -23
  255. package/sdk/public/Billing/BillingPublicClient.js +0 -116
  256. package/sdk/public/Billing/BillingPublicModel.d.ts +0 -92
  257. package/sdk/public/Billing/BillingPublicModel.js +0 -96
  258. package/sdk/public/Billing/BillingPublicValidator.d.ts +0 -18
  259. package/sdk/public/Billing/BillingPublicValidator.js +0 -19
  260. package/sdk/public/Content/ContentPublicClient.d.ts +0 -22
  261. package/sdk/public/Content/ContentPublicClient.js +0 -114
  262. package/sdk/public/Content/ContentPublicModel.d.ts +0 -53
  263. package/sdk/public/Content/ContentPublicModel.js +0 -60
  264. package/sdk/public/Content/ContentPublicValidator.d.ts +0 -18
  265. package/sdk/public/Content/ContentPublicValidator.js +0 -19
@@ -1,2873 +1,2210 @@
1
1
  const Joi = require("joi");
2
2
 
3
3
  /**
4
- * @typedef AddBeneficiaryDetailsOTPRequest
5
- * @property {BankDetailsForOTP} details
6
- * @property {string} order_id
4
+ * @typedef PaymentGatewayConfigResponse
5
+ * @property {Object[]} [aggregators] - List of all speceific Payment options
6
+ * with their Details.
7
+ * @property {string} app_id - Application Id to which Payment config Mapped
8
+ * @property {string[]} excluded_fields - List of all excluded options with their Details.
9
+ * @property {boolean} success - Response is successful or not
10
+ * @property {boolean} created - Response is created or not
11
+ * @property {string[]} display_fields - List of all included options with their Details.
7
12
  */
8
13
 
9
14
  /**
10
- * @typedef AddressDetail
11
- * @property {string} address - Address details
12
- * @property {string} [address_type] - Address type e.g. home, office
13
- * @property {string} area - Area details
14
- * @property {string} area_code - Customer pin/zip code
15
- * @property {string} area_code_slug - Area slug code, use pin or zip code if
16
- * not available
17
- * @property {string} city - City name
18
- * @property {string} country - Country name
19
- * @property {string} country_iso_code - Country's code name e.g. `IN`, `GB`
20
- * @property {string} country_phone_code - Country's phone code
21
- * @property {string} [email] - Customer email
22
- * @property {string} [expire_at] - Address expiry timestamp
23
- * @property {string} g_address_id - Unique address id generated by Fynd platform
24
- * @property {Object} [geo_location] - Location latitude and logitude
25
- * @property {Object} [google_map_point] - Google map point of location
26
- * @property {string} [landmark] - Landmark
27
- * @property {string} name - Customer name
28
- * @property {string} phone - Phone number
29
- * @property {string} state - State of the customer
30
- * @property {Object[]} [tags] - Optional address tag
15
+ * @typedef ErrorCodeDescription
16
+ * @property {string} description - Error human understandable description.
17
+ * @property {string} code - Error descrption code.
18
+ * @property {boolean} success - Response is successful or not
31
19
  */
32
20
 
33
21
  /**
34
- * @typedef AdvanceObject
35
- * @property {string[]} [all_prepayment_type] - All available types of prepayment
36
- * @property {boolean} [allow_custom_advance_amount] - Is custom advance amount allowed?
37
- * @property {number} [amount] - Amount for Payment Breakdown
38
- * @property {string} [cancellation_type] - Type of cancellation
39
- * @property {string} [description] - The description for Advance Payment (user
40
- * configured)
41
- * @property {string} [display_name] - The display name for Advance payment
42
- * @property {boolean} [is_active] - Is Advance Payment active
43
- * @property {string} [prepayment_type] - Type of prepayment value
44
- * @property {number} [prepayment_value] - Value for prepayment in advance payment
45
- * @property {number} [refund_time_limit] - Time limit for processing refund
46
- * @property {string} [time_unit] - Time unit for refunds
22
+ * @typedef PaymentGatewayConfig
23
+ * @property {string} secret - Secret Key of the payment aggregator
24
+ * @property {string} config_type - Config Type of the aggregator
25
+ * @property {boolean} [is_active] - Enable/ Disable Flag
26
+ * @property {string} key - Api key of the payment aggregator
27
+ * @property {string} merchant_salt - Merchant key of the payment aggregator
47
28
  */
48
29
 
49
30
  /**
50
- * @typedef AdvancePaymentObject
51
- * @property {AdvanceObject} [advance]
52
- * @property {string} [display_name] - Display name for Advance Payment Mode
53
- * @property {number} [display_priority] - Display Priority for Payment Option
54
- * @property {PaymentModeList[]} [list] - Payment mode
55
- * @property {string} [name] - Name of Advance Payment Mode
56
- * @property {number} [payment_mode_id] - Payment Mode ID for Advance Payment Option
57
- * @property {SplitObject} [split]
31
+ * @typedef PaymentGatewayConfigRequest
32
+ * @property {string} app_id - Application Id to which Payment config Mapped
33
+ * @property {boolean} [is_active] - Enable/ Disable Flag
34
+ * @property {PaymentGatewayConfig} [aggregator_name]
58
35
  */
59
36
 
60
37
  /**
61
- * @typedef AggregatorControlRequest
62
- * @property {string} [business_unit] - Business unit
63
- * @property {string} [device] - Device name
64
- * @property {Object[]} [items] - List of item details with respect to payment_mode
65
- * @property {AggregatorVersionRequestSchema} [version]
38
+ * @typedef PaymentGatewayToBeReviewed
39
+ * @property {string[]} aggregator - List of added payment gateway
40
+ * @property {boolean} success - Response is successful or not
66
41
  */
67
42
 
68
43
  /**
69
- * @typedef AggregatorRoute
70
- * @property {string} [api_link] - Api_link
71
- * @property {Object} [data] - Data
72
- * @property {string} [payment_flow] - Payment_flow
73
- * @property {string} [payment_flow_data] - Payment_flow_data
44
+ * @typedef ErrorCodeAndDescription
45
+ * @property {string} description - Error human understandable description.
46
+ * @property {string} code - Error descrption code.
74
47
  */
75
48
 
76
49
  /**
77
- * @typedef AggregatorVersionItemSchema
78
- * @property {string} [is_equal_to]
79
- * @property {string} [is_greater_than]
80
- * @property {string} [is_less_than]
50
+ * @typedef HttpErrorCodeAndResponse
51
+ * @property {ErrorCodeAndDescription} error
52
+ * @property {boolean} success - Response is successful or not
81
53
  */
82
54
 
83
55
  /**
84
- * @typedef AggregatorVersionRequestSchema
85
- * @property {string} [is_equal_to]
86
- * @property {string} [is_greater_than]
87
- * @property {string} [is_less_than]
56
+ * @typedef IntentAppErrorList
57
+ * @property {string} [package_name] - Package_name
58
+ * @property {string} [code] - Code
88
59
  */
89
60
 
90
61
  /**
91
- * @typedef AggregatorVersionResponse
92
- * @property {AggregatorVersionItemSchema} [items]
93
- * @property {string} message - Message
94
- * @property {boolean} success - Successful or failure
62
+ * @typedef ProductCODData
63
+ * @property {Object} [items] - Item id with its cod availability.
64
+ * @property {Object} [cod_charges] - Cod charges and its allowed limits.
95
65
  */
96
66
 
97
67
  /**
98
- * @typedef BankDetailsForOTP
99
- * @property {string} account_holder
100
- * @property {string} account_no
101
- * @property {string} bank_name
102
- * @property {string} branch_name
103
- * @property {string} ifsc_code
68
+ * @typedef CODChargesLimitsResponse
69
+ * @property {number} [max_cart_value] - Max allowed cart value for cod order.
70
+ * @property {number} [min_cart_value] - Min allowed cart value for cod order.
71
+ * @property {number} [cod_charge] - Cod charges to be applied on order.
104
72
  */
105
73
 
106
74
  /**
107
- * @typedef CancelOrResendPaymentLinkRequest
108
- * @property {string} payment_link_id - Unique id of payment link
75
+ * @typedef PaymentModeLogo
76
+ * @property {string} large - Large
77
+ * @property {string} small - Smalll
109
78
  */
110
79
 
111
80
  /**
112
- * @typedef CancelPaymentLinkResponse
113
- * @property {string} message - Message
114
- * @property {number} status_code - HTTP status code
115
- * @property {boolean} success - Successful or failure
81
+ * @typedef IntentApp
82
+ * @property {string} [package_name] - Package_name
83
+ * @property {string} [display_name] - Display_name
84
+ * @property {string} [code] - Code
85
+ * @property {Object} [logos] - Logos
116
86
  */
117
87
 
118
88
  /**
119
- * @typedef CartDetailsSerializer
120
- * @property {Object[]} articles - List of articles that are added in cart
121
- * @property {number} cart_value - Total cart value i.e. amount to be paid
122
- * @property {Object} items - Items that are added in cart
123
- * @property {number} [total_quantity] - Total number of items in cart
89
+ * @typedef PaymentModeList
90
+ * @property {number} [remaining_limit] - Remaining limit
91
+ * @property {string} [card_brand] - Card_brand
92
+ * @property {string} [card_fingerprint] - Card_fingerprint
93
+ * @property {string} [merchant_code] - Merchant code
94
+ * @property {boolean} [intent_flow] - Intent_flow
95
+ * @property {string} [code] - Code
96
+ * @property {string} [card_issuer] - Card_issuer
97
+ * @property {number} [cod_limit_per_order] - Cod limit per order
98
+ * @property {string} [card_reference] - Card_reference
99
+ * @property {string} [card_type] - Card_type
100
+ * @property {string} [card_isin] - Card_isin
101
+ * @property {number} [exp_month] - Exp_month
102
+ * @property {string} [fynd_vpa] - Fynd_vpa
103
+ * @property {string} [card_number] - Card_number
104
+ * @property {number} [display_priority] - Dispaly Priority
105
+ * @property {string} [display_name] - Display name
106
+ * @property {string} [card_id] - Card_id
107
+ * @property {number} [retry_count] - Retry_count
108
+ * @property {string} [card_name] - Card_name
109
+ * @property {number} [timeout] - Timeout
110
+ * @property {IntentAppErrorList[]} [intent_app_error_dict_list] -
111
+ * Intent_app_error_dict_list
112
+ * @property {string} [card_brand_image] - Card_brand_image
113
+ * @property {boolean} [expired] - Expired
114
+ * @property {Object} [logo_url] - Logo
115
+ * @property {string} [card_token] - Card_token
116
+ * @property {string} aggregator_name - Aggregator_name
117
+ * @property {number} [cod_charges] - Cod charges to be applied on order.
118
+ * @property {Object} [product_cod_data] - Product cod configurations.
119
+ * @property {number} [cod_limit] - Cod limit
120
+ * @property {IntentApp[]} [intent_app] - Intent_app
121
+ * @property {string} [nickname] - Nickname
122
+ * @property {boolean} [compliant_with_tokenisation_guidelines] - If card is
123
+ * tokenised or not
124
+ * @property {number} [exp_year] - Exp_year
125
+ * @property {string} [name] - Name
126
+ * @property {string[]} [intent_app_error_list] - Intent_app_error_list
124
127
  */
125
128
 
126
129
  /**
127
- * @typedef CODChargesLimitsResponse
128
- * @property {number} [cod_charge] - Cod charges to be applied on order.
129
- * @property {number} [max_cart_value] - Max allowed cart value for cod order.
130
- * @property {number} [min_cart_value] - Min allowed cart value for cod order.
130
+ * @typedef RootPaymentMode
131
+ * @property {PaymentModeList[]} [list] - Payment mode
132
+ * @property {number} display_priority - Dispaly Priority
133
+ * @property {boolean} [add_card_enabled] - Annonymous card flag
134
+ * @property {boolean} [save_card] - Card save or not
135
+ * @property {boolean} [is_pay_by_card_pl] - This flag will be true in case of
136
+ * Payment link payment through card
137
+ * @property {string} display_name - Payment mode display name
138
+ * @property {boolean} [anonymous_enable] - Annonymous card flag
139
+ * @property {string} name - Payment mode name
140
+ * @property {string} [aggregator_name] - Dispaly Priority
131
141
  */
132
142
 
133
143
  /**
134
- * @typedef CODdata
135
- * @property {boolean} is_active - COD option is active or not
136
- * @property {number} limit - Total Limit of user
137
- * @property {number} remaining_limit - Remaining Limit for COD of User
138
- * @property {number} usages - Used COD limit from the user Limit
139
- * @property {string} user_id - Payment mode name
144
+ * @typedef PaymentOptions
145
+ * @property {RootPaymentMode[]} payment_option - Payment options
140
146
  */
141
147
 
142
148
  /**
143
- * @typedef Code
144
- * @property {string} code - Payment Method Code
145
- * @property {string} merchant_code - Merchant Payment Code
146
- * @property {string} name - Name of payment method
149
+ * @typedef PaymentOptionsResponse
150
+ * @property {PaymentOptions} payment_options - Payment options
151
+ * @property {boolean} success - Response is successful or not
147
152
  */
148
153
 
149
154
  /**
150
- * @typedef CreatePaymentLinkMeta
151
- * @property {string} amount
152
- * @property {string} [assign_card_id]
153
- * @property {string} cart_id
154
- * @property {string} checkout_mode
155
+ * @typedef PayoutCustomer
156
+ * @property {string} [unique_external_id] - Unique_external_id
157
+ * @property {string} [mobile] - Customer Mobile No
158
+ * @property {string} [name] - Customer Name
159
+ * @property {string} [email] - Customer Email
160
+ * @property {number} [id] - Customer ID
155
161
  */
156
162
 
157
163
  /**
158
- * @typedef CreatePaymentLinkRequest
159
- * @property {number} amount - Total value of order
160
- * @property {string} [country_phone_code] - Phone country code for complete mobile number
161
- * @property {string} [description] - Merchant order id
162
- * @property {string} email - Email to which the payment link is to be sent
163
- * @property {string} external_order_id - Merchant order id
164
- * @property {CreatePaymentLinkMeta} meta
165
- * @property {string} mobile_number - Mobile number to which the payment link is
166
- * to be sent
164
+ * @typedef PayoutMoreAttributes
165
+ * @property {string} [branch_name] - Branch Name
166
+ * @property {string} [city] - City
167
+ * @property {string} [account_no] - Account Number
168
+ * @property {string} [country] - Country
169
+ * @property {string} [state] - State
170
+ * @property {string} [account_holder] - Account Holder Name
171
+ * @property {string} [ifsc_code] - IFSC Code
172
+ * @property {string} [account_type] - Account Type Saving/Current
173
+ * @property {string} [bank_name] - Name of Bank
167
174
  */
168
175
 
169
176
  /**
170
- * @typedef CreatePaymentLinkResponse
171
- * @property {string} message - Message
172
- * @property {string} [payment_link_id] - Unique id of payment link
173
- * @property {string} [payment_link_url] - Url of payment link
174
- * @property {number} [polling_timeout] - Polling request timeout
175
- * @property {number} status_code - HTTP status code
176
- * @property {boolean} success - Successful or failure
177
+ * @typedef PayoutAggregator
178
+ * @property {number} [aggregator_id] - Aggregator_id
179
+ * @property {number} [aggregator_fund_id] - Aggregator_fund_id
180
+ * @property {number} [payout_details_id] - Payout_details_id
177
181
  */
178
182
 
179
183
  /**
180
- * @typedef DeletePayoutResponse
184
+ * @typedef Payout
185
+ * @property {PayoutCustomer} customers - Customers details object
186
+ * @property {PayoutMoreAttributes} more_attributes - Bank details object
187
+ * @property {boolean} is_default - Default or not
188
+ * @property {PayoutAggregator[]} [payouts_aggregators]
189
+ * @property {string} unique_transfer_no - Display priority of the payment mode
190
+ * @property {boolean} is_active - Enable/DIsable Flag Payout
191
+ * @property {string} transfer_type - Transafer type
192
+ */
193
+
194
+ /**
195
+ * @typedef PayoutsResponse
181
196
  * @property {boolean} success - Response is successful or not
197
+ * @property {Payout[]} items - Contains list of PayoutSchema
182
198
  */
183
199
 
184
200
  /**
185
- * @typedef DeleteSubscriptionPaymentMethodResponse
186
- * @property {boolean} success - Success or failure.
201
+ * @typedef PayoutBankDetails
202
+ * @property {string} ifsc_code
203
+ * @property {string} [account_holder]
204
+ * @property {string} [state]
205
+ * @property {string} [country]
206
+ * @property {string} account_type
207
+ * @property {string} [account_no]
208
+ * @property {string} [city]
209
+ * @property {string} [bank_name]
210
+ * @property {string} [branch_name]
211
+ * @property {number} [pincode]
187
212
  */
188
213
 
189
214
  /**
190
- * @typedef EdcAddRequest
191
- * @property {number} aggregator_id - Aggregator which will accept payment
192
- * @property {string} [device_tag] - Device tag of edc device to identify it
193
- * @property {string} edc_device_serial_no - Serial number or imei of EDC device
194
- * @property {string} edc_model - Model of the edc machine
195
- * @property {number} store_id - Store at which devices is to used
196
- * @property {string} terminal_serial_no - Device serial number of
197
- * terminal(android tablet)
215
+ * @typedef PayoutRequest
216
+ * @property {string} aggregator - Aggregator Name
217
+ * @property {Object} users - Payout users object
218
+ * @property {string} unique_external_id - Unique Id of Payout
219
+ * @property {boolean} is_active - Enable/Disable Flag Payout
220
+ * @property {PayoutBankDetails} bank_details - Payout bank details object
221
+ * @property {string} transfer_type - Transafer type
198
222
  */
199
223
 
200
224
  /**
201
- * @typedef EdcAggregatorAndModelListResponse
202
- * @property {EdcModelData[]} data - List of aggregators and their edc models
225
+ * @typedef PayoutResponse
226
+ * @property {string} payment_status - Status of payment
227
+ * @property {Object} users - Users details object
228
+ * @property {string} aggregator - Aggregator Name
229
+ * @property {string} unique_transfer_no - Unique transfer no
230
+ * @property {boolean} is_active - Enable/DIsable Flag Payout
231
+ * @property {Object} bank_details - Payout bank_details object
203
232
  * @property {boolean} success - Response is successful or not
233
+ * @property {string} transfer_type - Transfer type
234
+ * @property {boolean} created - Created flag
235
+ * @property {Object} payouts - Payout object
204
236
  */
205
237
 
206
238
  /**
207
- * @typedef EdcDevice
208
- * @property {number} aggregator_id - Aggregator which will accept payment
209
- * @property {string} [aggregator_name] - Name of the corresponding aggregator
210
- * @property {string} application_id - Application ID
211
- * @property {string} device_tag - Device tag of edc device to identify it
212
- * @property {string} edc_device_serial_no - Serial number of EDC device
213
- * @property {string} [edc_model] - Name of the model
214
- * @property {boolean} is_active - State whether device is active or inactive
215
- * @property {string} [merchant_store_pos_code] - This is provided by pinelabs
216
- * @property {number} store_id - Store at which devices is to used
217
- * @property {string} terminal_serial_no - Device serial number of
218
- * terminal(android tablet)
219
- * @property {string} terminal_unique_identifier - Genearated unique value for edc device
239
+ * @typedef UpdatePayoutResponse
240
+ * @property {boolean} is_default - Enable/Disable Default Payout
241
+ * @property {boolean} is_active - Enable/DIsable Flag Payout
242
+ * @property {boolean} success - Response is successful or not
220
243
  */
221
244
 
222
245
  /**
223
- * @typedef EdcDeviceAddResponse
224
- * @property {EdcDevice} data
225
- * @property {boolean} success - Response is successful or not
246
+ * @typedef UpdatePayoutRequest
247
+ * @property {boolean} is_default - Enable/Disable Default Payout
248
+ * @property {boolean} is_active - Enable/Disable Flag Payout
249
+ * @property {string} unique_external_id - Unique Id of Payout
226
250
  */
227
251
 
228
252
  /**
229
- * @typedef EdcDeviceDetailsResponse
230
- * @property {EdcDevice} data
253
+ * @typedef DeletePayoutResponse
231
254
  * @property {boolean} success - Response is successful or not
232
255
  */
233
256
 
234
257
  /**
235
- * @typedef EdcDeviceListResponse
236
- * @property {EdcDevice[]} items - List of all edc mapped to the application
237
- * options with their Details.
238
- * @property {Page} page
258
+ * @typedef SubscriptionPaymentMethodResponse
259
+ * @property {Object[]} data - Subscription Payment Method Object
239
260
  * @property {boolean} success - Response is successful or not
240
261
  */
241
262
 
242
263
  /**
243
- * @typedef EdcDeviceStatsResponse
244
- * @property {StatisticsData} statistics
245
- * @property {boolean} success - Response is successful or not
264
+ * @typedef DeleteSubscriptionPaymentMethodResponse
265
+ * @property {boolean} success - Success or failure.
246
266
  */
247
267
 
248
268
  /**
249
- * @typedef EdcDeviceUpdateResponse
269
+ * @typedef SubscriptionConfigResponse
270
+ * @property {string} aggregator - Aggregator Name
271
+ * @property {Object} config - Aggregator Config
250
272
  * @property {boolean} success - Response is successful or not
251
273
  */
252
274
 
253
275
  /**
254
- * @typedef EdcModelData
255
- * @property {string} aggregator - Name of aggregator
256
- * @property {number} aggregator_id - ID of aggregator
257
- * @property {string[]} models - List of string of edc models
276
+ * @typedef SaveSubscriptionSetupIntentRequest
277
+ * @property {string} unique_external_id - Unique id i.e company:id
258
278
  */
259
279
 
260
280
  /**
261
- * @typedef EdcUpdateRequest
262
- * @property {number} [aggregator_id] - Aggregator which will accept payment
263
- * @property {string} [device_tag] - Device tag of edc device to identify it
264
- * @property {string} [edc_device_serial_no] - Serial number or imei of EDC device
265
- * @property {string} [edc_model] - Model of the edc machine
266
- * @property {boolean} [is_active] - State whether device is active or inactive
267
- * @property {string} [merchant_store_pos_code] - This is provided by pinelabs
268
- * @property {number} [store_id] - Store at which devices is to used
281
+ * @typedef SaveSubscriptionSetupIntentResponse
282
+ * @property {Object} data - Subscription Payment Method Object
283
+ * @property {boolean} success - Response is successful or not
269
284
  */
270
285
 
271
286
  /**
272
- * @typedef ErrorCodeAndDescription
273
- * @property {string} code - Error descrption code.
274
- * @property {string} description - Error human understandable description.
287
+ * @typedef RefundAccountResponse
288
+ * @property {boolean} [is_verified_flag]
289
+ * @property {string} message - Response message
290
+ * @property {Object} [data] - Refund account data.
291
+ * @property {boolean} success - Success or failure flag.
275
292
  */
276
293
 
277
294
  /**
278
- * @typedef ErrorCodeDescription
279
- * @property {string} code - Error descrption code.
280
- * @property {string} description - Error human understandable description.
295
+ * @typedef NotFoundResourceError
296
+ * @property {string} description - Not Found
297
+ * @property {string} code - Bad Request Data
281
298
  * @property {boolean} success - Response is successful or not
282
299
  */
283
300
 
284
301
  /**
285
- * @typedef ErrorDescription
286
- * @property {number} [amount] - Amount paid
287
- * @property {boolean} [cancelled] - Payment link is cancelled or not
288
- * @property {boolean} [expired] - Payment link expired or not
289
- * @property {boolean} [invalid_id] - Payment link id is valid or not
290
- * @property {string} [merchant_name] - Name of merchant that created payment link
291
- * @property {string} [merchant_order_id] - Order id
292
- * @property {string} [msg] - Message
293
- * @property {string} [payment_transaction_id] - Payment transaction id
302
+ * @typedef BankDetailsForOTP
303
+ * @property {string} ifsc_code
304
+ * @property {string} account_no
305
+ * @property {string} branch_name
306
+ * @property {string} bank_name
307
+ * @property {string} account_holder
294
308
  */
295
309
 
296
310
  /**
297
- * @typedef ErrorResponse
298
- * @property {ErrorDescription} [error]
299
- * @property {string} message - Message
300
- * @property {number} status_code - HTTP status code
301
- * @property {boolean} success - Successful or failure
311
+ * @typedef AddBeneficiaryDetailsOTPRequest
312
+ * @property {string} order_id
313
+ * @property {BankDetailsForOTP} details
302
314
  */
303
315
 
304
316
  /**
305
- * @typedef FromConfig
306
- * @property {string} business_unit - Business unit name
307
- * @property {string} device - Device name
317
+ * @typedef IfscCodeResponse
318
+ * @property {string} branch_name - Branch Name Of Account
319
+ * @property {boolean} [success] - Response is successful or not
320
+ * @property {string} bank_name - Bank Name Of Account
308
321
  */
309
322
 
310
323
  /**
311
- * @typedef GetOauthUrlResponse
312
- * @property {boolean} success - Response is successful or not
313
- * @property {string} url - The url to call for authenticating
324
+ * @typedef OrderBeneficiaryDetails
325
+ * @property {string} subtitle - SHort Title Of Account
326
+ * @property {number} id -
327
+ * @property {string} title - Title Of Account
328
+ * @property {string} account_holder - Account Holder Name
329
+ * @property {string} ifsc_code - Ifsc Code Of Account
330
+ * @property {string} [comment] - Remarks
331
+ * @property {string} created_on - Creation Date of Beneficiary
332
+ * @property {string} display_name - Display Name Of Account
333
+ * @property {string} [delights_user_name] - User Id Who filled the Beneficiary
334
+ * @property {string} transfer_mode - Transfer Mode Of Account
335
+ * @property {string} email - EMail of User
336
+ * @property {boolean} is_active - Boolean Flag whether Beneficiary set or not
337
+ * @property {string} [branch_name] - Branch Name Of Account
338
+ * @property {string} address - Address of User
339
+ * @property {string} modified_on - MOdification Date of Beneficiary
340
+ * @property {string} beneficiary_id - Benenficiary Id
341
+ * @property {string} account_no - Account Number
342
+ * @property {string} bank_name - Bank Name Of Account
343
+ * @property {string} [mobile] - MObile no of User
314
344
  */
315
345
 
316
346
  /**
317
- * @typedef GetPaymentCode
318
- * @property {PaymentCode} method_code
347
+ * @typedef OrderBeneficiaryResponse
348
+ * @property {OrderBeneficiaryDetails[]} [beneficiaries] - All Beneficiaries Of An Order
349
+ * @property {boolean} [show_beneficiary_details] - Show beneficiary details or not.
319
350
  */
320
351
 
321
352
  /**
322
- * @typedef GetPaymentCodeResponse
323
- * @property {GetPaymentCode} data
324
- * @property {boolean} success - Response is successful or not.
353
+ * @typedef MultiTenderPaymentMeta
354
+ * @property {Object} [extra_meta]
355
+ * @property {string} [order_id]
356
+ * @property {string} [payment_id]
357
+ * @property {string} [current_status]
358
+ * @property {string} [payment_gateway]
325
359
  */
326
360
 
327
361
  /**
328
- * @typedef GetPaymentLinkResponse
329
- * @property {number} [amount] - Total value of order
330
- * @property {string} [external_order_id] - Merchant order id
331
- * @property {string} [merchant_name] - Merchant name
332
- * @property {string} message - Message
333
- * @property {string} [payment_link_current_status] - Status of payment link
334
- * @property {string} [payment_link_url] - Url of payment link
335
- * @property {number} [polling_timeout] - Polling request timeout
336
- * @property {number} status_code - HTTP status code
337
- * @property {boolean} success - Successful or failure
362
+ * @typedef MultiTenderPaymentMethod
363
+ * @property {string} [name] - Payment mode name
364
+ * @property {MultiTenderPaymentMeta} [meta]
365
+ * @property {number} amount - Payment amount
366
+ * @property {string} mode
338
367
  */
339
368
 
340
369
  /**
341
- * @typedef GetUserCODLimitResponse
342
- * @property {boolean} success - Response is successful or not
343
- * @property {CODdata} user_cod_data
370
+ * @typedef PaymentConfirmationRequest
371
+ * @property {string} order_id - Unique order id
372
+ * @property {MultiTenderPaymentMethod[]} payment_methods
344
373
  */
345
374
 
346
375
  /**
347
- * @typedef HttpErrorCodeAndResponse
348
- * @property {ErrorCodeAndDescription} error
349
- * @property {boolean} success - Response is successful or not
376
+ * @typedef PaymentConfirmationResponse
377
+ * @property {string} order_id - Unique order id
378
+ * @property {string} message - Message
379
+ * @property {boolean} success - Payment confirmation updated or not.
350
380
  */
351
381
 
352
382
  /**
353
- * @typedef IfscCodeResponse
354
- * @property {string} bank_name - Bank Name Of Account
355
- * @property {string} branch_name - Branch Name Of Account
356
- * @property {boolean} [success] - Response is successful or not
383
+ * @typedef CODdata
384
+ * @property {number} remaining_limit - Remaining Limit for COD of User
385
+ * @property {string} user_id - Payment mode name
386
+ * @property {boolean} is_active - COD option is active or not
387
+ * @property {number} limit - Total Limit of user
388
+ * @property {number} usages - Used COD limit from the user Limit
357
389
  */
358
390
 
359
391
  /**
360
- * @typedef IntentApp
361
- * @property {string} [code] - Code
362
- * @property {string} [display_name] - Display_name
363
- * @property {PaymentModeLogo} [logos]
364
- * @property {string} [package_name] - Package_name
392
+ * @typedef GetUserCODLimitResponse
393
+ * @property {CODdata} user_cod_data - User COD Data
394
+ * @property {boolean} success - Response is successful or not
365
395
  */
366
396
 
367
397
  /**
368
- * @typedef IntentAppErrorList
369
- * @property {string} [code] - Code
370
- * @property {string} [package_name] - Package_name
398
+ * @typedef SetCODForUserRequest
399
+ * @property {string} mobileno - Mobile No. of User
400
+ * @property {boolean} is_active - Either true or false
401
+ * @property {string} merchant_user_id - Merchant User id
371
402
  */
372
403
 
373
404
  /**
374
- * @typedef LinkStatus
405
+ * @typedef SetCODOptionResponse
375
406
  * @property {string} message - Message
376
- * @property {string} status - Link action status
407
+ * @property {boolean} success - Response is successful or not
377
408
  */
378
409
 
379
410
  /**
380
- * @typedef MerchantOnBoardingRequest
381
- * @property {string} aggregator - Payment aggregator name
382
- * @property {string} app_id - Application id
383
- * @property {string} credit_line_id - Merchant ID at Ajiodhan's end
384
- * @property {string} status - Status
385
- * @property {string} user_id - Deadlock or Grimlock user id
411
+ * @typedef EdcModelData
412
+ * @property {string} aggregator - Name of aggregator
413
+ * @property {number} aggregator_id - ID of aggregator
414
+ * @property {string[]} models - List of string of edc models
386
415
  */
387
416
 
388
417
  /**
389
- * @typedef MerchantOnBoardingResponse
390
- * @property {Object} data
391
- * @property {boolean} success - Success/Failure of the transaction
418
+ * @typedef EdcAggregatorAndModelListResponse
419
+ * @property {EdcModelData[]} data - List of aggregators and their edc models
420
+ * @property {boolean} success - Response is successful or not
392
421
  */
393
422
 
394
423
  /**
395
- * @typedef MerchantPaymentModeRequest
396
- * @property {string} business_unit - Business unit
397
- * @property {Object} device - List of devices and its activation status
398
- * @property {Object[]} items - List of item details with respect to payment_mode
424
+ * @typedef StatisticsData
425
+ * @property {number} inactive_device_count - No of inactive devices
426
+ * @property {number} active_device_count - No of active devices
399
427
  */
400
428
 
401
429
  /**
402
- * @typedef MerchnatPaymentModeRequest
403
- * @property {Object} [offline] - Details to be updated for online payment configuration.
404
- * @property {Object} [online] - Details to be updated for offline payment configuration.
430
+ * @typedef EdcDeviceStatsResponse
431
+ * @property {StatisticsData} statistics - Message
432
+ * @property {boolean} success - Response is successful or not
405
433
  */
406
434
 
407
435
  /**
408
- * @typedef MultiTenderPaymentMeta
409
- * @property {string} [current_status]
410
- * @property {Object} [extra_meta]
411
- * @property {string} [order_id]
412
- * @property {string} [payment_gateway]
413
- * @property {string} [payment_id]
436
+ * @typedef EdcAddRequest
437
+ * @property {string} edc_model - Model of the edc machine
438
+ * @property {number} store_id - Store at which devices is to used
439
+ * @property {number} aggregator_id - Aggregator which will accept payment
440
+ * @property {string} edc_device_serial_no - Serial number or imei of EDC device
441
+ * @property {string} terminal_serial_no - Device serial number of
442
+ * terminal(android tablet)
443
+ * @property {string} [device_tag] - Device tag of edc device to identify it
414
444
  */
415
445
 
416
446
  /**
417
- * @typedef MultiTenderPaymentMethod
418
- * @property {number} amount - Payment amount
419
- * @property {MultiTenderPaymentMeta} [meta]
420
- * @property {string} mode
421
- * @property {string} [name] - Payment mode name
447
+ * @typedef EdcDevice
448
+ * @property {string} [edc_model] - Name of the model
449
+ * @property {number} store_id - Store at which devices is to used
450
+ * @property {number} aggregator_id - Aggregator which will accept payment
451
+ * @property {string} terminal_unique_identifier - Genearated unique value for edc device
452
+ * @property {string} edc_device_serial_no - Serial number of EDC device
453
+ * @property {boolean} is_active - State whether device is active or inactive
454
+ * @property {string} [aggregator_name] - Name of the corresponding aggregator
455
+ * @property {string} terminal_serial_no - Device serial number of
456
+ * terminal(android tablet)
457
+ * @property {string} [merchant_store_pos_code] - This is provided by pinelabs
458
+ * @property {string} device_tag - Device tag of edc device to identify it
459
+ * @property {string} application_id - Application ID
422
460
  */
423
461
 
424
462
  /**
425
- * @typedef NotFoundResourceError
426
- * @property {string} code - Bad Request Data
427
- * @property {string} description - Not Found
463
+ * @typedef EdcDeviceAddResponse
464
+ * @property {EdcDevice} data - Details of the EDC Device that is added
428
465
  * @property {boolean} success - Response is successful or not
429
466
  */
430
467
 
431
468
  /**
432
- * @typedef OrderBeneficiaryDetails
433
- * @property {string} account_holder - Account Holder Name
434
- * @property {string} account_no - Account Number
435
- * @property {string} address - Address of User
436
- * @property {string} bank_name - Bank Name Of Account
437
- * @property {string} beneficiary_id - Benenficiary Id
438
- * @property {string} [branch_name] - Branch Name Of Account
439
- * @property {string} [comment] - Remarks
440
- * @property {string} created_on - Creation Date of Beneficiary
441
- * @property {string} [delights_user_name] - User Id Who filled the Beneficiary
442
- * @property {string} display_name - Display Name Of Account
443
- * @property {string} email - EMail of User
444
- * @property {number} id -
445
- * @property {string} ifsc_code - Ifsc Code Of Account
446
- * @property {boolean} is_active - Boolean Flag whether Beneficiary set or not
447
- * @property {string} [mobile] - MObile no of User
448
- * @property {string} modified_on - MOdification Date of Beneficiary
449
- * @property {string} subtitle - SHort Title Of Account
450
- * @property {string} title - Title Of Account
451
- * @property {string} transfer_mode - Transfer Mode Of Account
469
+ * @typedef EdcDeviceDetailsResponse
470
+ * @property {EdcDevice} data - Details of one EDC Device
471
+ * @property {boolean} success - Response is successful or not
452
472
  */
453
473
 
454
474
  /**
455
- * @typedef OrderBeneficiaryResponse
456
- * @property {OrderBeneficiaryDetails[]} [beneficiaries] - All Beneficiaries Of An Order
457
- * @property {boolean} [show_beneficiary_details] - Show beneficiary details or not.
475
+ * @typedef EdcUpdateRequest
476
+ * @property {string} [edc_model] - Model of the edc machine
477
+ * @property {number} [store_id] - Store at which devices is to used
478
+ * @property {number} [aggregator_id] - Aggregator which will accept payment
479
+ * @property {string} [edc_device_serial_no] - Serial number or imei of EDC device
480
+ * @property {boolean} [is_active] - State whether device is active or inactive
481
+ * @property {string} [merchant_store_pos_code] - This is provided by pinelabs
482
+ * @property {string} [device_tag] - Device tag of edc device to identify it
458
483
  */
459
484
 
460
485
  /**
461
- * @typedef OrderDetail
462
- * @property {string} aggregator - Name of the payment gateway aggregator.
463
- * @property {Object} aggregator_order_details - Aggregator order details
464
- * generated by the payment gateway.
465
- * @property {number} amount - Amount paid.
466
- * @property {string} currency - Currency of the payment.
467
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
468
- * etc.) against which payment_session was initiated. This is generated by
469
- * Fynd payments platform and is unique.
470
- * @property {string} status - Order status created by payment gateway aggregator.
486
+ * @typedef EdcDeviceUpdateResponse
487
+ * @property {boolean} success - Response is successful or not
471
488
  */
472
489
 
473
490
  /**
474
491
  * @typedef Page
475
- * @property {number} [current]
476
- * @property {boolean} [has_next]
477
- * @property {boolean} [has_previous]
478
492
  * @property {number} [item_total]
479
493
  * @property {string} [next_id]
480
- * @property {number} [size]
494
+ * @property {boolean} [has_previous]
495
+ * @property {boolean} [has_next]
496
+ * @property {number} [current]
481
497
  * @property {string} type
498
+ * @property {number} [size]
482
499
  */
483
500
 
484
501
  /**
485
- * @typedef PaymentCode
486
- * @property {Code} codes
487
- * @property {string} name - Name of payment name
488
- * @property {string} networks - Payment networks
489
- * @property {string} types - Type of payment mode
502
+ * @typedef EdcDeviceListResponse
503
+ * @property {EdcDevice[]} items - List of all edc mapped to the application
504
+ * options with their Details.
505
+ * @property {Page} page - Pagination Response
506
+ * @property {boolean} success - Response is successful or not
490
507
  */
491
508
 
492
509
  /**
493
- * @typedef PaymentConfirmationRequest
494
- * @property {string} order_id - Unique order id
495
- * @property {MultiTenderPaymentMethod[]} payment_methods
510
+ * @typedef PaymentInitializationRequest
511
+ * @property {string} [razorpay_payment_id] - Payment gateway payment id
512
+ * @property {string} [device_id] - EDC machine Unique Identifier
513
+ * @property {string} email - Customer valid email
514
+ * @property {string} customer_id - Payment gateway customer id.
515
+ * @property {string} [vpa] - Customer vpa address
516
+ * @property {string} aggregator - Payment gateway name
517
+ * @property {string} order_id - Payment gateway order id
518
+ * @property {string} currency - Currency code.
519
+ * @property {number} amount - Payable amount.
520
+ * @property {string} contact - Customer valid mobile number
521
+ * @property {number} [timeout] - Payment polling timeout if not recieved response
522
+ * @property {string} merchant_order_id - Unique fynd order id
523
+ * @property {string} method - Payment method
496
524
  */
497
525
 
498
526
  /**
499
- * @typedef PaymentConfirmationResponse
500
- * @property {string} message - Message
501
- * @property {string} order_id - Unique order id
502
- * @property {boolean} success - Payment confirmation updated or not.
527
+ * @typedef PaymentInitializationResponse
528
+ * @property {string} [razorpay_payment_id] - Payment id.
529
+ * @property {string} [device_id] - EDC machine Unique Identifier
530
+ * @property {string} [upi_poll_url] - UPI poll url.
531
+ * @property {string} [customer_id] - Payment gateway customer id.
532
+ * @property {string} polling_url - Polling url.
533
+ * @property {string} [vpa] - Customer vpa address
534
+ * @property {string} aggregator - Payment gateway name
535
+ * @property {string} [currency] - Currency code.
536
+ * @property {string} merchant_order_id - Order id
537
+ * @property {number} [amount] - Payable amount.
538
+ * @property {number} [timeout] - Timeout.
539
+ * @property {string} [virtual_id] - Payment virtual address.
540
+ * @property {string} [bqr_image] - Bharath qr image url.
541
+ * @property {string} [aggregator_order_id] - Payment order id
542
+ * @property {boolean} success - Response is successful or not.
543
+ * @property {string} [status] - Status of payment.
544
+ * @property {string} method - Payment method
503
545
  */
504
546
 
505
547
  /**
506
- * @typedef PaymentCustomConfigCustomerRequestSchema
507
- * @property {number[]} [groups] - Customer groups.
508
- * @property {string} restriction - Customer restriction type.
548
+ * @typedef PaymentStatusUpdateRequest
549
+ * @property {string} [device_id] - EDC machine Unique Identifier
550
+ * @property {string} email - Customer valid email
551
+ * @property {string} customer_id - Payment gateway customer id.
552
+ * @property {string} [vpa] - Customer vpa address
553
+ * @property {string} aggregator - Payment gateway name
554
+ * @property {string} order_id - Payment gateway order id
555
+ * @property {string} currency - Currency code.
556
+ * @property {number} amount - Payable amount.
557
+ * @property {string} contact - Customer valid mobile number
558
+ * @property {string} merchant_order_id - Unique fynd order id
559
+ * @property {string} status - Status of payment.
560
+ * @property {string} method - Payment method
561
+ * @property {string} merchant_transaction_id - Unique fynd transaction id
509
562
  */
510
563
 
511
564
  /**
512
- * @typedef PaymentCustomConfigCustomerSchema
513
- * @property {number[]} [groups] - Customer groups.
514
- * @property {string} restriction - Customer restriction type.
515
- * @property {string[]} [types] - Customer types.
565
+ * @typedef PaymentStatusUpdateResponse
566
+ * @property {string} [redirect_url] - Redirect url
567
+ * @property {boolean} retry - Response is successful or not.
568
+ * @property {boolean} [success] - Response is successful or not
569
+ * @property {string} status - Payment status
570
+ * @property {string} aggregator_name - Payment gateway name
516
571
  */
517
572
 
518
573
  /**
519
- * @typedef PaymentCustomConfigDetailsRequestSchema
520
- * @property {PaymentCustomConfigCustomerRequestSchema} customer
521
- * @property {number} min_order_value - The minimum order value for the store
522
- * @property {PaymentCustomConfigModeSchema} payment_mode
574
+ * @typedef ResendOrCancelPaymentRequest
575
+ * @property {string} order_id - Unique order id
576
+ * @property {string} [device_id] - EDC machine Unique Identifier
577
+ * @property {string} request_type - Either resend or cancel
523
578
  */
524
579
 
525
580
  /**
526
- * @typedef PaymentCustomConfigDetailsSchema
527
- * @property {PaymentCustomConfigCustomerSchema} customer
528
- * @property {number} min_order_value - The minimum order value for the store
529
- * @property {PaymentCustomConfigModeSchema} payment_mode
581
+ * @typedef LinkStatus
582
+ * @property {boolean} status - Link action status
583
+ * @property {string} message - Message
530
584
  */
531
585
 
532
586
  /**
533
- * @typedef PaymentCustomConfigModeSchema
534
- * @property {boolean} available - Indicates whether the payment mode is available.
535
- * @property {string[]} [post_order] - Payment modes available for post-order.
536
- * @property {string[]} [pre_order] - Payment modes available for pre-order.
587
+ * @typedef ResendOrCancelPaymentResponse
588
+ * @property {LinkStatus} data - Data about link action status.
589
+ * @property {boolean} success - Response is successful or not.
537
590
  */
538
591
 
539
592
  /**
540
- * @typedef PaymentCustomConfigRequestSchema
541
- * @property {string} business_unit - The business unit to which the store belongs.
542
- * @property {PaymentCustomConfigDetailsRequestSchema[]} items
593
+ * @typedef PaymentStatusBulkHandlerRequest
594
+ * @property {string[]} merchant_order_id - List of order ids
543
595
  */
544
596
 
545
597
  /**
546
- * @typedef PaymentCustomConfigResponseSchema
547
- * @property {PaymentModeCustomConfigSchema[]} items
548
- * @property {string} message
549
- * @property {boolean} success
598
+ * @typedef PaymentObjectListSerializer
599
+ * @property {Object} user_object
600
+ * @property {string} modified_on
601
+ * @property {string} collected_by
602
+ * @property {string} created_on
603
+ * @property {Object} [refund_object]
604
+ * @property {string} id
605
+ * @property {string} [payment_id]
606
+ * @property {string} currency
607
+ * @property {string} current_status
608
+ * @property {Object} [aggregator_payment_object]
609
+ * @property {string} payment_mode
610
+ * @property {string} refunded_by
611
+ * @property {string} amount_in_paisa
612
+ * @property {string} payment_gateway
613
+ * @property {string} company_id
614
+ * @property {string} payment_mode_identifier
615
+ * @property {string} application_id
616
+ * @property {string[]} all_status
550
617
  */
551
618
 
552
619
  /**
553
- * @typedef PaymentDetailsSerializer
554
- * @property {string} [aggregator_customer_id] - Unique customer id generated by
555
- * payment gateway, not required for standard checkout.
556
- * @property {string} [aggregator_order_id] - Unique order id or payment request
557
- * id generated by payment gateway
558
- * @property {number} amount - Amount paid.
559
- * @property {number} amount_captured - Amount which is captured or credited to
560
- * merchant account
561
- * @property {number} [amount_refunded]
562
- * @property {string} [cancel_url] - Cancel url sent by Fynd platform at the
563
- * time of payment creation
564
- * @property {boolean} [captured] - Whether the payment is captured (credited to
565
- * merchant account) by payment gateway.
566
- * @property {string} [created] - Timestamp in epoch
567
- * @property {string} currency - Currency of the payment.
568
- * @property {string} g_user_id - Global user identifier - unique user id
569
- * generated by Fynd platform
570
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
571
- * etc.) against which payment_session was initiated. This is generated by
572
- * Fynd payments platform and is unique.
573
- * @property {string} [kind] - Optional kind of purchase/payment - one time
574
- * payment (sale) or subcription. defaults to sale.
575
- * @property {string} [locale] - User's locale
576
- * @property {string} [merchant_locale] - Merchant's locale
577
- * @property {Object} [meta] - Metadata
578
- * @property {string} mode - Test or live, test mode uses test credentials so
579
- * that actual payment is not created.
580
- * @property {string} [payment_id] - Unique transaction id generated by payment gateway
581
- * @property {Object[]} payment_methods - Method of payment
582
- * @property {string} status - Stautus of the payment
583
- * @property {string} [success_url] - Success url sent by Fynd platform at the
584
- * time of payment creation
620
+ * @typedef PaymentStatusObject
621
+ * @property {string} merchant_order_id
622
+ * @property {PaymentObjectListSerializer[]} [payment_object_list]
585
623
  */
586
624
 
587
625
  /**
588
- * @typedef PaymentFlow
589
- * @property {AggregatorRoute} [ajiodhan]
590
- * @property {AggregatorRoute} [bqr_razorpay]
591
- * @property {AggregatorRoute} [ccavenue]
592
- * @property {AggregatorRoute} [epaylater]
593
- * @property {AggregatorRoute} [fynd]
594
- * @property {AggregatorRoute} [jiopay]
595
- * @property {AggregatorRoute} [juspay]
596
- * @property {AggregatorRoute} [mswipe]
597
- * @property {AggregatorRoute} [payubiz]
598
- * @property {AggregatorRoute} [razorpay]
599
- * @property {AggregatorRoute} [rupifi]
600
- * @property {AggregatorRoute} [simpl]
601
- * @property {AggregatorRoute} [stripe]
626
+ * @typedef PaymentStatusBulkHandlerResponse
627
+ * @property {number} [count]
628
+ * @property {PaymentStatusObject[]} [data]
629
+ * @property {string} success
630
+ * @property {string} [error]
631
+ * @property {number} status
602
632
  */
603
633
 
604
634
  /**
605
- * @typedef PaymentGatewayConfig
606
- * @property {string} config_type - Config Type of the aggregator
607
- * @property {boolean} [is_active] - Enable or Disable Flag
608
- * @property {string} key - Api key of the payment aggregator
609
- * @property {string} merchant_salt - Merchant key of the payment aggregator
610
- * @property {string} secret - Secret Key of the payment aggregator
635
+ * @typedef GetOauthUrlResponse
636
+ * @property {string} url - The url to call for authenticating
637
+ * @property {boolean} success - Response is successful or not
611
638
  */
612
639
 
613
640
  /**
614
- * @typedef PaymentGatewayConfigRequest
615
- * @property {PaymentGatewayConfig} [aggregator_name]
616
- * @property {string} app_id - Application Id to which Payment config Mapped
617
- * @property {boolean} [is_active] - Enable or Disable Flag
641
+ * @typedef RevokeOAuthToken
642
+ * @property {string} message - The confirmation message of the token revoke.
643
+ * @property {boolean} success - Response is successful or not
618
644
  */
619
645
 
620
646
  /**
621
- * @typedef PaymentGatewayConfigResponse
622
- * @property {Object[]} [aggregators] - List of all speceific Payment options
623
- * with their Details.
624
- * @property {string} app_id - Application Id to which Payment config Mapped
625
- * @property {boolean} created - Response is created or not
626
- * @property {string[]} display_fields - List of all included options with their Details.
627
- * @property {string[]} excluded_fields - List of all excluded options with their Details.
628
- * @property {boolean} success - Response is successful or not
647
+ * @typedef RepaymentRequestDetails
648
+ * @property {string} fwd_shipment_id - Purchase Shipment Id
649
+ * @property {string} aggregator - Name of Payment Gateway
650
+ * @property {string} current_status - Status
651
+ * @property {string} merchant_order_id - Merchant's Order Id
652
+ * @property {number} amount - Amount to paid back
653
+ * @property {string} payment_mode - Payment Mode
654
+ * @property {number} outstanding_details_id - Outstanding details ID
655
+ * @property {string} aggregator_transaction_id - Unique Id for the transaction
656
+ * @property {string} aggregator_order_id - Id of payment gateway
657
+ * @property {string} payment_mode_identifier - Payment Mode Id
629
658
  */
630
659
 
631
660
  /**
632
- * @typedef PaymentGatewayToBeReviewed
633
- * @property {string[]} aggregator - List of added payment gateway
634
- * @property {boolean} success - Response is successful or not
661
+ * @typedef RepaymentDetailsSerialiserPayAll
662
+ * @property {number} total_amount - Total amount
663
+ * @property {string} extension_order_id - Order id created in extension
664
+ * @property {string} aggregator_transaction_id - Unique Id for the transaction
665
+ * @property {string} aggregator_order_id - Id of payment gateway
666
+ * @property {RepaymentRequestDetails[]} [shipment_details]
635
667
  */
636
668
 
637
669
  /**
638
- * @typedef PaymentInitializationRequest
639
- * @property {string} aggregator - Payment gateway name
640
- * @property {number} amount - Payable amount.
641
- * @property {string} contact - Customer valid mobile number
642
- * @property {string} currency - Currency code.
643
- * @property {string} customer_id - Payment gateway customer id.
644
- * @property {string} [device_id] - EDC machine Unique Identifier
645
- * @property {string} email - Customer valid email
646
- * @property {string} merchant_order_id - Unique fynd order id
647
- * @property {string} method - Payment method
648
- * @property {string} order_id - Payment gateway order id
649
- * @property {string} [razorpay_payment_id] - Payment gateway payment id
650
- * @property {number} [timeout] - Payment polling timeout if not recieved response
651
- * @property {string} [vpa] - Customer vpa address
670
+ * @typedef RepaymentResponse
671
+ * @property {Object} data
672
+ * @property {boolean} success - Success/Failure of the transaction
652
673
  */
653
674
 
654
675
  /**
655
- * @typedef PaymentInitializationResponse
656
- * @property {string} aggregator - Payment gateway name
657
- * @property {string} [aggregator_order_id] - Payment order id
658
- * @property {number} [amount] - Payable amount.
659
- * @property {string} [bqr_image] - Bharath qr image url.
660
- * @property {string} [currency] - Currency code.
661
- * @property {string} [customer_id] - Payment gateway customer id.
662
- * @property {string} [device_id] - EDC machine Unique Identifier
663
- * @property {string} merchant_order_id - Order id
664
- * @property {string} method - Payment method
665
- * @property {string} polling_url - Polling url.
666
- * @property {string} [razorpay_payment_id] - Payment id.
667
- * @property {string} [status] - Status of payment.
668
- * @property {boolean} success - Response is successful or not.
669
- * @property {number} [timeout] - Timeout.
670
- * @property {string} [upi_poll_url] - UPI poll url.
671
- * @property {string} [virtual_id] - Payment virtual address.
672
- * @property {string} [vpa] - Customer vpa address
676
+ * @typedef MerchantOnBoardingRequest
677
+ * @property {string} credit_line_id - Merchant ID at Ajiodhan's end
678
+ * @property {string} aggregator - Payment aggregator name
679
+ * @property {string} app_id - Application id
680
+ * @property {string} user_id - Deadlock/Grimlock user id
681
+ * @property {string} status - Status
673
682
  */
674
683
 
675
684
  /**
676
- * @typedef PaymentMethodsMetaOrder
677
- * @property {string} merchant_code - Merchant code
678
- * @property {string} payment_gateway - Payment gateway name
679
- * @property {string} payment_identifier - Payment identifier
685
+ * @typedef MerchantOnBoardingResponse
686
+ * @property {Object} data
687
+ * @property {boolean} success - Success/Failure of the transaction
680
688
  */
681
689
 
682
690
  /**
683
- * @typedef PaymentModeCustomConfigSchema
684
- * @property {string} business_unit - The business unit to which the store belongs.
685
- * @property {PaymentCustomConfigDetailsSchema} custom_config
686
- * @property {string} display_name - The display name of the store.
691
+ * @typedef ValidateCustomerRequest
692
+ * @property {string} phone_number - User mobile number without country code.
693
+ * @property {string} aggregator - Payment gateway name in camel case i.e Simpl, Rupifi
694
+ * @property {string} [payload] - Hashed payload string.
695
+ * @property {Object} [delivery_address] - Extra meta fields.
696
+ * @property {number} transaction_amount_in_paise - Payable amount in paise
697
+ * @property {Object[]} [order_items] - Extra meta fields.
698
+ * @property {Object} [merchant_params] - Extra meta fields.
699
+ * @property {Object} [billing_address] - Extra meta fields.
687
700
  */
688
701
 
689
702
  /**
690
- * @typedef PaymentModeList
691
- * @property {string} aggregator_name - Aggregator_name
692
- * @property {string} [card_brand] - Card_brand
693
- * @property {string} [card_brand_image] - Card_brand_image
694
- * @property {string} [card_fingerprint] - Card_fingerprint
695
- * @property {string} [card_id] - Card_id
696
- * @property {string} [card_isin] - Card_isin
697
- * @property {string} [card_issuer] - Card_issuer
698
- * @property {string} [card_name] - Card_name
699
- * @property {string} [card_number] - Card_number
700
- * @property {string} [card_reference] - Card_reference
701
- * @property {string} [card_token] - Card_token
702
- * @property {string} [card_type] - Card_type
703
- * @property {number} [cod_charges] - Cod charges to be applied on order.
704
- * @property {number} [cod_limit] - Cod limit
705
- * @property {number} [cod_limit_per_order] - Cod limit per order
706
- * @property {string} [code] - Code
707
- * @property {boolean} [compliant_with_tokenisation_guidelines] - If card is
708
- * tokenised or not
709
- * @property {string} [display_name] - Display name
710
- * @property {number} [display_priority] - Dispaly Priority
711
- * @property {number} [exp_month] - Exp_month
712
- * @property {number} [exp_year] - Exp_year
713
- * @property {boolean} [expired] - Expired
714
- * @property {string} [fynd_vpa] - Fynd_vpa
715
- * @property {IntentApp[]} [intent_app] - Intent_app
716
- * @property {IntentAppErrorList[]} [intent_app_error_dict_list] -
717
- * Intent_app_error_dict_list
718
- * @property {string[]} [intent_app_error_list] - Intent_app_error_list
719
- * @property {boolean} [intent_flow] - Intent_flow
720
- * @property {PaymentModeLogo} [logo_url]
721
- * @property {string} [merchant_code] - Merchant code
722
- * @property {string} [name] - Name
723
- * @property {string} [nickname] - Nickname
724
- * @property {ProductCODData} [product_cod_data]
725
- * @property {number} [remaining_limit] - Remaining limit
726
- * @property {number} [retry_count] - Retry_count
727
- * @property {number} [timeout] - Timeout
703
+ * @typedef ValidateCustomerResponse
704
+ * @property {string} message - Error or success message.
705
+ * @property {Object} data - Payment gateway response data
706
+ * @property {boolean} success - Response is successful or not
728
707
  */
729
708
 
730
709
  /**
731
- * @typedef PaymentModeLogo
732
- * @property {string} large - Large
733
- * @property {string} small - Smalll
710
+ * @typedef GetPaymentLinkResponse
711
+ * @property {string} message - Message
712
+ * @property {number} status_code - HTTP status code
713
+ * @property {number} [amount] - Total value of order
714
+ * @property {string} [merchant_name] - Merchant name
715
+ * @property {string} [payment_link_url] - Url of payment link
716
+ * @property {string} [payment_link_current_status] - Status of payment link
717
+ * @property {string} [external_order_id] - Merchant order id
718
+ * @property {number} [polling_timeout] - Polling request timeout
719
+ * @property {boolean} success - Successful or failure
734
720
  */
735
721
 
736
722
  /**
737
- * @typedef PaymentModeRouteResponse
738
- * @property {AdvancePaymentObject[]} [advance_payment] - Advance Payment Array
739
- * @property {Object} [payment_breakup] - Payment Breakup for advance payment
740
- * @property {PaymentOptionAndFlow} payment_options
741
- * @property {boolean} success - Response is successful or not
723
+ * @typedef ErrorDescription
724
+ * @property {string} [msg] - Message
725
+ * @property {string} [payment_transaction_id] - Payment transaction id
726
+ * @property {boolean} [invalid_id] - Payment link id is valid or not
727
+ * @property {string} [merchant_order_id] - Order id
728
+ * @property {string} [merchant_name] - Name of merchant that created payment link
729
+ * @property {number} [amount] - Amount paid
730
+ * @property {boolean} [expired] - Payment link expired or not
731
+ * @property {boolean} [cancelled] - Payment link is cancelled or not
742
732
  */
743
733
 
744
734
  /**
745
- * @typedef PaymentObjectListSerializer
746
- * @property {Object} [aggregator_payment_object]
747
- * @property {string[]} all_status
748
- * @property {string} amount_in_paisa
749
- * @property {string} application_id
750
- * @property {string} collected_by
751
- * @property {string} company_id
752
- * @property {string} created_on
753
- * @property {string} currency
754
- * @property {string} current_status
755
- * @property {string} id
756
- * @property {string} modified_on
757
- * @property {string} payment_gateway
758
- * @property {string} [payment_id]
759
- * @property {string} payment_mode
760
- * @property {string} payment_mode_identifier
761
- * @property {Object} [refund_object]
762
- * @property {string} refunded_by
763
- * @property {Object} user_object
735
+ * @typedef ErrorResponse
736
+ * @property {number} status_code - HTTP status code
737
+ * @property {Object} [error]
738
+ * @property {string} message - Message
739
+ * @property {boolean} success - Successful or failure
764
740
  */
765
741
 
766
742
  /**
767
- * @typedef PaymentOptionAndFlow
768
- * @property {PaymentFlow} payment_flows
769
- * @property {RootPaymentMode[]} payment_option - Payment options
743
+ * @typedef CreatePaymentLinkMeta
744
+ * @property {string} cart_id
745
+ * @property {string} checkout_mode
746
+ * @property {string} amount
747
+ * @property {string} [assign_card_id]
748
+ * @property {string} pincode
770
749
  */
771
750
 
772
751
  /**
773
- * @typedef PaymentOptions
774
- * @property {RootPaymentMode[]} payment_option - Payment options
752
+ * @typedef CreatePaymentLinkRequest
753
+ * @property {string} email - Email to which the payment link is to be sent
754
+ * @property {number} amount - Total value of order
755
+ * @property {string} mobile_number - Mobile number to which the payment link is
756
+ * to be sent
757
+ * @property {string} [description] - Merchant order id
758
+ * @property {CreatePaymentLinkMeta} meta - Meta
759
+ * @property {string} external_order_id - Merchant order id
775
760
  */
776
761
 
777
762
  /**
778
- * @typedef PaymentOptionsResponse
779
- * @property {Object} [payment_breakup] - Payment Breakup for advance payment
780
- * @property {PaymentOptions} payment_options
781
- * @property {boolean} success - Response is successful or not
763
+ * @typedef CreatePaymentLinkResponse
764
+ * @property {string} message - Message
765
+ * @property {number} status_code - HTTP status code
766
+ * @property {string} [payment_link_url] - Url of payment link
767
+ * @property {number} [polling_timeout] - Polling request timeout
768
+ * @property {boolean} success - Successful or failure
769
+ * @property {string} [payment_link_id] - Unique id of payment link
782
770
  */
783
771
 
784
772
  /**
785
- * @typedef PaymentOrderData
786
- * @property {string} [aggregator] - Aggregator name
773
+ * @typedef PollingPaymentLinkResponse
774
+ * @property {string} [message] - Message
775
+ * @property {number} [http_status] - HTTP status code
776
+ * @property {number} [status_code] - HTTP status code
777
+ * @property {string} [redirect_url] - Url to redirect to
787
778
  * @property {number} [amount] - Amount
788
- * @property {string} [callback_url] - Callback url for aggregator
789
- * @property {string} [contact] - Mobile number
790
- * @property {string} [currency] - Currency
791
- * @property {string} [customer_id] - Aggregator customer id
792
- * @property {string} [email] - Email
793
- * @property {string} [merchant_order_id] - Merchant order id
794
- * @property {string} [method] - Method
795
- * @property {string} [order_id] - Aggregator order id
779
+ * @property {string} [order_id] - Fynd order id
780
+ * @property {boolean} [success] - Successful or failure
781
+ * @property {string} [payment_link_id] - Payment link id
782
+ * @property {string} [status] - Status of payment link
783
+ * @property {string} [aggregator_name] - Aggregator name
796
784
  */
797
785
 
798
786
  /**
799
- * @typedef PaymentOrderMethods
800
- * @property {number} amount - Amount to be collected
801
- * @property {PaymentMethodsMetaOrder} meta
802
- * @property {string} mode - Payment mode
803
- * @property {string} name - Payment mode name
804
- * @property {string} [payment] - Payment type i.e. Required / Blocked
787
+ * @typedef CancelOrResendPaymentLinkRequest
788
+ * @property {string} payment_link_id - Unique id of payment link
805
789
  */
806
790
 
807
791
  /**
808
- * @typedef PaymentOrderRequest
809
- * @property {string} order_id - Order id
810
- * @property {PaymentOrderMethods[]} [payment_methods]
811
- * @property {string} [shipment_id] - Shipment_id
792
+ * @typedef ResendPaymentLinkResponse
793
+ * @property {number} status_code - HTTP status code
794
+ * @property {string} message - Message
795
+ * @property {number} [polling_timeout] - Polling request timeout
796
+ * @property {boolean} success - Successful or failure
812
797
  */
813
798
 
814
799
  /**
815
- * @typedef PaymentOrderResponse
816
- * @property {string} [callback_url] - Callback url for aggregator
817
- * @property {PaymentOrderData} [data]
818
- * @property {string} message - Message
819
- * @property {string} [order_id] - Merchant order id
820
- * @property {string} [payment_confirm_url] - Payment confirm url for aggregator
800
+ * @typedef CancelPaymentLinkResponse
821
801
  * @property {number} status_code - HTTP status code
802
+ * @property {string} message - Message
822
803
  * @property {boolean} success - Successful or failure
823
804
  */
824
805
 
806
+ /**
807
+ * @typedef Code
808
+ * @property {string} name - Name of payment method
809
+ * @property {string} merchant_code - Merchant Payment Code
810
+ * @property {string} code - Payment Method Code
811
+ */
812
+
813
+ /**
814
+ * @typedef PaymentCode
815
+ * @property {string} networks - Payment networks
816
+ * @property {Code} codes - List of dict that contains payment method data
817
+ * @property {string} name - Name of payment name
818
+ * @property {string} types - Type of payment mode
819
+ */
820
+
821
+ /**
822
+ * @typedef GetPaymentCode
823
+ * @property {PaymentCode} method_code - Payment method code
824
+ */
825
+
826
+ /**
827
+ * @typedef GetPaymentCodeResponse
828
+ * @property {GetPaymentCode} data - Data about Payment Code.
829
+ * @property {boolean} success - Response is successful or not.
830
+ */
831
+
832
+ /**
833
+ * @typedef MerchnatPaymentModeResponse
834
+ * @property {string} [message] - Message
835
+ * @property {Object[]} [items] - List of all aggregator and payment mode details.
836
+ * @property {boolean} success - Response is successful or not.
837
+ */
838
+
839
+ /**
840
+ * @typedef MerchnatPaymentModeRequest
841
+ * @property {Object} [offline] - Details to be updated for online payment configuration.
842
+ * @property {Object} [online] - Details to be updated for offline payment configuration.
843
+ */
844
+
845
+ /**
846
+ * @typedef OrderDetail
847
+ * @property {string} gid - Global identifier of the entity (e.g. order, cart
848
+ * etc.) against which payment_session was initiated. This is generated by
849
+ * Fynd payments platform and is unique.
850
+ * @property {number} amount - Amount paid.
851
+ * @property {string} status - Order status created by payment gateway aggregator.
852
+ * @property {string} currency - Currency of the payment.
853
+ * @property {Object} aggregator_order_details - Aggregator order details
854
+ * generated by the payment gateway.
855
+ * @property {string} aggregator - Name of the payment gateway aggregator.
856
+ */
857
+
858
+ /**
859
+ * @typedef AddressDetail
860
+ * @property {Object} [google_map_point] - Google map point of location
861
+ * @property {string} [landmark] - Landmark
862
+ * @property {string} phone - Phone number
863
+ * @property {string} country_iso_code - Country's code name e.g. `IN`, `GB`
864
+ * @property {string} area_code - Customer pin/zip code
865
+ * @property {string} country - Country name
866
+ * @property {string} [expire_at] - Address expiry timestamp
867
+ * @property {Object} [geo_location] - Location latitude and logitude
868
+ * @property {string} state - State of the customer
869
+ * @property {string} area - Area details
870
+ * @property {string} g_address_id - Unique address id generated by Fynd platform
871
+ * @property {string} area_code_slug - Area slug code, use pin/zip code if not available
872
+ * @property {string} country_phone_code - Country's phone code
873
+ * @property {string} name - Customer name
874
+ * @property {string} address_type - Address type e.g. home, office
875
+ * @property {string} address - Address details
876
+ * @property {string} [email] - Customer email
877
+ * @property {string} city - City name
878
+ * @property {Object[]} [tags] - Optional address tag
879
+ */
880
+
825
881
  /**
826
882
  * @typedef PaymentSessionDetail
827
- * @property {string} [aggregator_customer_id] - Unique customer id generated by
828
- * payment gateway, not required for standard checkout.
883
+ * @property {string} payment_id - Unique transaction id generated by payment gateway
884
+ * @property {string} mode - Test or live, test mode uses test credentials so
885
+ * that actual payment is not created.
886
+ * @property {number} amount - Amount paid.
887
+ * @property {string} success_url - Success url sent by Fynd platform at the
888
+ * time of payment creation
889
+ * @property {AddressDetail} [shipping_address] - Shipping address
890
+ * @property {string} g_user_id - Global user identifier - unique user id
891
+ * generated by Fynd platform
892
+ * @property {string} currency - Currency of the payment.
893
+ * @property {string} [merchant_locale] - Merchant's locale
894
+ * @property {string} [locale] - User's locale
829
895
  * @property {string} aggregator_order_id - Unique order id or payment request
830
896
  * id generated by payment gateway
831
- * @property {number} amount - Amount paid.
832
- * @property {number} amount_captured - Amount which is captured or credited to
833
- * merchant account
834
- * @property {number} [amount_refunded]
835
- * @property {AddressDetail} [billing_address] - Billing address
897
+ * @property {string} gid - Global identifier of the entity (e.g. order, cart
898
+ * etc.) against which payment_session was initiated. This is generated by
899
+ * Fynd payments platform and is unique.
836
900
  * @property {string} cancel_url - Cancel url sent by Fynd platform at the time
837
901
  * of payment creation
902
+ * @property {number} [amount_refunded]
838
903
  * @property {boolean} [captured] - Whether the payment is captured (credited to
839
904
  * merchant account) by payment gateway.
840
905
  * @property {string} [created] - Timestamp in epoch
841
- * @property {string} currency - Currency of the payment.
842
- * @property {string} g_user_id - Global user identifier - unique user id
843
- * generated by Fynd platform
844
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
845
- * etc.) against which payment_session was initiated. This is generated by
846
- * Fynd payments platform and is unique.
847
- * @property {string} [kind] - Optional kind of purchase or payment - one time
906
+ * @property {string} status - Stautus of the payment
907
+ * @property {string} [kind] - Optional kind of purchase/payment - one time
848
908
  * payment (sale) or subcription. defaults to sale.
849
- * @property {string} [locale] - User's locale
850
- * @property {string} [merchant_locale] - Merchant's locale
851
- * @property {Object} [meta] - Metadata
852
- * @property {string} mode - Test or live, test mode uses test credentials so
853
- * that actual payment is not created.
854
- * @property {string} payment_id - Unique transaction id generated by payment gateway
909
+ * @property {string} [aggregator_customer_id] - Unique customer id generated by
910
+ * payment gateway, not required for standard checkout.
855
911
  * @property {Object[]} payment_methods - Method of payment
856
- * @property {AddressDetail} [shipping_address] - Shipping address
857
- * @property {string} status - Stautus of the payment
858
- * @property {string} success_url - Success url sent by Fynd platform at the
859
- * time of payment creation
912
+ * @property {AddressDetail} [billing_address] - Billing address
913
+ * @property {number} amount_captured - Amount which is captured or credited to
914
+ * merchant account
860
915
  */
861
916
 
862
917
  /**
863
918
  * @typedef PaymentSessionRequestSerializer
864
- * @property {string} currency - Currency of the payment.
919
+ * @property {Object} [meta] - Meta
865
920
  * @property {string} gid - Global identifier of the entity (e.g. order, cart
866
921
  * etc.) against which payment_session was initiated. This is generated by
867
922
  * Fynd payments platform and is unique.
868
- * @property {Object} [meta] - Meta
869
923
  * @property {OrderDetail} order_details - The details of the order.
924
+ * @property {string} status - Status of the payment.
925
+ * @property {string} currency - Currency of the payment.
870
926
  * @property {PaymentSessionDetail[]} payment_details - The payment details with
871
927
  * the schema `PaymentSessionDetail`.
872
- * @property {string} status - Status of the payment.
873
928
  * @property {number} total_amount - Amount paid.
874
929
  */
875
930
 
876
931
  /**
877
932
  * @typedef PaymentSessionResponseSerializer
878
- * @property {string} currency - Currency of the payment.
879
933
  * @property {string} gid - Global identifier of the entity (e.g. order, cart
880
934
  * etc.) against which payment_session was initiated. This is generated by
881
935
  * Fynd payments platform and is unique.
882
936
  * @property {Object[]} platform_transaction_details - Platform transaction details.
883
937
  * @property {string} status - Status of the payment.
938
+ * @property {string} currency - Currency of the payment.
884
939
  * @property {number} total_amount - Amount paid.
885
940
  */
886
941
 
887
942
  /**
888
- * @typedef PaymentSessionSerializer
889
- * @property {CartDetailsSerializer} [cart_details]
890
- * @property {string} [currency] - The currency of the payment.
891
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
892
- * etc.) against which payment_session was initiated. This is generated by
893
- * Fynd payments platform and is unique.
894
- * @property {Object} payment_details - Object of payment details
895
- * @property {RefundDetailsSerializer[]} refund_details - Object of refund details
896
- * @property {string} status - The status of the payment session.
897
- * @property {number} total_amount - Total amount to be paid
943
+ * @typedef RefundSessionDetail
944
+ * @property {string} [refund_utr] - Unique refund utr generated by payment gateway.
945
+ * @property {string} request_id - Refund request id, unique id generated by Fynd platform
946
+ * @property {string} payment_id - Unique payment id generated by payment gateway.
947
+ * @property {number} amount - Amount refunded.
948
+ * @property {string} [reason] - Reason for refund, optional
949
+ * @property {string} status - Status of the refund.
950
+ * @property {string} created - Timestamp in epoch.
951
+ * @property {string} [source_transfer_reversal] - Description in case of
952
+ * reversal of payment.
953
+ * @property {string} [receipt_number] - Unique receipt for refund, generated by
954
+ * payment gateway, if not available can be utr.
955
+ * @property {string} currency - Currency of the payment.
956
+ * @property {string} [transfer_reversal] - Description in case of reversal of payment.
957
+ * @property {string} [balance_transaction] - Balance transaction.
898
958
  */
899
959
 
900
960
  /**
901
- * @typedef PaymentStatusBulkHandlerRequest
902
- * @property {string[]} merchant_order_id - List of order ids
903
- */
904
-
905
- /**
906
- * @typedef PaymentStatusBulkHandlerResponse
907
- * @property {number} [count]
908
- * @property {PaymentStatusObject[]} [data]
909
- * @property {string} [error]
910
- * @property {number} status
911
- * @property {string} success
912
- */
913
-
914
- /**
915
- * @typedef PaymentStatusObject
916
- * @property {string} merchant_order_id
917
- * @property {PaymentObjectListSerializer[]} [payment_object_list]
918
- */
919
-
920
- /**
921
- * @typedef PaymentStatusUpdateRequest
922
- * @property {string} aggregator - Payment gateway name
923
- * @property {number} amount - Payable amount.
924
- * @property {string} contact - Customer valid mobile number
925
- * @property {string} currency - Currency code.
926
- * @property {string} customer_id - Payment gateway customer id.
927
- * @property {string} [device_id] - EDC machine Unique Identifier
928
- * @property {string} email - Customer valid email
929
- * @property {string} merchant_order_id - Unique fynd order id
930
- * @property {string} merchant_transaction_id - Unique fynd transaction id
931
- * @property {string} method - Payment method
932
- * @property {string} order_id - Payment gateway order id
933
- * @property {string} status - Status of payment.
934
- * @property {string} [vpa] - Customer vpa address
935
- */
936
-
937
- /**
938
- * @typedef PaymentStatusUpdateResponse
939
- * @property {string} aggregator_name - Payment gateway name
940
- * @property {string} [redirect_url] - Redirect url
941
- * @property {boolean} retry - Response is successful or not.
942
- * @property {string} status - Payment status
943
- * @property {boolean} [success] - Response is successful or not
944
- */
945
-
946
- /**
947
- * @typedef Payout
948
- * @property {PayoutCustomer} customers
949
- * @property {boolean} is_active - Enable/DIsable Flag Payout
950
- * @property {boolean} is_default - Default or not
951
- * @property {PayoutMoreAttributes} more_attributes
952
- * @property {PayoutAggregator[]} [payouts_aggregators]
953
- * @property {string} transfer_type - Transafer type
954
- * @property {string} unique_transfer_no - Display priority of the payment mode
955
- */
956
-
957
- /**
958
- * @typedef PayoutAggregator
959
- * @property {number} [aggregator_fund_id] - Aggregator_fund_id
960
- * @property {number} [aggregator_id] - Aggregator_id
961
- * @property {number} [payout_details_id] - Payout_details_id
962
- */
963
-
964
- /**
965
- * @typedef PayoutBankDetails
966
- * @property {string} [account_holder]
967
- * @property {string} [account_no]
968
- * @property {string} account_type
969
- * @property {string} [bank_name]
970
- * @property {string} [branch_name]
971
- * @property {string} [city]
972
- * @property {string} [country]
973
- * @property {string} ifsc_code
974
- * @property {number} [pincode]
975
- * @property {string} [state]
976
- */
977
-
978
- /**
979
- * @typedef PayoutCustomer
980
- * @property {string} [email] - Customer Email
981
- * @property {number} [id] - Customer ID
982
- * @property {string} [mobile] - Customer Mobile No
983
- * @property {string} [name] - Customer Name
984
- * @property {string} [unique_external_id] - Unique_external_id
985
- */
986
-
987
- /**
988
- * @typedef PayoutMoreAttributes
989
- * @property {string} [account_holder] - Account Holder Name
990
- * @property {string} [account_no] - Account Number
991
- * @property {string} [account_type] - Account Type Saving or Current
992
- * @property {string} [bank_name] - Name of Bank
993
- * @property {string} [branch_name] - Branch Name
994
- * @property {string} [city] - City
995
- * @property {string} [country] - Country
996
- * @property {string} [ifsc_code] - IFSC Code
997
- * @property {string} [state] - State
998
- */
999
-
1000
- /**
1001
- * @typedef PayoutRequest
1002
- * @property {string} aggregator - Aggregator Name
1003
- * @property {PayoutBankDetails} bank_details
1004
- * @property {boolean} is_active - Enable or Disable Flag Payout
1005
- * @property {string} transfer_type - Transafer type
1006
- * @property {string} unique_external_id - Unique Id of Payout
1007
- * @property {Object} users - Payout users object
1008
- */
1009
-
1010
- /**
1011
- * @typedef PayoutResponse
1012
- * @property {string} aggregator - Aggregator Name
1013
- * @property {Object} bank_details - Payout bank_details object
1014
- * @property {boolean} created - Created flag
1015
- * @property {boolean} is_active - Enable or DIsable Flag Payout
1016
- * @property {string} payment_status - Status of payment
1017
- * @property {Object} payouts - Payout object
1018
- * @property {boolean} success - Response is successful or not
1019
- * @property {string} transfer_type - Transfer type
1020
- * @property {string} unique_transfer_no - Unique transfer no
1021
- * @property {Object} users - Users details object
1022
- */
1023
-
1024
- /**
1025
- * @typedef PayoutsResponse
1026
- * @property {Payout[]} items - Contains list of PayoutSchema
1027
- * @property {boolean} success - Response is successful or not
1028
- */
1029
-
1030
- /**
1031
- * @typedef PlatformPaymentModeCopyConfigRequest
1032
- * @property {FromConfig} from_config
1033
- * @property {ToConfig} to_config
1034
- */
1035
-
1036
- /**
1037
- * @typedef PlatformPaymentModeResponse
1038
- * @property {Object[]} [items] - List of all aggregator and payment mode details.
1039
- * @property {string} [message] - Message
1040
- * @property {boolean} success - Response is successful or not.
1041
- */
1042
-
1043
- /**
1044
- * @typedef PollingPaymentLinkResponse
1045
- * @property {string} [aggregator_name] - Aggregator name
1046
- * @property {number} [amount] - Amount
1047
- * @property {number} [http_status] - HTTP status code
1048
- * @property {string} [message] - Message
1049
- * @property {string} [order_id] - Fynd order id
1050
- * @property {string} [payment_link_id] - Payment link id
1051
- * @property {string} [redirect_url] - Url to redirect to
1052
- * @property {string} [status] - Status of payment link
1053
- * @property {number} [status_code] - HTTP status code
1054
- * @property {boolean} [success] - Successful or failure
1055
- */
1056
-
1057
- /**
1058
- * @typedef ProductCODData
1059
- * @property {CODChargesLimitsResponse} [cod_charges]
1060
- * @property {Object} [items] - Item id with its cod availability.
1061
- */
1062
-
1063
- /**
1064
- * @typedef RefundAccountResponse
1065
- * @property {Object} [data] - Refund account data.
1066
- * @property {boolean} [is_verified_flag]
1067
- * @property {string} message - Response message
1068
- * @property {boolean} success - Success or failure flag.
1069
- */
1070
-
1071
- /**
1072
- * @typedef RefundDetailsSerializer
1073
- * @property {number} amount - Refunded amount
1074
- * @property {string} created - Timestamp in epoch.
1075
- * @property {string} currency - The currency of the payment.
1076
- * @property {string} refund_utr - Unique refund utr generated by payment gateway.
1077
- * @property {string} request_id - Refund request id, unique id generated by Fynd platform
1078
- * @property {string} status - The status of the refund.
1079
- */
1080
-
1081
- /**
1082
- * @typedef RefundPriorityRequestSerializer
1083
- * @property {boolean} apportion - Apportion refund to multiple sources
1084
- * @property {RefundSourcesPriority[]} refund_sources_priority - Refund sources priority
1085
- */
1086
-
1087
- /**
1088
- * @typedef RefundPriorityResponseSerializer
1089
- * @property {boolean} apportion - Apportion refund to multiple sources
1090
- * @property {string} configuration - Configuration for merchant or customer
1091
- * @property {string} [message] - Message
1092
- * @property {RefundSourcesPriority[]} refund_sources_priority - Refund sources priority
1093
- * @property {boolean} success - Success
1094
- */
1095
-
1096
- /**
1097
- * @typedef RefundSessionDetail
1098
- * @property {number} amount - Amount refunded.
1099
- * @property {string} [balance_transaction] - Balance transaction.
1100
- * @property {string} created - Timestamp in epoch.
1101
- * @property {string} currency - Currency of the payment.
1102
- * @property {string} payment_id - Unique payment id generated by payment gateway.
1103
- * @property {string} [reason] - Reason for refund, optional
1104
- * @property {string} [receipt_number] - Unique receipt for refund, generated by
1105
- * payment gateway, if not available can be utr.
1106
- * @property {string} [refund_utr] - Unique refund utr generated by payment gateway.
1107
- * @property {string} request_id - Refund request id, unique id generated by Fynd platform
1108
- * @property {string} [source_transfer_reversal] - Description in case of
1109
- * reversal of payment.
1110
- * @property {string} status - Status of the refund.
1111
- * @property {string} [transfer_reversal] - Description in case of reversal of payment.
1112
- */
1113
-
1114
- /**
1115
- * @typedef RefundSessionRequestSerializer
1116
- * @property {string} currency - The currency of the payment.
1117
- * @property {ErrorDescription} [error]
1118
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
1119
- * etc.) against which payment_session was initiated. This is generated by
1120
- * Fynd payments platform and is unique.
1121
- * @property {string} [message] - The status of the refund.
1122
- * @property {Object} [meta] - Meta
1123
- * @property {PaymentSessionDetail} payment_details - Details of the payment
1124
- * @property {RefundSessionDetail[]} [refund_details] - Details of the refund
1125
- * @property {string} status - The status of the refund.
1126
- * @property {number} total_amount - The total amount refunded.
1127
- */
1128
-
1129
- /**
1130
- * @typedef RefundSessionResponseSerializer
1131
- * @property {string} currency - The currency of the payment.
1132
- * @property {string} gid - Global identifier of the entity (e.g. order, cart
1133
- * etc.) against which payment_session was initiated. This is generated by
1134
- * Fynd payments platform and is unique.
1135
- * @property {Object[]} platform_refund_details - Details of the refund
1136
- * @property {string} status - The status of the refund.
1137
- * @property {number} total_refund_amount - The total amount refunded.
1138
- */
1139
-
1140
- /**
1141
- * @typedef RefundSourcesPriority
1142
- * @property {string} description - Description of refund source
1143
- * @property {number} priority - Priority of refund source, 0 being highest
1144
- * @property {string} source - Source of refund
1145
- */
1146
-
1147
- /**
1148
- * @typedef RepaymentDetailsSerialiserPayAll
1149
- * @property {string} aggregator_order_id - Id of payment gateway
1150
- * @property {string} aggregator_transaction_id - Unique Id for the transaction
1151
- * @property {string} extension_order_id - Order id created in extension
1152
- * @property {RepaymentRequestDetails[]} [shipment_details]
1153
- * @property {number} total_amount - Total amount
1154
- */
1155
-
1156
- /**
1157
- * @typedef RepaymentRequestDetails
1158
- * @property {string} aggregator - Name of Payment Gateway
1159
- * @property {string} aggregator_order_id - Id of payment gateway
1160
- * @property {string} aggregator_transaction_id - Unique Id for the transaction
1161
- * @property {number} amount - Amount to paid back
1162
- * @property {string} current_status - Status
1163
- * @property {string} fwd_shipment_id - Purchase Shipment Id
1164
- * @property {string} merchant_order_id - Merchant's Order Id
1165
- * @property {number} outstanding_details_id - Outstanding details ID
1166
- * @property {string} payment_mode - Payment Mode
1167
- * @property {string} payment_mode_identifier - Payment Mode Id
1168
- */
1169
-
1170
- /**
1171
- * @typedef RepaymentResponse
1172
- * @property {Object} data
1173
- * @property {boolean} success - Success/Failure of the transaction
1174
- */
1175
-
1176
- /**
1177
- * @typedef ResendOrCancelPaymentRequest
1178
- * @property {string} [device_id] - EDC machine Unique Identifier
1179
- * @property {string} order_id - Unique order id
1180
- * @property {string} request_type - Either resend or cancel
1181
- */
1182
-
1183
- /**
1184
- * @typedef ResendOrCancelPaymentResponse
1185
- * @property {LinkStatus} data
1186
- * @property {boolean} success - Response is successful or not.
1187
- */
1188
-
1189
- /**
1190
- * @typedef ResendPaymentLinkResponse
1191
- * @property {string} message - Message
1192
- * @property {number} [polling_timeout] - Polling request timeout
1193
- * @property {number} status_code - HTTP status code
1194
- * @property {boolean} success - Successful or failure
1195
- */
1196
-
1197
- /**
1198
- * @typedef RevokeOAuthToken
1199
- * @property {string} message - The confirmation message of the token revoke.
1200
- * @property {boolean} success - Response is successful or not
1201
- */
1202
-
1203
- /**
1204
- * @typedef RootPaymentMode
1205
- * @property {boolean} [add_card_enabled] - Annonymous card flag
1206
- * @property {string} [aggregator_name] - Dispaly Priority
1207
- * @property {boolean} [anonymous_enable] - Annonymous card flag
1208
- * @property {string} display_name - Payment mode display name
1209
- * @property {number} display_priority - Dispaly Priority
1210
- * @property {boolean} [is_pay_by_card_pl] - This flag will be true in case of
1211
- * Payment link payment through card
1212
- * @property {PaymentModeList[]} [list] - Payment mode
1213
- * @property {string} name - Payment mode name
1214
- * @property {boolean} [save_card] - Card save or not
1215
- */
1216
-
1217
- /**
1218
- * @typedef SaveSubscriptionSetupIntentRequest
1219
- * @property {string} unique_external_id - Unique id i.e company:id
1220
- */
1221
-
1222
- /**
1223
- * @typedef SaveSubscriptionSetupIntentResponse
1224
- * @property {Object} data - Subscription Payment Method Object
1225
- * @property {boolean} success - Response is successful or not
1226
- */
1227
-
1228
- /**
1229
- * @typedef SetCODForUserRequest
1230
- * @property {boolean} is_active - Either true or false
1231
- * @property {string} merchant_user_id - Merchant User id
1232
- * @property {string} mobileno - Mobile No. of User
1233
- */
1234
-
1235
- /**
1236
- * @typedef SetCODOptionResponse
1237
- * @property {string} message - Message
1238
- * @property {boolean} success - Response is successful or not
1239
- */
1240
-
1241
- /**
1242
- * @typedef SplitObject
1243
- * @property {number} [amount_remaining] - Amount pending to be paid
1244
- * @property {number} [splits_remaining] - Number of splits remaining
1245
- * @property {number} [total_number_of_splits] - Maximum amount of splits allowed
1246
- */
1247
-
1248
- /**
1249
- * @typedef StatisticsData
1250
- * @property {number} active_device_count - No of active devices
1251
- * @property {number} inactive_device_count - No of inactive devices
1252
- */
1253
-
1254
- /**
1255
- * @typedef SubscriptionConfigResponse
1256
- * @property {string} aggregator - Aggregator Name
1257
- * @property {Object} config - Aggregator Config
1258
- * @property {boolean} success - Response is successful or not
1259
- */
1260
-
1261
- /**
1262
- * @typedef SubscriptionPaymentMethodResponse
1263
- * @property {Object[]} data - Subscription Payment Method Object
1264
- * @property {boolean} success - Response is successful or not
1265
- */
1266
-
1267
- /**
1268
- * @typedef ToConfig
1269
- * @property {string} business_unit - Business unit name
1270
- * @property {Object[]} device - Device name to copy the config to
1271
- */
1272
-
1273
- /**
1274
- * @typedef UpdatePayoutRequest
1275
- * @property {boolean} is_active - Enable or Disable Flag Payout
1276
- * @property {boolean} is_default - Enable or Disable Default Payout
1277
- * @property {string} unique_external_id - Unique Id of Payout
1278
- */
1279
-
1280
- /**
1281
- * @typedef UpdatePayoutResponse
1282
- * @property {boolean} is_active - Enable or DIsable Flag Payout
1283
- * @property {boolean} is_default - Enable or Disable Default Payout
1284
- * @property {boolean} success - Response is successful or not
1285
- */
1286
-
1287
- /**
1288
- * @typedef ValidateCustomerRequest
1289
- * @property {string} aggregator - Payment gateway name in camel case i.e Simpl, Rupifi
1290
- * @property {Object} [billing_address] - Extra meta fields.
1291
- * @property {Object} [delivery_address] - Extra meta fields.
1292
- * @property {Object} [merchant_params] - Extra meta fields.
1293
- * @property {Object[]} [order_items] - Extra meta fields.
1294
- * @property {string} [payload] - Hashed payload string.
1295
- * @property {string} phone_number - User mobile number without country code.
1296
- * @property {number} transaction_amount_in_paise - Payable amount in paise
1297
- */
1298
-
1299
- /**
1300
- * @typedef ValidateCustomerResponse
1301
- * @property {Object} data - Payment gateway response data
1302
- * @property {string} message - Error or success message.
1303
- * @property {boolean} success - Response is successful or not
1304
- */
1305
-
1306
- class PaymentPlatformModel {
1307
- /** @returns {AddBeneficiaryDetailsOTPRequest} */
1308
- static AddBeneficiaryDetailsOTPRequest() {
1309
- return Joi.object({
1310
- details: PaymentPlatformModel.BankDetailsForOTP().required(),
1311
- order_id: Joi.string().allow("").required(),
1312
- });
1313
- }
1314
-
1315
- /** @returns {AddressDetail} */
1316
- static AddressDetail() {
1317
- return Joi.object({
1318
- address: Joi.string().allow("").required(),
1319
- address_type: Joi.string().allow("").allow(null),
1320
- area: Joi.string().allow("").required(),
1321
- area_code: Joi.string().allow("").required(),
1322
- area_code_slug: Joi.string().allow("").required(),
1323
- city: Joi.string().allow("").required(),
1324
- country: Joi.string().allow("").required(),
1325
- country_iso_code: Joi.string().allow("").required(),
1326
- country_phone_code: Joi.string().allow("").required(),
1327
- email: Joi.string().allow(""),
1328
- expire_at: Joi.string().allow(""),
1329
- g_address_id: Joi.string().allow("").required(),
1330
- geo_location: Joi.any(),
1331
- google_map_point: Joi.any(),
1332
- landmark: Joi.string().allow(""),
1333
- name: Joi.string().allow("").required(),
1334
- phone: Joi.string().allow("").required(),
1335
- state: Joi.string().allow("").required(),
1336
- tags: Joi.array().items(Joi.any()),
1337
- });
1338
- }
1339
-
1340
- /** @returns {AdvanceObject} */
1341
- static AdvanceObject() {
1342
- return Joi.object({
1343
- all_prepayment_type: Joi.array().items(
1344
- Joi.string().allow("").allow(null)
1345
- ),
1346
- allow_custom_advance_amount: Joi.boolean().allow(null),
1347
- amount: Joi.number().allow(null),
1348
- cancellation_type: Joi.string().allow("").allow(null),
1349
- description: Joi.string().allow("").allow(null),
1350
- display_name: Joi.string().allow("").allow(null),
1351
- is_active: Joi.boolean().allow(null),
1352
- prepayment_type: Joi.string().allow("").allow(null),
1353
- prepayment_value: Joi.number().allow(null),
1354
- refund_time_limit: Joi.number().allow(null),
1355
- time_unit: Joi.string().allow("").allow(null),
1356
- });
1357
- }
1358
-
1359
- /** @returns {AdvancePaymentObject} */
1360
- static AdvancePaymentObject() {
1361
- return Joi.object({
1362
- advance: PaymentPlatformModel.AdvanceObject(),
1363
- display_name: Joi.string().allow("").allow(null),
1364
- display_priority: Joi.number().allow(null),
1365
- list: Joi.array().items(PaymentPlatformModel.PaymentModeList()),
1366
- name: Joi.string().allow("").allow(null),
1367
- payment_mode_id: Joi.number().allow(null),
1368
- split: PaymentPlatformModel.SplitObject(),
1369
- });
1370
- }
1371
-
1372
- /** @returns {AggregatorControlRequest} */
1373
- static AggregatorControlRequest() {
1374
- return Joi.object({
1375
- business_unit: Joi.string().allow(""),
1376
- device: Joi.string().allow(""),
1377
- items: Joi.array().items(Joi.any()),
1378
- version: PaymentPlatformModel.AggregatorVersionRequestSchema(),
1379
- });
1380
- }
1381
-
1382
- /** @returns {AggregatorRoute} */
1383
- static AggregatorRoute() {
1384
- return Joi.object({
1385
- api_link: Joi.string().allow("").allow(null),
1386
- data: Joi.any().allow(null),
1387
- payment_flow: Joi.string().allow("").allow(null),
1388
- payment_flow_data: Joi.string().allow("").allow(null),
1389
- });
1390
- }
1391
-
1392
- /** @returns {AggregatorVersionItemSchema} */
1393
- static AggregatorVersionItemSchema() {
1394
- return Joi.object({
1395
- is_equal_to: Joi.string().allow(""),
1396
- is_greater_than: Joi.string().allow(""),
1397
- is_less_than: Joi.string().allow(""),
1398
- });
1399
- }
1400
-
1401
- /** @returns {AggregatorVersionRequestSchema} */
1402
- static AggregatorVersionRequestSchema() {
1403
- return Joi.object({
1404
- is_equal_to: Joi.string().allow(""),
1405
- is_greater_than: Joi.string().allow(""),
1406
- is_less_than: Joi.string().allow(""),
1407
- });
1408
- }
1409
-
1410
- /** @returns {AggregatorVersionResponse} */
1411
- static AggregatorVersionResponse() {
1412
- return Joi.object({
1413
- items: PaymentPlatformModel.AggregatorVersionItemSchema(),
1414
- message: Joi.string().allow("").required(),
1415
- success: Joi.boolean().required(),
1416
- });
1417
- }
1418
-
1419
- /** @returns {BankDetailsForOTP} */
1420
- static BankDetailsForOTP() {
1421
- return Joi.object({
1422
- account_holder: Joi.string().allow("").required(),
1423
- account_no: Joi.string().allow("").required(),
1424
- bank_name: Joi.string().allow("").required(),
1425
- branch_name: Joi.string().allow("").required(),
1426
- ifsc_code: Joi.string().allow("").required(),
1427
- });
1428
- }
1429
-
1430
- /** @returns {CancelOrResendPaymentLinkRequest} */
1431
- static CancelOrResendPaymentLinkRequest() {
1432
- return Joi.object({
1433
- payment_link_id: Joi.string().allow("").required(),
1434
- });
1435
- }
1436
-
1437
- /** @returns {CancelPaymentLinkResponse} */
1438
- static CancelPaymentLinkResponse() {
1439
- return Joi.object({
1440
- message: Joi.string().allow("").required(),
1441
- status_code: Joi.number().required(),
1442
- success: Joi.boolean().required(),
1443
- });
1444
- }
1445
-
1446
- /** @returns {CartDetailsSerializer} */
1447
- static CartDetailsSerializer() {
1448
- return Joi.object({
1449
- articles: Joi.array().items(Joi.any()).required(),
1450
- cart_value: Joi.number().required(),
1451
- items: Joi.any().required(),
1452
- total_quantity: Joi.number(),
1453
- });
1454
- }
1455
-
1456
- /** @returns {CODChargesLimitsResponse} */
1457
- static CODChargesLimitsResponse() {
1458
- return Joi.object({
1459
- cod_charge: Joi.number().allow(null),
1460
- max_cart_value: Joi.number().allow(null),
1461
- min_cart_value: Joi.number().allow(null),
1462
- });
1463
- }
1464
-
1465
- /** @returns {CODdata} */
1466
- static CODdata() {
1467
- return Joi.object({
1468
- is_active: Joi.boolean().required(),
1469
- limit: Joi.number().required(),
1470
- remaining_limit: Joi.number().required(),
1471
- usages: Joi.number().required(),
1472
- user_id: Joi.string().allow("").required(),
1473
- });
1474
- }
1475
-
1476
- /** @returns {Code} */
1477
- static Code() {
1478
- return Joi.object({
1479
- code: Joi.string().allow("").required(),
1480
- merchant_code: Joi.string().allow("").required(),
1481
- name: Joi.string().allow("").required(),
1482
- });
1483
- }
1484
-
1485
- /** @returns {CreatePaymentLinkMeta} */
1486
- static CreatePaymentLinkMeta() {
1487
- return Joi.object({
1488
- amount: Joi.string().allow("").required(),
1489
- assign_card_id: Joi.string().allow("").allow(null),
1490
- cart_id: Joi.string().allow("").required(),
1491
- checkout_mode: Joi.string().allow("").required(),
1492
- });
1493
- }
1494
-
1495
- /** @returns {CreatePaymentLinkRequest} */
1496
- static CreatePaymentLinkRequest() {
1497
- return Joi.object({
1498
- amount: Joi.number().required(),
1499
- country_phone_code: Joi.string().allow(""),
1500
- description: Joi.string().allow("").allow(null),
1501
- email: Joi.string().allow("").required(),
1502
- external_order_id: Joi.string().allow("").required(),
1503
- meta: PaymentPlatformModel.CreatePaymentLinkMeta().required(),
1504
- mobile_number: Joi.string().allow("").required(),
1505
- });
1506
- }
1507
-
1508
- /** @returns {CreatePaymentLinkResponse} */
1509
- static CreatePaymentLinkResponse() {
1510
- return Joi.object({
1511
- message: Joi.string().allow("").required(),
1512
- payment_link_id: Joi.string().allow("").allow(null),
1513
- payment_link_url: Joi.string().allow("").allow(null),
1514
- polling_timeout: Joi.number().allow(null),
1515
- status_code: Joi.number().required(),
1516
- success: Joi.boolean().required(),
1517
- });
1518
- }
1519
-
1520
- /** @returns {DeletePayoutResponse} */
1521
- static DeletePayoutResponse() {
1522
- return Joi.object({
1523
- success: Joi.boolean().required(),
1524
- });
1525
- }
961
+ * @typedef RefundSessionRequestSerializer
962
+ * @property {Object} [meta] - Meta
963
+ * @property {string} gid - Global identifier of the entity (e.g. order, cart
964
+ * etc.) against which payment_session was initiated. This is generated by
965
+ * Fynd payments platform and is unique.
966
+ * @property {string} status - The status of the refund.
967
+ * @property {string} currency - The currency of the payment.
968
+ * @property {PaymentSessionDetail} payment_details - Details of the payment
969
+ * @property {RefundSessionDetail[]} [refund_details] - Details of the refund
970
+ * @property {number} total_amount - The total amount refunded.
971
+ */
1526
972
 
1527
- /** @returns {DeleteSubscriptionPaymentMethodResponse} */
1528
- static DeleteSubscriptionPaymentMethodResponse() {
1529
- return Joi.object({
1530
- success: Joi.boolean().required(),
1531
- });
1532
- }
973
+ /**
974
+ * @typedef RefundSessionResponseSerializer
975
+ * @property {string} gid - Global identifier of the entity (e.g. order, cart
976
+ * etc.) against which payment_session was initiated. This is generated by
977
+ * Fynd payments platform and is unique.
978
+ * @property {string} status - The status of the refund.
979
+ * @property {string} currency - The currency of the payment.
980
+ * @property {Object[]} platform_refund_details - Details of the refund
981
+ * @property {number} total_refund_amount - The total amount refunded.
982
+ */
1533
983
 
1534
- /** @returns {EdcAddRequest} */
1535
- static EdcAddRequest() {
1536
- return Joi.object({
1537
- aggregator_id: Joi.number().required(),
1538
- device_tag: Joi.string().allow("").allow(null),
1539
- edc_device_serial_no: Joi.string().allow("").required(),
1540
- edc_model: Joi.string().allow("").required(),
1541
- store_id: Joi.number().required(),
1542
- terminal_serial_no: Joi.string().allow("").required(),
1543
- });
1544
- }
984
+ /**
985
+ * @typedef RefundSourcesPriority
986
+ * @property {string} description - Description of refund source
987
+ * @property {number} priority - Priority of refund source, 0 being highest
988
+ * @property {string} source - Source of refund
989
+ */
1545
990
 
1546
- /** @returns {EdcAggregatorAndModelListResponse} */
1547
- static EdcAggregatorAndModelListResponse() {
1548
- return Joi.object({
1549
- data: Joi.array().items(PaymentPlatformModel.EdcModelData()).required(),
1550
- success: Joi.boolean().required(),
1551
- });
1552
- }
991
+ /**
992
+ * @typedef RefundPriorityResponseSerializer
993
+ * @property {string} configuration - Configuration for merchant or customer
994
+ * @property {boolean} success - Success
995
+ * @property {boolean} apportion - Apportion refund to multiple sources
996
+ * @property {RefundSourcesPriority[]} refund_sources_priority - Refund sources priority
997
+ * @property {string} [message] - Message
998
+ */
1553
999
 
1554
- /** @returns {EdcDevice} */
1555
- static EdcDevice() {
1556
- return Joi.object({
1557
- aggregator_id: Joi.number().required(),
1558
- aggregator_name: Joi.string().allow(""),
1559
- application_id: Joi.string().allow("").required(),
1560
- device_tag: Joi.string().allow("").required(),
1561
- edc_device_serial_no: Joi.string().allow("").required(),
1562
- edc_model: Joi.string().allow(""),
1563
- is_active: Joi.boolean().required(),
1564
- merchant_store_pos_code: Joi.string().allow("").allow(null),
1565
- store_id: Joi.number().required(),
1566
- terminal_serial_no: Joi.string().allow("").required(),
1567
- terminal_unique_identifier: Joi.string().allow("").required(),
1568
- });
1569
- }
1000
+ /**
1001
+ * @typedef RefundPriorityRequestSerializer
1002
+ * @property {boolean} apportion - Apportion refund to multiple sources
1003
+ * @property {RefundSourcesPriority[]} refund_sources_priority - Refund sources priority
1004
+ */
1570
1005
 
1571
- /** @returns {EdcDeviceAddResponse} */
1572
- static EdcDeviceAddResponse() {
1006
+ class PaymentPlatformModel {
1007
+ /** @returns {PaymentGatewayConfigResponse} */
1008
+ static PaymentGatewayConfigResponse() {
1573
1009
  return Joi.object({
1574
- data: PaymentPlatformModel.EdcDevice().required(),
1010
+ aggregators: Joi.array().items(Joi.any()),
1011
+ app_id: Joi.string().allow("").required(),
1012
+ excluded_fields: Joi.array().items(Joi.string().allow("")).required(),
1575
1013
  success: Joi.boolean().required(),
1014
+ created: Joi.boolean().required(),
1015
+ display_fields: Joi.array().items(Joi.string().allow("")).required(),
1576
1016
  });
1577
1017
  }
1578
1018
 
1579
- /** @returns {EdcDeviceDetailsResponse} */
1580
- static EdcDeviceDetailsResponse() {
1019
+ /** @returns {ErrorCodeDescription} */
1020
+ static ErrorCodeDescription() {
1581
1021
  return Joi.object({
1582
- data: PaymentPlatformModel.EdcDevice().required(),
1022
+ description: Joi.string().allow("").required(),
1023
+ code: Joi.string().allow("").required(),
1583
1024
  success: Joi.boolean().required(),
1584
1025
  });
1585
1026
  }
1586
1027
 
1587
- /** @returns {EdcDeviceListResponse} */
1588
- static EdcDeviceListResponse() {
1028
+ /** @returns {PaymentGatewayConfig} */
1029
+ static PaymentGatewayConfig() {
1589
1030
  return Joi.object({
1590
- items: Joi.array().items(PaymentPlatformModel.EdcDevice()).required(),
1591
- page: PaymentPlatformModel.Page().required(),
1592
- success: Joi.boolean().required(),
1031
+ secret: Joi.string().allow("").required(),
1032
+ config_type: Joi.string().allow("").required(),
1033
+ is_active: Joi.boolean().allow(null),
1034
+ key: Joi.string().allow("").required(),
1035
+ merchant_salt: Joi.string().allow("").required(),
1593
1036
  });
1594
1037
  }
1595
1038
 
1596
- /** @returns {EdcDeviceStatsResponse} */
1597
- static EdcDeviceStatsResponse() {
1039
+ /** @returns {PaymentGatewayConfigRequest} */
1040
+ static PaymentGatewayConfigRequest() {
1598
1041
  return Joi.object({
1599
- statistics: PaymentPlatformModel.StatisticsData().required(),
1600
- success: Joi.boolean().required(),
1042
+ app_id: Joi.string().allow("").required(),
1043
+ is_active: Joi.boolean().allow(null),
1044
+ aggregator_name: PaymentPlatformModel.PaymentGatewayConfig(),
1601
1045
  });
1602
1046
  }
1603
1047
 
1604
- /** @returns {EdcDeviceUpdateResponse} */
1605
- static EdcDeviceUpdateResponse() {
1048
+ /** @returns {PaymentGatewayToBeReviewed} */
1049
+ static PaymentGatewayToBeReviewed() {
1606
1050
  return Joi.object({
1051
+ aggregator: Joi.array().items(Joi.string().allow("")).required(),
1607
1052
  success: Joi.boolean().required(),
1608
1053
  });
1609
1054
  }
1610
1055
 
1611
- /** @returns {EdcModelData} */
1612
- static EdcModelData() {
1613
- return Joi.object({
1614
- aggregator: Joi.string().allow("").required(),
1615
- aggregator_id: Joi.number().required(),
1616
- models: Joi.array().items(Joi.string().allow("")).required(),
1617
- });
1618
- }
1619
-
1620
- /** @returns {EdcUpdateRequest} */
1621
- static EdcUpdateRequest() {
1622
- return Joi.object({
1623
- aggregator_id: Joi.number(),
1624
- device_tag: Joi.string().allow("").allow(null),
1625
- edc_device_serial_no: Joi.string().allow(""),
1626
- edc_model: Joi.string().allow(""),
1627
- is_active: Joi.boolean(),
1628
- merchant_store_pos_code: Joi.string().allow(""),
1629
- store_id: Joi.number(),
1630
- });
1631
- }
1632
-
1633
1056
  /** @returns {ErrorCodeAndDescription} */
1634
1057
  static ErrorCodeAndDescription() {
1635
1058
  return Joi.object({
1636
- code: Joi.string().allow("").required(),
1637
1059
  description: Joi.string().allow("").required(),
1638
- });
1639
- }
1640
-
1641
- /** @returns {ErrorCodeDescription} */
1642
- static ErrorCodeDescription() {
1643
- return Joi.object({
1644
1060
  code: Joi.string().allow("").required(),
1645
- description: Joi.string().allow("").required(),
1646
- success: Joi.boolean().required(),
1647
- });
1648
- }
1649
-
1650
- /** @returns {ErrorDescription} */
1651
- static ErrorDescription() {
1652
- return Joi.object({
1653
- amount: Joi.number().allow(null),
1654
- cancelled: Joi.boolean().allow(null),
1655
- expired: Joi.boolean().allow(null),
1656
- invalid_id: Joi.boolean().allow(null),
1657
- merchant_name: Joi.string().allow("").allow(null),
1658
- merchant_order_id: Joi.string().allow("").allow(null),
1659
- msg: Joi.string().allow("").allow(null),
1660
- payment_transaction_id: Joi.string().allow("").allow(null),
1661
- });
1662
- }
1663
-
1664
- /** @returns {ErrorResponse} */
1665
- static ErrorResponse() {
1666
- return Joi.object({
1667
- error: PaymentPlatformModel.ErrorDescription(),
1668
- message: Joi.string().allow("").required(),
1669
- status_code: Joi.number().required(),
1670
- success: Joi.boolean().required(),
1671
- });
1672
- }
1673
-
1674
- /** @returns {FromConfig} */
1675
- static FromConfig() {
1676
- return Joi.object({
1677
- business_unit: Joi.string().allow("").required(),
1678
- device: Joi.string().allow("").required(),
1679
- });
1680
- }
1681
-
1682
- /** @returns {GetOauthUrlResponse} */
1683
- static GetOauthUrlResponse() {
1684
- return Joi.object({
1685
- success: Joi.boolean().required(),
1686
- url: Joi.string().allow("").required(),
1687
- });
1688
- }
1689
-
1690
- /** @returns {GetPaymentCode} */
1691
- static GetPaymentCode() {
1692
- return Joi.object({
1693
- method_code: PaymentPlatformModel.PaymentCode().required(),
1694
1061
  });
1695
1062
  }
1696
1063
 
1697
- /** @returns {GetPaymentCodeResponse} */
1698
- static GetPaymentCodeResponse() {
1064
+ /** @returns {HttpErrorCodeAndResponse} */
1065
+ static HttpErrorCodeAndResponse() {
1699
1066
  return Joi.object({
1700
- data: PaymentPlatformModel.GetPaymentCode().required(),
1067
+ error: PaymentPlatformModel.ErrorCodeAndDescription().required(),
1701
1068
  success: Joi.boolean().required(),
1702
1069
  });
1703
1070
  }
1704
1071
 
1705
- /** @returns {GetPaymentLinkResponse} */
1706
- static GetPaymentLinkResponse() {
1072
+ /** @returns {IntentAppErrorList} */
1073
+ static IntentAppErrorList() {
1707
1074
  return Joi.object({
1708
- amount: Joi.number().allow(null),
1709
- external_order_id: Joi.string().allow("").allow(null),
1710
- merchant_name: Joi.string().allow("").allow(null),
1711
- message: Joi.string().allow("").required(),
1712
- payment_link_current_status: Joi.string().allow("").allow(null),
1713
- payment_link_url: Joi.string().allow("").allow(null),
1714
- polling_timeout: Joi.number().allow(null),
1715
- status_code: Joi.number().required(),
1716
- success: Joi.boolean().required(),
1075
+ package_name: Joi.string().allow("").allow(null),
1076
+ code: Joi.string().allow("").allow(null),
1717
1077
  });
1718
1078
  }
1719
1079
 
1720
- /** @returns {GetUserCODLimitResponse} */
1721
- static GetUserCODLimitResponse() {
1080
+ /** @returns {ProductCODData} */
1081
+ static ProductCODData() {
1722
1082
  return Joi.object({
1723
- success: Joi.boolean().required(),
1724
- user_cod_data: PaymentPlatformModel.CODdata().required(),
1083
+ items: Joi.any().allow(null),
1084
+ cod_charges: Joi.any().allow(null),
1725
1085
  });
1726
1086
  }
1727
1087
 
1728
- /** @returns {HttpErrorCodeAndResponse} */
1729
- static HttpErrorCodeAndResponse() {
1088
+ /** @returns {CODChargesLimitsResponse} */
1089
+ static CODChargesLimitsResponse() {
1730
1090
  return Joi.object({
1731
- error: PaymentPlatformModel.ErrorCodeAndDescription().required(),
1732
- success: Joi.boolean().required(),
1091
+ max_cart_value: Joi.number().allow(null),
1092
+ min_cart_value: Joi.number().allow(null),
1093
+ cod_charge: Joi.number().allow(null),
1733
1094
  });
1734
1095
  }
1735
1096
 
1736
- /** @returns {IfscCodeResponse} */
1737
- static IfscCodeResponse() {
1097
+ /** @returns {PaymentModeLogo} */
1098
+ static PaymentModeLogo() {
1738
1099
  return Joi.object({
1739
- bank_name: Joi.string().allow("").required(),
1740
- branch_name: Joi.string().allow("").required(),
1741
- success: Joi.boolean(),
1100
+ large: Joi.string().allow("").required(),
1101
+ small: Joi.string().allow("").required(),
1742
1102
  });
1743
1103
  }
1744
1104
 
1745
1105
  /** @returns {IntentApp} */
1746
1106
  static IntentApp() {
1747
1107
  return Joi.object({
1748
- code: Joi.string().allow("").allow(null),
1749
- display_name: Joi.string().allow("").allow(null),
1750
- logos: PaymentPlatformModel.PaymentModeLogo(),
1751
1108
  package_name: Joi.string().allow("").allow(null),
1109
+ display_name: Joi.string().allow("").allow(null),
1110
+ code: Joi.string().allow("").allow(null),
1111
+ logos: Joi.any().allow(null),
1752
1112
  });
1753
1113
  }
1754
1114
 
1755
- /** @returns {IntentAppErrorList} */
1756
- static IntentAppErrorList() {
1115
+ /** @returns {PaymentModeList} */
1116
+ static PaymentModeList() {
1757
1117
  return Joi.object({
1118
+ remaining_limit: Joi.number().allow(null),
1119
+ card_brand: Joi.string().allow("").allow(null),
1120
+ card_fingerprint: Joi.string().allow("").allow(null),
1121
+ merchant_code: Joi.string().allow("").allow(null),
1122
+ intent_flow: Joi.boolean().allow(null),
1758
1123
  code: Joi.string().allow("").allow(null),
1759
- package_name: Joi.string().allow("").allow(null),
1124
+ card_issuer: Joi.string().allow("").allow(null),
1125
+ cod_limit_per_order: Joi.number().allow(null),
1126
+ card_reference: Joi.string().allow("").allow(null),
1127
+ card_type: Joi.string().allow("").allow(null),
1128
+ card_isin: Joi.string().allow("").allow(null),
1129
+ exp_month: Joi.number().allow(null),
1130
+ fynd_vpa: Joi.string().allow("").allow(null),
1131
+ card_number: Joi.string().allow("").allow(null),
1132
+ display_priority: Joi.number().allow(null),
1133
+ display_name: Joi.string().allow("").allow(null),
1134
+ card_id: Joi.string().allow("").allow(null),
1135
+ retry_count: Joi.number().allow(null),
1136
+ card_name: Joi.string().allow("").allow(null),
1137
+ timeout: Joi.number().allow(null),
1138
+ intent_app_error_dict_list: Joi.array().items(
1139
+ PaymentPlatformModel.IntentAppErrorList()
1140
+ ),
1141
+ card_brand_image: Joi.string().allow("").allow(null),
1142
+ expired: Joi.boolean().allow(null),
1143
+ logo_url: Joi.any().allow(null),
1144
+ card_token: Joi.string().allow("").allow(null),
1145
+ aggregator_name: Joi.string().allow("").required(),
1146
+ cod_charges: Joi.number().allow(null),
1147
+ product_cod_data: Joi.any().allow(null),
1148
+ cod_limit: Joi.number().allow(null),
1149
+ intent_app: Joi.array().items(PaymentPlatformModel.IntentApp()),
1150
+ nickname: Joi.string().allow("").allow(null),
1151
+ compliant_with_tokenisation_guidelines: Joi.boolean().allow(null),
1152
+ exp_year: Joi.number().allow(null),
1153
+ name: Joi.string().allow("").allow(null),
1154
+ intent_app_error_list: Joi.array().items(Joi.string().allow("")),
1760
1155
  });
1761
1156
  }
1762
1157
 
1763
- /** @returns {LinkStatus} */
1764
- static LinkStatus() {
1158
+ /** @returns {RootPaymentMode} */
1159
+ static RootPaymentMode() {
1765
1160
  return Joi.object({
1766
- message: Joi.string().allow("").required(),
1767
- status: Joi.string().allow("").required(),
1161
+ list: Joi.array().items(PaymentPlatformModel.PaymentModeList()),
1162
+ display_priority: Joi.number().required(),
1163
+ add_card_enabled: Joi.boolean().allow(null),
1164
+ save_card: Joi.boolean().allow(null),
1165
+ is_pay_by_card_pl: Joi.boolean().allow(null),
1166
+ display_name: Joi.string().allow("").required(),
1167
+ anonymous_enable: Joi.boolean().allow(null),
1168
+ name: Joi.string().allow("").required(),
1169
+ aggregator_name: Joi.string().allow("").allow(null),
1768
1170
  });
1769
1171
  }
1770
1172
 
1771
- /** @returns {MerchantOnBoardingRequest} */
1772
- static MerchantOnBoardingRequest() {
1173
+ /** @returns {PaymentOptions} */
1174
+ static PaymentOptions() {
1773
1175
  return Joi.object({
1774
- aggregator: Joi.string().allow("").required(),
1775
- app_id: Joi.string().allow("").required(),
1776
- credit_line_id: Joi.string().allow("").required(),
1777
- status: Joi.string().allow("").required(),
1778
- user_id: Joi.string().allow("").required(),
1176
+ payment_option: Joi.array()
1177
+ .items(PaymentPlatformModel.RootPaymentMode())
1178
+ .required(),
1779
1179
  });
1780
1180
  }
1781
1181
 
1782
- /** @returns {MerchantOnBoardingResponse} */
1783
- static MerchantOnBoardingResponse() {
1182
+ /** @returns {PaymentOptionsResponse} */
1183
+ static PaymentOptionsResponse() {
1784
1184
  return Joi.object({
1785
- data: Joi.any().required(),
1185
+ payment_options: PaymentPlatformModel.PaymentOptions().required(),
1786
1186
  success: Joi.boolean().required(),
1787
1187
  });
1788
1188
  }
1789
1189
 
1790
- /** @returns {MerchantPaymentModeRequest} */
1791
- static MerchantPaymentModeRequest() {
1190
+ /** @returns {PayoutCustomer} */
1191
+ static PayoutCustomer() {
1792
1192
  return Joi.object({
1793
- business_unit: Joi.string().allow("").required(),
1794
- device: Joi.any().required(),
1795
- items: Joi.array().items(Joi.any()).required(),
1193
+ unique_external_id: Joi.string().allow("").allow(null),
1194
+ mobile: Joi.string().allow("").allow(null),
1195
+ name: Joi.string().allow("").allow(null),
1196
+ email: Joi.string().allow("").allow(null),
1197
+ id: Joi.number().allow(null),
1796
1198
  });
1797
1199
  }
1798
1200
 
1799
- /** @returns {MerchnatPaymentModeRequest} */
1800
- static MerchnatPaymentModeRequest() {
1201
+ /** @returns {PayoutMoreAttributes} */
1202
+ static PayoutMoreAttributes() {
1801
1203
  return Joi.object({
1802
- offline: Joi.any().allow(null),
1803
- online: Joi.any().allow(null),
1204
+ branch_name: Joi.string().allow("").allow(null),
1205
+ city: Joi.string().allow("").allow(null),
1206
+ account_no: Joi.string().allow("").allow(null),
1207
+ country: Joi.string().allow("").allow(null),
1208
+ state: Joi.string().allow("").allow(null),
1209
+ account_holder: Joi.string().allow("").allow(null),
1210
+ ifsc_code: Joi.string().allow("").allow(null),
1211
+ account_type: Joi.string().allow("").allow(null),
1212
+ bank_name: Joi.string().allow("").allow(null),
1804
1213
  });
1805
1214
  }
1806
1215
 
1807
- /** @returns {MultiTenderPaymentMeta} */
1808
- static MultiTenderPaymentMeta() {
1216
+ /** @returns {PayoutAggregator} */
1217
+ static PayoutAggregator() {
1809
1218
  return Joi.object({
1810
- current_status: Joi.string().allow(""),
1811
- extra_meta: Joi.any().allow(null),
1812
- order_id: Joi.string().allow(""),
1813
- payment_gateway: Joi.string().allow(""),
1814
- payment_id: Joi.string().allow(""),
1219
+ aggregator_id: Joi.number().allow(null),
1220
+ aggregator_fund_id: Joi.number().allow(null),
1221
+ payout_details_id: Joi.number().allow(null),
1815
1222
  });
1816
1223
  }
1817
1224
 
1818
- /** @returns {MultiTenderPaymentMethod} */
1819
- static MultiTenderPaymentMethod() {
1225
+ /** @returns {Payout} */
1226
+ static Payout() {
1820
1227
  return Joi.object({
1821
- amount: Joi.number().required(),
1822
- meta: PaymentPlatformModel.MultiTenderPaymentMeta(),
1823
- mode: Joi.string().allow("").required(),
1824
- name: Joi.string().allow(""),
1228
+ customers: PaymentPlatformModel.PayoutCustomer().required(),
1229
+ more_attributes: PaymentPlatformModel.PayoutMoreAttributes().required(),
1230
+ is_default: Joi.boolean().required(),
1231
+ payouts_aggregators: Joi.array().items(
1232
+ PaymentPlatformModel.PayoutAggregator()
1233
+ ),
1234
+ unique_transfer_no: Joi.string().allow("").required(),
1235
+ is_active: Joi.boolean().required(),
1236
+ transfer_type: Joi.string().allow("").required(),
1825
1237
  });
1826
1238
  }
1827
1239
 
1828
- /** @returns {NotFoundResourceError} */
1829
- static NotFoundResourceError() {
1240
+ /** @returns {PayoutsResponse} */
1241
+ static PayoutsResponse() {
1830
1242
  return Joi.object({
1831
- code: Joi.string().allow("").required(),
1832
- description: Joi.string().allow("").required(),
1833
1243
  success: Joi.boolean().required(),
1244
+ items: Joi.array().items(PaymentPlatformModel.Payout()).required(),
1834
1245
  });
1835
1246
  }
1836
1247
 
1837
- /** @returns {OrderBeneficiaryDetails} */
1838
- static OrderBeneficiaryDetails() {
1248
+ /** @returns {PayoutBankDetails} */
1249
+ static PayoutBankDetails() {
1839
1250
  return Joi.object({
1840
- account_holder: Joi.string().allow("").required(),
1841
- account_no: Joi.string().allow("").required(),
1842
- address: Joi.string().allow("").required(),
1843
- bank_name: Joi.string().allow("").required(),
1844
- beneficiary_id: Joi.string().allow("").required(),
1845
- branch_name: Joi.string().allow(""),
1846
- comment: Joi.string().allow(""),
1847
- created_on: Joi.string().allow("").required(),
1848
- delights_user_name: Joi.string().allow("").allow(null),
1849
- display_name: Joi.string().allow("").required(),
1850
- email: Joi.string().allow("").required(),
1851
- id: Joi.number().required(),
1852
1251
  ifsc_code: Joi.string().allow("").required(),
1853
- is_active: Joi.boolean().required(),
1854
- mobile: Joi.string().allow(""),
1855
- modified_on: Joi.string().allow("").required(),
1856
- subtitle: Joi.string().allow("").required(),
1857
- title: Joi.string().allow("").required(),
1858
- transfer_mode: Joi.string().allow("").required(),
1859
- });
1860
- }
1861
-
1862
- /** @returns {OrderBeneficiaryResponse} */
1863
- static OrderBeneficiaryResponse() {
1864
- return Joi.object({
1865
- beneficiaries: Joi.array().items(
1866
- PaymentPlatformModel.OrderBeneficiaryDetails()
1867
- ),
1868
- show_beneficiary_details: Joi.boolean(),
1252
+ account_holder: Joi.string().allow(""),
1253
+ state: Joi.string().allow(""),
1254
+ country: Joi.string().allow(""),
1255
+ account_type: Joi.string().allow("").required(),
1256
+ account_no: Joi.string().allow(""),
1257
+ city: Joi.string().allow(""),
1258
+ bank_name: Joi.string().allow(""),
1259
+ branch_name: Joi.string().allow(""),
1260
+ pincode: Joi.number(),
1869
1261
  });
1870
1262
  }
1871
1263
 
1872
- /** @returns {OrderDetail} */
1873
- static OrderDetail() {
1264
+ /** @returns {PayoutRequest} */
1265
+ static PayoutRequest() {
1874
1266
  return Joi.object({
1875
1267
  aggregator: Joi.string().allow("").required(),
1876
- aggregator_order_details: Joi.any().required(),
1877
- amount: Joi.number().required(),
1878
- currency: Joi.string().allow("").required(),
1879
- gid: Joi.string().allow("").required(),
1880
- status: Joi.string().allow("").required(),
1268
+ users: Joi.any().required(),
1269
+ unique_external_id: Joi.string().allow("").required(),
1270
+ is_active: Joi.boolean().required(),
1271
+ bank_details: PaymentPlatformModel.PayoutBankDetails().required(),
1272
+ transfer_type: Joi.string().allow("").required(),
1881
1273
  });
1882
1274
  }
1883
1275
 
1884
- /** @returns {Page} */
1885
- static Page() {
1276
+ /** @returns {PayoutResponse} */
1277
+ static PayoutResponse() {
1886
1278
  return Joi.object({
1887
- current: Joi.number(),
1888
- has_next: Joi.boolean(),
1889
- has_previous: Joi.boolean(),
1890
- item_total: Joi.number(),
1891
- next_id: Joi.string().allow(""),
1892
- size: Joi.number(),
1893
- type: Joi.string().allow("").required(),
1279
+ payment_status: Joi.string().allow("").required(),
1280
+ users: Joi.any().required(),
1281
+ aggregator: Joi.string().allow("").required(),
1282
+ unique_transfer_no: Joi.string().allow("").required(),
1283
+ is_active: Joi.boolean().required(),
1284
+ bank_details: Joi.any().required(),
1285
+ success: Joi.boolean().required(),
1286
+ transfer_type: Joi.string().allow("").required(),
1287
+ created: Joi.boolean().required(),
1288
+ payouts: Joi.any().required(),
1894
1289
  });
1895
1290
  }
1896
1291
 
1897
- /** @returns {PaymentCode} */
1898
- static PaymentCode() {
1292
+ /** @returns {UpdatePayoutResponse} */
1293
+ static UpdatePayoutResponse() {
1899
1294
  return Joi.object({
1900
- codes: PaymentPlatformModel.Code().required(),
1901
- name: Joi.string().allow("").required(),
1902
- networks: Joi.string().allow("").required(),
1903
- types: Joi.string().allow("").required(),
1295
+ is_default: Joi.boolean().required(),
1296
+ is_active: Joi.boolean().required(),
1297
+ success: Joi.boolean().required(),
1904
1298
  });
1905
1299
  }
1906
1300
 
1907
- /** @returns {PaymentConfirmationRequest} */
1908
- static PaymentConfirmationRequest() {
1301
+ /** @returns {UpdatePayoutRequest} */
1302
+ static UpdatePayoutRequest() {
1909
1303
  return Joi.object({
1910
- order_id: Joi.string().allow("").required(),
1911
- payment_methods: Joi.array()
1912
- .items(PaymentPlatformModel.MultiTenderPaymentMethod())
1913
- .required(),
1304
+ is_default: Joi.boolean().required(),
1305
+ is_active: Joi.boolean().required(),
1306
+ unique_external_id: Joi.string().allow("").required(),
1914
1307
  });
1915
1308
  }
1916
1309
 
1917
- /** @returns {PaymentConfirmationResponse} */
1918
- static PaymentConfirmationResponse() {
1310
+ /** @returns {DeletePayoutResponse} */
1311
+ static DeletePayoutResponse() {
1919
1312
  return Joi.object({
1920
- message: Joi.string().allow("").required(),
1921
- order_id: Joi.string().allow("").required(),
1922
1313
  success: Joi.boolean().required(),
1923
1314
  });
1924
1315
  }
1925
1316
 
1926
- /** @returns {PaymentCustomConfigCustomerRequestSchema} */
1927
- static PaymentCustomConfigCustomerRequestSchema() {
1928
- return Joi.object({
1929
- groups: Joi.array().items(Joi.number()),
1930
- restriction: Joi.string().allow("").required(),
1931
- });
1932
- }
1933
-
1934
- /** @returns {PaymentCustomConfigCustomerSchema} */
1935
- static PaymentCustomConfigCustomerSchema() {
1317
+ /** @returns {SubscriptionPaymentMethodResponse} */
1318
+ static SubscriptionPaymentMethodResponse() {
1936
1319
  return Joi.object({
1937
- groups: Joi.array().items(Joi.number()),
1938
- restriction: Joi.string().allow("").required(),
1939
- types: Joi.array().items(Joi.string().allow("")),
1320
+ data: Joi.array().items(Joi.any()).required(),
1321
+ success: Joi.boolean().required(),
1940
1322
  });
1941
1323
  }
1942
1324
 
1943
- /** @returns {PaymentCustomConfigDetailsRequestSchema} */
1944
- static PaymentCustomConfigDetailsRequestSchema() {
1325
+ /** @returns {DeleteSubscriptionPaymentMethodResponse} */
1326
+ static DeleteSubscriptionPaymentMethodResponse() {
1945
1327
  return Joi.object({
1946
- customer: PaymentPlatformModel.PaymentCustomConfigCustomerRequestSchema().required(),
1947
- min_order_value: Joi.number().required(),
1948
- payment_mode: PaymentPlatformModel.PaymentCustomConfigModeSchema().required(),
1328
+ success: Joi.boolean().required(),
1949
1329
  });
1950
1330
  }
1951
1331
 
1952
- /** @returns {PaymentCustomConfigDetailsSchema} */
1953
- static PaymentCustomConfigDetailsSchema() {
1332
+ /** @returns {SubscriptionConfigResponse} */
1333
+ static SubscriptionConfigResponse() {
1954
1334
  return Joi.object({
1955
- customer: PaymentPlatformModel.PaymentCustomConfigCustomerSchema().required(),
1956
- min_order_value: Joi.number().required(),
1957
- payment_mode: PaymentPlatformModel.PaymentCustomConfigModeSchema().required(),
1335
+ aggregator: Joi.string().allow("").required(),
1336
+ config: Joi.any().required(),
1337
+ success: Joi.boolean().required(),
1958
1338
  });
1959
1339
  }
1960
1340
 
1961
- /** @returns {PaymentCustomConfigModeSchema} */
1962
- static PaymentCustomConfigModeSchema() {
1341
+ /** @returns {SaveSubscriptionSetupIntentRequest} */
1342
+ static SaveSubscriptionSetupIntentRequest() {
1963
1343
  return Joi.object({
1964
- available: Joi.boolean().required(),
1965
- post_order: Joi.array().items(Joi.string().allow("")),
1966
- pre_order: Joi.array().items(Joi.string().allow("")),
1344
+ unique_external_id: Joi.string().allow("").required(),
1967
1345
  });
1968
1346
  }
1969
1347
 
1970
- /** @returns {PaymentCustomConfigRequestSchema} */
1971
- static PaymentCustomConfigRequestSchema() {
1348
+ /** @returns {SaveSubscriptionSetupIntentResponse} */
1349
+ static SaveSubscriptionSetupIntentResponse() {
1972
1350
  return Joi.object({
1973
- business_unit: Joi.string().allow("").required(),
1974
- items: Joi.array()
1975
- .items(PaymentPlatformModel.PaymentCustomConfigDetailsRequestSchema())
1976
- .required(),
1351
+ data: Joi.any().required(),
1352
+ success: Joi.boolean().required(),
1977
1353
  });
1978
1354
  }
1979
1355
 
1980
- /** @returns {PaymentCustomConfigResponseSchema} */
1981
- static PaymentCustomConfigResponseSchema() {
1356
+ /** @returns {RefundAccountResponse} */
1357
+ static RefundAccountResponse() {
1982
1358
  return Joi.object({
1983
- items: Joi.array()
1984
- .items(PaymentPlatformModel.PaymentModeCustomConfigSchema())
1985
- .required(),
1359
+ is_verified_flag: Joi.boolean(),
1986
1360
  message: Joi.string().allow("").required(),
1361
+ data: Joi.any(),
1987
1362
  success: Joi.boolean().required(),
1988
1363
  });
1989
1364
  }
1990
1365
 
1991
- /** @returns {PaymentDetailsSerializer} */
1992
- static PaymentDetailsSerializer() {
1366
+ /** @returns {NotFoundResourceError} */
1367
+ static NotFoundResourceError() {
1993
1368
  return Joi.object({
1994
- aggregator_customer_id: Joi.string().allow(""),
1995
- aggregator_order_id: Joi.string().allow(""),
1996
- amount: Joi.number().required(),
1997
- amount_captured: Joi.number().required(),
1998
- amount_refunded: Joi.number(),
1999
- cancel_url: Joi.string().allow(""),
2000
- captured: Joi.boolean(),
2001
- created: Joi.string().allow(""),
2002
- currency: Joi.string().allow("").required(),
2003
- g_user_id: Joi.string().allow("").required(),
2004
- gid: Joi.string().allow("").required(),
2005
- kind: Joi.string().allow(""),
2006
- locale: Joi.string().allow(""),
2007
- merchant_locale: Joi.string().allow(""),
2008
- meta: Joi.any().allow(null),
2009
- mode: Joi.string().allow("").required(),
2010
- payment_id: Joi.string().allow(""),
2011
- payment_methods: Joi.array().items(Joi.any()).required(),
2012
- status: Joi.string().allow("").required(),
2013
- success_url: Joi.string().allow(""),
1369
+ description: Joi.string().allow("").required(),
1370
+ code: Joi.string().allow("").required(),
1371
+ success: Joi.boolean().required(),
2014
1372
  });
2015
1373
  }
2016
1374
 
2017
- /** @returns {PaymentFlow} */
2018
- static PaymentFlow() {
1375
+ /** @returns {BankDetailsForOTP} */
1376
+ static BankDetailsForOTP() {
2019
1377
  return Joi.object({
2020
- ajiodhan: PaymentPlatformModel.AggregatorRoute(),
2021
- bqr_razorpay: PaymentPlatformModel.AggregatorRoute(),
2022
- ccavenue: PaymentPlatformModel.AggregatorRoute(),
2023
- epaylater: PaymentPlatformModel.AggregatorRoute(),
2024
- fynd: PaymentPlatformModel.AggregatorRoute(),
2025
- jiopay: PaymentPlatformModel.AggregatorRoute(),
2026
- juspay: PaymentPlatformModel.AggregatorRoute(),
2027
- mswipe: PaymentPlatformModel.AggregatorRoute(),
2028
- payubiz: PaymentPlatformModel.AggregatorRoute(),
2029
- razorpay: PaymentPlatformModel.AggregatorRoute(),
2030
- rupifi: PaymentPlatformModel.AggregatorRoute(),
2031
- simpl: PaymentPlatformModel.AggregatorRoute(),
2032
- stripe: PaymentPlatformModel.AggregatorRoute(),
1378
+ ifsc_code: Joi.string().allow("").required(),
1379
+ account_no: Joi.string().allow("").required(),
1380
+ branch_name: Joi.string().allow("").required(),
1381
+ bank_name: Joi.string().allow("").required(),
1382
+ account_holder: Joi.string().allow("").required(),
2033
1383
  });
2034
1384
  }
2035
1385
 
2036
- /** @returns {PaymentGatewayConfig} */
2037
- static PaymentGatewayConfig() {
1386
+ /** @returns {AddBeneficiaryDetailsOTPRequest} */
1387
+ static AddBeneficiaryDetailsOTPRequest() {
2038
1388
  return Joi.object({
2039
- config_type: Joi.string().allow("").required(),
2040
- is_active: Joi.boolean().allow(null),
2041
- key: Joi.string().allow("").required(),
2042
- merchant_salt: Joi.string().allow("").required(),
2043
- secret: Joi.string().allow("").required(),
1389
+ order_id: Joi.string().allow("").required(),
1390
+ details: PaymentPlatformModel.BankDetailsForOTP().required(),
2044
1391
  });
2045
1392
  }
2046
1393
 
2047
- /** @returns {PaymentGatewayConfigRequest} */
2048
- static PaymentGatewayConfigRequest() {
1394
+ /** @returns {IfscCodeResponse} */
1395
+ static IfscCodeResponse() {
2049
1396
  return Joi.object({
2050
- aggregator_name: PaymentPlatformModel.PaymentGatewayConfig(),
2051
- app_id: Joi.string().allow("").required(),
2052
- is_active: Joi.boolean().allow(null),
1397
+ branch_name: Joi.string().allow("").required(),
1398
+ success: Joi.boolean(),
1399
+ bank_name: Joi.string().allow("").required(),
2053
1400
  });
2054
1401
  }
2055
1402
 
2056
- /** @returns {PaymentGatewayConfigResponse} */
2057
- static PaymentGatewayConfigResponse() {
1403
+ /** @returns {OrderBeneficiaryDetails} */
1404
+ static OrderBeneficiaryDetails() {
2058
1405
  return Joi.object({
2059
- aggregators: Joi.array().items(Joi.any()),
2060
- app_id: Joi.string().allow("").required(),
2061
- created: Joi.boolean().required(),
2062
- display_fields: Joi.array().items(Joi.string().allow("")).required(),
2063
- excluded_fields: Joi.array().items(Joi.string().allow("")).required(),
2064
- success: Joi.boolean().required(),
1406
+ subtitle: Joi.string().allow("").required(),
1407
+ id: Joi.number().required(),
1408
+ title: Joi.string().allow("").required(),
1409
+ account_holder: Joi.string().allow("").required(),
1410
+ ifsc_code: Joi.string().allow("").required(),
1411
+ comment: Joi.string().allow(""),
1412
+ created_on: Joi.string().allow("").required(),
1413
+ display_name: Joi.string().allow("").required(),
1414
+ delights_user_name: Joi.string().allow("").allow(null),
1415
+ transfer_mode: Joi.string().allow("").required(),
1416
+ email: Joi.string().allow("").required(),
1417
+ is_active: Joi.boolean().required(),
1418
+ branch_name: Joi.string().allow(""),
1419
+ address: Joi.string().allow("").required(),
1420
+ modified_on: Joi.string().allow("").required(),
1421
+ beneficiary_id: Joi.string().allow("").required(),
1422
+ account_no: Joi.string().allow("").required(),
1423
+ bank_name: Joi.string().allow("").required(),
1424
+ mobile: Joi.string().allow(""),
2065
1425
  });
2066
1426
  }
2067
1427
 
2068
- /** @returns {PaymentGatewayToBeReviewed} */
2069
- static PaymentGatewayToBeReviewed() {
1428
+ /** @returns {OrderBeneficiaryResponse} */
1429
+ static OrderBeneficiaryResponse() {
2070
1430
  return Joi.object({
2071
- aggregator: Joi.array().items(Joi.string().allow("")).required(),
2072
- success: Joi.boolean().required(),
1431
+ beneficiaries: Joi.array().items(
1432
+ PaymentPlatformModel.OrderBeneficiaryDetails()
1433
+ ),
1434
+ show_beneficiary_details: Joi.boolean(),
2073
1435
  });
2074
1436
  }
2075
1437
 
2076
- /** @returns {PaymentInitializationRequest} */
2077
- static PaymentInitializationRequest() {
1438
+ /** @returns {MultiTenderPaymentMeta} */
1439
+ static MultiTenderPaymentMeta() {
2078
1440
  return Joi.object({
2079
- aggregator: Joi.string().allow("").required(),
2080
- amount: Joi.number().allow(null).required(),
2081
- contact: Joi.string().allow("").required(),
2082
- currency: Joi.string().allow("").required(),
2083
- customer_id: Joi.string().allow("").required(),
2084
- device_id: Joi.string().allow("").allow(null),
2085
- email: Joi.string().allow("").required(),
2086
- merchant_order_id: Joi.string().allow("").required(),
2087
- method: Joi.string().allow("").required(),
2088
- order_id: Joi.string().allow("").required(),
2089
- razorpay_payment_id: Joi.string().allow("").allow(null),
2090
- timeout: Joi.number().allow(null),
2091
- vpa: Joi.string().allow("").allow(null),
1441
+ extra_meta: Joi.any().allow(null),
1442
+ order_id: Joi.string().allow(""),
1443
+ payment_id: Joi.string().allow(""),
1444
+ current_status: Joi.string().allow(""),
1445
+ payment_gateway: Joi.string().allow(""),
2092
1446
  });
2093
1447
  }
2094
1448
 
2095
- /** @returns {PaymentInitializationResponse} */
2096
- static PaymentInitializationResponse() {
1449
+ /** @returns {MultiTenderPaymentMethod} */
1450
+ static MultiTenderPaymentMethod() {
2097
1451
  return Joi.object({
2098
- aggregator: Joi.string().allow("").required(),
2099
- aggregator_order_id: Joi.string().allow(""),
2100
- amount: Joi.number().allow(null),
2101
- bqr_image: Joi.string().allow("").allow(null),
2102
- currency: Joi.string().allow("").allow(null),
2103
- customer_id: Joi.string().allow("").allow(null),
2104
- device_id: Joi.string().allow("").allow(null),
2105
- merchant_order_id: Joi.string().allow("").required(),
2106
- method: Joi.string().allow("").required(),
2107
- polling_url: Joi.string().allow("").required(),
2108
- razorpay_payment_id: Joi.string().allow("").allow(null),
2109
- status: Joi.string().allow(""),
2110
- success: Joi.boolean().required(),
2111
- timeout: Joi.number().allow(null),
2112
- upi_poll_url: Joi.string().allow("").allow(null),
2113
- virtual_id: Joi.string().allow("").allow(null),
2114
- vpa: Joi.string().allow("").allow(null),
1452
+ name: Joi.string().allow(""),
1453
+ meta: PaymentPlatformModel.MultiTenderPaymentMeta(),
1454
+ amount: Joi.number().required(),
1455
+ mode: Joi.string().allow("").required(),
2115
1456
  });
2116
1457
  }
2117
1458
 
2118
- /** @returns {PaymentMethodsMetaOrder} */
2119
- static PaymentMethodsMetaOrder() {
1459
+ /** @returns {PaymentConfirmationRequest} */
1460
+ static PaymentConfirmationRequest() {
2120
1461
  return Joi.object({
2121
- merchant_code: Joi.string().allow("").required(),
2122
- payment_gateway: Joi.string().allow("").required(),
2123
- payment_identifier: Joi.string().allow("").required(),
1462
+ order_id: Joi.string().allow("").required(),
1463
+ payment_methods: Joi.array()
1464
+ .items(PaymentPlatformModel.MultiTenderPaymentMethod())
1465
+ .required(),
2124
1466
  });
2125
1467
  }
2126
1468
 
2127
- /** @returns {PaymentModeCustomConfigSchema} */
2128
- static PaymentModeCustomConfigSchema() {
1469
+ /** @returns {PaymentConfirmationResponse} */
1470
+ static PaymentConfirmationResponse() {
2129
1471
  return Joi.object({
2130
- business_unit: Joi.string().allow("").required(),
2131
- custom_config: PaymentPlatformModel.PaymentCustomConfigDetailsSchema().required(),
2132
- display_name: Joi.string().allow("").required(),
1472
+ order_id: Joi.string().allow("").required(),
1473
+ message: Joi.string().allow("").required(),
1474
+ success: Joi.boolean().required(),
2133
1475
  });
2134
1476
  }
2135
1477
 
2136
- /** @returns {PaymentModeList} */
2137
- static PaymentModeList() {
1478
+ /** @returns {CODdata} */
1479
+ static CODdata() {
2138
1480
  return Joi.object({
2139
- aggregator_name: Joi.string().allow("").required(),
2140
- card_brand: Joi.string().allow("").allow(null),
2141
- card_brand_image: Joi.string().allow("").allow(null),
2142
- card_fingerprint: Joi.string().allow("").allow(null),
2143
- card_id: Joi.string().allow("").allow(null),
2144
- card_isin: Joi.string().allow("").allow(null),
2145
- card_issuer: Joi.string().allow("").allow(null),
2146
- card_name: Joi.string().allow("").allow(null),
2147
- card_number: Joi.string().allow("").allow(null),
2148
- card_reference: Joi.string().allow("").allow(null),
2149
- card_token: Joi.string().allow("").allow(null),
2150
- card_type: Joi.string().allow("").allow(null),
2151
- cod_charges: Joi.number().allow(null),
2152
- cod_limit: Joi.number().allow(null),
2153
- cod_limit_per_order: Joi.number().allow(null),
2154
- code: Joi.string().allow("").allow(null),
2155
- compliant_with_tokenisation_guidelines: Joi.boolean().allow(null),
2156
- display_name: Joi.string().allow("").allow(null),
2157
- display_priority: Joi.number().allow(null),
2158
- exp_month: Joi.number().allow(null),
2159
- exp_year: Joi.number().allow(null),
2160
- expired: Joi.boolean().allow(null),
2161
- fynd_vpa: Joi.string().allow("").allow(null),
2162
- intent_app: Joi.array().items(PaymentPlatformModel.IntentApp()),
2163
- intent_app_error_dict_list: Joi.array().items(
2164
- PaymentPlatformModel.IntentAppErrorList()
2165
- ),
2166
- intent_app_error_list: Joi.array().items(Joi.string().allow("")),
2167
- intent_flow: Joi.boolean().allow(null),
2168
- logo_url: PaymentPlatformModel.PaymentModeLogo(),
2169
- merchant_code: Joi.string().allow("").allow(null),
2170
- name: Joi.string().allow("").allow(null),
2171
- nickname: Joi.string().allow("").allow(null),
2172
- product_cod_data: PaymentPlatformModel.ProductCODData(),
2173
- remaining_limit: Joi.number().allow(null),
2174
- retry_count: Joi.number().allow(null),
2175
- timeout: Joi.number().allow(null),
1481
+ remaining_limit: Joi.number().required(),
1482
+ user_id: Joi.string().allow("").required(),
1483
+ is_active: Joi.boolean().required(),
1484
+ limit: Joi.number().required(),
1485
+ usages: Joi.number().required(),
2176
1486
  });
2177
1487
  }
2178
1488
 
2179
- /** @returns {PaymentModeLogo} */
2180
- static PaymentModeLogo() {
1489
+ /** @returns {GetUserCODLimitResponse} */
1490
+ static GetUserCODLimitResponse() {
2181
1491
  return Joi.object({
2182
- large: Joi.string().allow("").required(),
2183
- small: Joi.string().allow("").required(),
1492
+ user_cod_data: PaymentPlatformModel.CODdata().required(),
1493
+ success: Joi.boolean().required(),
2184
1494
  });
2185
1495
  }
2186
1496
 
2187
- /** @returns {PaymentModeRouteResponse} */
2188
- static PaymentModeRouteResponse() {
1497
+ /** @returns {SetCODForUserRequest} */
1498
+ static SetCODForUserRequest() {
2189
1499
  return Joi.object({
2190
- advance_payment: Joi.array().items(
2191
- PaymentPlatformModel.AdvancePaymentObject()
2192
- ),
2193
- payment_breakup: Joi.any(),
2194
- payment_options: PaymentPlatformModel.PaymentOptionAndFlow().required(),
2195
- success: Joi.boolean().required(),
1500
+ mobileno: Joi.string().allow("").required(),
1501
+ is_active: Joi.boolean().required(),
1502
+ merchant_user_id: Joi.string().allow("").required(),
2196
1503
  });
2197
1504
  }
2198
1505
 
2199
- /** @returns {PaymentObjectListSerializer} */
2200
- static PaymentObjectListSerializer() {
1506
+ /** @returns {SetCODOptionResponse} */
1507
+ static SetCODOptionResponse() {
2201
1508
  return Joi.object({
2202
- aggregator_payment_object: Joi.any().allow(null),
2203
- all_status: Joi.array().items(Joi.string().allow("")).required(),
2204
- amount_in_paisa: Joi.string().allow("").required(),
2205
- application_id: Joi.string().allow("").required(),
2206
- collected_by: Joi.string().allow("").required(),
2207
- company_id: Joi.string().allow("").required(),
2208
- created_on: Joi.string().allow("").required(),
2209
- currency: Joi.string().allow("").required(),
2210
- current_status: Joi.string().allow("").required(),
2211
- id: Joi.string().allow("").required(),
2212
- modified_on: Joi.string().allow("").required(),
2213
- payment_gateway: Joi.string().allow("").required(),
2214
- payment_id: Joi.string().allow("").allow(null),
2215
- payment_mode: Joi.string().allow("").required(),
2216
- payment_mode_identifier: Joi.string().allow("").required(),
2217
- refund_object: Joi.any().allow(null),
2218
- refunded_by: Joi.string().allow("").required(),
2219
- user_object: Joi.any().required(),
1509
+ message: Joi.string().allow("").required(),
1510
+ success: Joi.boolean().required(),
2220
1511
  });
2221
1512
  }
2222
1513
 
2223
- /** @returns {PaymentOptionAndFlow} */
2224
- static PaymentOptionAndFlow() {
1514
+ /** @returns {EdcModelData} */
1515
+ static EdcModelData() {
2225
1516
  return Joi.object({
2226
- payment_flows: PaymentPlatformModel.PaymentFlow().required(),
2227
- payment_option: Joi.array()
2228
- .items(PaymentPlatformModel.RootPaymentMode())
2229
- .required(),
1517
+ aggregator: Joi.string().allow("").required(),
1518
+ aggregator_id: Joi.number().required(),
1519
+ models: Joi.array().items(Joi.string().allow("")).required(),
2230
1520
  });
2231
1521
  }
2232
1522
 
2233
- /** @returns {PaymentOptions} */
2234
- static PaymentOptions() {
1523
+ /** @returns {EdcAggregatorAndModelListResponse} */
1524
+ static EdcAggregatorAndModelListResponse() {
2235
1525
  return Joi.object({
2236
- payment_option: Joi.array()
2237
- .items(PaymentPlatformModel.RootPaymentMode())
2238
- .required(),
1526
+ data: Joi.array().items(PaymentPlatformModel.EdcModelData()).required(),
1527
+ success: Joi.boolean().required(),
2239
1528
  });
2240
1529
  }
2241
1530
 
2242
- /** @returns {PaymentOptionsResponse} */
2243
- static PaymentOptionsResponse() {
1531
+ /** @returns {StatisticsData} */
1532
+ static StatisticsData() {
2244
1533
  return Joi.object({
2245
- payment_breakup: Joi.any(),
2246
- payment_options: PaymentPlatformModel.PaymentOptions().required(),
2247
- success: Joi.boolean().required(),
1534
+ inactive_device_count: Joi.number().required(),
1535
+ active_device_count: Joi.number().required(),
2248
1536
  });
2249
1537
  }
2250
1538
 
2251
- /** @returns {PaymentOrderData} */
2252
- static PaymentOrderData() {
1539
+ /** @returns {EdcDeviceStatsResponse} */
1540
+ static EdcDeviceStatsResponse() {
2253
1541
  return Joi.object({
2254
- aggregator: Joi.string().allow("").allow(null),
2255
- amount: Joi.number().allow(null),
2256
- callback_url: Joi.string().allow("").allow(null),
2257
- contact: Joi.string().allow("").allow(null),
2258
- currency: Joi.string().allow("").allow(null),
2259
- customer_id: Joi.string().allow("").allow(null),
2260
- email: Joi.string().allow("").allow(null),
2261
- merchant_order_id: Joi.string().allow("").allow(null),
2262
- method: Joi.string().allow("").allow(null),
2263
- order_id: Joi.string().allow("").allow(null),
1542
+ statistics: PaymentPlatformModel.StatisticsData().required(),
1543
+ success: Joi.boolean().required(),
2264
1544
  });
2265
1545
  }
2266
1546
 
2267
- /** @returns {PaymentOrderMethods} */
2268
- static PaymentOrderMethods() {
1547
+ /** @returns {EdcAddRequest} */
1548
+ static EdcAddRequest() {
2269
1549
  return Joi.object({
2270
- amount: Joi.number().required(),
2271
- meta: PaymentPlatformModel.PaymentMethodsMetaOrder().required(),
2272
- mode: Joi.string().allow("").required(),
2273
- name: Joi.string().allow("").required(),
2274
- payment: Joi.string().allow(""),
1550
+ edc_model: Joi.string().allow("").required(),
1551
+ store_id: Joi.number().required(),
1552
+ aggregator_id: Joi.number().required(),
1553
+ edc_device_serial_no: Joi.string().allow("").required(),
1554
+ terminal_serial_no: Joi.string().allow("").required(),
1555
+ device_tag: Joi.string().allow("").allow(null),
2275
1556
  });
2276
1557
  }
2277
1558
 
2278
- /** @returns {PaymentOrderRequest} */
2279
- static PaymentOrderRequest() {
1559
+ /** @returns {EdcDevice} */
1560
+ static EdcDevice() {
2280
1561
  return Joi.object({
2281
- order_id: Joi.string().allow("").required(),
2282
- payment_methods: Joi.array().items(
2283
- PaymentPlatformModel.PaymentOrderMethods()
2284
- ),
2285
- shipment_id: Joi.string().allow(""),
1562
+ edc_model: Joi.string().allow(""),
1563
+ store_id: Joi.number().required(),
1564
+ aggregator_id: Joi.number().required(),
1565
+ terminal_unique_identifier: Joi.string().allow("").required(),
1566
+ edc_device_serial_no: Joi.string().allow("").required(),
1567
+ is_active: Joi.boolean().required(),
1568
+ aggregator_name: Joi.string().allow(""),
1569
+ terminal_serial_no: Joi.string().allow("").required(),
1570
+ merchant_store_pos_code: Joi.string().allow("").allow(null),
1571
+ device_tag: Joi.string().allow("").required(),
1572
+ application_id: Joi.string().allow("").required(),
2286
1573
  });
2287
1574
  }
2288
1575
 
2289
- /** @returns {PaymentOrderResponse} */
2290
- static PaymentOrderResponse() {
1576
+ /** @returns {EdcDeviceAddResponse} */
1577
+ static EdcDeviceAddResponse() {
2291
1578
  return Joi.object({
2292
- callback_url: Joi.string().allow("").allow(null),
2293
- data: PaymentPlatformModel.PaymentOrderData(),
2294
- message: Joi.string().allow("").required(),
2295
- order_id: Joi.string().allow("").allow(null),
2296
- payment_confirm_url: Joi.string().allow("").allow(null),
2297
- status_code: Joi.number().required(),
1579
+ data: PaymentPlatformModel.EdcDevice().required(),
2298
1580
  success: Joi.boolean().required(),
2299
1581
  });
2300
1582
  }
2301
1583
 
2302
- /** @returns {PaymentSessionDetail} */
2303
- static PaymentSessionDetail() {
1584
+ /** @returns {EdcDeviceDetailsResponse} */
1585
+ static EdcDeviceDetailsResponse() {
2304
1586
  return Joi.object({
2305
- aggregator_customer_id: Joi.string().allow(""),
2306
- aggregator_order_id: Joi.string().allow("").required(),
2307
- amount: Joi.number().required(),
2308
- amount_captured: Joi.number().required(),
2309
- amount_refunded: Joi.number(),
2310
- billing_address: PaymentPlatformModel.AddressDetail(),
2311
- cancel_url: Joi.string().allow("").required(),
2312
- captured: Joi.boolean(),
2313
- created: Joi.string().allow(""),
2314
- currency: Joi.string().allow("").required(),
2315
- g_user_id: Joi.string().allow("").required(),
2316
- gid: Joi.string().allow("").required(),
2317
- kind: Joi.string().allow(""),
2318
- locale: Joi.string().allow(""),
2319
- merchant_locale: Joi.string().allow(""),
2320
- meta: Joi.any(),
2321
- mode: Joi.string().allow("").required(),
2322
- payment_id: Joi.string().allow("").required(),
2323
- payment_methods: Joi.array().items(Joi.any()).required(),
2324
- shipping_address: PaymentPlatformModel.AddressDetail(),
2325
- status: Joi.string().allow("").required(),
2326
- success_url: Joi.string().allow("").required(),
1587
+ data: PaymentPlatformModel.EdcDevice().required(),
1588
+ success: Joi.boolean().required(),
2327
1589
  });
2328
1590
  }
2329
1591
 
2330
- /** @returns {PaymentSessionRequestSerializer} */
2331
- static PaymentSessionRequestSerializer() {
1592
+ /** @returns {EdcUpdateRequest} */
1593
+ static EdcUpdateRequest() {
2332
1594
  return Joi.object({
2333
- currency: Joi.string().allow("").required(),
2334
- gid: Joi.string().allow("").required(),
2335
- meta: Joi.any(),
2336
- order_details: PaymentPlatformModel.OrderDetail().required(),
2337
- payment_details: Joi.array()
2338
- .items(PaymentPlatformModel.PaymentSessionDetail())
2339
- .required(),
2340
- status: Joi.string().allow("").required(),
2341
- total_amount: Joi.number().required(),
1595
+ edc_model: Joi.string().allow(""),
1596
+ store_id: Joi.number(),
1597
+ aggregator_id: Joi.number(),
1598
+ edc_device_serial_no: Joi.string().allow(""),
1599
+ is_active: Joi.boolean(),
1600
+ merchant_store_pos_code: Joi.string().allow(""),
1601
+ device_tag: Joi.string().allow("").allow(null),
2342
1602
  });
2343
1603
  }
2344
1604
 
2345
- /** @returns {PaymentSessionResponseSerializer} */
2346
- static PaymentSessionResponseSerializer() {
1605
+ /** @returns {EdcDeviceUpdateResponse} */
1606
+ static EdcDeviceUpdateResponse() {
2347
1607
  return Joi.object({
2348
- currency: Joi.string().allow("").required(),
2349
- gid: Joi.string().allow("").required(),
2350
- platform_transaction_details: Joi.array().items(Joi.any()).required(),
2351
- status: Joi.string().allow("").required(),
2352
- total_amount: Joi.number().required(),
1608
+ success: Joi.boolean().required(),
2353
1609
  });
2354
1610
  }
2355
1611
 
2356
- /** @returns {PaymentSessionSerializer} */
2357
- static PaymentSessionSerializer() {
1612
+ /** @returns {Page} */
1613
+ static Page() {
2358
1614
  return Joi.object({
2359
- cart_details: PaymentPlatformModel.CartDetailsSerializer(),
2360
- currency: Joi.string().allow("").allow(null),
2361
- gid: Joi.string().allow("").allow(null).required(),
2362
- payment_details: Joi.any().required(),
2363
- refund_details: Joi.array()
2364
- .items(PaymentPlatformModel.RefundDetailsSerializer())
2365
- .required(),
2366
- status: Joi.string().allow("").required(),
2367
- total_amount: Joi.number().required(),
1615
+ item_total: Joi.number(),
1616
+ next_id: Joi.string().allow(""),
1617
+ has_previous: Joi.boolean(),
1618
+ has_next: Joi.boolean(),
1619
+ current: Joi.number(),
1620
+ type: Joi.string().allow("").required(),
1621
+ size: Joi.number(),
2368
1622
  });
2369
1623
  }
2370
1624
 
2371
- /** @returns {PaymentStatusBulkHandlerRequest} */
2372
- static PaymentStatusBulkHandlerRequest() {
1625
+ /** @returns {EdcDeviceListResponse} */
1626
+ static EdcDeviceListResponse() {
2373
1627
  return Joi.object({
2374
- merchant_order_id: Joi.array().items(Joi.string().allow("")).required(),
1628
+ items: Joi.array().items(PaymentPlatformModel.EdcDevice()).required(),
1629
+ page: PaymentPlatformModel.Page().required(),
1630
+ success: Joi.boolean().required(),
2375
1631
  });
2376
1632
  }
2377
1633
 
2378
- /** @returns {PaymentStatusBulkHandlerResponse} */
2379
- static PaymentStatusBulkHandlerResponse() {
1634
+ /** @returns {PaymentInitializationRequest} */
1635
+ static PaymentInitializationRequest() {
2380
1636
  return Joi.object({
2381
- count: Joi.number(),
2382
- data: Joi.array().items(PaymentPlatformModel.PaymentStatusObject()),
2383
- error: Joi.string().allow(""),
2384
- status: Joi.number().required(),
2385
- success: Joi.string().allow("").required(),
1637
+ razorpay_payment_id: Joi.string().allow("").allow(null),
1638
+ device_id: Joi.string().allow("").allow(null),
1639
+ email: Joi.string().allow("").required(),
1640
+ customer_id: Joi.string().allow("").required(),
1641
+ vpa: Joi.string().allow("").allow(null),
1642
+ aggregator: Joi.string().allow("").required(),
1643
+ order_id: Joi.string().allow("").required(),
1644
+ currency: Joi.string().allow("").required(),
1645
+ amount: Joi.number().allow(null).required(),
1646
+ contact: Joi.string().allow("").required(),
1647
+ timeout: Joi.number().allow(null),
1648
+ merchant_order_id: Joi.string().allow("").required(),
1649
+ method: Joi.string().allow("").required(),
2386
1650
  });
2387
1651
  }
2388
1652
 
2389
- /** @returns {PaymentStatusObject} */
2390
- static PaymentStatusObject() {
1653
+ /** @returns {PaymentInitializationResponse} */
1654
+ static PaymentInitializationResponse() {
2391
1655
  return Joi.object({
1656
+ razorpay_payment_id: Joi.string().allow("").allow(null),
1657
+ device_id: Joi.string().allow("").allow(null),
1658
+ upi_poll_url: Joi.string().allow("").allow(null),
1659
+ customer_id: Joi.string().allow("").allow(null),
1660
+ polling_url: Joi.string().allow("").required(),
1661
+ vpa: Joi.string().allow("").allow(null),
1662
+ aggregator: Joi.string().allow("").required(),
1663
+ currency: Joi.string().allow("").allow(null),
2392
1664
  merchant_order_id: Joi.string().allow("").required(),
2393
- payment_object_list: Joi.array().items(
2394
- PaymentPlatformModel.PaymentObjectListSerializer()
2395
- ),
1665
+ amount: Joi.number().allow(null),
1666
+ timeout: Joi.number().allow(null),
1667
+ virtual_id: Joi.string().allow("").allow(null),
1668
+ bqr_image: Joi.string().allow("").allow(null),
1669
+ aggregator_order_id: Joi.string().allow(""),
1670
+ success: Joi.boolean().required(),
1671
+ status: Joi.string().allow(""),
1672
+ method: Joi.string().allow("").required(),
2396
1673
  });
2397
1674
  }
2398
1675
 
2399
1676
  /** @returns {PaymentStatusUpdateRequest} */
2400
1677
  static PaymentStatusUpdateRequest() {
2401
1678
  return Joi.object({
1679
+ device_id: Joi.string().allow("").allow(null),
1680
+ email: Joi.string().allow("").required(),
1681
+ customer_id: Joi.string().allow("").required(),
1682
+ vpa: Joi.string().allow(""),
2402
1683
  aggregator: Joi.string().allow("").required(),
1684
+ order_id: Joi.string().allow("").required(),
1685
+ currency: Joi.string().allow("").required(),
2403
1686
  amount: Joi.number().allow(null).required(),
2404
1687
  contact: Joi.string().allow("").required(),
2405
- currency: Joi.string().allow("").required(),
2406
- customer_id: Joi.string().allow("").required(),
2407
- device_id: Joi.string().allow("").allow(null),
2408
- email: Joi.string().allow("").required(),
2409
1688
  merchant_order_id: Joi.string().allow("").required(),
2410
- merchant_transaction_id: Joi.string().allow("").required(),
2411
- method: Joi.string().allow("").required(),
2412
- order_id: Joi.string().allow("").required(),
2413
1689
  status: Joi.string().allow("").required(),
2414
- vpa: Joi.string().allow(""),
1690
+ method: Joi.string().allow("").required(),
1691
+ merchant_transaction_id: Joi.string().allow("").required(),
2415
1692
  });
2416
1693
  }
2417
1694
 
2418
1695
  /** @returns {PaymentStatusUpdateResponse} */
2419
1696
  static PaymentStatusUpdateResponse() {
2420
1697
  return Joi.object({
2421
- aggregator_name: Joi.string().allow("").required(),
2422
1698
  redirect_url: Joi.string().allow("").allow(null),
2423
1699
  retry: Joi.boolean().required(),
2424
- status: Joi.string().allow("").required(),
2425
1700
  success: Joi.boolean().allow(null),
1701
+ status: Joi.string().allow("").required(),
1702
+ aggregator_name: Joi.string().allow("").required(),
2426
1703
  });
2427
1704
  }
2428
1705
 
2429
- /** @returns {Payout} */
2430
- static Payout() {
2431
- return Joi.object({
2432
- customers: PaymentPlatformModel.PayoutCustomer().required(),
2433
- is_active: Joi.boolean().required(),
2434
- is_default: Joi.boolean().required(),
2435
- more_attributes: PaymentPlatformModel.PayoutMoreAttributes().required(),
2436
- payouts_aggregators: Joi.array().items(
2437
- PaymentPlatformModel.PayoutAggregator()
2438
- ),
2439
- transfer_type: Joi.string().allow("").required(),
2440
- unique_transfer_no: Joi.string().allow("").required(),
2441
- });
2442
- }
2443
-
2444
- /** @returns {PayoutAggregator} */
2445
- static PayoutAggregator() {
1706
+ /** @returns {ResendOrCancelPaymentRequest} */
1707
+ static ResendOrCancelPaymentRequest() {
2446
1708
  return Joi.object({
2447
- aggregator_fund_id: Joi.number().allow(null),
2448
- aggregator_id: Joi.number().allow(null),
2449
- payout_details_id: Joi.number().allow(null),
1709
+ order_id: Joi.string().allow("").required(),
1710
+ device_id: Joi.string().allow("").allow(null),
1711
+ request_type: Joi.string().allow("").required(),
2450
1712
  });
2451
1713
  }
2452
1714
 
2453
- /** @returns {PayoutBankDetails} */
2454
- static PayoutBankDetails() {
1715
+ /** @returns {LinkStatus} */
1716
+ static LinkStatus() {
2455
1717
  return Joi.object({
2456
- account_holder: Joi.string().allow(""),
2457
- account_no: Joi.string().allow(""),
2458
- account_type: Joi.string().allow("").required(),
2459
- bank_name: Joi.string().allow(""),
2460
- branch_name: Joi.string().allow(""),
2461
- city: Joi.string().allow(""),
2462
- country: Joi.string().allow(""),
2463
- ifsc_code: Joi.string().allow("").required(),
2464
- pincode: Joi.number(),
2465
- state: Joi.string().allow(""),
1718
+ status: Joi.boolean().required(),
1719
+ message: Joi.string().allow("").required(),
2466
1720
  });
2467
1721
  }
2468
1722
 
2469
- /** @returns {PayoutCustomer} */
2470
- static PayoutCustomer() {
1723
+ /** @returns {ResendOrCancelPaymentResponse} */
1724
+ static ResendOrCancelPaymentResponse() {
2471
1725
  return Joi.object({
2472
- email: Joi.string().allow("").allow(null),
2473
- id: Joi.number().allow(null),
2474
- mobile: Joi.string().allow("").allow(null),
2475
- name: Joi.string().allow("").allow(null),
2476
- unique_external_id: Joi.string().allow("").allow(null),
1726
+ data: PaymentPlatformModel.LinkStatus().required(),
1727
+ success: Joi.boolean().required(),
2477
1728
  });
2478
1729
  }
2479
1730
 
2480
- /** @returns {PayoutMoreAttributes} */
2481
- static PayoutMoreAttributes() {
2482
- return Joi.object({
2483
- account_holder: Joi.string().allow("").allow(null),
2484
- account_no: Joi.string().allow("").allow(null),
2485
- account_type: Joi.string().allow("").allow(null),
2486
- bank_name: Joi.string().allow("").allow(null),
2487
- branch_name: Joi.string().allow("").allow(null),
2488
- city: Joi.string().allow("").allow(null),
2489
- country: Joi.string().allow("").allow(null),
2490
- ifsc_code: Joi.string().allow("").allow(null),
2491
- state: Joi.string().allow("").allow(null),
1731
+ /** @returns {PaymentStatusBulkHandlerRequest} */
1732
+ static PaymentStatusBulkHandlerRequest() {
1733
+ return Joi.object({
1734
+ merchant_order_id: Joi.array().items(Joi.string().allow("")).required(),
2492
1735
  });
2493
1736
  }
2494
1737
 
2495
- /** @returns {PayoutRequest} */
2496
- static PayoutRequest() {
1738
+ /** @returns {PaymentObjectListSerializer} */
1739
+ static PaymentObjectListSerializer() {
2497
1740
  return Joi.object({
2498
- aggregator: Joi.string().allow("").required(),
2499
- bank_details: PaymentPlatformModel.PayoutBankDetails().required(),
2500
- is_active: Joi.boolean().required(),
2501
- transfer_type: Joi.string().allow("").required(),
2502
- unique_external_id: Joi.string().allow("").required(),
2503
- users: Joi.any().required(),
1741
+ user_object: Joi.any().required(),
1742
+ modified_on: Joi.string().allow("").required(),
1743
+ collected_by: Joi.string().allow("").required(),
1744
+ created_on: Joi.string().allow("").required(),
1745
+ refund_object: Joi.any().allow(null),
1746
+ id: Joi.string().allow("").required(),
1747
+ payment_id: Joi.string().allow("").allow(null),
1748
+ currency: Joi.string().allow("").required(),
1749
+ current_status: Joi.string().allow("").required(),
1750
+ aggregator_payment_object: Joi.any().allow(null),
1751
+ payment_mode: Joi.string().allow("").required(),
1752
+ refunded_by: Joi.string().allow("").required(),
1753
+ amount_in_paisa: Joi.string().allow("").required(),
1754
+ payment_gateway: Joi.string().allow("").required(),
1755
+ company_id: Joi.string().allow("").required(),
1756
+ payment_mode_identifier: Joi.string().allow("").required(),
1757
+ application_id: Joi.string().allow("").required(),
1758
+ all_status: Joi.array().items(Joi.string().allow("")).required(),
2504
1759
  });
2505
1760
  }
2506
1761
 
2507
- /** @returns {PayoutResponse} */
2508
- static PayoutResponse() {
1762
+ /** @returns {PaymentStatusObject} */
1763
+ static PaymentStatusObject() {
2509
1764
  return Joi.object({
2510
- aggregator: Joi.string().allow("").required(),
2511
- bank_details: Joi.any().required(),
2512
- created: Joi.boolean().required(),
2513
- is_active: Joi.boolean().required(),
2514
- payment_status: Joi.string().allow("").required(),
2515
- payouts: Joi.any().required(),
2516
- success: Joi.boolean().required(),
2517
- transfer_type: Joi.string().allow("").required(),
2518
- unique_transfer_no: Joi.string().allow("").required(),
2519
- users: Joi.any().required(),
1765
+ merchant_order_id: Joi.string().allow("").required(),
1766
+ payment_object_list: Joi.array().items(
1767
+ PaymentPlatformModel.PaymentObjectListSerializer()
1768
+ ),
2520
1769
  });
2521
1770
  }
2522
1771
 
2523
- /** @returns {PayoutsResponse} */
2524
- static PayoutsResponse() {
1772
+ /** @returns {PaymentStatusBulkHandlerResponse} */
1773
+ static PaymentStatusBulkHandlerResponse() {
2525
1774
  return Joi.object({
2526
- items: Joi.array().items(PaymentPlatformModel.Payout()).required(),
2527
- success: Joi.boolean().required(),
1775
+ count: Joi.number(),
1776
+ data: Joi.array().items(PaymentPlatformModel.PaymentStatusObject()),
1777
+ success: Joi.string().allow("").required(),
1778
+ error: Joi.string().allow(""),
1779
+ status: Joi.number().required(),
2528
1780
  });
2529
1781
  }
2530
1782
 
2531
- /** @returns {PlatformPaymentModeCopyConfigRequest} */
2532
- static PlatformPaymentModeCopyConfigRequest() {
1783
+ /** @returns {GetOauthUrlResponse} */
1784
+ static GetOauthUrlResponse() {
2533
1785
  return Joi.object({
2534
- from_config: PaymentPlatformModel.FromConfig().required(),
2535
- to_config: PaymentPlatformModel.ToConfig().required(),
1786
+ url: Joi.string().allow("").required(),
1787
+ success: Joi.boolean().required(),
2536
1788
  });
2537
1789
  }
2538
1790
 
2539
- /** @returns {PlatformPaymentModeResponse} */
2540
- static PlatformPaymentModeResponse() {
1791
+ /** @returns {RevokeOAuthToken} */
1792
+ static RevokeOAuthToken() {
2541
1793
  return Joi.object({
2542
- items: Joi.array().items(Joi.any()),
2543
- message: Joi.string().allow("").allow(null),
1794
+ message: Joi.string().allow("").required(),
2544
1795
  success: Joi.boolean().required(),
2545
1796
  });
2546
1797
  }
2547
1798
 
2548
- /** @returns {PollingPaymentLinkResponse} */
2549
- static PollingPaymentLinkResponse() {
1799
+ /** @returns {RepaymentRequestDetails} */
1800
+ static RepaymentRequestDetails() {
2550
1801
  return Joi.object({
2551
- aggregator_name: Joi.string().allow("").allow(null),
2552
- amount: Joi.number().allow(null),
2553
- http_status: Joi.number().allow(null),
2554
- message: Joi.string().allow("").allow(null),
2555
- order_id: Joi.string().allow("").allow(null),
2556
- payment_link_id: Joi.string().allow("").allow(null),
2557
- redirect_url: Joi.string().allow("").allow(null),
2558
- status: Joi.string().allow("").allow(null),
2559
- status_code: Joi.number().allow(null),
2560
- success: Joi.boolean().allow(null),
1802
+ fwd_shipment_id: Joi.string().allow("").required(),
1803
+ aggregator: Joi.string().allow("").required(),
1804
+ current_status: Joi.string().allow("").required(),
1805
+ merchant_order_id: Joi.string().allow("").required(),
1806
+ amount: Joi.number().required(),
1807
+ payment_mode: Joi.string().allow("").required(),
1808
+ outstanding_details_id: Joi.number().required(),
1809
+ aggregator_transaction_id: Joi.string().allow("").required(),
1810
+ aggregator_order_id: Joi.string().allow("").required(),
1811
+ payment_mode_identifier: Joi.string().allow("").required(),
2561
1812
  });
2562
1813
  }
2563
1814
 
2564
- /** @returns {ProductCODData} */
2565
- static ProductCODData() {
1815
+ /** @returns {RepaymentDetailsSerialiserPayAll} */
1816
+ static RepaymentDetailsSerialiserPayAll() {
2566
1817
  return Joi.object({
2567
- cod_charges: PaymentPlatformModel.CODChargesLimitsResponse(),
2568
- items: Joi.any().allow(null),
1818
+ total_amount: Joi.number().required(),
1819
+ extension_order_id: Joi.string().allow("").allow(null).required(),
1820
+ aggregator_transaction_id: Joi.string().allow("").required(),
1821
+ aggregator_order_id: Joi.string().allow("").required(),
1822
+ shipment_details: Joi.array().items(
1823
+ PaymentPlatformModel.RepaymentRequestDetails()
1824
+ ),
2569
1825
  });
2570
1826
  }
2571
1827
 
2572
- /** @returns {RefundAccountResponse} */
2573
- static RefundAccountResponse() {
1828
+ /** @returns {RepaymentResponse} */
1829
+ static RepaymentResponse() {
2574
1830
  return Joi.object({
2575
- data: Joi.any(),
2576
- is_verified_flag: Joi.boolean(),
2577
- message: Joi.string().allow("").required(),
1831
+ data: Joi.any().required(),
2578
1832
  success: Joi.boolean().required(),
2579
1833
  });
2580
1834
  }
2581
1835
 
2582
- /** @returns {RefundDetailsSerializer} */
2583
- static RefundDetailsSerializer() {
1836
+ /** @returns {MerchantOnBoardingRequest} */
1837
+ static MerchantOnBoardingRequest() {
2584
1838
  return Joi.object({
2585
- amount: Joi.number().required(),
2586
- created: Joi.string().allow("").required(),
2587
- currency: Joi.string().allow("").required(),
2588
- refund_utr: Joi.string().allow("").required(),
2589
- request_id: Joi.string().allow("").required(),
1839
+ credit_line_id: Joi.string().allow("").required(),
1840
+ aggregator: Joi.string().allow("").required(),
1841
+ app_id: Joi.string().allow("").required(),
1842
+ user_id: Joi.string().allow("").required(),
2590
1843
  status: Joi.string().allow("").required(),
2591
1844
  });
2592
1845
  }
2593
1846
 
2594
- /** @returns {RefundPriorityRequestSerializer} */
2595
- static RefundPriorityRequestSerializer() {
1847
+ /** @returns {MerchantOnBoardingResponse} */
1848
+ static MerchantOnBoardingResponse() {
2596
1849
  return Joi.object({
2597
- apportion: Joi.boolean().required(),
2598
- refund_sources_priority: Joi.array()
2599
- .items(PaymentPlatformModel.RefundSourcesPriority())
2600
- .required(),
1850
+ data: Joi.any().required(),
1851
+ success: Joi.boolean().required(),
2601
1852
  });
2602
1853
  }
2603
1854
 
2604
- /** @returns {RefundPriorityResponseSerializer} */
2605
- static RefundPriorityResponseSerializer() {
1855
+ /** @returns {ValidateCustomerRequest} */
1856
+ static ValidateCustomerRequest() {
2606
1857
  return Joi.object({
2607
- apportion: Joi.boolean().required(),
2608
- configuration: Joi.string().allow("").required(),
2609
- message: Joi.string().allow(""),
2610
- refund_sources_priority: Joi.array()
2611
- .items(PaymentPlatformModel.RefundSourcesPriority())
2612
- .required(),
2613
- success: Joi.boolean().required(),
1858
+ phone_number: Joi.string().allow("").required(),
1859
+ aggregator: Joi.string().allow("").required(),
1860
+ payload: Joi.string().allow("").allow(null),
1861
+ delivery_address: Joi.any(),
1862
+ transaction_amount_in_paise: Joi.number().required(),
1863
+ order_items: Joi.array().items(Joi.any()),
1864
+ merchant_params: Joi.any(),
1865
+ billing_address: Joi.any(),
2614
1866
  });
2615
1867
  }
2616
1868
 
2617
- /** @returns {RefundSessionDetail} */
2618
- static RefundSessionDetail() {
1869
+ /** @returns {ValidateCustomerResponse} */
1870
+ static ValidateCustomerResponse() {
2619
1871
  return Joi.object({
2620
- amount: Joi.number().required(),
2621
- balance_transaction: Joi.string().allow(""),
2622
- created: Joi.string().allow("").required(),
2623
- currency: Joi.string().allow("").required(),
2624
- payment_id: Joi.string().allow("").required(),
2625
- reason: Joi.string().allow(""),
2626
- receipt_number: Joi.string().allow(""),
2627
- refund_utr: Joi.string().allow(""),
2628
- request_id: Joi.string().allow("").required(),
2629
- source_transfer_reversal: Joi.string().allow(""),
2630
- status: Joi.string().allow("").required(),
2631
- transfer_reversal: Joi.string().allow(""),
1872
+ message: Joi.string().allow("").required(),
1873
+ data: Joi.any().required(),
1874
+ success: Joi.boolean().required(),
2632
1875
  });
2633
1876
  }
2634
1877
 
2635
- /** @returns {RefundSessionRequestSerializer} */
2636
- static RefundSessionRequestSerializer() {
1878
+ /** @returns {GetPaymentLinkResponse} */
1879
+ static GetPaymentLinkResponse() {
2637
1880
  return Joi.object({
2638
- currency: Joi.string().allow("").required(),
2639
- error: PaymentPlatformModel.ErrorDescription(),
2640
- gid: Joi.string().allow("").required(),
2641
- message: Joi.string().allow(""),
2642
- meta: Joi.any(),
2643
- payment_details: PaymentPlatformModel.PaymentSessionDetail().required(),
2644
- refund_details: Joi.array().items(
2645
- PaymentPlatformModel.RefundSessionDetail()
2646
- ),
2647
- status: Joi.string().allow("").required(),
2648
- total_amount: Joi.number().required(),
1881
+ message: Joi.string().allow("").required(),
1882
+ status_code: Joi.number().required(),
1883
+ amount: Joi.number().allow(null),
1884
+ merchant_name: Joi.string().allow("").allow(null),
1885
+ payment_link_url: Joi.string().allow("").allow(null),
1886
+ payment_link_current_status: Joi.string().allow("").allow(null),
1887
+ external_order_id: Joi.string().allow("").allow(null),
1888
+ polling_timeout: Joi.number().allow(null),
1889
+ success: Joi.boolean().required(),
2649
1890
  });
2650
1891
  }
2651
1892
 
2652
- /** @returns {RefundSessionResponseSerializer} */
2653
- static RefundSessionResponseSerializer() {
1893
+ /** @returns {ErrorDescription} */
1894
+ static ErrorDescription() {
2654
1895
  return Joi.object({
2655
- currency: Joi.string().allow("").required(),
2656
- gid: Joi.string().allow("").required(),
2657
- platform_refund_details: Joi.array().items(Joi.any()).required(),
2658
- status: Joi.string().allow("").required(),
2659
- total_refund_amount: Joi.number().required(),
1896
+ msg: Joi.string().allow("").allow(null),
1897
+ payment_transaction_id: Joi.string().allow("").allow(null),
1898
+ invalid_id: Joi.boolean().allow(null),
1899
+ merchant_order_id: Joi.string().allow("").allow(null),
1900
+ merchant_name: Joi.string().allow("").allow(null),
1901
+ amount: Joi.number().allow(null),
1902
+ expired: Joi.boolean().allow(null),
1903
+ cancelled: Joi.boolean().allow(null),
2660
1904
  });
2661
1905
  }
2662
1906
 
2663
- /** @returns {RefundSourcesPriority} */
2664
- static RefundSourcesPriority() {
1907
+ /** @returns {ErrorResponse} */
1908
+ static ErrorResponse() {
2665
1909
  return Joi.object({
2666
- description: Joi.string().allow("").required(),
2667
- priority: Joi.number().required(),
2668
- source: Joi.string().allow("").required(),
1910
+ status_code: Joi.number().required(),
1911
+ error: Joi.any().allow(null),
1912
+ message: Joi.string().allow("").required(),
1913
+ success: Joi.boolean().required(),
2669
1914
  });
2670
1915
  }
2671
1916
 
2672
- /** @returns {RepaymentDetailsSerialiserPayAll} */
2673
- static RepaymentDetailsSerialiserPayAll() {
1917
+ /** @returns {CreatePaymentLinkMeta} */
1918
+ static CreatePaymentLinkMeta() {
2674
1919
  return Joi.object({
2675
- aggregator_order_id: Joi.string().allow("").required(),
2676
- aggregator_transaction_id: Joi.string().allow("").required(),
2677
- extension_order_id: Joi.string().allow("").allow(null).required(),
2678
- shipment_details: Joi.array().items(
2679
- PaymentPlatformModel.RepaymentRequestDetails()
2680
- ),
2681
- total_amount: Joi.number().required(),
1920
+ cart_id: Joi.string().allow("").required(),
1921
+ checkout_mode: Joi.string().allow("").required(),
1922
+ amount: Joi.string().allow("").required(),
1923
+ assign_card_id: Joi.string().allow("").allow(null),
1924
+ pincode: Joi.string().allow("").required(),
2682
1925
  });
2683
1926
  }
2684
1927
 
2685
- /** @returns {RepaymentRequestDetails} */
2686
- static RepaymentRequestDetails() {
1928
+ /** @returns {CreatePaymentLinkRequest} */
1929
+ static CreatePaymentLinkRequest() {
2687
1930
  return Joi.object({
2688
- aggregator: Joi.string().allow("").required(),
2689
- aggregator_order_id: Joi.string().allow("").required(),
2690
- aggregator_transaction_id: Joi.string().allow("").required(),
1931
+ email: Joi.string().allow("").required(),
2691
1932
  amount: Joi.number().required(),
2692
- current_status: Joi.string().allow("").required(),
2693
- fwd_shipment_id: Joi.string().allow("").required(),
2694
- merchant_order_id: Joi.string().allow("").required(),
2695
- outstanding_details_id: Joi.number().required(),
2696
- payment_mode: Joi.string().allow("").required(),
2697
- payment_mode_identifier: Joi.string().allow("").required(),
1933
+ mobile_number: Joi.string().allow("").required(),
1934
+ description: Joi.string().allow("").allow(null),
1935
+ meta: PaymentPlatformModel.CreatePaymentLinkMeta().required(),
1936
+ external_order_id: Joi.string().allow("").required(),
2698
1937
  });
2699
1938
  }
2700
1939
 
2701
- /** @returns {RepaymentResponse} */
2702
- static RepaymentResponse() {
1940
+ /** @returns {CreatePaymentLinkResponse} */
1941
+ static CreatePaymentLinkResponse() {
2703
1942
  return Joi.object({
2704
- data: Joi.any().required(),
1943
+ message: Joi.string().allow("").required(),
1944
+ status_code: Joi.number().required(),
1945
+ payment_link_url: Joi.string().allow("").allow(null),
1946
+ polling_timeout: Joi.number().allow(null),
2705
1947
  success: Joi.boolean().required(),
1948
+ payment_link_id: Joi.string().allow("").allow(null),
2706
1949
  });
2707
1950
  }
2708
1951
 
2709
- /** @returns {ResendOrCancelPaymentRequest} */
2710
- static ResendOrCancelPaymentRequest() {
1952
+ /** @returns {PollingPaymentLinkResponse} */
1953
+ static PollingPaymentLinkResponse() {
2711
1954
  return Joi.object({
2712
- device_id: Joi.string().allow("").allow(null),
2713
- order_id: Joi.string().allow("").required(),
2714
- request_type: Joi.string().allow("").required(),
1955
+ message: Joi.string().allow("").allow(null),
1956
+ http_status: Joi.number().allow(null),
1957
+ status_code: Joi.number().allow(null),
1958
+ redirect_url: Joi.string().allow("").allow(null),
1959
+ amount: Joi.number().allow(null),
1960
+ order_id: Joi.string().allow("").allow(null),
1961
+ success: Joi.boolean().allow(null),
1962
+ payment_link_id: Joi.string().allow("").allow(null),
1963
+ status: Joi.string().allow("").allow(null),
1964
+ aggregator_name: Joi.string().allow("").allow(null),
2715
1965
  });
2716
1966
  }
2717
1967
 
2718
- /** @returns {ResendOrCancelPaymentResponse} */
2719
- static ResendOrCancelPaymentResponse() {
1968
+ /** @returns {CancelOrResendPaymentLinkRequest} */
1969
+ static CancelOrResendPaymentLinkRequest() {
2720
1970
  return Joi.object({
2721
- data: PaymentPlatformModel.LinkStatus().required(),
2722
- success: Joi.boolean().required(),
1971
+ payment_link_id: Joi.string().allow("").required(),
2723
1972
  });
2724
1973
  }
2725
1974
 
2726
1975
  /** @returns {ResendPaymentLinkResponse} */
2727
1976
  static ResendPaymentLinkResponse() {
2728
1977
  return Joi.object({
1978
+ status_code: Joi.number().required(),
2729
1979
  message: Joi.string().allow("").required(),
2730
1980
  polling_timeout: Joi.number().allow(null),
2731
- status_code: Joi.number().required(),
2732
1981
  success: Joi.boolean().required(),
2733
1982
  });
2734
1983
  }
2735
1984
 
2736
- /** @returns {RevokeOAuthToken} */
2737
- static RevokeOAuthToken() {
1985
+ /** @returns {CancelPaymentLinkResponse} */
1986
+ static CancelPaymentLinkResponse() {
2738
1987
  return Joi.object({
1988
+ status_code: Joi.number().required(),
2739
1989
  message: Joi.string().allow("").required(),
2740
1990
  success: Joi.boolean().required(),
2741
1991
  });
2742
1992
  }
2743
1993
 
2744
- /** @returns {RootPaymentMode} */
2745
- static RootPaymentMode() {
1994
+ /** @returns {Code} */
1995
+ static Code() {
2746
1996
  return Joi.object({
2747
- add_card_enabled: Joi.boolean().allow(null),
2748
- aggregator_name: Joi.string().allow("").allow(null),
2749
- anonymous_enable: Joi.boolean().allow(null),
2750
- display_name: Joi.string().allow("").required(),
2751
- display_priority: Joi.number().required(),
2752
- is_pay_by_card_pl: Joi.boolean().allow(null),
2753
- list: Joi.array().items(PaymentPlatformModel.PaymentModeList()),
2754
1997
  name: Joi.string().allow("").required(),
2755
- save_card: Joi.boolean().allow(null),
1998
+ merchant_code: Joi.string().allow("").required(),
1999
+ code: Joi.string().allow("").required(),
2756
2000
  });
2757
2001
  }
2758
2002
 
2759
- /** @returns {SaveSubscriptionSetupIntentRequest} */
2760
- static SaveSubscriptionSetupIntentRequest() {
2003
+ /** @returns {PaymentCode} */
2004
+ static PaymentCode() {
2761
2005
  return Joi.object({
2762
- unique_external_id: Joi.string().allow("").required(),
2006
+ networks: Joi.string().allow("").required(),
2007
+ codes: PaymentPlatformModel.Code().required(),
2008
+ name: Joi.string().allow("").required(),
2009
+ types: Joi.string().allow("").required(),
2763
2010
  });
2764
2011
  }
2765
2012
 
2766
- /** @returns {SaveSubscriptionSetupIntentResponse} */
2767
- static SaveSubscriptionSetupIntentResponse() {
2013
+ /** @returns {GetPaymentCode} */
2014
+ static GetPaymentCode() {
2768
2015
  return Joi.object({
2769
- data: Joi.any().required(),
2770
- success: Joi.boolean().required(),
2016
+ method_code: PaymentPlatformModel.PaymentCode().required(),
2771
2017
  });
2772
2018
  }
2773
2019
 
2774
- /** @returns {SetCODForUserRequest} */
2775
- static SetCODForUserRequest() {
2020
+ /** @returns {GetPaymentCodeResponse} */
2021
+ static GetPaymentCodeResponse() {
2776
2022
  return Joi.object({
2777
- is_active: Joi.boolean().required(),
2778
- merchant_user_id: Joi.string().allow("").required(),
2779
- mobileno: Joi.string().allow("").required(),
2023
+ data: PaymentPlatformModel.GetPaymentCode().required(),
2024
+ success: Joi.boolean().required(),
2780
2025
  });
2781
2026
  }
2782
2027
 
2783
- /** @returns {SetCODOptionResponse} */
2784
- static SetCODOptionResponse() {
2028
+ /** @returns {MerchnatPaymentModeResponse} */
2029
+ static MerchnatPaymentModeResponse() {
2785
2030
  return Joi.object({
2786
- message: Joi.string().allow("").required(),
2031
+ message: Joi.string().allow("").allow(null),
2032
+ items: Joi.array().items(Joi.any()),
2787
2033
  success: Joi.boolean().required(),
2788
2034
  });
2789
2035
  }
2790
2036
 
2791
- /** @returns {SplitObject} */
2792
- static SplitObject() {
2037
+ /** @returns {MerchnatPaymentModeRequest} */
2038
+ static MerchnatPaymentModeRequest() {
2793
2039
  return Joi.object({
2794
- amount_remaining: Joi.number().allow(null),
2795
- splits_remaining: Joi.number().allow(null),
2796
- total_number_of_splits: Joi.number().allow(null),
2040
+ offline: Joi.any().allow(null),
2041
+ online: Joi.any().allow(null),
2797
2042
  });
2798
2043
  }
2799
2044
 
2800
- /** @returns {StatisticsData} */
2801
- static StatisticsData() {
2045
+ /** @returns {OrderDetail} */
2046
+ static OrderDetail() {
2802
2047
  return Joi.object({
2803
- active_device_count: Joi.number().required(),
2804
- inactive_device_count: Joi.number().required(),
2048
+ gid: Joi.string().allow("").required(),
2049
+ amount: Joi.number().required(),
2050
+ status: Joi.string().allow("").required(),
2051
+ currency: Joi.string().allow("").required(),
2052
+ aggregator_order_details: Joi.any().required(),
2053
+ aggregator: Joi.string().allow("").required(),
2805
2054
  });
2806
2055
  }
2807
2056
 
2808
- /** @returns {SubscriptionConfigResponse} */
2809
- static SubscriptionConfigResponse() {
2057
+ /** @returns {AddressDetail} */
2058
+ static AddressDetail() {
2810
2059
  return Joi.object({
2811
- aggregator: Joi.string().allow("").required(),
2812
- config: Joi.any().required(),
2813
- success: Joi.boolean().required(),
2060
+ google_map_point: Joi.any(),
2061
+ landmark: Joi.string().allow(""),
2062
+ phone: Joi.string().allow("").required(),
2063
+ country_iso_code: Joi.string().allow("").required(),
2064
+ area_code: Joi.string().allow("").required(),
2065
+ country: Joi.string().allow("").required(),
2066
+ expire_at: Joi.string().allow(""),
2067
+ geo_location: Joi.any(),
2068
+ state: Joi.string().allow("").required(),
2069
+ area: Joi.string().allow("").required(),
2070
+ g_address_id: Joi.string().allow("").required(),
2071
+ area_code_slug: Joi.string().allow("").required(),
2072
+ country_phone_code: Joi.string().allow("").required(),
2073
+ name: Joi.string().allow("").required(),
2074
+ address_type: Joi.string().allow("").required(),
2075
+ address: Joi.string().allow("").required(),
2076
+ email: Joi.string().allow(""),
2077
+ city: Joi.string().allow("").required(),
2078
+ tags: Joi.array().items(Joi.any()),
2814
2079
  });
2815
2080
  }
2816
2081
 
2817
- /** @returns {SubscriptionPaymentMethodResponse} */
2818
- static SubscriptionPaymentMethodResponse() {
2082
+ /** @returns {PaymentSessionDetail} */
2083
+ static PaymentSessionDetail() {
2819
2084
  return Joi.object({
2820
- data: Joi.array().items(Joi.any()).required(),
2821
- success: Joi.boolean().required(),
2085
+ payment_id: Joi.string().allow("").required(),
2086
+ mode: Joi.string().allow("").required(),
2087
+ amount: Joi.number().required(),
2088
+ success_url: Joi.string().allow("").required(),
2089
+ shipping_address: PaymentPlatformModel.AddressDetail(),
2090
+ g_user_id: Joi.string().allow("").required(),
2091
+ currency: Joi.string().allow("").required(),
2092
+ merchant_locale: Joi.string().allow(""),
2093
+ locale: Joi.string().allow(""),
2094
+ aggregator_order_id: Joi.string().allow("").required(),
2095
+ gid: Joi.string().allow("").required(),
2096
+ cancel_url: Joi.string().allow("").required(),
2097
+ amount_refunded: Joi.number(),
2098
+ captured: Joi.boolean(),
2099
+ created: Joi.string().allow(""),
2100
+ status: Joi.string().allow("").required(),
2101
+ kind: Joi.string().allow(""),
2102
+ aggregator_customer_id: Joi.string().allow(""),
2103
+ payment_methods: Joi.array().items(Joi.any()).required(),
2104
+ billing_address: PaymentPlatformModel.AddressDetail(),
2105
+ amount_captured: Joi.number().required(),
2822
2106
  });
2823
2107
  }
2824
2108
 
2825
- /** @returns {ToConfig} */
2826
- static ToConfig() {
2109
+ /** @returns {PaymentSessionRequestSerializer} */
2110
+ static PaymentSessionRequestSerializer() {
2827
2111
  return Joi.object({
2828
- business_unit: Joi.string().allow("").required(),
2829
- device: Joi.array().items(Joi.any()).required(),
2112
+ meta: Joi.any(),
2113
+ gid: Joi.string().allow("").required(),
2114
+ order_details: PaymentPlatformModel.OrderDetail().required(),
2115
+ status: Joi.string().allow("").required(),
2116
+ currency: Joi.string().allow("").required(),
2117
+ payment_details: Joi.array()
2118
+ .items(PaymentPlatformModel.PaymentSessionDetail())
2119
+ .required(),
2120
+ total_amount: Joi.number().required(),
2830
2121
  });
2831
2122
  }
2832
2123
 
2833
- /** @returns {UpdatePayoutRequest} */
2834
- static UpdatePayoutRequest() {
2124
+ /** @returns {PaymentSessionResponseSerializer} */
2125
+ static PaymentSessionResponseSerializer() {
2835
2126
  return Joi.object({
2836
- is_active: Joi.boolean().required(),
2837
- is_default: Joi.boolean().required(),
2838
- unique_external_id: Joi.string().allow("").required(),
2127
+ gid: Joi.string().allow("").required(),
2128
+ platform_transaction_details: Joi.array().items(Joi.any()).required(),
2129
+ status: Joi.string().allow("").required(),
2130
+ currency: Joi.string().allow("").required(),
2131
+ total_amount: Joi.number().required(),
2839
2132
  });
2840
2133
  }
2841
2134
 
2842
- /** @returns {UpdatePayoutResponse} */
2843
- static UpdatePayoutResponse() {
2135
+ /** @returns {RefundSessionDetail} */
2136
+ static RefundSessionDetail() {
2844
2137
  return Joi.object({
2845
- is_active: Joi.boolean().required(),
2846
- is_default: Joi.boolean().required(),
2847
- success: Joi.boolean().required(),
2138
+ refund_utr: Joi.string().allow(""),
2139
+ request_id: Joi.string().allow("").required(),
2140
+ payment_id: Joi.string().allow("").required(),
2141
+ amount: Joi.number().required(),
2142
+ reason: Joi.string().allow(""),
2143
+ status: Joi.string().allow("").required(),
2144
+ created: Joi.string().allow("").required(),
2145
+ source_transfer_reversal: Joi.string().allow(""),
2146
+ receipt_number: Joi.string().allow(""),
2147
+ currency: Joi.string().allow("").required(),
2148
+ transfer_reversal: Joi.string().allow(""),
2149
+ balance_transaction: Joi.string().allow(""),
2848
2150
  });
2849
2151
  }
2850
2152
 
2851
- /** @returns {ValidateCustomerRequest} */
2852
- static ValidateCustomerRequest() {
2153
+ /** @returns {RefundSessionRequestSerializer} */
2154
+ static RefundSessionRequestSerializer() {
2853
2155
  return Joi.object({
2854
- aggregator: Joi.string().allow("").required(),
2855
- billing_address: Joi.any(),
2856
- delivery_address: Joi.any(),
2857
- merchant_params: Joi.any(),
2858
- order_items: Joi.array().items(Joi.any()),
2859
- payload: Joi.string().allow("").allow(null),
2860
- phone_number: Joi.string().allow("").required(),
2861
- transaction_amount_in_paise: Joi.number().required(),
2156
+ meta: Joi.any(),
2157
+ gid: Joi.string().allow("").required(),
2158
+ status: Joi.string().allow("").required(),
2159
+ currency: Joi.string().allow("").required(),
2160
+ payment_details: PaymentPlatformModel.PaymentSessionDetail().required(),
2161
+ refund_details: Joi.array().items(
2162
+ PaymentPlatformModel.RefundSessionDetail()
2163
+ ),
2164
+ total_amount: Joi.number().required(),
2862
2165
  });
2863
2166
  }
2864
2167
 
2865
- /** @returns {ValidateCustomerResponse} */
2866
- static ValidateCustomerResponse() {
2168
+ /** @returns {RefundSessionResponseSerializer} */
2169
+ static RefundSessionResponseSerializer() {
2867
2170
  return Joi.object({
2868
- data: Joi.any().required(),
2869
- message: Joi.string().allow("").required(),
2171
+ gid: Joi.string().allow("").required(),
2172
+ status: Joi.string().allow("").required(),
2173
+ currency: Joi.string().allow("").required(),
2174
+ platform_refund_details: Joi.array().items(Joi.any()).required(),
2175
+ total_refund_amount: Joi.number().required(),
2176
+ });
2177
+ }
2178
+
2179
+ /** @returns {RefundSourcesPriority} */
2180
+ static RefundSourcesPriority() {
2181
+ return Joi.object({
2182
+ description: Joi.string().allow("").required(),
2183
+ priority: Joi.number().required(),
2184
+ source: Joi.string().allow("").required(),
2185
+ });
2186
+ }
2187
+
2188
+ /** @returns {RefundPriorityResponseSerializer} */
2189
+ static RefundPriorityResponseSerializer() {
2190
+ return Joi.object({
2191
+ configuration: Joi.string().allow("").required(),
2870
2192
  success: Joi.boolean().required(),
2193
+ apportion: Joi.boolean().required(),
2194
+ refund_sources_priority: Joi.array()
2195
+ .items(PaymentPlatformModel.RefundSourcesPriority())
2196
+ .required(),
2197
+ message: Joi.string().allow(""),
2198
+ });
2199
+ }
2200
+
2201
+ /** @returns {RefundPriorityRequestSerializer} */
2202
+ static RefundPriorityRequestSerializer() {
2203
+ return Joi.object({
2204
+ apportion: Joi.boolean().required(),
2205
+ refund_sources_priority: Joi.array()
2206
+ .items(PaymentPlatformModel.RefundSourcesPriority())
2207
+ .required(),
2871
2208
  });
2872
2209
  }
2873
2210
  }