payabli 3.0.18 → 3.0.20

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 (199) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +3 -3
  3. data/lib/payabli/applications/client.rb +735 -0
  4. data/lib/payabli/applications/types/create_application_request.rb +27 -0
  5. data/lib/payabli/applications/types/list_applications_applications_request.rb +13 -0
  6. data/lib/payabli/applications/types/submit_application_request.rb +13 -0
  7. data/lib/payabli/applications/types/update_application_request.rb +25 -0
  8. data/lib/payabli/applications/types/upload_application_document_request.rb +11 -0
  9. data/lib/payabli/applications/types/withdraw_application_request.rb +13 -0
  10. data/lib/payabli/boarding/client.rb +90 -0
  11. data/lib/payabli/boarding_templates/client.rb +196 -0
  12. data/lib/payabli/boarding_templates/types/list_templates_boarding_templates_request.rb +25 -0
  13. data/lib/payabli/businesses/client.rb +796 -0
  14. data/lib/payabli/businesses/types/create_business_address_request.rb +31 -0
  15. data/lib/payabli/businesses/types/deactivate_business_request.rb +13 -0
  16. data/lib/payabli/businesses/types/link_business_person_request.rb +35 -0
  17. data/lib/payabli/businesses/types/list_businesses_businesses_request.rb +25 -0
  18. data/lib/payabli/businesses/types/update_business_address_request.rb +33 -0
  19. data/lib/payabli/businesses/types/update_business_person_request.rb +35 -0
  20. data/lib/payabli/businesses/types/update_business_request.rb +63 -0
  21. data/lib/payabli/businesses/types/update_business_request_legal_structure.rb +21 -0
  22. data/lib/payabli/businesses/types/update_business_request_operating_seasons_item.rb +16 -0
  23. data/lib/payabli/client.rb +31 -1
  24. data/lib/payabli/export/client.rb +2 -3
  25. data/lib/payabli/ghost_card/client.rb +48 -2
  26. data/lib/payabli/money_out/client.rb +56 -2
  27. data/lib/payabli/money_out/types/reissue_out_request.rb +2 -0
  28. data/lib/payabli/payment_methods/client.rb +254 -0
  29. data/lib/payabli/payment_methods/types/create_payment_methods_request.rb +11 -0
  30. data/lib/payabli/payment_methods/types/list_payment_methods_payment_methods_request.rb +25 -0
  31. data/lib/payabli/payment_methods/types/update_payment_method_request.rb +23 -0
  32. data/lib/payabli/paypoints/client.rb +204 -0
  33. data/lib/payabli/paypoints/types/create_paypoint_paypoints_request.rb +17 -0
  34. data/lib/payabli/paypoints/types/list_paypoints_paypoints_request.rb +19 -0
  35. data/lib/payabli/paypoints/types/update_paypoint_request.rb +29 -0
  36. data/lib/payabli/people/client.rb +428 -0
  37. data/lib/payabli/people/types/create_person_request.rb +47 -0
  38. data/lib/payabli/people/types/list_people_people_request.rb +23 -0
  39. data/lib/payabli/people/types/search_people_request.rb +15 -0
  40. data/lib/payabli/people/types/search_people_unmasked_request.rb +15 -0
  41. data/lib/payabli/people/types/update_person_request.rb +41 -0
  42. data/lib/payabli/subscription/types/request_update_schedule.rb +2 -0
  43. data/lib/payabli/templates/client.rb +25 -0
  44. data/lib/payabli/types/address_type.rb +16 -0
  45. data/lib/payabli/types/application.rb +46 -0
  46. data/lib/payabli/types/application_common.rb +42 -0
  47. data/lib/payabli/types/application_document.rb +26 -0
  48. data/lib/payabli/types/application_document_envelope.rb +16 -0
  49. data/lib/payabli/types/application_document_error.rb +16 -0
  50. data/lib/payabli/types/application_document_list_envelope.rb +16 -0
  51. data/lib/payabli/types/application_envelope.rb +16 -0
  52. data/lib/payabli/types/application_links.rb +12 -0
  53. data/lib/payabli/types/application_list_item.rb +52 -0
  54. data/lib/payabli/types/associated_vendor.rb +2 -0
  55. data/lib/payabli/types/bank_account_services.rb +2 -2
  56. data/lib/payabli/types/bill_query_record_2.rb +2 -0
  57. data/lib/payabli/types/bill_response_data.rb +2 -0
  58. data/lib/payabli/types/bill_transaction_reference.rb +12 -0
  59. data/lib/payabli/types/boarding_warning.rb +12 -0
  60. data/lib/payabli/types/business_address.rb +28 -0
  61. data/lib/payabli/types/business_address_create.rb +28 -0
  62. data/lib/payabli/types/business_address_deleted_envelope.rb +16 -0
  63. data/lib/payabli/types/business_address_deleted_response.rb +16 -0
  64. data/lib/payabli/types/business_address_envelope.rb +16 -0
  65. data/lib/payabli/types/business_address_links.rb +12 -0
  66. data/lib/payabli/types/business_address_list_envelope.rb +16 -0
  67. data/lib/payabli/types/business_address_location.rb +15 -0
  68. data/lib/payabli/types/business_address_response.rb +32 -0
  69. data/lib/payabli/types/business_created_envelope.rb +18 -0
  70. data/lib/payabli/types/business_created_response.rb +16 -0
  71. data/lib/payabli/types/business_deactivated_envelope.rb +18 -0
  72. data/lib/payabli/types/business_deactivated_response.rb +18 -0
  73. data/lib/payabli/types/business_detail_envelope.rb +18 -0
  74. data/lib/payabli/types/business_detail_response.rb +76 -0
  75. data/lib/payabli/types/business_detail_response_legal_structure.rb +17 -0
  76. data/lib/payabli/types/business_detail_response_operating_seasons_item.rb +14 -0
  77. data/lib/payabli/types/business_links.rb +10 -0
  78. data/lib/payabli/types/business_payment_method.rb +36 -0
  79. data/lib/payabli/types/business_person_envelope.rb +16 -0
  80. data/lib/payabli/types/business_person_link.rb +42 -0
  81. data/lib/payabli/types/business_person_links.rb +14 -0
  82. data/lib/payabli/types/business_person_list_envelope.rb +16 -0
  83. data/lib/payabli/types/business_relationship_request.rb +35 -0
  84. data/lib/payabli/types/business_relationship_response.rb +36 -0
  85. data/lib/payabli/types/business_summary_response.rb +22 -0
  86. data/lib/payabli/types/business_updated_envelope.rb +18 -0
  87. data/lib/payabli/types/business_updated_response.rb +14 -0
  88. data/lib/payabli/types/case_management_money_in_service.rb +17 -0
  89. data/lib/payabli/types/case_management_money_out_service.rb +17 -0
  90. data/lib/payabli/types/certification_detail.rb +18 -0
  91. data/lib/payabli/types/create_business_request.rb +64 -0
  92. data/lib/payabli/types/create_business_request_legal_structure.rb +19 -0
  93. data/lib/payabli/types/create_business_request_operating_seasons_item.rb +14 -0
  94. data/lib/payabli/types/create_payment_method_request.rb +28 -0
  95. data/lib/payabli/types/create_payment_method_request_type.rb +11 -0
  96. data/lib/payabli/types/create_paypoint_all_fields.rb +32 -0
  97. data/lib/payabli/types/create_paypoint_with_business_reference.rb +31 -0
  98. data/lib/payabli/types/create_paypoint_with_inline_business.rb +31 -0
  99. data/lib/payabli/types/delete_ghost_card_response.rb +12 -0
  100. data/lib/payabli/types/delete_ghost_card_response_data.rb +11 -0
  101. data/lib/payabli/types/device_entry_mode.rb +23 -0
  102. data/lib/payabli/types/device_query_record.rb +6 -0
  103. data/lib/payabli/types/device_query_record_operational_status.rb +13 -0
  104. data/lib/payabli/types/document_requirement.rb +31 -0
  105. data/lib/payabli/types/document_requirement_list_envelope.rb +16 -0
  106. data/lib/payabli/types/document_requirement_source.rb +12 -0
  107. data/lib/payabli/types/document_subject_type.rb +13 -0
  108. data/lib/payabli/types/emv_auth_data.rb +14 -0
  109. data/lib/payabli/types/enablement_envelope.rb +16 -0
  110. data/lib/payabli/types/enablement_result.rb +24 -0
  111. data/lib/payabli/types/enablement_service.rb +18 -0
  112. data/lib/payabli/types/get_method_response_response_data_vendors_item.rb +2 -0
  113. data/lib/payabli/types/identification_document_request.rb +18 -0
  114. data/lib/payabli/types/identification_document_response.rb +18 -0
  115. data/lib/payabli/types/issue_1099.rb +23 -0
  116. data/lib/payabli/types/list_applications_envelope.rb +16 -0
  117. data/lib/payabli/types/list_applications_response.rb +16 -0
  118. data/lib/payabli/types/list_businesses_envelope.rb +18 -0
  119. data/lib/payabli/types/list_businesses_response.rb +12 -0
  120. data/lib/payabli/types/list_payment_methods_envelope.rb +16 -0
  121. data/lib/payabli/types/list_payment_methods_response.rb +12 -0
  122. data/lib/payabli/types/list_paypoints_envelope.rb +16 -0
  123. data/lib/payabli/types/list_paypoints_response.rb +16 -0
  124. data/lib/payabli/types/list_people_envelope.rb +16 -0
  125. data/lib/payabli/types/list_people_response.rb +12 -0
  126. data/lib/payabli/types/list_templates_response.rb +12 -0
  127. data/lib/payabli/types/next_check_number_response.rb +10 -0
  128. data/lib/payabli/types/pagination.rb +20 -0
  129. data/lib/payabli/types/payment_method_deactivated_envelope.rb +16 -0
  130. data/lib/payabli/types/payment_method_detail.rb +38 -0
  131. data/lib/payabli/types/payment_method_detail_envelope.rb +16 -0
  132. data/lib/payabli/types/payment_method_links.rb +12 -0
  133. data/lib/payabli/types/payment_method_owner_type.rb +12 -0
  134. data/lib/payabli/types/payment_method_result.rb +40 -0
  135. data/lib/payabli/types/payment_method_updated_envelope.rb +16 -0
  136. data/lib/payabli/types/payment_method_usage.rb +16 -0
  137. data/lib/payabli/types/payment_methods_created_envelope.rb +16 -0
  138. data/lib/payabli/types/payout_metrics.rb +16 -0
  139. data/lib/payabli/types/payout_subscription_vendor.rb +2 -0
  140. data/lib/payabli/types/paypoint_created_envelope.rb +16 -0
  141. data/lib/payabli/types/paypoint_created_response.rb +22 -0
  142. data/lib/payabli/types/paypoint_detail_envelope.rb +16 -0
  143. data/lib/payabli/types/paypoint_detail_response.rb +40 -0
  144. data/lib/payabli/types/paypoint_links.rb +12 -0
  145. data/lib/payabli/types/paypoint_summary_response.rb +38 -0
  146. data/lib/payabli/types/paypoint_updated_envelope.rb +16 -0
  147. data/lib/payabli/types/paypoint_updated_response.rb +14 -0
  148. data/lib/payabli/types/paypoint_writable_fields.rb +28 -0
  149. data/lib/payabli/types/people_search_envelope.rb +16 -0
  150. data/lib/payabli/types/people_search_request.rb +12 -0
  151. data/lib/payabli/types/people_search_result_response.rb +38 -0
  152. data/lib/payabli/types/people_search_results_response.rb +14 -0
  153. data/lib/payabli/types/person_address_request.rb +22 -0
  154. data/lib/payabli/types/person_address_response.rb +22 -0
  155. data/lib/payabli/types/person_address_type.rb +17 -0
  156. data/lib/payabli/types/person_detail_envelope.rb +18 -0
  157. data/lib/payabli/types/person_detail_response.rb +56 -0
  158. data/lib/payabli/types/person_links.rb +12 -0
  159. data/lib/payabli/types/person_summary_response.rb +24 -0
  160. data/lib/payabli/types/person_type.rb +16 -0
  161. data/lib/payabli/types/person_updated_envelope.rb +16 -0
  162. data/lib/payabli/types/person_updated_response.rb +14 -0
  163. data/lib/payabli/types/processing_metrics.rb +30 -0
  164. data/lib/payabli/types/query_device_data.rb +26 -0
  165. data/lib/payabli/types/representative_input.rb +20 -0
  166. data/lib/payabli/types/representative_response.rb +20 -0
  167. data/lib/payabli/types/requested_services.rb +13 -0
  168. data/lib/payabli/types/signature_type.rb +13 -0
  169. data/lib/payabli/types/status_history_entry.rb +22 -0
  170. data/lib/payabli/types/status_history_envelope.rb +16 -0
  171. data/lib/payabli/types/status_history_result.rb +12 -0
  172. data/lib/payabli/types/submit_application_error.rb +16 -0
  173. data/lib/payabli/types/submit_signer.rb +32 -0
  174. data/lib/payabli/types/template.rb +38 -0
  175. data/lib/payabli/types/template_status.rb +12 -0
  176. data/lib/payabli/types/template_version.rb +79 -0
  177. data/lib/payabli/types/templates_summary.rb +14 -0
  178. data/lib/payabli/types/transaction_query_records.rb +6 -0
  179. data/lib/payabli/types/transaction_query_records_customer.rb +6 -0
  180. data/lib/payabli/types/transfer_out_detail_vendor.rb +2 -0
  181. data/lib/payabli/types/transition_result.rb +14 -0
  182. data/lib/payabli/types/transition_result_envelope.rb +16 -0
  183. data/lib/payabli/types/underwriting_mode.rb +13 -0
  184. data/lib/payabli/types/v_card_get_response_associated_vendor.rb +2 -0
  185. data/lib/payabli/types/validation_missing_field.rb +14 -0
  186. data/lib/payabli/types/validation_result.rb +14 -0
  187. data/lib/payabli/types/validation_result_envelope.rb +16 -0
  188. data/lib/payabli/types/validation_section.rb +12 -0
  189. data/lib/payabli/types/validation_sections.rb +16 -0
  190. data/lib/payabli/types/vendor_data.rb +2 -0
  191. data/lib/payabli/types/vendor_data_response.rb +2 -0
  192. data/lib/payabli/types/vendor_out_data.rb +2 -0
  193. data/lib/payabli/types/vendor_query_record.rb +2 -0
  194. data/lib/payabli/vendor/client.rb +1 -0
  195. data/lib/payabli/version.rb +1 -1
  196. data/lib/payabli.rb +170 -2
  197. data/reference.md +5431 -214
  198. data/wiremock/wiremock-mappings.json +1689 -25
  199. metadata +170 -2
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class CreateApplicationRequest < Internal::Types::Model
7
+ field :business_reference, -> { String }, optional: false, nullable: false, api_name: "businessReference"
8
+
9
+ field :paypoint_reference, -> { String }, optional: true, nullable: false, api_name: "paypointReference"
10
+
11
+ field :external_id, -> { String }, optional: true, nullable: false, api_name: "externalId"
12
+
13
+ field :entity_type, -> { String }, optional: true, nullable: false, api_name: "entityType"
14
+
15
+ field :request_template, -> { String }, optional: true, nullable: false, api_name: "requestTemplate"
16
+
17
+ field :tags, -> { Internal::Types::Array[String] }, optional: true, nullable: false
18
+
19
+ field :representatives, -> { Internal::Types::Array[Payabli::Types::RepresentativeInput] }, optional: true, nullable: false
20
+
21
+ field :configurations, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
22
+
23
+ field :services, -> { Payabli::Types::RequestedServices }, optional: true, nullable: false
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class ListApplicationsApplicationsRequest < Internal::Types::Model
7
+ field :page, -> { Integer }, optional: true, nullable: false
8
+
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class SubmitApplicationRequest < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+
9
+ field :signer, -> { Payabli::Types::SubmitSigner }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class UpdateApplicationRequest < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+
9
+ field :external_id, -> { String }, optional: true, nullable: false, api_name: "externalId"
10
+
11
+ field :entity_type, -> { String }, optional: true, nullable: false, api_name: "entityType"
12
+
13
+ field :request_template, -> { String }, optional: true, nullable: false, api_name: "requestTemplate"
14
+
15
+ field :tags, -> { Internal::Types::Array[String] }, optional: true, nullable: false
16
+
17
+ field :representatives, -> { Internal::Types::Array[Payabli::Types::RepresentativeInput] }, optional: true, nullable: false
18
+
19
+ field :configurations, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
20
+
21
+ field :services, -> { Payabli::Types::RequestedServices }, optional: true, nullable: false
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class UploadApplicationDocumentRequest < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Applications
5
+ module Types
6
+ class WithdrawApplicationRequest < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+
9
+ field :reason, -> { String }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -10,6 +10,14 @@ module Payabli
10
10
  @client = client
