@kasuvia/sdk 0.0.8 → 0.0.9

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 (176) hide show
  1. package/README.md +42 -15
  2. package/dist/AddressAutocomplete-CjcqPElD.d.mts +46 -0
  3. package/dist/AddressAutocomplete-CvJHuRkf.d.ts +46 -0
  4. package/dist/components/index.d.mts +497 -0
  5. package/dist/components/index.d.ts +497 -0
  6. package/dist/components/index.js +4217 -0
  7. package/dist/components/index.js.map +1 -0
  8. package/dist/components/index.mjs +4194 -0
  9. package/dist/components/index.mjs.map +1 -0
  10. package/dist/config/server.d.mts +26 -0
  11. package/dist/config/server.d.ts +26 -0
  12. package/dist/config/server.js +38 -0
  13. package/dist/config/server.js.map +1 -0
  14. package/dist/config/server.mjs +13 -0
  15. package/dist/config/server.mjs.map +1 -0
  16. package/dist/hooks/index.d.mts +393 -160
  17. package/dist/hooks/index.d.ts +393 -160
  18. package/dist/hooks/index.js +2792 -2137
  19. package/dist/hooks/index.js.map +1 -1
  20. package/dist/hooks/index.mjs +2734 -2121
  21. package/dist/hooks/index.mjs.map +1 -1
  22. package/dist/index-CNW_LINy.d.mts +578 -0
  23. package/dist/index-CNW_LINy.d.ts +578 -0
  24. package/dist/{index-C1chUA3P.d.mts → index-F7N6UItS.d.mts} +1 -1
  25. package/dist/{index-C1chUA3P.d.ts → index-F7N6UItS.d.ts} +1 -1
  26. package/dist/index-NkI10J_E.d.mts +40 -0
  27. package/dist/index-NkI10J_E.d.ts +40 -0
  28. package/dist/index.d.mts +20437 -103
  29. package/dist/index.d.ts +20437 -103
  30. package/dist/index.js +2111 -1802
  31. package/dist/index.js.map +1 -1
  32. package/dist/index.mjs +2006 -1786
  33. package/dist/index.mjs.map +1 -1
  34. package/dist/media.service-Cx7dQjzX.d.mts +1393 -0
  35. package/dist/media.service-mrBFJ2UQ.d.ts +1393 -0
  36. package/dist/services/index.d.mts +908 -2
  37. package/dist/services/index.d.ts +908 -2
  38. package/dist/services/index.js +1492 -1686
  39. package/dist/services/index.js.map +1 -1
  40. package/dist/services/index.mjs +1431 -1670
  41. package/dist/services/index.mjs.map +1 -1
  42. package/package.json +46 -6
  43. package/src/components/bespoke/BespokeAvailabilityBadge.tsx +32 -0
  44. package/src/components/bespoke/BespokeProgressTracker.tsx +58 -0
  45. package/src/components/bespoke/index.ts +3 -0
  46. package/src/components/booking/SlotPicker.tsx +97 -0
  47. package/src/components/booking/index.ts +1 -0
  48. package/src/components/cart/CartItem.tsx +81 -0
  49. package/src/components/cart/CartSidebar.tsx +115 -0
  50. package/src/components/cart/CartTypeMismatchBanner.tsx +55 -0
  51. package/src/components/cart/index.ts +3 -0
  52. package/src/components/index.ts +8 -0
  53. package/src/components/orders/DeliverableReviewer.tsx +139 -0
  54. package/src/components/orders/index.ts +1 -0
  55. package/src/components/product/ProductCard.tsx +350 -0
  56. package/src/components/product/ProductGrid.tsx +84 -0
  57. package/src/components/product/index.ts +2 -0
  58. package/src/components/shared/AddressAutocomplete.tsx +212 -0
  59. package/src/components/shared/AnalyticsScripts.tsx +56 -0
  60. package/src/components/shared/CookieConsentBanner.tsx +98 -0
  61. package/src/components/shared/ImageEditorModal.tsx +1066 -0
  62. package/src/components/shared/ImageViewerModal.tsx +598 -0
  63. package/src/components/shared/LucideReactIcon.tsx +52 -0
  64. package/src/components/shared/MapPinDrop.tsx +101 -0
  65. package/src/components/shared/MultiSelectPicker.tsx +193 -0
  66. package/src/components/shared/OfflineBanner.tsx +46 -0
  67. package/src/components/shared/SearchableInput.tsx +153 -0
  68. package/src/components/shared/SearchablePopover.tsx +166 -0
  69. package/src/components/shared/SmartImage.tsx +311 -0
  70. package/src/components/shared/TruncatedValue.tsx +27 -0
  71. package/src/components/shared/UnsavedChangesGuard.tsx +138 -0
  72. package/src/components/shared/index.ts +15 -0
  73. package/src/components/skeletons/CardSkeleton.tsx +26 -0
  74. package/src/components/skeletons/CartItemSkeleton.tsx +26 -0
  75. package/src/components/skeletons/OrderItemSkeleton.tsx +26 -0
  76. package/src/components/skeletons/ProductCardSkeleton.tsx +26 -0
  77. package/src/components/skeletons/TableSkeleton.tsx +42 -0
  78. package/src/components/skeletons/index.ts +5 -0
  79. package/src/config/index.ts +22 -4
  80. package/src/config/server.ts +45 -0
  81. package/src/context/sdk-context.tsx +5 -2
  82. package/src/generated/auth-openapi.ts +2935 -0
  83. package/src/generated/cart-openapi.ts +652 -0
  84. package/src/generated/cms-openapi.ts +1668 -0
  85. package/src/generated/crm-openapi.ts +986 -0
  86. package/src/generated/graphql.ts +126 -0
  87. package/src/generated/index.ts +11 -0
  88. package/src/generated/media-openapi.ts +613 -0
  89. package/src/generated/notification-openapi.ts +862 -0
  90. package/src/generated/payment-openapi.ts +2713 -0
  91. package/src/generated/store-openapi.ts +9510 -0
  92. package/src/graphql/operations/collections.graphql +32 -0
  93. package/src/graphql/operations/products.graphql +197 -0
  94. package/src/graphql/operations/wishlist.graphql +25 -0
  95. package/src/hooks/index.ts +9 -2
  96. package/src/hooks/use-auth.ts +163 -69
  97. package/src/hooks/use-bespoke-availability.ts +39 -22
  98. package/src/hooks/use-business-config.ts +51 -0
  99. package/src/hooks/use-cart.ts +310 -238
  100. package/src/hooks/use-cms.ts +107 -127
  101. package/src/hooks/use-collections.ts +35 -55
  102. package/src/hooks/use-consultations.ts +9 -136
  103. package/src/hooks/use-countries.ts +19 -28
  104. package/src/hooks/use-currencies.ts +8 -20
  105. package/src/hooks/use-customer-address.ts +64 -0
  106. package/src/hooks/use-feedback.ts +34 -0
  107. package/src/hooks/use-languages.ts +26 -39
  108. package/src/hooks/use-media-upload.ts +23 -0
  109. package/src/hooks/use-notification-stream.ts +88 -0
  110. package/src/hooks/use-notifications.ts +163 -0
  111. package/src/hooks/use-order-stream.ts +29 -29
  112. package/src/hooks/use-orders.ts +91 -73
  113. package/src/hooks/use-payment.ts +116 -84
  114. package/src/hooks/use-products.ts +65 -269
  115. package/src/hooks/use-push-notifications.ts +122 -0
  116. package/src/hooks/use-reviews.ts +175 -0
  117. package/src/hooks/use-service-booking.ts +109 -132
  118. package/src/hooks/use-states.ts +16 -30
  119. package/src/hooks/use-wishlist.ts +44 -69
  120. package/src/index.ts +15 -11
  121. package/src/services/auth.service.ts +422 -132
  122. package/src/services/bespoke.service.ts +69 -10
  123. package/src/services/cart.service.ts +155 -186
  124. package/src/services/cms.service.ts +41 -50
  125. package/src/services/collection.service.ts +25 -63
  126. package/src/services/config.service.ts +10 -21
  127. package/src/services/consultation.service.ts +36 -93
  128. package/src/services/feedback.service.ts +76 -0
  129. package/src/services/index.ts +7 -1
  130. package/src/services/legal.service.ts +62 -0
  131. package/src/services/logistics.service.ts +235 -53
  132. package/src/services/media.service.ts +115 -0
  133. package/src/services/notifications.service.ts +204 -20
  134. package/src/services/order.service.ts +498 -127
  135. package/src/services/payment.service.ts +149 -100
  136. package/src/services/product.service.ts +157 -814
  137. package/src/services/review.service.ts +211 -0
  138. package/src/services/service-booking.service.ts +198 -99
  139. package/src/services/wishlist.service.ts +27 -74
  140. package/src/types/auth/index.ts +161 -18
  141. package/src/types/business/index.ts +9 -1
  142. package/src/types/cms/index.ts +91 -6
  143. package/src/types/cms/legal.ts +18 -0
  144. package/src/types/consultations/index.ts +60 -68
  145. package/src/types/index.ts +5 -3
  146. package/src/types/media/index.ts +35 -3
  147. package/src/types/payments/index.ts +80 -16
  148. package/src/types/reviews/index.ts +116 -0
  149. package/src/types/services/index.ts +113 -38
  150. package/src/types/store/checkout.ts +53 -0
  151. package/src/types/store/index.ts +273 -52
  152. package/src/types/store/invoice.ts +31 -0
  153. package/src/types/store/shipping.ts +84 -3
  154. package/src/types/ui/index.ts +1 -1
  155. package/src/utils/checkout.ts +19 -3
  156. package/src/utils/cookieConsent.ts +34 -0
  157. package/src/utils/format.ts +408 -0
  158. package/src/utils/geolocation.ts +134 -0
  159. package/src/utils/graphql-url.ts +47 -0
  160. package/src/utils/guest-session.ts +59 -0
  161. package/src/utils/http-client.ts +147 -0
  162. package/src/utils/index.ts +11 -4
  163. package/src/utils/status-colors.ts +79 -0
  164. package/src/utils/token-refresh.ts +115 -0
  165. package/src/utils/validators.ts +13 -0
  166. package/src/utils/youtube.ts +18 -0
  167. package/dist/index-C5YO9gTl.d.mts +0 -507
  168. package/dist/index-C5YO9gTl.d.ts +0 -507
  169. package/dist/index-CefG7_xq.d.mts +0 -793
  170. package/dist/index-DeHCf3zI.d.ts +0 -793
  171. package/src/graphql/collections.graphql.ts +0 -48
  172. package/src/graphql/index.ts +0 -7
  173. package/src/graphql/products.graphql.ts +0 -860
  174. package/src/graphql/wishlist.graphql.ts +0 -34
  175. package/src/hooks/use-consultation-stream.ts +0 -142
  176. package/src/types/bespoke/index.ts +0 -39
