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,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A payment method as returned by create, update, and deactivate. Sensitive fields are masked.
6
+ class PaymentMethodResult < Internal::Types::Model
7
+ field :payment_method_reference, -> { String }, optional: false, nullable: false, api_name: "paymentMethodReference"
8
+
9
+ field :type, -> { String }, optional: false, nullable: false
10
+
11
+ field :fingerprint, -> { String }, optional: true, nullable: false
12
+
13
+ field :token_reference, -> { String }, optional: true, nullable: false, api_name: "tokenReference"
14
+
15
+ field :account_owner, -> { String }, optional: false, nullable: false, api_name: "accountOwner"
16
+
17
+ field :owner_type, -> { Payabli::Types::PaymentMethodOwnerType }, optional: false, nullable: false, api_name: "ownerType"
18
+
19
+ field :nickname, -> { String }, optional: true, nullable: false
20
+
21
+ field :financial_institution, -> { String }, optional: true, nullable: false, api_name: "financialInstitution"
22
+
23
+ field :account_type, -> { String }, optional: true, nullable: false, api_name: "accountType"
24
+
25
+ field :account_number, -> { String }, optional: true, nullable: false, api_name: "accountNumber"
26
+
27
+ field :routing_number, -> { String }, optional: true, nullable: false, api_name: "routingNumber"
28
+
29
+ field :status, -> { String }, optional: false, nullable: false
30
+
31
+ field :usage, -> { Internal::Types::Array[Payabli::Types::PaymentMethodUsage] }, optional: true, nullable: false
32
+
33
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
34
+
35
+ field :last_updated, -> { String }, optional: false, nullable: false, api_name: "lastUpdated"
36
+
37
+ field :links, -> { Payabli::Types::PaymentMethodLinks }, optional: false, nullable: false, api_name: "_links"
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping an updated payment method.
6
+ class PaymentMethodUpdatedEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PaymentMethodResult }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module PaymentMethodUsage
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ DEPOSITS = "deposits"
9
+ BILLING = "billing"
10
+ WITHDRAWALS = "withdrawals"
11
+ PAY_OUT_FUNDING = "payOutFunding"
12
+ REFUNDS = "refunds"
13
+ RETURNS = "returns"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping the created payment methods.
6
+ class PaymentMethodsCreatedEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Internal::Types::Array[Payabli::Types::PaymentMethodResult] }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Expected Pay Out profile for the business.
6
+ class PayoutMetrics < Internal::Types::Model
7
+ field :monthly_payables_volume, -> { Integer }, optional: true, nullable: false, api_name: "monthlyPayablesVolume"
8
+
9
+ field :average_payables_size, -> { Integer }, optional: true, nullable: false, api_name: "averagePayablesSize"
10
+
11
+ field :largest_payables_size, -> { Integer }, optional: true, nullable: false, api_name: "largestPayablesSize"
12
+
13
+ field :number_of_transactions, -> { Integer }, optional: true, nullable: false, api_name: "numberOfTransactions"
14
+ end
15
+ end
16
+ end
@@ -34,6 +34,8 @@ module Payabli
34
34
 
35
35
  field :location_code, -> { String }, optional: false, nullable: true, api_name: "locationCode"
36
36
 
37
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "issue1099"
38
+
37
39
  field :contacts, -> { Internal::Types::Array[Payabli::Types::PayoutSubscriptionVendorContact] }, optional: false, nullable: true
38
40
 