11
11
  end
12
12
 
13
+ # <Warning>
14
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [Create an
15
+ # application](/developers/api-reference/applications/create-an-application) instead. One legacy call becomes
16
+ # several intelligent boarding calls, one for each record. See [Map legacy calls to new
17
+ # endpoints](/guides/pay-ops-developer-boarding-legacy-migrate#map-legacy-calls-to-new-endpoints).
18
+ # </Warning>
19
+ #
20
+ #
13
21
  # Creates a boarding application in an organization. This endpoint requires an application API token.
14
22
  #
15
23
  # @param request_options [Hash]
@@ -170,6 +178,15 @@ module Payabli
170
178
  end
171
179
  end
172
180
 
181
+ # <Warning>
182
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Update the record that holds the data instead, such
183
+ # as [the business](/developers/api-reference/businesses/update-a-business) or [a
184
+ # person](/developers/api-reference/people/update-a-person). Use [Update an
185
+ # application](/developers/api-reference/applications/update-an-application) only for the application's own
186
+ # fields.
187
+ # </Warning>
188
+ #
189
+ #
173
190
  # Updates a boarding application by ID. This endpoint requires an application API token.
174
191
  #
175
192
  # @param request_options [Hash]
@@ -213,6 +230,12 @@ module Payabli
213
230
  end
214
231
  end
215
232
 
233
+ # <Warning>
234
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [Withdraw an
235
+ # application](/developers/api-reference/applications/withdraw-an-application) instead.
236
+ # </Warning>
237
+ #
238
+ #
216
239
  # Deletes a boarding application by ID.
217
240
  #
218
241
  # @param request_options [Hash]
@@ -252,6 +275,12 @@ module Payabli
252
275
  end
253
276
  end
254
277
 
278
+ # <Warning>
279
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [Get an
280
+ # application](/developers/api-reference/applications/get-an-application) instead.
281
+ # </Warning>
282
+ #
283
+ #
255
284
  # Retrieves the details for a boarding application by ID.
256
285
  #
257
286
  # @param request_options [Hash]
@@ -291,6 +320,13 @@ module Payabli
291
320
  end
292
321
  end
293
322
 
323
+ # <Warning>
324
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
325
+ # application has its own hosted form link instead. See [Send merchants a boarding
326
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
327
+ # </Warning>
328
+ #
329
+ #
294
330
  # Gets a boarding application by authentication information. This endpoint requires an `application` API token.
295
331
  #
296
332
  # @param request_options [Hash]
@@ -339,6 +375,13 @@ module Payabli
339
375
  end
340
376
  end
341
377
 
378
+ # <Warning>
379
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
380
+ # application has its own hosted form link instead. See [Send merchants a boarding
381
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
382
+ # </Warning>
383
+ #
384
+ #
342
385
  # Retrieves details for a boarding link, by ID.
343
386
  #
344
387
  # @param request_options [Hash]
@@ -378,6 +421,13 @@ module Payabli
378
421
  end
379
422
  end
380
423
 
424
+ # <Warning>
425
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
426
+ # application has its own hosted form link instead. See [Send merchants a boarding
427
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
428
+ # </Warning>
429
+ #
430
+ #
381
431
  # Get details for a boarding link using the boarding template ID. This endpoint requires an application API token.
382
432
  #
383
433
  # @param request_options [Hash]
@@ -417,6 +467,13 @@ module Payabli
417
467
  end
418
468
  end
419
469
 
470
+ # <Warning>
471
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
472
+ # application has its own hosted form link instead. See [Send merchants a boarding
473
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
474
+ # </Warning>
475
+ #
476
+ #
420
477
  # Retrieves a link and the verification code used to log into an existing boarding application. You can also use
421
478
  # this endpoint to send a link and referenceId for an existing boarding application to an email address. The
422
479
  # recipient can use the referenceId and email address to access and edit the application.
@@ -467,6 +524,13 @@ module Payabli
467
524
  end
468
525
  end
469
526
 
527
+ # <Warning>
528
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
529
+ # application has its own hosted form link instead. See [Send merchants a boarding
530
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
531
+ # </Warning>
532
+ #
533
+ #
470
534
  # Retrieves the details for a boarding link, by reference name. This endpoint requires an application API token.
471
535
  #
472
536
  # @param request_options [Hash]
@@ -506,6 +570,12 @@ module Payabli
506
570
  end
507
571
  end
508
572
 
573
+ # <Warning>
574
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [List
575
+ # applications](/developers/api-reference/applications/list-applications) instead.
576
+ # </Warning>
577
+ #
578
+ #
509
579
  # Returns a list of boarding applications for an organization. Use filters to limit results. Include the
510
580
  # `exportFormat` query parameter to return the results as a file instead of a JSON response.
511
581
  #
@@ -564,6 +634,13 @@ module Payabli
564
634
  end
565
635
  end
566
636
 
637
+ # <Warning>
638
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Intelligent boarding has no matching endpoint. Each
639
+ # application has its own hosted form link instead. See [Send merchants a boarding
640
+ # link](/guides/pay-ops-developer-boarding-legacy-migrate#send-merchants-a-boarding-link).
641
+ # </Warning>
642
+ #
643
+ #
567
644
  # Return a list of boarding links for an organization. Use filters to limit results.
568
645
  #
569
646
  # @param request_options [Hash]
@@ -619,6 +696,13 @@ module Payabli
619
696
  end
620
697
  end
621
698
 
699
+ # <Warning>
700
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [Create an
701
+ # application](/developers/api-reference/applications/create-an-application) for a paypoint that's already boarded
702
+ # instead. See [Request more services with the API](/guides/pay-ops-developer-boarding-add-services).
703
+ # </Warning>
704
+ #
705
+ #
622
706
  # Creates a new boarding application linked to an existing paypoint as part of the multi-product boarding flow.
623
707
  # Use this endpoint to add new services to a paypoint without creating a duplicate record. The system copies
624
708
  # eligible business, contact, banking, and address data from the paypoint to the new application based on 1:1
@@ -668,6 +752,12 @@ module Payabli
668
752
  end
669
753
  end
670
754
 
755
+ # <Warning>
756
+ # Legacy boarding is deprecated and will be sunset in Q2 2027. Use [List
757
+ # applications](/developers/api-reference/applications/list-applications) instead. It doesn't filter by paypoint.
758
+ # </Warning>
759
+ #
760
+ #
671
761
  # Returns all boarding applications associated with a specific paypoint, including those created through the
672
762
  # multi-product boarding flow. Use this endpoint to track underwriting progress across multiple service additions
673
763
  # or to build reporting views. See the [Multi-product boarding](/guides/pay-ops-developer-boarding-multi-product)
@@ -0,0 +1,196 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module BoardingTemplates
5
+ class Client
6
+ # @param client [Payabli::Internal::Http::RawClient]
7
+ #
8
+ # @return [void]
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # Lists the boarding templates an organization owns, plus templates
14
+ # inherited from ancestor organizations. Scope the listing with the
15
+ # required `orgId` query parameter. You can filter by `status`, `name`,
16
+ # `slug`, `orgName`, and `inherited`, and page through results.
17
+ #
18
+ # @param request_options [Hash]
19
+ # @param params [Hash]
20
+ # @option request_options [String] :base_url
21
+ # @option request_options [Hash{String => Object}] :additional_headers
22
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
23
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
24
+ # @option request_options [Integer] :timeout_in_seconds
25
+ # @option params [Integer] :org_id
26
+ # @option params [Payabli::Types::TemplateStatus, nil] :status
27
+ # @option params [String, nil] :name
28
+ # @option params [String, nil] :slug
29
+ # @option params [String, nil] :org_name
30
+ # @option params [Boolean, nil] :inherited
31
+ # @option params [Integer, nil] :from_record
32
+ # @option params [Integer, nil] :limit_record
33
+ #
34
+ # @example
35
+ # client.boarding_templates.list_templates(org_id: 123)
36
+ #
37
+ # @return [Payabli::Types::ListTemplatesResponse]
38
+ def list_templates(request_options: {}, **params)
39
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
40
+ query_params = {}
41
+ query_params["orgId"] = params[:org_id] if params.key?(:org_id)
42
+ query_params["status"] = params[:status] if params.key?(:status)
43
+ query_params["name"] = params[:name] if params.key?(:name)
44
+ query_params["slug"] = params[:slug] if params.key?(:slug)
45
+ query_params["orgName"] = params[:org_name] if params.key?(:org_name)
46
+ query_params["inherited"] = params[:inherited] if params.key?(:inherited)
47
+ query_params["fromRecord"] = params[:from_record] if params.key?(:from_record)
48
+ query_params["limitRecord"] = params[:limit_record] if params.key?(:limit_record)
49
+
50
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }])
51
+ request = Payabli::Internal::JSON::Request.new(
52
+ base_url: request_options[:base_url],
53
+ method: "GET",
54
+ path: "v2/templates",
55
+ headers: headers,
56
+ query: query_params,
57
+ request_options: request_options
58
+ )
59
+ begin
60
+ response = @client.send(request)
61
+ rescue Net::HTTPRequestTimeout
62
+ raise Payabli::Errors::TimeoutError
63
+ end
64
+ code = response.code.to_i
65
+ if code.between?(200, 299)
66
+ Payabli::Types::ListTemplatesResponse.load(response.body)
67
+ else
68
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
69
+ raise error_class.new(response.body, code: code)
70
+ end
71
+ end
72
+
73
+ # Retrieves a boarding template by UUID, including its current content version.
74
+ #
75
+ # @param request_options [Hash]
76
+ # @param params [Hash]
77
+ # @option request_options [String] :base_url
78
+ # @option request_options [Hash{String => Object}] :additional_headers
79
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
80
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
81
+ # @option request_options [Integer] :timeout_in_seconds
82
+ # @option params [String] :uuid
83
+ #
84
+ # @example
85
+ # client.boarding_templates.get_template(uuid: "019ff129-d393-7761-9a31-e5afe85b4081")
86
+ #
87
+ # @return [Payabli::Types::Template]
88
+ def get_template(request_options: {}, **params)
89
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
90
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }])
91
+ request = Payabli::Internal::JSON::Request.new(
92
+ base_url: request_options[:base_url],
93
+ method: "GET",
94
+ path: "v2/templates/#{URI.encode_uri_component(params[:uuid].to_s)}",
95
+ headers: headers,
96
+ request_options: request_options
97
+ )
98
+ begin
99
+ response = @client.send(request)
100
+ rescue Net::HTTPRequestTimeout
101
+ raise Payabli::Errors::TimeoutError
102
+ end
103
+ code = response.code.to_i
104
+ if code.between?(200, 299)
105
+ Payabli::Types::Template.load(response.body)
106
+ else
107
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
108
+ raise error_class.new(response.body, code: code)
109
+ end
110
+ end
111
+
112
+ # Archives a boarding template by UUID. Archiving is a soft delete: the
113
+ # template stays readable with `status: archived`, so archiving an
114
+ # already-archived template returns `409`, not another success. Unknown
115
+ # templates return `404`.
116
+ #
117
+ # @param request_options [Hash]
118
+ # @param params [Hash]
119
+ # @option request_options [String] :base_url
120
+ # @option request_options [Hash{String => Object}] :additional_headers
121
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
122
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
123
+ # @option request_options [Integer] :timeout_in_seconds
124
+ # @option params [String] :uuid
125
+ #
126
+ # @example
127
+ # client.boarding_templates.archive_template(uuid: "019ff129-d393-7761-9a31-e5afe85b4081")
128
+ #
129
+ # @return [untyped]
130
+ def archive_template(request_options: {}, **params)
131
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
132
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }])
133
+ request = Payabli::Internal::JSON::Request.new(
134
+ base_url: request_options[:base_url],
135
+ method: "DELETE",
136
+ path: "v2/templates/#{URI.encode_uri_component(params[:uuid].to_s)}",
137
+ headers: headers,
138
+ request_options: request_options
139
+ )
140
+ begin
141
+ response = @client.send(request)
142
+ rescue Net::HTTPRequestTimeout
143
+ raise Payabli::Errors::TimeoutError
144
+ end
145
+ code = response.code.to_i
146
+ return if code.between?(200, 299)
147
+
148
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
149
+ raise error_class.new(response.body, code: code)
150
+ end
151
+
152
+ # Retrieves a specific immutable content version of a template.
153
+ #
154
+ # @param request_options [Hash]
155
+ # @param params [Hash]
156
+ # @option request_options [String] :base_url
157
+ # @option request_options [Hash{String => Object}] :additional_headers
158
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
159
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
160
+ # @option request_options [Integer] :timeout_in_seconds
161
+ # @option params [String] :uuid
162
+ # @option params [String] :version_uuid
163
+ #
164
+ # @example
165
+ # client.boarding_templates.get_template_version(
166
+ # uuid: "019ff129-d393-7761-9a31-e5afe85b4081",
167
+ # version_uuid: "019ff129-d396-74c4-86da-ae3d082d7ef9"
168
+ # )
169
+ #
170
+ # @return [Payabli::Types::TemplateVersion]
171
+ def get_template_version(request_options: {}, **params)
172
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
173
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }])
174
+ request = Payabli::Internal::JSON::Request.new(
175
+ base_url: request_options[:base_url],
176
+ method: "GET",
177
+ path: "v2/templates/#{URI.encode_uri_component(params[:uuid].to_s)}/versions/#{URI.encode_uri_component(params[:version_uuid].to_s)}",
178
+ headers: headers,
179
+ request_options: request_options
180
+ )
181
+ begin
182
+ response = @client.send(request)
183
+ rescue Net::HTTPRequestTimeout
184
+ raise Payabli::Errors::TimeoutError
185
+ end
186
+ code = response.code.to_i
187
+ if code.between?(200, 299)
188
+ Payabli::Types::TemplateVersion.load(response.body)
189
+ else
190
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
191
+ raise error_class.new(response.body, code: code)
192
+ end
193
+ end
194
+ end
195
+ end
196
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module BoardingTemplates
5
+ module Types
6
+ class ListTemplatesBoardingTemplatesRequest < Internal::Types::Model
7
+ field :org_id, -> { Integer }, optional: false, nullable: false, api_name: "orgId"
8
+
9
+ field :status, -> { Payabli::Types::TemplateStatus }, optional: true, nullable: false
10
+
11
+ field :name, -> { String }, optional: true, nullable: false
12
+
13
+ field :slug, -> { String }, optional: true, nullable: false
14
+
15
+ field :org_name, -> { String }, optional: true, nullable: false, api_name: "orgName"
16
+
17
+ field :inherited, -> { Internal::Types::Boolean }, optional: true, nullable: false
18
+
19
+ field :from_record, -> { Integer }, optional: true, nullable: false, api_name: "fromRecord"
20
+
21
+ field :limit_record, -> { Integer }, optional: true, nullable: false, api_name: "limitRecord"
22
+ end
23
+ end
24
+ end
25
+ end