@@ -0,0 +1,2713 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+
6
+ export interface paths {
7
+ "/api/v1/banks": {
8
+ parameters: {
9
+ query?: never;
10
+ header?: never;
11
+ path?: never;
12
+ cookie?: never;
13
+ };
14
+ /** List supported banks for payouts, filtered by country/currency's active gateway */
15
+ get: operations["list-banks"];
16
+ put?: never;
17
+ post?: never;
18
+ delete?: never;
19
+ options?: never;
20
+ head?: never;
21
+ patch?: never;
22
+ trace?: never;
23
+ };
24
+ "/api/v1/config/currency-by-country": {
25
+ parameters: {
26
+ query?: never;
27
+ header?: never;
28
+ path?: never;
29
+ cookie?: never;
30
+ };
31
+ /** Look up the default currency for a country code (public) */
32
+ get: operations["get-currency-by-country"];
33
+ put?: never;
34
+ post?: never;
35
+ delete?: never;
36
+ options?: never;
37
+ head?: never;
38
+ patch?: never;
39
+ trace?: never;
40
+ };
41
+ "/api/v1/config/supported-currencies": {
42
+ parameters: {
43
+ query?: never;
44
+ header?: never;
45
+ path?: never;
46
+ cookie?: never;
47
+ };
48
+ /** List supported currencies for the platform (public) */
49
+ get: operations["get-supported-currencies"];
50
+ put?: never;
51
+ post?: never;
52
+ delete?: never;
53
+ options?: never;
54
+ head?: never;
55
+ patch?: never;
56
+ trace?: never;
57
+ };
58
+ "/api/v1/config/supported-languages": {
59
+ parameters: {
60
+ query?: never;
61
+ header?: never;
62
+ path?: never;
63
+ cookie?: never;
64
+ };
65
+ /** List supported languages for the platform (public) */
66
+ get: operations["get-supported-languages"];
67
+ put?: never;
68
+ post?: never;
69
+ delete?: never;
70
+ options?: never;
71
+ head?: never;
72
+ patch?: never;
73
+ trace?: never;
74
+ };
75
+ "/api/v1/discounts/available": {
76
+ parameters: {
77
+ query?: never;
78
+ header?: never;
79
+ path?: never;
80
+ cookie?: never;
81
+ };
82
+ /** List available discounts for plans (public) */
83
+ get: operations["list-available-discounts"];
84
+ put?: never;
85
+ post?: never;
86
+ delete?: never;
87
+ options?: never;
88
+ head?: never;
89
+ patch?: never;
90
+ trace?: never;
91
+ };
92
+ "/api/v1/discounts/validate": {
93
+ parameters: {
94
+ query?: never;
95
+ header?: never;
96
+ path?: never;
97
+ cookie?: never;
98
+ };
99
+ get?: never;
100
+ put?: never;
101
+ /** Validate a discount code and compute the final price (public) */
102
+ post: operations["validate-discount"];
103
+ delete?: never;
104
+ options?: never;
105
+ head?: never;
106
+ patch?: never;
107
+ trace?: never;
108
+ };
109
+ "/api/v1/events/stream": {
110
+ parameters: {
111
+ query?: never;
112
+ header?: never;
113
+ path?: never;
114
+ cookie?: never;
115
+ };
116
+ /** SSE stream of events scoped to the authenticated business (or a dev keepalive-only stream if unauthenticated) */
117
+ get: operations["stream-business-events"];
118
+ put?: never;
119
+ post?: never;
120
+ delete?: never;
121
+ options?: never;
122
+ head?: never;
123
+ patch?: never;
124
+ trace?: never;
125
+ };
126
+ "/api/v1/events/stream/order/{order_id}": {
127
+ parameters: {
128
+ query?: never;
129
+ header?: never;
130
+ path?: never;
131
+ cookie?: never;
132
+ };
133
+ /** Public SSE stream for a single order's payment events (storefront checkout) */
134
+ get: operations["stream-order-events"];
135
+ put?: never;
136
+ post?: never;
137
+ delete?: never;
138
+ options?: never;
139
+ head?: never;
140
+ patch?: never;
141
+ trace?: never;
142
+ };
143
+ "/api/v1/payment-methods": {
144
+ parameters: {
145
+ query?: never;
146
+ header?: never;
147
+ path?: never;
148
+ cookie?: never;
149
+ };
150
+ /** List all payment methods for the authenticated business owner */
151
+ get: operations["list-payment-methods"];
152
+ put?: never;
153
+ /** Add a new payment method (card) using a Flutterwave authorization code */
154
+ post: operations["create-payment-method"];
155
+ delete?: never;
156
+ options?: never;
157
+ head?: never;
158
+ patch?: never;
159
+ trace?: never;
160
+ };
161
+ "/api/v1/payment-methods/tokenize": {
162
+ parameters: {
163
+ query?: never;
164
+ header?: never;
165
+ path?: never;
166
+ cookie?: never;
167
+ };
168
+ get?: never;
169
+ put?: never;
170
+ /** Tokenize a card via Flutterwave hosted checkout for secure storage */
171
+ post: operations["tokenize-card"];
172
+ delete?: never;
173
+ options?: never;
174
+ head?: never;
175
+ patch?: never;
176
+ trace?: never;
177
+ };
178
+ "/api/v1/payment-methods/verify": {
179
+ parameters: {
180
+ query?: never;
181
+ header?: never;
182
+ path?: never;
183
+ cookie?: never;
184
+ };
185
+ get?: never;
186
+ put?: never;
187
+ /** Verify a completed tokenize-card charge and save the resulting card */
188
+ post: operations["verify-and-add-payment-method"];
189
+ delete?: never;
190
+ options?: never;
191
+ head?: never;
192
+ patch?: never;
193
+ trace?: never;
194
+ };
195
+ "/api/v1/payment-methods/{payment_method_id}": {
196
+ parameters: {
197
+ query?: never;
198
+ header?: never;
199
+ path?: never;
200
+ cookie?: never;
201
+ };
202
+ get?: never;
203
+ put?: never;
204
+ post?: never;
205
+ /** Delete (deactivate) a payment method */
206
+ delete: operations["delete-payment-method"];
207
+ options?: never;
208
+ head?: never;
209
+ /** Update a payment method (set as default, activate/deactivate) */
210
+ patch: operations["update-payment-method"];
211
+ trace?: never;
212
+ };
213
+ "/api/v1/payment-methods/{payment_method_id}/set-default": {
214
+ parameters: {
215
+ query?: never;
216
+ header?: never;
217
+ path?: never;
218
+ cookie?: never;
219
+ };
220
+ get?: never;
221
+ put?: never;
222
+ /** Set a payment method as the default for future charges */
223
+ post: operations["set-default-payment-method"];
224
+ delete?: never;
225
+ options?: never;
226
+ head?: never;
227
+ patch?: never;
228
+ trace?: never;
229
+ };
230
+ "/api/v1/payments/channel/dedicated-account": {
231
+ parameters: {
232
+ query?: never;
233
+ header?: never;
234
+ path?: never;
235
+ cookie?: never;
236
+ };
237
+ get?: never;
238
+ put?: never;
239
+ /** Channel-integration (WhatsApp/bot): create a Monnify DVA server-to-server */
240
+ post: operations["channel-create-dedicated-account"];
241
+ delete?: never;
242
+ options?: never;
243
+ head?: never;
244
+ patch?: never;
245
+ trace?: never;
246
+ };
247
+ "/api/v1/payments/channel/initiate": {
248
+ parameters: {
249
+ query?: never;
250
+ header?: never;
251
+ path?: never;
252
+ cookie?: never;
253
+ };
254
+ get?: never;
255
+ put?: never;
256
+ /** Channel-integration (WhatsApp/bot): initiate a hosted-checkout payment server-to-server */
257
+ post: operations["channel-initiate-payment"];
258
+ delete?: never;
259
+ options?: never;
260
+ head?: never;
261
+ patch?: never;
262
+ trace?: never;
263
+ };
264
+ "/api/v1/payments/channel/methods": {
265
+ parameters: {
266
+ query?: never;
267
+ header?: never;
268
+ path?: never;
269
+ cookie?: never;
270
+ };
271
+ /** Channel-integration: which payment gateways (and each gateway's checkout methods) are available for a business's region */
272
+ get: operations["channel-available-payment-methods"];
273
+ put?: never;
274
+ post?: never;
275
+ delete?: never;
276
+ options?: never;
277
+ head?: never;
278
+ patch?: never;
279
+ trace?: never;
280
+ };
281
+ "/api/v1/payments/initiate": {
282
+ parameters: {
283
+ query?: never;
284
+ header?: never;
285
+ path?: never;
286
+ cookie?: never;
287
+ };
288
+ get?: never;
289
+ put?: never;
290
+ /** Initiate a payment via the country-code-routed gateway (business owner/dashboard use) */
291
+ post: operations["initiate-payment"];
292
+ delete?: never;
293
+ options?: never;
294
+ head?: never;
295
+ patch?: never;
296
+ trace?: never;
297
+ };
298
+ "/api/v1/payments/kasuvia-pay": {
299
+ parameters: {
300
+ query?: never;
301
+ header?: never;
302
+ path?: never;
303
+ cookie?: never;
304
+ };
305
+ get?: never;
306
+ put?: never;
307
+ /** Create a KasuviaPay hosted payment link */
308
+ post: operations["create-payment-link"];
309
+ delete?: never;
310
+ options?: never;
311
+ head?: never;
312
+ patch?: never;
313
+ trace?: never;
314
+ };
315
+ "/api/v1/payments/kasuvia-pay/{link_id}": {
316
+ parameters: {
317
+ query?: never;
318
+ header?: never;
319
+ path?: never;
320
+ cookie?: never;
321
+ };
322
+ /** Get an active KasuviaPay payment link by ID (public) */
323
+ get: operations["get-payment-link"];
324
+ put?: never;
325
+ post?: never;
326
+ delete?: never;
327
+ options?: never;
328
+ head?: never;
329
+ patch?: never;
330
+ trace?: never;
331
+ };
332
+ "/api/v1/payments/redirect/{gateway_ref}": {
333
+ parameters: {
334
+ query?: never;
335
+ header?: never;
336
+ path?: never;
337
+ cookie?: never;
338
+ };
339
+ /** Redirect to the originating chat_url after payment, if one was recorded */
340
+ get: operations["redirect-to-source"];
341
+ put?: never;
342
+ post?: never;
343
+ delete?: never;
344
+ options?: never;
345
+ head?: never;
346
+ patch?: never;
347
+ trace?: never;
348
+ };
349
+ "/api/v1/payments/storefront/dedicated-account": {
350
+ parameters: {
351
+ query?: never;
352
+ header?: never;
353
+ path?: never;
354
+ cookie?: never;
355
+ };
356
+ get?: never;
357
+ put?: never;
358
+ /** Storefront: create a Monnify Dedicated Virtual Account for bank-transfer checkout */
359
+ post: operations["storefront-create-dedicated-account"];
360
+ delete?: never;
361
+ options?: never;
362
+ head?: never;
363
+ patch?: never;
364
+ trace?: never;
365
+ };
366
+ "/api/v1/payments/storefront/initiate": {
367
+ parameters: {
368
+ query?: never;
369
+ header?: never;
370
+ path?: never;
371
+ cookie?: never;
372
+ };
373
+ get?: never;
374
+ put?: never;
375
+ /** Storefront: initiate a card/hosted-checkout payment via the country-code-routed gateway */
376
+ post: operations["storefront-initiate-payment"];
377
+ delete?: never;
378
+ options?: never;
379
+ head?: never;
380
+ patch?: never;
381
+ trace?: never;
382
+ };
383
+ "/api/v1/payments/storefront/methods": {
384
+ parameters: {
385
+ query?: never;
386
+ header?: never;
387
+ path?: never;
388
+ cookie?: never;
389
+ };
390
+ /** Storefront: which payment gateways (and each gateway's checkout methods) are available for this business's region */
391
+ get: operations["storefront-available-payment-methods"];
392
+ put?: never;
393
+ post?: never;
394
+ delete?: never;
395
+ options?: never;
396
+ head?: never;
397
+ patch?: never;
398
+ trace?: never;
399
+ };
400
+ "/api/v1/payments/transactions": {
401
+ parameters: {
402
+ query?: never;
403
+ header?: never;
404
+ path?: never;
405
+ cookie?: never;
406
+ };
407
+ /** List transactions for the authenticated business (paginated) */
408
+ get: operations["list-transactions"];
409
+ put?: never;
410
+ post?: never;
411
+ delete?: never;
412
+ options?: never;
413
+ head?: never;
414
+ patch?: never;
415
+ trace?: never;
416
+ };
417
+ "/api/v1/payments/transactions/summary": {
418
+ parameters: {
419
+ query?: never;
420
+ header?: never;
421
+ path?: never;
422
+ cookie?: never;
423
+ };
424
+ /** Business-wide transaction totals (for the dashboard stat tiles, computed in SQL) */
425
+ get: operations["get-transactions-summary"];
426
+ put?: never;
427
+ post?: never;
428
+ delete?: never;
429
+ options?: never;
430
+ head?: never;
431
+ patch?: never;
432
+ trace?: never;
433
+ };
434
+ "/api/v1/payments/verify/{gateway_ref}": {
435
+ parameters: {
436
+ query?: never;
437
+ header?: never;
438
+ path?: never;
439
+ cookie?: never;
440
+ };
441
+ get?: never;
442
+ put?: never;
443
+ /** Verify payment completion — called by gateway webhooks or frontend polling */
444
+ post: operations["verify-payment"];
445
+ delete?: never;
446
+ options?: never;
447
+ head?: never;
448
+ patch?: never;
449
+ trace?: never;
450
+ };
451
+ "/api/v1/quote": {
452
+ parameters: {
453
+ query?: never;
454
+ header?: never;
455
+ path?: never;
456
+ cookie?: never;
457
+ };
458
+ get?: never;
459
+ put?: never;
460
+ /** Issue a rate-locked FX conversion quote valid for 15 minutes */
461
+ post: operations["create-conversion-quote"];
462
+ delete?: never;
463
+ options?: never;
464
+ head?: never;
465
+ patch?: never;
466
+ trace?: never;
467
+ };
468
+ "/api/v1/refunds": {
469
+ parameters: {
470
+ query?: never;
471
+ header?: never;
472
+ path?: never;
473
+ cookie?: never;
474
+ };
475
+ /** List refunds for the authenticated business owner (paginated) */
476
+ get: operations["list-business-refunds"];
477
+ put?: never;
478
+ /** Request a refund for a transaction (business owner only) */
479
+ post: operations["request-refund"];
480
+ delete?: never;
481
+ options?: never;
482
+ head?: never;
483
+ patch?: never;
484
+ trace?: never;
485
+ };
486
+ "/api/v1/refunds/{refund_id}": {
487
+ parameters: {
488
+ query?: never;
489
+ header?: never;
490
+ path?: never;
491
+ cookie?: never;
492
+ };
493
+ /** Get a single refund if it belongs to the authenticated business owner */
494
+ get: operations["get-refund"];
495
+ put?: never;
496
+ post?: never;
497
+ delete?: never;
498
+ options?: never;
499
+ head?: never;
500
+ patch?: never;
501
+ trace?: never;
502
+ };
503
+ }
504
+ export type webhooks = Record<string, never>;
505
+ export interface components {
506
+ schemas: {
507
+ "Add-bank-accountRequest": {
508
+ /**
509
+ * Format: uri
510
+ * @description A URL to the JSON Schema for this object.
511
+ * @example https://example.com/schemas/Add-bank-accountRequest.json
512
+ */
513
+ readonly $schema?: string;
514
+ account_name: string;
515
+ account_number: string;
516
+ bank_code: string;
517
+ };
518
+ BankAccountResponse: {
519
+ /**
520
+ * Format: uri
521
+ * @description A URL to the JSON Schema for this object.
522
+ * @example https://example.com/schemas/BankAccountResponse.json
523
+ */
524
+ readonly $schema?: string;
525
+ account_name: string;
526
+ account_number: string;
527
+ bank_code: string;
528
+ bank_name: string;
529
+ business_id: string;
530
+ created_at: string;
531
+ gateway_meta: {
532
+ [key: string]: unknown;
533
+ };
534
+ id: string;
535
+ is_active: boolean;
536
+ is_verified: boolean;
537
+ provider_recipient_codes: {
538
+ [key: string]: unknown;
539
+ };
540
+ updated_at: string;
541
+ };
542
+ BankResponse: {
543
+ code: string;
544
+ country: string | null;
545
+ gateway_code: string;
546
+ name: string;
547
+ };
548
+ BillingInvoiceRow: {
549
+ amount: string;
550
+ currency: string;
551
+ download_url: string | null;
552
+ gateway_ref: string | null;
553
+ id: string;
554
+ paid_at: string | null;
555
+ period_end: string | null;
556
+ period_start: string | null;
557
+ plan_name: string;
558
+ status: string;
559
+ };
560
+ BillingSummaryResponse: {
561
+ /**
562
+ * Format: uri
563
+ * @description A URL to the JSON Schema for this object.
564
+ * @example https://example.com/schemas/BillingSummaryResponse.json
565
+ */
566
+ readonly $schema?: string;
567
+ invoices: components["schemas"]["BillingInvoiceRow"][] | null;
568
+ subscription: components["schemas"]["BillingSummarySubscription"];
569
+ usage: components["schemas"]["BillingUsageRow"][] | null;
570
+ };
571
+ BillingSummarySubscription: {
572
+ /** Format: double */
573
+ basePrice: number;
574
+ cancel_at_period_end: boolean;
575
+ card_last4: string | null;
576
+ card_type: string | null;
577
+ currentPeriodEnd: string | null;
578
+ current_period_start: string | null;
579
+ /** Format: double */
580
+ discountValue: number;
581
+ id: string | null;
582
+ interval: string;
583
+ isPayAsYouGo: boolean;
584
+ pending_effective_date: string | null;
585
+ pending_plan_interval: string | null;
586
+ pending_plan_tier: string | null;
587
+ planId: string;
588
+ /** Format: double */
589
+ pricePaid: number;
590
+ renewalType: string;
591
+ status: string;
592
+ };
593
+ BillingUsageRow: {
594
+ id: string;
595
+ limit: unknown;
596
+ name: string;
597
+ unit: string;
598
+ /** Format: int64 */
599
+ used: number;
600
+ };
601
+ "Cancel-scheduled-changeResponse": {
602
+ /**
603
+ * Format: uri
604
+ * @description A URL to the JSON Schema for this object.
605
+ * @example https://example.com/schemas/Cancel-scheduled-changeResponse.json
606
+ */
607
+ readonly $schema?: string;
608
+ message: string;
609
+ status: string;
610
+ };
611
+ "Cancel-subscriptionRequest": {
612
+ /**
613
+ * Format: uri
614
+ * @description A URL to the JSON Schema for this object.
615
+ * @example https://example.com/schemas/Cancel-subscriptionRequest.json
616
+ */
617
+ readonly $schema?: string;
618
+ reason: string;
619
+ };
620
+ CancelSubscriptionResponse: {
621
+ /**
622
+ * Format: uri
623
+ * @description A URL to the JSON Schema for this object.
624
+ * @example https://example.com/schemas/CancelSubscriptionResponse.json
625
+ */
626
+ readonly $schema?: string;
627
+ access_until: string | null;
628
+ cancel_at_period_end: boolean;
629
+ message: string;
630
+ status: string;
631
+ };
632
+ "Charge-subscriptionRequest": {
633
+ /**
634
+ * Format: uri
635
+ * @description A URL to the JSON Schema for this object.
636
+ * @example https://example.com/schemas/Charge-subscriptionRequest.json
637
+ */
638
+ readonly $schema?: string;
639
+ authorization_code?: string;
640
+ currency?: string;
641
+ discount_code?: string;
642
+ /** @default month */
643
+ interval: string;
644
+ plan_slug: string;
645
+ reference?: string;
646
+ };
647
+ "Claim-wallet-creditRequest": {
648
+ /**
649
+ * Format: uri
650
+ * @description A URL to the JSON Schema for this object.
651
+ * @example https://example.com/schemas/Claim-wallet-creditRequest.json
652
+ */
653
+ readonly $schema?: string;
654
+ claim_token: string;
655
+ };
656
+ "Create-conversion-quoteRequest": {
657
+ /**
658
+ * Format: uri
659
+ * @description A URL to the JSON Schema for this object.
660
+ * @example https://example.com/schemas/Create-conversion-quoteRequest.json
661
+ */
662
+ readonly $schema?: string;
663
+ amount: string;
664
+ };
665
+ "Create-payment-linkRequest": {
666
+ /**
667
+ * Format: uri
668
+ * @description A URL to the JSON Schema for this object.
669
+ * @example https://example.com/schemas/Create-payment-linkRequest.json
670
+ */
671
+ readonly $schema?: string;
672
+ /** Format: double */
673
+ amount: number;
674
+ currency: string;
675
+ expires_at?: string;
676
+ is_active?: boolean;
677
+ title: string;
678
+ };
679
+ "Create-payment-methodRequest": {
680
+ /**
681
+ * Format: uri
682
+ * @description A URL to the JSON Schema for this object.
683
+ * @example https://example.com/schemas/Create-payment-methodRequest.json
684
+ */
685
+ readonly $schema?: string;
686
+ authorization_code: string;
687
+ card_expiry?: string;
688
+ card_holder_name?: string;
689
+ card_last4: string;
690
+ card_type: string;
691
+ set_as_default: boolean;
692
+ };
693
+ CurrencyResponse: {
694
+ /**
695
+ * Format: uri
696
+ * @description A URL to the JSON Schema for this object.
697
+ * @example https://example.com/schemas/CurrencyResponse.json
698
+ */
699
+ readonly $schema?: string;
700
+ code: string;
701
+ country_codes?: unknown[] | null;
702
+ /** Format: int64 */
703
+ decimal_digits: number;
704
+ name: string;
705
+ /** Format: int64 */
706
+ rounding: number;
707
+ symbol: string;
708
+ };
709
+ DVAResponse: {
710
+ /**
711
+ * Format: uri
712
+ * @description A URL to the JSON Schema for this object.
713
+ * @example https://example.com/schemas/DVAResponse.json
714
+ */
715
+ readonly $schema?: string;
716
+ account_name: string;
717
+ account_number: string;
718
+ amount: string;
719
+ bank_name: string;
720
+ expires_at: string;
721
+ reference: string;
722
+ transaction_id: string;
723
+ };
724
+ "Delete-bank-accountRequest": {
725
+ /**
726
+ * Format: uri
727
+ * @description A URL to the JSON Schema for this object.
728
+ * @example https://example.com/schemas/Delete-bank-accountRequest.json
729
+ */
730
+ readonly $schema?: string;
731
+ deletion_reason?: string;
732
+ };
733
+ DiscountResponse: {
734
+ code: string;
735
+ /** Format: date-time */
736
+ created_at: string;
737
+ description: string | null;
738
+ id: string;
739
+ interval: string | null;
740
+ is_active: boolean;
741
+ /** Format: int64 */
742
+ max_uses: number | null;
743
+ target_plan_id: string | null;
744
+ target_plan_slug: string | null;
745
+ type: string;
746
+ /** Format: date-time */
747
+ updated_at: string;
748
+ /** Format: int64 */
749
+ uses_count: number;
750
+ /** Format: date-time */
751
+ valid_from: string | null;
752
+ /** Format: date-time */
753
+ valid_until: string | null;
754
+ value: string;
755
+ };
756
+ DiscountValidateResponse: {
757
+ /**
758
+ * Format: uri
759
+ * @description A URL to the JSON Schema for this object.
760
+ * @example https://example.com/schemas/DiscountValidateResponse.json
761
+ */
762
+ readonly $schema?: string;
763
+ discount?: components["schemas"]["DiscountResponse"];
764
+ /** Format: double */
765
+ final_price?: number;
766
+ interval?: string;
767
+ reason?: string;
768
+ valid: boolean;
769
+ };
770
+ DvaCreateBody: {
771
+ /**
772
+ * Format: uri
773
+ * @description A URL to the JSON Schema for this object.
774
+ * @example https://example.com/schemas/DvaCreateBody.json
775
+ */
776
+ readonly $schema?: string;
777
+ /** Format: double */
778
+ amount?: number;
779
+ /** @default NGN */
780
+ currency: string;
781
+ customer_email?: string;
782
+ customer_name?: string;
783
+ /**
784
+ * @description Must be 'monnify' — the only gateway that supports bank_transfer.
785
+ * @enum {string}
786
+ */
787
+ gateway: "monnify";
788
+ idempotency_key?: string;
789
+ order_id?: string;
790
+ };
791
+ EnvelopeOutstandingClaimResponse: {
792
+ /**
793
+ * Format: uri
794
+ * @description A URL to the JSON Schema for this object.
795
+ * @example https://example.com/schemas/EnvelopeOutstandingClaimResponse.json
796
+ */
797
+ readonly $schema?: string;
798
+ /** Format: int64 */
799
+ count: number;
800
+ /** Format: int64 */
801
+ page: number;
802
+ /** Format: int64 */
803
+ page_size: number;
804
+ results: components["schemas"]["OutstandingClaimResponse"][] | null;
805
+ /** Format: int64 */
806
+ total_pages: number;
807
+ };
808
+ EnvelopePayoutResponse: {
809
+ /**
810
+ * Format: uri
811
+ * @description A URL to the JSON Schema for this object.
812
+ * @example https://example.com/schemas/EnvelopePayoutResponse.json
813
+ */
814
+ readonly $schema?: string;
815
+ /** Format: int64 */
816
+ count: number;
817
+ /** Format: int64 */
818
+ page: number;
819
+ /** Format: int64 */
820
+ page_size: number;
821
+ results: components["schemas"]["PayoutResponse"][] | null;
822
+ /** Format: int64 */
823
+ total_pages: number;
824
+ };
825
+ EnvelopeRefundResponse: {
826
+ /**
827
+ * Format: uri
828
+ * @description A URL to the JSON Schema for this object.
829
+ * @example https://example.com/schemas/EnvelopeRefundResponse.json
830
+ */
831
+ readonly $schema?: string;
832
+ /** Format: int64 */
833
+ count: number;
834
+ /** Format: int64 */
835
+ page: number;
836
+ /** Format: int64 */
837
+ page_size: number;
838
+ results: components["schemas"]["RefundResponse"][] | null;
839
+ /** Format: int64 */
840
+ total_pages: number;
841
+ };
842
+ EnvelopeRefundResponseAdmin: {
843
+ /**
844
+ * Format: uri
845
+ * @description A URL to the JSON Schema for this object.
846
+ * @example https://example.com/schemas/EnvelopeRefundResponseAdmin.json
847
+ */
848
+ readonly $schema?: string;
849
+ /** Format: int64 */
850
+ count: number;
851
+ /** Format: int64 */
852
+ page: number;
853
+ /** Format: int64 */
854
+ page_size: number;
855
+ results: components["schemas"]["RefundResponseAdmin"][] | null;
856
+ /** Format: int64 */
857
+ total_pages: number;
858
+ };
859
+ EnvelopeTransactionResponse: {
860
+ /**
861
+ * Format: uri
862
+ * @description A URL to the JSON Schema for this object.
863
+ * @example https://example.com/schemas/EnvelopeTransactionResponse.json
864
+ */
865
+ readonly $schema?: string;
866
+ /** Format: int64 */
867
+ count: number;
868
+ /** Format: int64 */
869
+ page: number;
870
+ /** Format: int64 */
871
+ page_size: number;
872
+ results: components["schemas"]["TransactionResponse"][] | null;
873
+ /** Format: int64 */
874
+ total_pages: number;
875
+ };
876
+ EnvelopeWalletLedgerEntryResponse: {
877
+ /**
878
+ * Format: uri
879
+ * @description A URL to the JSON Schema for this object.
880
+ * @example https://example.com/schemas/EnvelopeWalletLedgerEntryResponse.json
881
+ */
882
+ readonly $schema?: string;
883
+ /** Format: int64 */
884
+ count: number;
885
+ /** Format: int64 */
886
+ page: number;
887
+ /** Format: int64 */
888
+ page_size: number;
889
+ results: components["schemas"]["WalletLedgerEntryResponse"][] | null;
890
+ /** Format: int64 */
891
+ total_pages: number;
892
+ };
893
+ ErrorDetail: {
894
+ /** @description Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id' */
895
+ location?: string;
896
+ /** @description Error message text */
897
+ message?: string;
898
+ /** @description The value at the given location */
899
+ value?: unknown;
900
+ };
901
+ ErrorModel: {
902
+ /**
903
+ * Format: uri
904
+ * @description A URL to the JSON Schema for this object.
905
+ * @example https://example.com/schemas/ErrorModel.json
906
+ */
907
+ readonly $schema?: string;
908
+ /**
909
+ * @description A human-readable explanation specific to this occurrence of the problem.
910
+ * @example Property foo is required but is missing.
911
+ */
912
+ detail?: string;
913
+ /** @description Optional list of individual error details */
914
+ errors?: components["schemas"]["ErrorDetail"][] | null;
915
+ /**
916
+ * Format: uri
917
+ * @description A URI reference that identifies the specific occurrence of the problem.
918
+ * @example https://example.com/error-log/abc123
919
+ */
920
+ instance?: string;
921
+ /**
922
+ * Format: int64
923
+ * @description HTTP status code
924
+ * @example 400
925
+ */
926
+ status?: number;
927
+ /**
928
+ * @description A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
929
+ * @example Bad Request
930
+ */
931
+ title?: string;
932
+ /**
933
+ * Format: uri
934
+ * @description A URI reference to human-readable documentation for the error.
935
+ * @default about:blank
936
+ * @example https://example.com/errors/example
937
+ */
938
+ type: string;
939
+ };
940
+ ExchangeRatesResponse: {
941
+ /**
942
+ * Format: uri
943
+ * @description A URL to the JSON Schema for this object.
944
+ * @example https://example.com/schemas/ExchangeRatesResponse.json
945
+ */
946
+ readonly $schema?: string;
947
+ base: string;
948
+ rates: {
949
+ [key: string]: number;
950
+ };
951
+ /** Format: date-time */
952
+ updated_at: string;
953
+ };
954
+ GatewayMethods: {
955
+ display_name: string;
956
+ gateway: string;
957
+ methods: components["schemas"]["PaymentMethodOption"][] | null;
958
+ };
959
+ "Get-payout-balanceResponse": {
960
+ /**
961
+ * Format: uri
962
+ * @description A URL to the JSON Schema for this object.
963
+ * @example https://example.com/schemas/Get-payout-balanceResponse.json
964
+ */
965
+ readonly $schema?: string;
966
+ available: string;
967
+ currency: string;
968
+ held: string;
969
+ pending: string;
970
+ };
971
+ "Get-transactions-summaryResponse": {
972
+ /**
973
+ * Format: uri
974
+ * @description A URL to the JSON Schema for this object.
975
+ * @example https://example.com/schemas/Get-transactions-summaryResponse.json
976
+ */
977
+ readonly $schema?: string;
978
+ total_escrow_held: string;
979
+ total_fees: string;
980
+ total_received: string;
981
+ total_refunded: string;
982
+ };
983
+ "Initiate-card-updateResponse": {
984
+ /**
985
+ * Format: uri
986
+ * @description A URL to the JSON Schema for this object.
987
+ * @example https://example.com/schemas/Initiate-card-updateResponse.json
988
+ */
989
+ readonly $schema?: string;
990
+ authorization_url: string;
991
+ reference: string;
992
+ };
993
+ "Initiate-paymentRequest": {
994
+ /**
995
+ * Format: uri
996
+ * @description A URL to the JSON Schema for this object.
997
+ * @example https://example.com/schemas/Initiate-paymentRequest.json
998
+ */
999
+ readonly $schema?: string;
1000
+ /** Format: double */
1001
+ amount?: number;
1002
+ chat_url?: string;
1003
+ consultation_id?: string;
1004
+ /** @default NG */
1005
+ country_code: string;
1006
+ currency?: string;
1007
+ customer_id?: string;
1008
+ idempotency_key?: string;
1009
+ metadata_json?: {
1010
+ [key: string]: unknown;
1011
+ };
1012
+ order_id?: string;
1013
+ platform_source?: string;
1014
+ };
1015
+ "Initiate-subscriptionRequest": {
1016
+ /**
1017
+ * Format: uri
1018
+ * @description A URL to the JSON Schema for this object.
1019
+ * @example https://example.com/schemas/Initiate-subscriptionRequest.json
1020
+ */
1021
+ readonly $schema?: string;
1022
+ currency?: string;
1023
+ discount_code?: string;
1024
+ /** @default month */
1025
+ interval: string;
1026
+ plan_slug: string;
1027
+ };
1028
+ InitiateSubscriptionResponse: {
1029
+ /**
1030
+ * Format: uri
1031
+ * @description A URL to the JSON Schema for this object.
1032
+ * @example https://example.com/schemas/InitiateSubscriptionResponse.json
1033
+ */
1034
+ readonly $schema?: string;
1035
+ authorization_url: string | null;
1036
+ /** Format: double */
1037
+ base_price: number;
1038
+ /** Format: double */
1039
+ discount_value: number;
1040
+ /** Format: double */
1041
+ final_price: number;
1042
+ gateway: string;
1043
+ interval: string;
1044
+ message?: string;
1045
+ plan_slug: string;
1046
+ reference: string;
1047
+ status?: string;
1048
+ };
1049
+ JobStatusResponse: {
1050
+ /**
1051
+ * Format: uri
1052
+ * @description A URL to the JSON Schema for this object.
1053
+ * @example https://example.com/schemas/JobStatusResponse.json
1054
+ */
1055
+ readonly $schema?: string;
1056
+ completed_at: string | null;
1057
+ created_at: string;
1058
+ error: string | null;
1059
+ job_id: string;
1060
+ status: string;
1061
+ subscription_id: string | null;
1062
+ };
1063
+ LanguageResponse: {
1064
+ code: string;
1065
+ flag: string;
1066
+ label: string;
1067
+ };
1068
+ OutstandingClaimResponse: {
1069
+ balance: string;
1070
+ claim_email: string;
1071
+ created_at: string;
1072
+ currency: string;
1073
+ wallet_id: string;
1074
+ };
1075
+ PaymentLinkResponse: {
1076
+ /**
1077
+ * Format: uri
1078
+ * @description A URL to the JSON Schema for this object.
1079
+ * @example https://example.com/schemas/PaymentLinkResponse.json
1080
+ */
1081
+ readonly $schema?: string;
1082
+ amount: string;
1083
+ business_id: string;
1084
+ created_at: string;
1085
+ currency: string;
1086
+ expires_at: string | null;
1087
+ id: string;
1088
+ is_active: boolean;
1089
+ title: string;
1090
+ };
1091
+ PaymentMethodOption: {
1092
+ description: string;
1093
+ display_name: string;
1094
+ method: string;
1095
+ };
1096
+ PaymentMethodResponse: {
1097
+ /**
1098
+ * Format: uri
1099
+ * @description A URL to the JSON Schema for this object.
1100
+ * @example https://example.com/schemas/PaymentMethodResponse.json
1101
+ */
1102
+ readonly $schema?: string;
1103
+ card_expiry: string | null;
1104
+ card_holder_name: string | null;
1105
+ card_last4: string;
1106
+ card_type: string;
1107
+ created_at: string;
1108
+ id: string;
1109
+ is_active: boolean;
1110
+ is_default: boolean;
1111
+ provider: string;
1112
+ updated_at: string;
1113
+ user_id: string;
1114
+ };
1115
+ PayoutResponse: {
1116
+ /**
1117
+ * Format: uri
1118
+ * @description A URL to the JSON Schema for this object.
1119
+ * @example https://example.com/schemas/PayoutResponse.json
1120
+ */
1121
+ readonly $schema?: string;
1122
+ amount: string;
1123
+ business_id: string;
1124
+ carrier_cost: string | null;
1125
+ charged_amount: string | null;
1126
+ charged_currency: string | null;
1127
+ converted_amount: string | null;
1128
+ created_at: string;
1129
+ currency: string;
1130
+ fx_rate_applied: string | null;
1131
+ fx_rate_captured_at: string | null;
1132
+ fx_rate_source: string | null;
1133
+ fx_spread_amount: string | null;
1134
+ gateway_fee: string | null;
1135
+ gateway_ref: string | null;
1136
+ id: string;
1137
+ platform_commission: string | null;
1138
+ reference_fx_rate: string | null;
1139
+ reference_fx_rate_source: string | null;
1140
+ staff_id: string | null;
1141
+ status: string;
1142
+ type: string;
1143
+ updated_at: string;
1144
+ };
1145
+ PlanResponse: {
1146
+ /**
1147
+ * Format: uri
1148
+ * @description A URL to the JSON Schema for this object.
1149
+ * @example https://example.com/schemas/PlanResponse.json
1150
+ */
1151
+ readonly $schema?: string;
1152
+ created_at: string;
1153
+ description: string | null;
1154
+ display_name: string;
1155
+ features: unknown[] | null;
1156
+ id: string | null;
1157
+ is_deprecated: boolean;
1158
+ is_public: boolean;
1159
+ limits: {
1160
+ [key: string]: unknown;
1161
+ };
1162
+ /** Format: int64 */
1163
+ ordering: number;
1164
+ permissions: unknown[] | null;
1165
+ pricing: {
1166
+ [key: string]: unknown;
1167
+ };
1168
+ slug: string;
1169
+ updated_at: string;
1170
+ };
1171
+ "Process-refund-adminRequest": {
1172
+ /**
1173
+ * Format: uri
1174
+ * @description A URL to the JSON Schema for this object.
1175
+ * @example https://example.com/schemas/Process-refund-adminRequest.json
1176
+ */
1177
+ readonly $schema?: string;
1178
+ amount?: string;
1179
+ approved: boolean;
1180
+ refund_method?: string;
1181
+ };
1182
+ QuoteResponse: {
1183
+ /**
1184
+ * Format: uri
1185
+ * @description A URL to the JSON Schema for this object.
1186
+ * @example https://example.com/schemas/QuoteResponse.json
1187
+ */
1188
+ readonly $schema?: string;
1189
+ business_id: string;
1190
+ converted_amount: string;
1191
+ /** Format: date-time */
1192
+ created_at: string;
1193
+ /** Format: date-time */
1194
+ expires_at: string;
1195
+ from_currency: string;
1196
+ id: string;
1197
+ is_used: boolean;
1198
+ original_amount: string;
1199
+ rate: string;
1200
+ to_currency: string;
1201
+ };
1202
+ "Redirect-to-sourceResponse": {
1203
+ /**
1204
+ * Format: uri
1205
+ * @description A URL to the JSON Schema for this object.
1206
+ * @example https://example.com/schemas/Redirect-to-sourceResponse.json
1207
+ */
1208
+ readonly $schema?: string;
1209
+ message: string;
1210
+ };
1211
+ RefundResponse: {
1212
+ /**
1213
+ * Format: uri
1214
+ * @description A URL to the JSON Schema for this object.
1215
+ * @example https://example.com/schemas/RefundResponse.json
1216
+ */
1217
+ readonly $schema?: string;
1218
+ amount: string;
1219
+ business_id: string;
1220
+ created_at: string;
1221
+ currency: string;
1222
+ failure_reason: string | null;
1223
+ gateway_fee_recovered: string | null;
1224
+ id: string;
1225
+ method: string;
1226
+ order_id: string;
1227
+ processed_by: string | null;
1228
+ provider_status: string | null;
1229
+ reason: string | null;
1230
+ requested_by: string;
1231
+ status: string;
1232
+ subscription_id: string | null;
1233
+ transaction_id: string;
1234
+ updated_at: string;
1235
+ wallet_credit_status: string | null;
1236
+ };
1237
+ RefundResponseAdmin: {
1238
+ /**
1239
+ * Format: uri
1240
+ * @description A URL to the JSON Schema for this object.
1241
+ * @example https://example.com/schemas/RefundResponseAdmin.json
1242
+ */
1243
+ readonly $schema?: string;
1244
+ amount: string;
1245
+ business_id: string;
1246
+ created_at: string;
1247
+ currency: string;
1248
+ failure_reason: string | null;
1249
+ gateway_fee_recovered: string | null;
1250
+ id: string;
1251
+ method: string;
1252
+ order_id: string;
1253
+ processed_by: string | null;
1254
+ provider_ref: string | null;
1255
+ provider_status: string | null;
1256
+ reason: string | null;
1257
+ requested_by: string;
1258
+ status: string;
1259
+ subscription_id: string | null;
1260
+ transaction_id: string;
1261
+ updated_at: string;
1262
+ wallet_credit_status: string | null;
1263
+ };
1264
+ "Release-escrow-manualResponse": {
1265
+ /**
1266
+ * Format: uri
1267
+ * @description A URL to the JSON Schema for this object.
1268
+ * @example https://example.com/schemas/Release-escrow-manualResponse.json
1269
+ */
1270
+ readonly $schema?: string;
1271
+ message: string;
1272
+ transaction_id: string;
1273
+ };
1274
+ "Request-escrow-refundRequest": {
1275
+ /**
1276
+ * Format: uri
1277
+ * @description A URL to the JSON Schema for this object.
1278
+ * @example https://example.com/schemas/Request-escrow-refundRequest.json
1279
+ */
1280
+ readonly $schema?: string;
1281
+ reason: string;
1282
+ };
1283
+ "Request-escrow-refundResponse": {
1284
+ /**
1285
+ * Format: uri
1286
+ * @description A URL to the JSON Schema for this object.
1287
+ * @example https://example.com/schemas/Request-escrow-refundResponse.json
1288
+ */
1289
+ readonly $schema?: string;
1290
+ message: string;
1291
+ status: string;
1292
+ transaction_id: string;
1293
+ };
1294
+ "Request-payoutRequest": {
1295
+ /**
1296
+ * Format: uri
1297
+ * @description A URL to the JSON Schema for this object.
1298
+ * @example https://example.com/schemas/Request-payoutRequest.json
1299
+ */
1300
+ readonly $schema?: string;
1301
+ /** Format: double */
1302
+ amount: number;
1303
+ country_code: string;
1304
+ currency: string;
1305
+ staff_id?: string;
1306
+ type: string;
1307
+ };
1308
+ "Request-refundRequest": {
1309
+ /**
1310
+ * Format: uri
1311
+ * @description A URL to the JSON Schema for this object.
1312
+ * @example https://example.com/schemas/Request-refundRequest.json
1313
+ */
1314
+ readonly $schema?: string;
1315
+ reason: string;
1316
+ transaction_id: string;
1317
+ };
1318
+ "Schedule-plan-changeRequest": {
1319
+ /**
1320
+ * Format: uri
1321
+ * @description A URL to the JSON Schema for this object.
1322
+ * @example https://example.com/schemas/Schedule-plan-changeRequest.json
1323
+ */
1324
+ readonly $schema?: string;
1325
+ /** @default month */
1326
+ interval: string;
1327
+ target_plan_slug: string;
1328
+ };
1329
+ ScheduleChangeResponse: {
1330
+ /**
1331
+ * Format: uri
1332
+ * @description A URL to the JSON Schema for this object.
1333
+ * @example https://example.com/schemas/ScheduleChangeResponse.json
1334
+ */
1335
+ readonly $schema?: string;
1336
+ change_type: string;
1337
+ effective_date: string | null;
1338
+ message: string;
1339
+ pending_plan_interval: string;
1340
+ pending_plan_tier: string;
1341
+ status: string;
1342
+ };
1343
+ SseErrorMessage: {
1344
+ error: string;
1345
+ message: string;
1346
+ };
1347
+ StartTrialRequestBody: {
1348
+ /**
1349
+ * Format: uri
1350
+ * @description A URL to the JSON Schema for this object.
1351
+ * @example https://example.com/schemas/StartTrialRequestBody.json
1352
+ */
1353
+ readonly $schema?: string;
1354
+ /** @description Plan tier for trial (e.g., 'growth', 'business'). If empty, uses platform default. */
1355
+ trial_plan_tier: string;
1356
+ };
1357
+ StorefrontInitiateBody: {
1358
+ /**
1359
+ * Format: uri
1360
+ * @description A URL to the JSON Schema for this object.
1361
+ * @example https://example.com/schemas/StorefrontInitiateBody.json
1362
+ */
1363
+ readonly $schema?: string;
1364
+ /** Format: double */
1365
+ amount?: number;
1366
+ /** @default NG */
1367
+ country_code: string;
1368
+ currency?: string;
1369
+ /**
1370
+ * @description Which gateway the customer chose from GET /payments/storefront/methods.
1371
+ * @enum {string}
1372
+ */
1373
+ gateway: "monnify" | "flutterwave";
1374
+ idempotency_key?: string;
1375
+ metadata_json?: {
1376
+ [key: string]: unknown;
1377
+ };
1378
+ order_id?: string;
1379
+ };
1380
+ SubscriptionFullResponse: {
1381
+ /**
1382
+ * Format: uri
1383
+ * @description A URL to the JSON Schema for this object.
1384
+ * @example https://example.com/schemas/SubscriptionFullResponse.json
1385
+ */
1386
+ readonly $schema?: string;
1387
+ auto_renewal: boolean;
1388
+ base_price: string;
1389
+ cancel_reason: string | null;
1390
+ card_last4: string | null;
1391
+ card_type: string | null;
1392
+ created_at: string;
1393
+ current_period_end: string | null;
1394
+ current_period_start: string | null;
1395
+ customer_code: string | null;
1396
+ discount_id: string | null;
1397
+ discount_value: string;
1398
+ grace_period_end: string | null;
1399
+ id: string;
1400
+ interval: string;
1401
+ is_trial: boolean;
1402
+ /** Format: int64 */
1403
+ payment_failure_count: number;
1404
+ plan_code: string | null;
1405
+ plan_tier: string;
1406
+ price_paid: string;
1407
+ provider: string;
1408
+ provider_ref: string | null;
1409
+ renewal_type: string;
1410
+ status: string;
1411
+ subscription_code: string | null;
1412
+ trial_end: string | null;
1413
+ trial_plan_tier: string | null;
1414
+ trial_start: string | null;
1415
+ updated_at: string;
1416
+ user_id: string;
1417
+ voided_at: string | null;
1418
+ };
1419
+ SubscriptionSettingsResponse: {
1420
+ /**
1421
+ * Format: uri
1422
+ * @description A URL to the JSON Schema for this object.
1423
+ * @example https://example.com/schemas/SubscriptionSettingsResponse.json
1424
+ */
1425
+ readonly $schema?: string;
1426
+ business_id: string;
1427
+ created_at: string;
1428
+ current_period_end: string | null;
1429
+ id: string;
1430
+ plan_tier: string;
1431
+ provider: string;
1432
+ provider_ref: string | null;
1433
+ status: string;
1434
+ updated_at: string;
1435
+ };
1436
+ SupportedCurrenciesResponse: {
1437
+ /**
1438
+ * Format: uri
1439
+ * @description A URL to the JSON Schema for this object.
1440
+ * @example https://example.com/schemas/SupportedCurrenciesResponse.json
1441
+ */
1442
+ readonly $schema?: string;
1443
+ currencies: components["schemas"]["CurrencyResponse"][] | null;
1444
+ default_currency: string;
1445
+ };
1446
+ SupportedLanguagesResponse: {
1447
+ /**
1448
+ * Format: uri
1449
+ * @description A URL to the JSON Schema for this object.
1450
+ * @example https://example.com/schemas/SupportedLanguagesResponse.json
1451
+ */
1452
+ readonly $schema?: string;
1453
+ default_language: string;
1454
+ languages: components["schemas"]["LanguageResponse"][] | null;
1455
+ };
1456
+ "Tokenize-cardRequest": {
1457
+ /**
1458
+ * Format: uri
1459
+ * @description A URL to the JSON Schema for this object.
1460
+ * @example https://example.com/schemas/Tokenize-cardRequest.json
1461
+ */
1462
+ readonly $schema?: string;
1463
+ /**
1464
+ * Format: double
1465
+ * @default 100
1466
+ */
1467
+ amount: number;
1468
+ card_holder_name: string;
1469
+ email: string;
1470
+ phone?: string;
1471
+ };
1472
+ TokenizeCardResponse: {
1473
+ /**
1474
+ * Format: uri
1475
+ * @description A URL to the JSON Schema for this object.
1476
+ * @example https://example.com/schemas/TokenizeCardResponse.json
1477
+ */
1478
+ readonly $schema?: string;
1479
+ authorization_url: string;
1480
+ tx_ref: string;
1481
+ };
1482
+ TransactionResponse: {
1483
+ /**
1484
+ * Format: uri
1485
+ * @description A URL to the JSON Schema for this object.
1486
+ * @example https://example.com/schemas/TransactionResponse.json
1487
+ */
1488
+ readonly $schema?: string;
1489
+ amount: string;
1490
+ business_id: string;
1491
+ chat_url: string | null;
1492
+ consultation_id: string | null;
1493
+ created_at: string;
1494
+ currency: string;
1495
+ customer_id: string | null;
1496
+ gateway: string;
1497
+ gateway_ref: string;
1498
+ id: string;
1499
+ idempotency_key: string | null;
1500
+ metadata_json: {
1501
+ [key: string]: unknown;
1502
+ };
1503
+ order_id: string | null;
1504
+ platform_source: string | null;
1505
+ status: string;
1506
+ updated_at: string;
1507
+ };
1508
+ TrialStatusResponse: {
1509
+ /**
1510
+ * Format: uri
1511
+ * @description A URL to the JSON Schema for this object.
1512
+ * @example https://example.com/schemas/TrialStatusResponse.json
1513
+ */
1514
+ readonly $schema?: string;
1515
+ is_trial: boolean;
1516
+ trial_active: boolean;
1517
+ /** Format: int64 */
1518
+ trial_days_remaining: number;
1519
+ trial_end?: string;
1520
+ trial_expired: boolean;
1521
+ trial_plan_tier?: string;
1522
+ trial_start?: string;
1523
+ };
1524
+ "Update-payment-methodRequest": {
1525
+ /**
1526
+ * Format: uri
1527
+ * @description A URL to the JSON Schema for this object.
1528
+ * @example https://example.com/schemas/Update-payment-methodRequest.json
1529
+ */
1530
+ readonly $schema?: string;
1531
+ is_active?: boolean;
1532
+ set_as_default?: boolean;
1533
+ };
1534
+ "Update-subscription-cardRequest": {
1535
+ /**
1536
+ * Format: uri
1537
+ * @description A URL to the JSON Schema for this object.
1538
+ * @example https://example.com/schemas/Update-subscription-cardRequest.json
1539
+ */
1540
+ readonly $schema?: string;
1541
+ authorization_code?: string;
1542
+ card_last4?: string;
1543
+ card_type?: string;
1544
+ reference: string;
1545
+ };
1546
+ "Validate-discountRequest": {
1547
+ /**
1548
+ * Format: uri
1549
+ * @description A URL to the JSON Schema for this object.
1550
+ * @example https://example.com/schemas/Validate-discountRequest.json
1551
+ */
1552
+ readonly $schema?: string;
1553
+ code: string;
1554
+ currency: string;
1555
+ interval: string;
1556
+ plan_slug: string;
1557
+ };
1558
+ "Verify-and-add-payment-methodRequest": {
1559
+ /**
1560
+ * Format: uri
1561
+ * @description A URL to the JSON Schema for this object.
1562
+ * @example https://example.com/schemas/Verify-and-add-payment-methodRequest.json
1563
+ */
1564
+ readonly $schema?: string;
1565
+ reference: string;
1566
+ set_as_default: boolean;
1567
+ };
1568
+ "Verify-bank-accountRequest": {
1569
+ /**
1570
+ * Format: uri
1571
+ * @description A URL to the JSON Schema for this object.
1572
+ * @example https://example.com/schemas/Verify-bank-accountRequest.json
1573
+ */
1574
+ readonly $schema?: string;
1575
+ account_name: string;
1576
+ account_number: string;
1577
+ bank_code: string;
1578
+ };
1579
+ "Verify-bank-accountResponse": {
1580
+ /**
1581
+ * Format: uri
1582
+ * @description A URL to the JSON Schema for this object.
1583
+ * @example https://example.com/schemas/Verify-bank-accountResponse.json
1584
+ */
1585
+ readonly $schema?: string;
1586
+ message: string;
1587
+ verified: boolean;
1588
+ verified_name: string;
1589
+ };
1590
+ WalletBalanceResponse: {
1591
+ /**
1592
+ * Format: uri
1593
+ * @description A URL to the JSON Schema for this object.
1594
+ * @example https://example.com/schemas/WalletBalanceResponse.json
1595
+ */
1596
+ readonly $schema?: string;
1597
+ balance: string;
1598
+ currency: string;
1599
+ };
1600
+ WalletLedgerEntryResponse: {
1601
+ amount: string;
1602
+ balance_after: string;
1603
+ created_at: string;
1604
+ currency: string;
1605
+ entry_type: string;
1606
+ id: string;
1607
+ refund_id: string | null;
1608
+ transaction_id: string | null;
1609
+ };
1610
+ };
1611
+ responses: never;
1612
+ parameters: never;
1613
+ requestBodies: never;
1614
+ headers: never;
1615
+ pathItems: never;
1616
+ }
1617
+ export type $defs = Record<string, never>;
1618
+ export interface operations {
1619
+ "list-banks": {
1620
+ parameters: {
1621
+ query?: {
1622
+ /** @description Country ISO code (e.g. NG, GH, KE) */
1623
+ country?: string;
1624
+ /** @description Currency code (e.g. NGN, GHS, KES) */
1625
+ currency?: string;
1626
+ };
1627
+ header?: never;
1628
+ path?: never;
1629
+ cookie?: never;
1630
+ };
1631
+ requestBody?: never;
1632
+ responses: {
1633
+ /** @description OK */
1634
+ 200: {
1635
+ headers: {
1636
+ [name: string]: unknown;
1637
+ };
1638
+ content: {
1639
+ "application/json": components["schemas"]["BankResponse"][] | null;
1640
+ };
1641
+ };
1642
+ /** @description Error */
1643
+ default: {
1644
+ headers: {
1645
+ [name: string]: unknown;
1646
+ };
1647
+ content: {
1648
+ "application/problem+json": components["schemas"]["ErrorModel"];
1649
+ };
1650
+ };
1651
+ };
1652
+ };
1653
+ "get-currency-by-country": {
1654
+ parameters: {
1655
+ query?: {
1656
+ country_code?: string;
1657
+ };
1658
+ header?: never;
1659
+ path?: never;
1660
+ cookie?: never;
1661
+ };
1662
+ requestBody?: never;
1663
+ responses: {
1664
+ /** @description OK */
1665
+ 200: {
1666
+ headers: {
1667
+ [name: string]: unknown;
1668
+ };
1669
+ content: {
1670
+ "application/json": components["schemas"]["CurrencyResponse"];
1671
+ };
1672
+ };
1673
+ /** @description Error */
1674
+ default: {
1675
+ headers: {
1676
+ [name: string]: unknown;
1677
+ };
1678
+ content: {
1679
+ "application/problem+json": components["schemas"]["ErrorModel"];
1680
+ };
1681
+ };
1682
+ };
1683
+ };
1684
+ "get-supported-currencies": {
1685
+ parameters: {
1686
+ query?: never;
1687
+ header?: never;
1688
+ path?: never;
1689
+ cookie?: never;
1690
+ };
1691
+ requestBody?: never;
1692
+ responses: {
1693
+ /** @description OK */
1694
+ 200: {
1695
+ headers: {
1696
+ [name: string]: unknown;
1697
+ };
1698
+ content: {
1699
+ "application/json": components["schemas"]["SupportedCurrenciesResponse"];
1700
+ };
1701
+ };
1702
+ /** @description Error */
1703
+ default: {
1704
+ headers: {
1705
+ [name: string]: unknown;
1706
+ };
1707
+ content: {
1708
+ "application/problem+json": components["schemas"]["ErrorModel"];
1709
+ };
1710
+ };
1711
+ };
1712
+ };
1713
+ "get-supported-languages": {
1714
+ parameters: {
1715
+ query?: never;
1716
+ header?: never;
1717
+ path?: never;
1718
+ cookie?: never;
1719
+ };
1720
+ requestBody?: never;
1721
+ responses: {
1722
+ /** @description OK */
1723
+ 200: {
1724
+ headers: {
1725
+ [name: string]: unknown;
1726
+ };
1727
+ content: {
1728
+ "application/json": components["schemas"]["SupportedLanguagesResponse"];
1729
+ };
1730
+ };
1731
+ /** @description Error */
1732
+ default: {
1733
+ headers: {
1734
+ [name: string]: unknown;
1735
+ };
1736
+ content: {
1737
+ "application/problem+json": components["schemas"]["ErrorModel"];
1738
+ };
1739
+ };
1740
+ };
1741
+ };
1742
+ "list-available-discounts": {
1743
+ parameters: {
1744
+ query?: {
1745
+ plan_slug?: string;
1746
+ interval?: string;
1747
+ };
1748
+ header?: never;
1749
+ path?: never;
1750
+ cookie?: never;
1751
+ };
1752
+ requestBody?: never;
1753
+ responses: {
1754
+ /** @description OK */
1755
+ 200: {
1756
+ headers: {
1757
+ [name: string]: unknown;
1758
+ };
1759
+ content: {
1760
+ "application/json": components["schemas"]["DiscountResponse"][] | null;
1761
+ };
1762
+ };
1763
+ /** @description Error */
1764
+ default: {
1765
+ headers: {
1766
+ [name: string]: unknown;
1767
+ };
1768
+ content: {
1769
+ "application/problem+json": components["schemas"]["ErrorModel"];
1770
+ };
1771
+ };
1772
+ };
1773
+ };
1774
+ "validate-discount": {
1775
+ parameters: {
1776
+ query?: never;
1777
+ header?: never;
1778
+ path?: never;
1779
+ cookie?: never;
1780
+ };
1781
+ requestBody: {
1782
+ content: {
1783
+ "application/json": components["schemas"]["Validate-discountRequest"];
1784
+ };
1785
+ };
1786
+ responses: {
1787
+ /** @description OK */
1788
+ 200: {
1789
+ headers: {
1790
+ [name: string]: unknown;
1791
+ };
1792
+ content: {
1793
+ "application/json": components["schemas"]["DiscountValidateResponse"];
1794
+ };
1795
+ };
1796
+ /** @description Error */
1797
+ default: {
1798
+ headers: {
1799
+ [name: string]: unknown;
1800
+ };
1801
+ content: {
1802
+ "application/problem+json": components["schemas"]["ErrorModel"];
1803
+ };
1804
+ };
1805
+ };
1806
+ };
1807
+ "stream-business-events": {
1808
+ parameters: {
1809
+ query?: never;
1810
+ header?: never;
1811
+ path?: never;
1812
+ cookie?: never;
1813
+ };
1814
+ requestBody?: never;
1815
+ responses: {
1816
+ /** @description OK */
1817
+ 200: {
1818
+ headers: {
1819
+ [name: string]: unknown;
1820
+ };
1821
+ content: {
1822
+ "text/event-stream": ({
1823
+ data: components["schemas"]["SseErrorMessage"];
1824
+ /**
1825
+ * @description The event name.
1826
+ * @constant
1827
+ */
1828
+ event: "error";
1829
+ /** @description The event ID. */
1830
+ id?: number;
1831
+ /** @description The retry time in milliseconds. */
1832
+ retry?: number;
1833
+ } | {
1834
+ data: {
1835
+ [key: string]: unknown;
1836
+ };
1837
+ /**
1838
+ * @description The event name.
1839
+ * @constant
1840
+ */
1841
+ event?: "message";
1842
+ /** @description The event ID. */
1843
+ id?: number;
1844
+ /** @description The retry time in milliseconds. */
1845
+ retry?: number;
1846
+ })[];
1847
+ };
1848
+ };
1849
+ /** @description Error */
1850
+ default: {
1851
+ headers: {
1852
+ [name: string]: unknown;
1853
+ };
1854
+ content: {
1855
+ "application/problem+json": components["schemas"]["ErrorModel"];
1856
+ };
1857
+ };
1858
+ };
1859
+ };
1860
+ "stream-order-events": {
1861
+ parameters: {
1862
+ query?: never;
1863
+ header?: never;
1864
+ path: {
1865
+ order_id: string;
1866
+ };
1867
+ cookie?: never;
1868
+ };
1869
+ requestBody?: never;
1870
+ responses: {
1871
+ /** @description OK */
1872
+ 200: {
1873
+ headers: {
1874
+ [name: string]: unknown;
1875
+ };
1876
+ content: {
1877
+ "text/event-stream": ({
1878
+ data: components["schemas"]["SseErrorMessage"];
1879
+ /**
1880
+ * @description The event name.
1881
+ * @constant
1882
+ */
1883
+ event: "error";
1884
+ /** @description The event ID. */
1885
+ id?: number;
1886
+ /** @description The retry time in milliseconds. */
1887
+ retry?: number;
1888
+ } | {
1889
+ data: {
1890
+ [key: string]: unknown;
1891
+ };
1892
+ /**
1893
+ * @description The event name.
1894
+ * @constant
1895
+ */
1896
+ event?: "message";
1897
+ /** @description The event ID. */
1898
+ id?: number;
1899
+ /** @description The retry time in milliseconds. */
1900
+ retry?: number;
1901
+ })[];
1902
+ };
1903
+ };
1904
+ /** @description Error */
1905
+ default: {
1906
+ headers: {
1907
+ [name: string]: unknown;
1908
+ };
1909
+ content: {
1910
+ "application/problem+json": components["schemas"]["ErrorModel"];
1911
+ };
1912
+ };
1913
+ };
1914
+ };
1915
+ "list-payment-methods": {
1916
+ parameters: {
1917
+ query?: never;
1918
+ header?: never;
1919
+ path?: never;
1920
+ cookie?: never;
1921
+ };
1922
+ requestBody?: never;
1923
+ responses: {
1924
+ /** @description OK */
1925
+ 200: {
1926
+ headers: {
1927
+ [name: string]: unknown;
1928
+ };
1929
+ content: {
1930
+ "application/json": components["schemas"]["PaymentMethodResponse"][] | null;
1931
+ };
1932
+ };
1933
+ /** @description Error */
1934
+ default: {
1935
+ headers: {
1936
+ [name: string]: unknown;
1937
+ };
1938
+ content: {
1939
+ "application/problem+json": components["schemas"]["ErrorModel"];
1940
+ };
1941
+ };
1942
+ };
1943
+ };
1944
+ "create-payment-method": {
1945
+ parameters: {
1946
+ query?: never;
1947
+ header?: never;
1948
+ path?: never;
1949
+ cookie?: never;
1950
+ };
1951
+ requestBody: {
1952
+ content: {
1953
+ "application/json": components["schemas"]["Create-payment-methodRequest"];
1954
+ };
1955
+ };
1956
+ responses: {
1957
+ /** @description Created */
1958
+ 201: {
1959
+ headers: {
1960
+ [name: string]: unknown;
1961
+ };
1962
+ content: {
1963
+ "application/json": components["schemas"]["PaymentMethodResponse"];
1964
+ };
1965
+ };
1966
+ /** @description Error */
1967
+ default: {
1968
+ headers: {
1969
+ [name: string]: unknown;
1970
+ };
1971
+ content: {
1972
+ "application/problem+json": components["schemas"]["ErrorModel"];
1973
+ };
1974
+ };
1975
+ };
1976
+ };
1977
+ "tokenize-card": {
1978
+ parameters: {
1979
+ query?: never;
1980
+ header?: never;
1981
+ path?: never;
1982
+ cookie?: never;
1983
+ };
1984
+ requestBody: {
1985
+ content: {
1986
+ "application/json": components["schemas"]["Tokenize-cardRequest"];
1987
+ };
1988
+ };
1989
+ responses: {
1990
+ /** @description OK */
1991
+ 200: {
1992
+ headers: {
1993
+ [name: string]: unknown;
1994
+ };
1995
+ content: {
1996
+ "application/json": components["schemas"]["TokenizeCardResponse"];
1997
+ };
1998
+ };
1999
+ /** @description Error */
2000
+ default: {
2001
+ headers: {
2002
+ [name: string]: unknown;
2003
+ };
2004
+ content: {
2005
+ "application/problem+json": components["schemas"]["ErrorModel"];
2006
+ };
2007
+ };
2008
+ };
2009
+ };
2010
+ "verify-and-add-payment-method": {
2011
+ parameters: {
2012
+ query?: never;
2013
+ header?: never;
2014
+ path?: never;
2015
+ cookie?: never;
2016
+ };
2017
+ requestBody: {
2018
+ content: {
2019
+ "application/json": components["schemas"]["Verify-and-add-payment-methodRequest"];
2020
+ };
2021
+ };
2022
+ responses: {
2023
+ /** @description Created */
2024
+ 201: {
2025
+ headers: {
2026
+ [name: string]: unknown;
2027
+ };
2028
+ content: {
2029
+ "application/json": components["schemas"]["PaymentMethodResponse"];
2030
+ };
2031
+ };
2032
+ /** @description Error */
2033
+ default: {
2034
+ headers: {
2035
+ [name: string]: unknown;
2036
+ };
2037
+ content: {
2038
+ "application/problem+json": components["schemas"]["ErrorModel"];
2039
+ };
2040
+ };
2041
+ };
2042
+ };
2043
+ "delete-payment-method": {
2044
+ parameters: {
2045
+ query?: never;
2046
+ header?: never;
2047
+ path: {
2048
+ payment_method_id: string;
2049
+ };
2050
+ cookie?: never;
2051
+ };
2052
+ requestBody?: never;
2053
+ responses: {
2054
+ /** @description No Content */
2055
+ 204: {
2056
+ headers: {
2057
+ [name: string]: unknown;
2058
+ };
2059
+ content?: never;
2060
+ };
2061
+ /** @description Error */
2062
+ default: {
2063
+ headers: {
2064
+ [name: string]: unknown;
2065
+ };
2066
+ content: {
2067
+ "application/problem+json": components["schemas"]["ErrorModel"];
2068
+ };
2069
+ };
2070
+ };
2071
+ };
2072
+ "update-payment-method": {
2073
+ parameters: {
2074
+ query?: never;
2075
+ header?: never;
2076
+ path: {
2077
+ payment_method_id: string;
2078
+ };
2079
+ cookie?: never;
2080
+ };
2081
+ requestBody: {
2082
+ content: {
2083
+ "application/json": components["schemas"]["Update-payment-methodRequest"];
2084
+ };
2085
+ };
2086
+ responses: {
2087
+ /** @description OK */
2088
+ 200: {
2089
+ headers: {
2090
+ [name: string]: unknown;
2091
+ };
2092
+ content: {
2093
+ "application/json": components["schemas"]["PaymentMethodResponse"];
2094
+ };
2095
+ };
2096
+ /** @description Error */
2097
+ default: {
2098
+ headers: {
2099
+ [name: string]: unknown;
2100
+ };
2101
+ content: {
2102
+ "application/problem+json": components["schemas"]["ErrorModel"];
2103
+ };
2104
+ };
2105
+ };
2106
+ };
2107
+ "set-default-payment-method": {
2108
+ parameters: {
2109
+ query?: never;
2110
+ header?: never;
2111
+ path: {
2112
+ payment_method_id: string;
2113
+ };
2114
+ cookie?: never;
2115
+ };
2116
+ requestBody?: never;
2117
+ responses: {
2118
+ /** @description OK */
2119
+ 200: {
2120
+ headers: {
2121
+ [name: string]: unknown;
2122
+ };
2123
+ content: {
2124
+ "application/json": components["schemas"]["PaymentMethodResponse"];
2125
+ };
2126
+ };
2127
+ /** @description Error */
2128
+ default: {
2129
+ headers: {
2130
+ [name: string]: unknown;
2131
+ };
2132
+ content: {
2133
+ "application/problem+json": components["schemas"]["ErrorModel"];
2134
+ };
2135
+ };
2136
+ };
2137
+ };
2138
+ "channel-create-dedicated-account": {
2139
+ parameters: {
2140
+ query?: {
2141
+ business_id?: string;
2142
+ };
2143
+ header?: never;
2144
+ path?: never;
2145
+ cookie?: never;
2146
+ };
2147
+ requestBody: {
2148
+ content: {
2149
+ "application/json": components["schemas"]["DvaCreateBody"];
2150
+ };
2151
+ };
2152
+ responses: {
2153
+ /** @description Created */
2154
+ 201: {
2155
+ headers: {
2156
+ [name: string]: unknown;
2157
+ };
2158
+ content: {
2159
+ "application/json": components["schemas"]["DVAResponse"];
2160
+ };
2161
+ };
2162
+ /** @description Error */
2163
+ default: {
2164
+ headers: {
2165
+ [name: string]: unknown;
2166
+ };
2167
+ content: {
2168
+ "application/problem+json": components["schemas"]["ErrorModel"];
2169
+ };
2170
+ };
2171
+ };
2172
+ };
2173
+ "channel-initiate-payment": {
2174
+ parameters: {
2175
+ query?: {
2176
+ business_id?: string;
2177
+ };
2178
+ header?: {
2179
+ Origin?: string;
2180
+ Referer?: string;
2181
+ };
2182
+ path?: never;
2183
+ cookie?: never;
2184
+ };
2185
+ requestBody: {
2186
+ content: {
2187
+ "application/json": components["schemas"]["StorefrontInitiateBody"];
2188
+ };
2189
+ };
2190
+ responses: {
2191
+ /** @description Created */
2192
+ 201: {
2193
+ headers: {
2194
+ [name: string]: unknown;
2195
+ };
2196
+ content: {
2197
+ "application/json": components["schemas"]["TransactionResponse"];
2198
+ };
2199
+ };
2200
+ /** @description Error */
2201
+ default: {
2202
+ headers: {
2203
+ [name: string]: unknown;
2204
+ };
2205
+ content: {
2206
+ "application/problem+json": components["schemas"]["ErrorModel"];
2207
+ };
2208
+ };
2209
+ };
2210
+ };
2211
+ "channel-available-payment-methods": {
2212
+ parameters: {
2213
+ query?: {
2214
+ business_id?: string;
2215
+ currency?: string;
2216
+ country_code?: string;
2217
+ };
2218
+ header?: never;
2219
+ path?: never;
2220
+ cookie?: never;
2221
+ };
2222
+ requestBody?: never;
2223
+ responses: {
2224
+ /** @description OK */
2225
+ 200: {
2226
+ headers: {
2227
+ [name: string]: unknown;
2228
+ };
2229
+ content: {
2230
+ "application/json": components["schemas"]["GatewayMethods"][] | null;
2231
+ };
2232
+ };
2233
+ /** @description Error */
2234
+ default: {
2235
+ headers: {
2236
+ [name: string]: unknown;
2237
+ };
2238
+ content: {
2239
+ "application/problem+json": components["schemas"]["ErrorModel"];
2240
+ };
2241
+ };
2242
+ };
2243
+ };
2244
+ "initiate-payment": {
2245
+ parameters: {
2246
+ query?: never;
2247
+ header?: {
2248
+ Origin?: string;
2249
+ Referer?: string;
2250
+ };
2251
+ path?: never;
2252
+ cookie?: never;
2253
+ };
2254
+ requestBody: {
2255
+ content: {
2256
+ "application/json": components["schemas"]["Initiate-paymentRequest"];
2257
+ };
2258
+ };
2259
+ responses: {
2260
+ /** @description OK */
2261
+ 200: {
2262
+ headers: {
2263
+ [name: string]: unknown;
2264
+ };
2265
+ content: {
2266
+ "application/json": components["schemas"]["TransactionResponse"];
2267
+ };
2268
+ };
2269
+ /** @description Error */
2270
+ default: {
2271
+ headers: {
2272
+ [name: string]: unknown;
2273
+ };
2274
+ content: {
2275
+ "application/problem+json": components["schemas"]["ErrorModel"];
2276
+ };
2277
+ };
2278
+ };
2279
+ };
2280
+ "create-payment-link": {
2281
+ parameters: {
2282
+ query?: never;
2283
+ header?: never;
2284
+ path?: never;
2285
+ cookie?: never;
2286
+ };
2287
+ requestBody: {
2288
+ content: {
2289
+ "application/json": components["schemas"]["Create-payment-linkRequest"];
2290
+ };
2291
+ };
2292
+ responses: {
2293
+ /** @description Created */
2294
+ 201: {
2295
+ headers: {
2296
+ [name: string]: unknown;
2297
+ };
2298
+ content: {
2299
+ "application/json": components["schemas"]["PaymentLinkResponse"];
2300
+ };
2301
+ };
2302
+ /** @description Error */
2303
+ default: {
2304
+ headers: {
2305
+ [name: string]: unknown;
2306
+ };
2307
+ content: {
2308
+ "application/problem+json": components["schemas"]["ErrorModel"];
2309
+ };
2310
+ };
2311
+ };
2312
+ };
2313
+ "get-payment-link": {
2314
+ parameters: {
2315
+ query?: never;
2316
+ header?: never;
2317
+ path: {
2318
+ link_id: string;
2319
+ };
2320
+ cookie?: never;
2321
+ };
2322
+ requestBody?: never;
2323
+ responses: {
2324
+ /** @description OK */
2325
+ 200: {
2326
+ headers: {
2327
+ [name: string]: unknown;
2328
+ };
2329
+ content: {
2330
+ "application/json": components["schemas"]["PaymentLinkResponse"];
2331
+ };
2332
+ };
2333
+ /** @description Error */
2334
+ default: {
2335
+ headers: {
2336
+ [name: string]: unknown;
2337
+ };
2338
+ content: {
2339
+ "application/problem+json": components["schemas"]["ErrorModel"];
2340
+ };
2341
+ };
2342
+ };
2343
+ };
2344
+ "redirect-to-source": {
2345
+ parameters: {
2346
+ query?: never;
2347
+ header?: never;
2348
+ path: {
2349
+ gateway_ref: string;
2350
+ };
2351
+ cookie?: never;
2352
+ };
2353
+ requestBody?: never;
2354
+ responses: {
2355
+ /** @description OK */
2356
+ 200: {
2357
+ headers: {
2358
+ Location?: string;
2359
+ [name: string]: unknown;
2360
+ };
2361
+ content: {
2362
+ "application/json": components["schemas"]["Redirect-to-sourceResponse"];
2363
+ };
2364
+ };
2365
+ /** @description Error */
2366
+ default: {
2367
+ headers: {
2368
+ [name: string]: unknown;
2369
+ };
2370
+ content: {
2371
+ "application/problem+json": components["schemas"]["ErrorModel"];
2372
+ };
2373
+ };
2374
+ };
2375
+ };
2376
+ "storefront-create-dedicated-account": {
2377
+ parameters: {
2378
+ query?: never;
2379
+ header?: {
2380
+ Origin?: string;
2381
+ Referer?: string;
2382
+ };
2383
+ path?: never;
2384
+ cookie?: never;
2385
+ };
2386
+ requestBody: {
2387
+ content: {
2388
+ "application/json": components["schemas"]["DvaCreateBody"];
2389
+ };
2390
+ };
2391
+ responses: {
2392
+ /** @description Created */
2393
+ 201: {
2394
+ headers: {
2395
+ [name: string]: unknown;
2396
+ };
2397
+ content: {
2398
+ "application/json": components["schemas"]["DVAResponse"];
2399
+ };
2400
+ };
2401
+ /** @description Error */
2402
+ default: {
2403
+ headers: {
2404
+ [name: string]: unknown;
2405
+ };
2406
+ content: {
2407
+ "application/problem+json": components["schemas"]["ErrorModel"];
2408
+ };
2409
+ };
2410
+ };
2411
+ };
2412
+ "storefront-initiate-payment": {
2413
+ parameters: {
2414
+ query?: never;
2415
+ header?: {
2416
+ Origin?: string;
2417
+ Referer?: string;
2418
+ };
2419
+ path?: never;
2420
+ cookie?: never;
2421
+ };
2422
+ requestBody: {
2423
+ content: {
2424
+ "application/json": components["schemas"]["StorefrontInitiateBody"];
2425
+ };
2426
+ };
2427
+ responses: {
2428
+ /** @description Created */
2429
+ 201: {
2430
+ headers: {
2431
+ [name: string]: unknown;
2432
+ };
2433
+ content: {
2434
+ "application/json": components["schemas"]["TransactionResponse"];
2435
+ };
2436
+ };
2437
+ /** @description Error */
2438
+ default: {
2439
+ headers: {
2440
+ [name: string]: unknown;
2441
+ };
2442
+ content: {
2443
+ "application/problem+json": components["schemas"]["ErrorModel"];
2444
+ };
2445
+ };
2446
+ };
2447
+ };
2448
+ "storefront-available-payment-methods": {
2449
+ parameters: {
2450
+ query?: {
2451
+ currency?: string;
2452
+ country_code?: string;
2453
+ };
2454
+ header?: never;
2455
+ path?: never;
2456
+ cookie?: never;
2457
+ };
2458
+ requestBody?: never;
2459
+ responses: {
2460
+ /** @description OK */
2461
+ 200: {
2462
+ headers: {
2463
+ [name: string]: unknown;
2464
+ };
2465
+ content: {
2466
+ "application/json": components["schemas"]["GatewayMethods"][] | null;
2467
+ };
2468
+ };
2469
+ /** @description Error */
2470
+ default: {
2471
+ headers: {
2472
+ [name: string]: unknown;
2473
+ };
2474
+ content: {
2475
+ "application/problem+json": components["schemas"]["ErrorModel"];
2476
+ };
2477
+ };
2478
+ };
2479
+ };
2480
+ "list-transactions": {
2481
+ parameters: {
2482
+ query?: {
2483
+ /** @description 1-indexed page number */
2484
+ page?: number;
2485
+ /** @description Rows per page (1-100) */
2486
+ page_size?: number;
2487
+ /** @description Filter by transaction status */
2488
+ status?: string;
2489
+ /** @description Filter by gateway */
2490
+ gateway?: string;
2491
+ /** @description Match on gateway_ref or metadata */
2492
+ search?: string;
2493
+ };
2494
+ header?: never;
2495
+ path?: never;
2496
+ cookie?: never;
2497
+ };
2498
+ requestBody?: never;
2499
+ responses: {
2500
+ /** @description OK */
2501
+ 200: {
2502
+ headers: {
2503
+ [name: string]: unknown;
2504
+ };
2505
+ content: {
2506
+ "application/json": components["schemas"]["EnvelopeTransactionResponse"];
2507
+ };
2508
+ };
2509
+ /** @description Error */
2510
+ default: {
2511
+ headers: {
2512
+ [name: string]: unknown;
2513
+ };
2514
+ content: {
2515
+ "application/problem+json": components["schemas"]["ErrorModel"];
2516
+ };
2517
+ };
2518
+ };
2519
+ };
2520
+ "get-transactions-summary": {
2521
+ parameters: {
2522
+ query?: never;
2523
+ header?: never;
2524
+ path?: never;
2525
+ cookie?: never;
2526
+ };
2527
+ requestBody?: never;
2528
+ responses: {
2529
+ /** @description OK */
2530
+ 200: {
2531
+ headers: {
2532
+ [name: string]: unknown;
2533
+ };
2534
+ content: {
2535
+ "application/json": components["schemas"]["Get-transactions-summaryResponse"];
2536
+ };
2537
+ };
2538
+ /** @description Error */
2539
+ default: {
2540
+ headers: {
2541
+ [name: string]: unknown;
2542
+ };
2543
+ content: {
2544
+ "application/problem+json": components["schemas"]["ErrorModel"];
2545
+ };
2546
+ };
2547
+ };
2548
+ };
2549
+ "verify-payment": {
2550
+ parameters: {
2551
+ query?: never;
2552
+ header?: never;
2553
+ path: {
2554
+ gateway_ref: string;
2555
+ };
2556
+ cookie?: never;
2557
+ };
2558
+ requestBody?: never;
2559
+ responses: {
2560
+ /** @description OK */
2561
+ 200: {
2562
+ headers: {
2563
+ [name: string]: unknown;
2564
+ };
2565
+ content: {
2566
+ "application/json": components["schemas"]["TransactionResponse"];
2567
+ };
2568
+ };
2569
+ /** @description Error */
2570
+ default: {
2571
+ headers: {
2572
+ [name: string]: unknown;
2573
+ };
2574
+ content: {
2575
+ "application/problem+json": components["schemas"]["ErrorModel"];
2576
+ };
2577
+ };
2578
+ };
2579
+ };
2580
+ "create-conversion-quote": {
2581
+ parameters: {
2582
+ query?: never;
2583
+ header?: never;
2584
+ path?: never;
2585
+ cookie?: never;
2586
+ };
2587
+ requestBody: {
2588
+ content: {
2589
+ "application/json": components["schemas"]["Create-conversion-quoteRequest"];
2590
+ };
2591
+ };
2592
+ responses: {
2593
+ /** @description OK */
2594
+ 200: {
2595
+ headers: {
2596
+ [name: string]: unknown;
2597
+ };
2598
+ content: {
2599
+ "application/json": components["schemas"]["QuoteResponse"];
2600
+ };
2601
+ };
2602
+ /** @description Error */
2603
+ default: {
2604
+ headers: {
2605
+ [name: string]: unknown;
2606
+ };
2607
+ content: {
2608
+ "application/problem+json": components["schemas"]["ErrorModel"];
2609
+ };
2610
+ };
2611
+ };
2612
+ };
2613
+ "list-business-refunds": {
2614
+ parameters: {
2615
+ query?: {
2616
+ /** @description 1-indexed page number */
2617
+ page?: number;
2618
+ /** @description Rows per page (1-100) */
2619
+ page_size?: number;
2620
+ /** @description Filter by refund status */
2621
+ status?: string;
2622
+ };
2623
+ header?: never;
2624
+ path?: never;
2625
+ cookie?: never;
2626
+ };
2627
+ requestBody?: never;
2628
+ responses: {
2629
+ /** @description OK */
2630
+ 200: {
2631
+ headers: {
2632
+ [name: string]: unknown;
2633
+ };
2634
+ content: {
2635
+ "application/json": components["schemas"]["EnvelopeRefundResponse"];
2636
+ };
2637
+ };
2638
+ /** @description Error */
2639
+ default: {
2640
+ headers: {
2641
+ [name: string]: unknown;
2642
+ };
2643
+ content: {
2644
+ "application/problem+json": components["schemas"]["ErrorModel"];
2645
+ };
2646
+ };
2647
+ };
2648
+ };
2649
+ "request-refund": {
2650
+ parameters: {
2651
+ query?: never;
2652
+ header?: never;
2653
+ path?: never;
2654
+ cookie?: never;
2655
+ };
2656
+ requestBody: {
2657
+ content: {
2658
+ "application/json": components["schemas"]["Request-refundRequest"];
2659
+ };
2660
+ };
2661
+ responses: {
2662
+ /** @description Created */
2663
+ 201: {
2664
+ headers: {
2665
+ [name: string]: unknown;
2666
+ };
2667
+ content: {
2668
+ "application/json": components["schemas"]["RefundResponse"];
2669
+ };
2670
+ };
2671
+ /** @description Error */
2672
+ default: {
2673
+ headers: {
2674
+ [name: string]: unknown;
2675
+ };
2676
+ content: {
2677
+ "application/problem+json": components["schemas"]["ErrorModel"];
2678
+ };
2679
+ };
2680
+ };
2681
+ };
2682
+ "get-refund": {
2683
+ parameters: {
2684
+ query?: never;
2685
+ header?: never;
2686
+ path: {
2687
+ refund_id: string;
2688
+ };
2689
+ cookie?: never;
2690
+ };
2691
+ requestBody?: never;
2692
+ responses: {
2693
+ /** @description OK */
2694
+ 200: {
2695
+ headers: {
2696
+ [name: string]: unknown;
2697
+ };
2698
+ content: {
2699
+ "application/json": components["schemas"]["RefundResponse"];
2700
+ };
2701
+ };
2702
+ /** @description Error */
2703
+ default: {
2704
+ headers: {
2705
+ [name: string]: unknown;
2706
+ };
2707
+ content: {
2708
+ "application/problem+json": components["schemas"]["ErrorModel"];
2709
+ };
2710
+ };
2711
+ };
2712
+ };
2713
+ }