39
41
  field :billing_data, -> { Payabli::Types::BillingDataResponse }, optional: false, nullable: true, api_name: "billingData"
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping a created paypoint.
6
+ class PaypointCreatedEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PaypointCreatedResponse }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The reference and initial status of a newly created paypoint.
6
+ class PaypointCreatedResponse < Internal::Types::Model
7
+ field :paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "paypointReference"
8
+
9
+ field :business_reference, -> { String }, optional: true, nullable: false, api_name: "businessReference"
10
+
11
+ field :doing_business_as, -> { String }, optional: true, nullable: false, api_name: "doingBusinessAs"
12
+
13
+ field :paypoint_status, -> { String }, optional: false, nullable: false, api_name: "paypointStatus"
14
+
15
+ field :timezone, -> { String }, optional: true, nullable: false
16
+
17
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
18
+
19
+ field :links, -> { Payabli::Types::PaypointLinks }, optional: false, nullable: false, api_name: "_links"
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping a paypoint detail.
6
+ class PaypointDetailEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PaypointDetailResponse }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The full detail of a paypoint.
6
+ class PaypointDetailResponse < Internal::Types::Model
7
+ field :paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "paypointReference"
8
+
9
+ field :business_reference, -> { String }, optional: true, nullable: false, api_name: "businessReference"
10
+
11
+ field :parent_paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "parentPaypointReference"
12
+
13
+ field :paypoint_type, -> { String }, optional: true, nullable: false, api_name: "paypointType"
14
+
15
+ field :paypoint_status, -> { String }, optional: false, nullable: false, api_name: "paypointStatus"
16
+
17
+ field :doing_business_as, -> { String }, optional: true, nullable: false, api_name: "doingBusinessAs"
18
+
19
+ field :description, -> { String }, optional: true, nullable: false
20
+
21
+ field :website, -> { String }, optional: true, nullable: false
22
+
23
+ field :timezone, -> { String }, optional: true, nullable: false
24
+
25
+ field :customer_service_phone, -> { String }, optional: true, nullable: false, api_name: "customerServicePhone"
26
+
27
+ field :customer_service_email, -> { String }, optional: true, nullable: false, api_name: "customerServiceEmail"
28
+
29
+ field :external_id, -> { String }, optional: true, nullable: false, api_name: "externalId"
30
+
31
+ field :entry_name, -> { String }, optional: false, nullable: false, api_name: "entryName"
32
+
33
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
34
+
35
+ field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
36
+
37
+ field :links, -> { Payabli::Types::PaypointLinks }, optional: false, nullable: false, api_name: "_links"
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Hypermedia links for a paypoint resource.
6
+ class PaypointLinks < Internal::Types::Model
7
+ field :self_, -> { String }, optional: true, nullable: false, api_name: "self"
8
+
9
+ field :business, -> { String }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A paypoint as it appears in a list response.
6
+ class PaypointSummaryResponse < Internal::Types::Model
7
+ field :paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "paypointReference"
8
+
9
+ field :business_reference, -> { String }, optional: true, nullable: false, api_name: "businessReference"
10
+
11
+ field :parent_paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "parentPaypointReference"
12
+
13
+ field :paypoint_type, -> { String }, optional: true, nullable: false, api_name: "paypointType"
14
+
15
+ field :paypoint_status, -> { String }, optional: false, nullable: false, api_name: "paypointStatus"
16
+
17
+ field :doing_business_as, -> { String }, optional: true, nullable: false, api_name: "doingBusinessAs"
18
+
19
+ field :description, -> { String }, optional: true, nullable: false
20
+
21
+ field :website, -> { String }, optional: true, nullable: false
22
+
23
+ field :timezone, -> { String }, optional: true, nullable: false
24
+
25
+ field :customer_service_phone, -> { String }, optional: true, nullable: false, api_name: "customerServicePhone"
26
+
27
+ field :customer_service_email, -> { String }, optional: true, nullable: false, api_name: "customerServiceEmail"
28
+
29
+ field :entry_name, -> { String }, optional: false, nullable: false, api_name: "entryName"
30
+
31
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
32
+
33
+ field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
34
+
35
+ field :links, -> { Payabli::Types::PaypointLinks }, optional: false, nullable: false, api_name: "_links"
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping an updated paypoint.
6
+ class PaypointUpdatedEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PaypointUpdatedResponse }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The reference and updated timestamp after a paypoint update.
6
+ class PaypointUpdatedResponse < Internal::Types::Model
7
+ field :paypoint_reference, -> { String }, optional: false, nullable: false, api_name: "paypointReference"
8
+
9
+ field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
10
+
11
+ field :links, -> { Payabli::Types::PaypointLinks }, optional: false, nullable: false, api_name: "_links"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Fields you can set when you create a paypoint.
6
+ class PaypointWritableFields < Internal::Types::Model
7
+ field :parent_paypoint_reference, -> { String }, optional: true, nullable: false, api_name: "parentPaypointReference"
8
+
9
+ field :paypoint_type, -> { String }, optional: true, nullable: false, api_name: "paypointType"
10
+
11
+ field :doing_business_as, -> { String }, optional: false, nullable: false, api_name: "doingBusinessAs"
12
+
13
+ field :description, -> { String }, optional: true, nullable: false
14
+
15
+ field :website, -> { String }, optional: true, nullable: false
16
+
17
+ field :customer_service_phone, -> { String }, optional: true, nullable: false, api_name: "customerServicePhone"
18
+
19
+ field :customer_service_email, -> { String }, optional: true, nullable: false, api_name: "customerServiceEmail"
20
+
21
+ field :timezone, -> { String }, optional: true, nullable: false
22
+
23
+ field :external_id, -> { String }, optional: true, nullable: false, api_name: "externalId"
24
+
25
+ field :custom_data, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false, api_name: "customData"
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping people search results.
6
+ class PeopleSearchEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PeopleSearchResultsResponse }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Search criteria for identity matching. Provide at least one of `firstName` or `lastName`.
6
+ class PeopleSearchRequest < Internal::Types::Model
7
+ extend Payabli::Internal::Types::Union
8
+
9
+ member -> { Object }
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A single identity match returned by a search.
6
+ class PeopleSearchResultResponse < Internal::Types::Model
7
+ field :person_reference, -> { String }, optional: true, nullable: false, api_name: "personReference"
8
+
9
+ field :first_name, -> { String }, optional: true, nullable: false, api_name: "firstName"
10
+
11
+ field :last_name, -> { String }, optional: true, nullable: false, api_name: "lastName"
12
+
13
+ field :date_of_birth, -> { String }, optional: true, nullable: false, api_name: "dateOfBirth"
14
+
15
+ field :primary_email, -> { String }, optional: true, nullable: false, api_name: "primaryEmail"
16
+
17
+ field :primary_phone, -> { String }, optional: true, nullable: false, api_name: "primaryPhone"
18
+
19
+ field :risk_decision, -> { String }, optional: true, nullable: false, api_name: "riskDecision"
20
+
21
+ field :match_score, -> { Integer }, optional: true, nullable: false, api_name: "matchScore"
22
+
23
+ field :is_top_match, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isTopMatch"
24
+
25
+ field :is_from_vendor, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isFromVendor"
26
+
27
+ field :phones, -> { Internal::Types::Array[String] }, optional: true, nullable: false
28
+
29
+ field :emails, -> { Internal::Types::Array[String] }, optional: true, nullable: false
30
+
31
+ field :address_count, -> { Integer }, optional: true, nullable: false, api_name: "addressCount"
32
+
33
+ field :phone_count, -> { Integer }, optional: true, nullable: false, api_name: "phoneCount"
34
+
35
+ field :email_count, -> { Integer }, optional: true, nullable: false, api_name: "emailCount"
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The results of a people search.
6
+ class PeopleSearchResultsResponse < Internal::Types::Model
7
+ field :results, -> { Internal::Types::Array[Payabli::Types::PeopleSearchResultResponse] }, optional: false, nullable: true
8
+
9
+ field :total, -> { Integer }, optional: false, nullable: false
10
+
11
+ field :is_enriched_by_vendor, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isEnrichedByVendor"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # An address included in a person request.
6
+ class PersonAddressRequest < Internal::Types::Model
7
+ field :address_line_1, -> { String }, optional: true, nullable: false, api_name: "addressLine1"
8
+
9
+ field :address_line_2, -> { String }, optional: true, nullable: false, api_name: "addressLine2"
10
+
11
+ field :city_locality, -> { String }, optional: true, nullable: false, api_name: "cityLocality"
12
+
13
+ field :state_province, -> { String }, optional: true, nullable: false, api_name: "stateProvince"
14
+
15
+ field :postal_code, -> { String }, optional: true, nullable: false, api_name: "postalCode"
16
+
17
+ field :country, -> { String }, optional: true, nullable: false
18
+
19
+ field :type, -> { Payabli::Types::PersonAddressType }, optional: true, nullable: false
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # An address in a person response.
6
+ class PersonAddressResponse < Internal::Types::Model
7
+ field :address_line_1, -> { String }, optional: true, nullable: false, api_name: "addressLine1"
8
+
9
+ field :address_line_2, -> { String }, optional: true, nullable: false, api_name: "addressLine2"
10
+
11
+ field :city_locality, -> { String }, optional: true, nullable: false, api_name: "cityLocality"
12
+
13
+ field :state_province, -> { String }, optional: true, nullable: false, api_name: "stateProvince"
14
+
15
+ field :postal_code, -> { String }, optional: true, nullable: false, api_name: "postalCode"
16
+
17
+ field :country, -> { String }, optional: true, nullable: false
18
+
19
+ field :type, -> { String }, optional: true, nullable: false
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module PersonAddressType
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ LEGAL = "legal"
9
+ BILLING = "billing"
10
+ SHIPPING = "shipping"
11
+ REMITTANCE = "remittance"
12
+ MAILING = "mailing"
13
+ PHYSICAL = "physical"
14
+ RESIDENTIAL = "residential"
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping a person detail.
6
+ class PersonDetailEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PersonDetailResponse }, optional: false, nullable: true
14
+
15
+ field :warnings, -> { Internal::Types::Array[Payabli::Types::BoardingWarning] }, optional: false, nullable: true
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The full detail of a person. Sensitive fields are masked unless read from the unmasked endpoint.
6
+ class PersonDetailResponse < Internal::Types::Model
7
+ field :person_reference, -> { String }, optional: false, nullable: false, api_name: "personReference"
8
+
9
+ field :external_id, -> { String }, optional: true, nullable: false, api_name: "externalId"
10
+
11
+ field :first_name, -> { String }, optional: false, nullable: true, api_name: "firstName"
12
+
13
+ field :middle_name, -> { String }, optional: true, nullable: false, api_name: "middleName"
14
+
15
+ field :last_name, -> { String }, optional: false, nullable: true, api_name: "lastName"
16
+
17
+ field :primary_email, -> { String }, optional: true, nullable: false, api_name: "primaryEmail"
18
+
19
+ field :secondary_email, -> { String }, optional: true, nullable: false, api_name: "secondaryEmail"
20
+
21
+ field :primary_phone_number, -> { String }, optional: true, nullable: false, api_name: "primaryPhoneNumber"
22
+
23
+ field :secondary_phone_number, -> { String }, optional: true, nullable: false, api_name: "secondaryPhoneNumber"
24
+
25
+ field :date_of_birth, -> { String }, optional: true, nullable: false, api_name: "dateOfBirth"
26
+
27
+ field :ssn, -> { String }, optional: true, nullable: false
28
+
29
+ field :nationality, -> { String }, optional: true, nullable: false
30
+
31
+ field :national_id_number, -> { String }, optional: true, nullable: false, api_name: "nationalIdNumber"
32
+
33
+ field :national_id_issuer, -> { String }, optional: true, nullable: false, api_name: "nationalIdIssuer"
34
+
35
+ field :drivers_license_number, -> { String }, optional: true, nullable: false, api_name: "driversLicenseNumber"
36
+
37
+ field :drivers_license_state, -> { String }, optional: true, nullable: false, api_name: "driversLicenseState"
38
+
39
+ field :custom_data, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false, api_name: "customData"
40
+
41
+ field :verification_status, -> { String }, optional: false, nullable: false, api_name: "verificationStatus"
42
+
43
+ field :addresses, -> { Internal::Types::Array[Payabli::Types::PersonAddressResponse] }, optional: true, nullable: false
44
+
45
+ field :identification_documents, -> { Internal::Types::Array[Payabli::Types::IdentificationDocumentResponse] }, optional: true, nullable: false, api_name: "identificationDocuments"
46
+
47
+ field :business_relationship, -> { Payabli::Types::BusinessRelationshipResponse }, optional: true, nullable: false, api_name: "businessRelationship"
48
+
49
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
50
+
51
+ field :last_updated, -> { String }, optional: false, nullable: false, api_name: "lastUpdated"
52
+
53
+ field :links, -> { Payabli::Types::PersonLinks }, optional: false, nullable: false, api_name: "_links"
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Hypermedia links for a person resource.
6
+ class PersonLinks < Internal::Types::Model
7
+ field :self_, -> { String }, optional: true, nullable: false, api_name: "self"
8
+
9
+ field :business, -> { String }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A person as it appears in a list response.
6
+ class PersonSummaryResponse < Internal::Types::Model
7
+ field :links, -> { Payabli::Types::PersonLinks }, optional: false, nullable: false, api_name: "_links"
8
+
9
+ field :person_reference, -> { String }, optional: false, nullable: false, api_name: "personReference"
10
+
11
+ field :first_name, -> { String }, optional: false, nullable: true, api_name: "firstName"
12
+
13
+ field :last_name, -> { String }, optional: false, nullable: true, api_name: "lastName"
14
+
15
+ field :email, -> { String }, optional: true, nullable: false
16
+
17
+ field :verification_status, -> { String }, optional: false, nullable: false, api_name: "verificationStatus"
18
+
19
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
20
+
21
+ field :last_updated, -> { String }, optional: false, nullable: false, api_name: "lastUpdated"
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module PersonType
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ OWNER = "Owner"
9
+ DIRECTOR = "Director"
10
+ CONTACT = "Contact"
11
+ SIGNER = "Signer"
12
+ AUTHORIZED_USER = "AuthorizedUser"
13
+ EMPLOYEE = "Employee"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping an updated person.
6
+ class PersonUpdatedEnvelope < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :message, -> { String }, optional: false, nullable: true
10
+
11
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
12
+
13
+ field :data, -> { Payabli::Types::PersonUpdatedResponse }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The reference and updated timestamp after a person update.
6
+ class PersonUpdatedResponse < Internal::Types::Model
7
+ field :person_reference, -> { String }, optional: false, nullable: false, api_name: "personReference"
8
+
9
+ field :last_updated, -> { String }, optional: false, nullable: false, api_name: "lastUpdated"
10
+
11
+ field :links, -> { Payabli::Types::PersonLinks }, optional: false, nullable: false, api_name: "_links"
12
+ end
13
+ end
14
+ end