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,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Expected Pay In processing profile for the business.
6
+ class ProcessingMetrics < Internal::Types::Model
7
+ field :monthly_receivables_volume, -> { Integer }, optional: true, nullable: false, api_name: "monthlyReceivablesVolume"
8
+
9
+ field :average_receivable_size, -> { Integer }, optional: true, nullable: false, api_name: "averageReceivableSize"
10
+
11
+ field :largest_receivable_size, -> { Integer }, optional: true, nullable: false, api_name: "largestReceivableSize"
12
+
13
+ field :inbound_present_percent, -> { Integer }, optional: true, nullable: false, api_name: "inboundPresentPercent"
14
+
15
+ field :inbound_online_percent, -> { Integer }, optional: true, nullable: false, api_name: "inboundOnlinePercent"
16
+
17
+ field :inbound_moto_percent, -> { Integer }, optional: true, nullable: false, api_name: "inboundMotoPercent"
18
+
19
+ field :refund_policy, -> { String }, optional: true, nullable: false, api_name: "refundPolicy"
20
+
21
+ field :advanced_delivery, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "advancedDelivery"
22
+
23
+ field :percent_advanced_delivery, -> { Integer }, optional: true, nullable: false, api_name: "percentAdvancedDelivery"
24
+
25
+ field :advanced_delivery_days, -> { Integer }, optional: true, nullable: false, api_name: "advancedDeliveryDays"
26
+
27
+ field :number_of_transactions, -> { Integer }, optional: true, nullable: false, api_name: "numberOfTransactions"
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Details of the registered device used for the transaction. `null` when the
6
+ # transaction has no `DeviceId`, or when no matching device is registered to
7
+ # the paypoint.
8
+ class QueryDeviceData < Internal::Types::Model
9
+ field :device_type, -> { String }, optional: false, nullable: true, api_name: "deviceType"
10
+
11
+ field :device_os, -> { String }, optional: false, nullable: true, api_name: "deviceOs"
12
+
13
+ field :friendly_name, -> { String }, optional: false, nullable: true, api_name: "friendlyName"
14
+
15
+ field :serial_number, -> { String }, optional: false, nullable: true, api_name: "serialNumber"
16
+
17
+ field :make, -> { String }, optional: false, nullable: true
18
+
19
+ field :model, -> { String }, optional: false, nullable: true
20
+
21
+ field :mac_address, -> { String }, optional: false, nullable: true, api_name: "macAddress"
22
+
23
+ field :device_status, -> { String }, optional: false, nullable: true, api_name: "deviceStatus"
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A sales or service representative assigned to the application.
6
+ class RepresentativeInput < Internal::Types::Model
7
+ field :user_id, -> { String }, optional: true, nullable: false, api_name: "userId"
8
+
9
+ field :rep_code, -> { Integer }, optional: true, nullable: false, api_name: "repCode"
10
+
11
+ field :first_name, -> { String }, optional: true, nullable: false, api_name: "firstName"
12
+
13
+ field :last_name, -> { String }, optional: true, nullable: false, api_name: "lastName"
14
+
15
+ field :location, -> { String }, optional: true, nullable: false
16
+
17
+ field :team, -> { String }, optional: true, nullable: false
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A sales or service representative assigned to the application.
6
+ class RepresentativeResponse < Internal::Types::Model
7
+ field :user_id, -> { String }, optional: true, nullable: false, api_name: "userId"
8
+
9
+ field :rep_code, -> { Integer }, optional: true, nullable: false, api_name: "repCode"
10
+
11
+ field :first_name, -> { String }, optional: true, nullable: false, api_name: "firstName"
12
+
13
+ field :last_name, -> { String }, optional: true, nullable: false, api_name: "lastName"
14
+
15
+ field :location, -> { String }, optional: true, nullable: false
16
+
17
+ field :team, -> { String }, optional: true, nullable: false
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The services the application requests, grouped by direction. Values are
6
+ # case-insensitive on input and returned in the casing shown.
7
+ class RequestedServices < Internal::Types::Model
8
+ field :money_in, -> { Internal::Types::Array[Payabli::Types::MoneyInService] }, optional: true, nullable: false, api_name: "moneyIn"
9
+
10
+ field :money_out, -> { Internal::Types::Array[Payabli::Types::MoneyOutService] }, optional: true, nullable: false, api_name: "moneyOut"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module SignatureType
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ TYPE = "type"
9
+ DRAW = "draw"
10
+ CHECKBOX = "checkbox"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A single transition in an application's status history.
6
+ class StatusHistoryEntry < Internal::Types::Model
7
+ field :from_status, -> { String }, optional: false, nullable: false, api_name: "fromStatus"
8
+
9
+ field :to_status, -> { String }, optional: false, nullable: false, api_name: "toStatus"
10
+
11
+ field :trigger, -> { String }, optional: false, nullable: false
12
+
13
+ field :actor, -> { String }, optional: false, nullable: true
14
+
15
+ field :reason, -> { String }, optional: false, nullable: true
16
+
17
+ field :metadata, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: true
18
+
19
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
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 an application's status history.
6
+ class StatusHistoryEnvelope < 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::StatusHistoryResult }, 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
+ # An application's status history.
6
+ class StatusHistoryResult < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+
9
+ field :history, -> { Internal::Types::Array[Payabli::Types::StatusHistoryEntry] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The error body when an application can't be submitted.
6
+ class SubmitApplicationError < Internal::Types::Model
7
+ field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :error, -> { String }, optional: false, nullable: false
10
+
11
+ field :message, -> { String }, optional: false, nullable: false
12
+
13
+ field :trace_id, -> { String }, optional: false, nullable: true, api_name: "traceId"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The signature details for the application. The signer is the person flagged
6
+ # with `isSigner` on the business, and Payabli records the signer's identity
7
+ # from their person record and business link. Keep the signer's details
8
+ # current with the people endpoints before you submit, because you can't
9
+ # correct them here. Provide a signature with `signature` and
10
+ # `signatureType`, or, if the signer signed in your own e-sign tool, send
11
+ # `signedDocumentReference` instead. Signer identity fields such as `name`,
12
+ # `email`, `ssn`, and `address` aren't part of this object, and Payabli
13
+ # ignores them if you send them.
14
+ class SubmitSigner < Internal::Types::Model
15
+ field :person_reference, -> { String }, optional: true, nullable: false, api_name: "personReference"
16
+
17
+ field :signature, -> { String }, optional: true, nullable: false
18
+
19
+ field :signature_type, -> { Payabli::Types::SignatureType }, optional: true, nullable: false, api_name: "signatureType"
20
+
21
+ field :signed_document_reference, -> { String }, optional: true, nullable: false, api_name: "signedDocumentReference"
22
+
23
+ field :acceptance, -> { Internal::Types::Boolean }, optional: true, nullable: false
24
+
25
+ field :pci_attestation, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "pciAttestation"
26
+
27
+ field :reported_signer_ip, -> { String }, optional: true, nullable: false, api_name: "reportedSignerIp"
28
+
29
+ field :additional_data, -> { Internal::Types::Hash[String, String] }, optional: true, nullable: false, api_name: "additionalData"
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A boarding template, including its current content version.
6
+ class Template < Internal::Types::Model
7
+ field :uuid, -> { String }, optional: false, nullable: false
8
+
9
+ field :org_id, -> { Integer }, optional: false, nullable: false, api_name: "orgId"
10
+
11
+ field :org_name, -> { String }, optional: false, nullable: true, api_name: "orgName"
12
+
13
+ field :name, -> { String }, optional: false, nullable: false
14
+
15
+ field :description, -> { String }, optional: false, nullable: true
16
+
17
+ field :slug, -> { String }, optional: false, nullable: true
18
+
19
+ field :status, -> { Payabli::Types::TemplateStatus }, optional: false, nullable: false
20
+
21
+ field :current_version_uuid, -> { String }, optional: false, nullable: false, api_name: "currentVersionUuid"
22
+
23
+ field :current_version, -> { Payabli::Types::TemplateVersion }, optional: false, nullable: false, api_name: "currentVersion"
24
+
25
+ field :is_inherited, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isInherited"
26
+
27
+ field :read_only, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "readOnly"
28
+
29
+ field :created_by, -> { String }, optional: false, nullable: false, api_name: "createdBy"
30
+
31
+ field :updated_by, -> { String }, optional: false, nullable: false, api_name: "updatedBy"
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
+ end
37
+ end
38
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module TemplateStatus
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ ACTIVE = "active"
9
+ ARCHIVED = "archived"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # An immutable snapshot of a template's content. Each save in the Payabli
6
+ # Portal appends a new version; the template's `currentVersionUuid` points at
7
+ # the active one. The configuration objects (services, documents, devices, and
8
+ # so on) are authored in the Portal.
9
+ class TemplateVersion < Internal::Types::Model
10
+ field :uuid, -> { String }, optional: false, nullable: false
11
+
12
+ field :version, -> { Integer }, optional: false, nullable: false
13
+
14
+ field :services, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: true
15
+
16
+ field :field_configurations, -> { Internal::Types::Array[Object] }, optional: false, nullable: true, api_name: "fieldConfigurations"
17
+
18
+ field :conditional_rules, -> { Internal::Types::Array[Object] }, optional: false, nullable: true, api_name: "conditionalRules"
19
+
20
+ field :documents, -> { Internal::Types::Array[Object] }, optional: false, nullable: true
21
+
22
+ field :devices, -> { Internal::Types::Array[Object] }, optional: false, nullable: true
23
+
24
+ field :hidden_sections, -> { Internal::Types::Array[Object] }, optional: false, nullable: true, api_name: "hiddenSections"
25
+
26
+ field :allowed_mccs, -> { Internal::Types::Array[Integer] }, optional: false, nullable: true, api_name: "allowedMccs"
27
+
28
+ field :underwriting, -> { Payabli::Types::UnderwritingMode }, optional: false, nullable: false
29
+
30
+ field :mpa_content, -> { String }, optional: false, nullable: true, api_name: "mpaContent"
31
+
32
+ field :payin_pricing_id, -> { Integer }, optional: false, nullable: true, api_name: "payinPricingId"
33
+
34
+ field :payout_pricing_id, -> { Integer }, optional: false, nullable: true, api_name: "payoutPricingId"
35
+
36
+ field :allow_guided_tour, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowGuidedTour"
37
+
38
+ field :allow_business_prefill, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowBusinessPrefill"
39
+
40
+ field :allow_save_for_later, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowSaveForLater"
41
+
42
+ field :allow_multiple_banks, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowMultipleBanks"
43
+
44
+ field :allow_service_selection, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowServiceSelection"
45
+
46
+ field :allow_device_selection, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowDeviceSelection"
47
+
48
+ field :allow_amigo_chat, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowAmigoChat"
49
+
50
+ field :allow_user_creation, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowUserCreation"
51
+
52
+ field :allow_people_prefill, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowPeoplePrefill"
53
+
54
+ field :vertical_progress, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "verticalProgress"
55
+
56
+ field :use_floating_inputs, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "useFloatingInputs"
57
+
58
+ field :center_content, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "centerContent"
59
+
60
+ field :allow_real_time_bank_verification, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowRealTimeBankVerification"
61
+
62
+ field :allow_checkbox_signing, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowCheckboxSigning"
63
+
64
+ field :allow_typed_signature, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowTypedSignature"
65
+
66
+ field :allow_written_signature, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowWrittenSignature"
67
+
68
+ field :allow_multi_owner_esign, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowMultiOwnerEsign"
69
+
70
+ field :allow_confirmation_and_attestation, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowConfirmationAndAttestation"
71
+
72
+ field :allow_pci_attestation, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "allowPCIAttestation"
73
+
74
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
75
+
76
+ field :created_by, -> { String }, optional: false, nullable: false, api_name: "createdBy"
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Pagination metadata for a template list response.
6
+ class TemplatesSummary < Internal::Types::Model
7
+ field :total_pages, -> { Integer }, optional: false, nullable: false, api_name: "totalPages"
8
+
9
+ field :total_records, -> { Integer }, optional: false, nullable: false, api_name: "totalRecords"
10
+
11
+ field :page_size, -> { Integer }, optional: false, nullable: false, api_name: "pageSize"
12
+ end
13
+ end
14
+ end
@@ -19,6 +19,12 @@ module Payabli
19
19
 
20
20
  field :device_id, -> { String }, optional: true, nullable: false, api_name: "DeviceId"
21
21
 
22
+ field :device_data, -> { Payabli::Types::QueryDeviceData }, optional: false, nullable: true, api_name: "DeviceData"
23
+
24
+ field :device_entry_mode, -> { String }, optional: false, nullable: true, api_name: "DeviceEntryMode"
25
+
26
+ field :emv_auth_data, -> { Payabli::Types::EmvAuthData }, optional: false, nullable: true, api_name: "EmvAuthData"
27
+
22
28
  field :entrypage_id, -> { Integer }, optional: true, nullable: false, api_name: "EntrypageId"
23
29
 
24
30
  field :external_processor_information, -> { String }, optional: true, nullable: false, api_name: "ExternalProcessorInformation"
@@ -19,6 +19,12 @@ module Payabli
19
19
 
20
20
  field :device_id, -> { String }, optional: true, nullable: false, api_name: "DeviceId"
21
21
 
22
+ field :device_data, -> { Payabli::Types::QueryDeviceData }, optional: false, nullable: true, api_name: "DeviceData"
23
+
24
+ field :device_entry_mode, -> { String }, optional: false, nullable: true, api_name: "DeviceEntryMode"
25
+
26
+ field :emv_auth_data, -> { Payabli::Types::EmvAuthData }, optional: false, nullable: true, api_name: "EmvAuthData"
27
+
22
28
  field :entrypage_id, -> { Integer }, optional: true, nullable: false, api_name: "EntrypageId"
23
29
 
24
30
  field :external_processor_information, -> { String }, optional: true, nullable: false, api_name: "ExternalProcessorInformation"
@@ -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::ContactsResponse] }, optional: false, nullable: true, api_name: "Contacts"
38
40
 
39
41
  field :billing_data, -> { Payabli::Types::TransferOutDetailVendorBillingData }, optional: false, nullable: true, api_name: "BillingData"
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The result of a lifecycle action, with the application's new status.
6
+ class TransitionResult < Internal::Types::Model
7
+ field :requests_reference, -> { String }, optional: false, nullable: false, api_name: "requestsReference"
8
+
9
+ field :application_status, -> { String }, optional: false, nullable: false, api_name: "applicationStatus"
10
+
11
+ field :allowed_actions, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "allowedActions"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping a lifecycle-action result.
6
+ class TransitionResultEnvelope < 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::TransitionResult }, optional: false, nullable: true
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ module UnderwritingMode
6
+ extend Payabli::Internal::Types::Enum
7
+
8
+ AUTOMATIC = "automatic"
9
+ MANUAL = "manual"
10
+ BYPASS = "bypass"
11
+ end
12
+ end
13
+ end
@@ -34,6 +34,8 @@ module Payabli
34
34
 
35
35
  field :location_code, -> { String }, optional: true, nullable: false, api_name: "LocationCode"
36
36
 
37
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "Issue1099"
38
+
37
39
  field :contacts, -> { Internal::Types::Array[Payabli::Types::VCardGetResponseContact] }, optional: true, nullable: false, api_name: "Contacts"
38
40
 
39
41
  field :billing_data, -> { Payabli::Types::VCardGetResponseAssociatedVendorBillingData }, optional: true, nullable: false, api_name: "BillingData"
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # A field that's missing or invalid for the requested services.
6
+ class ValidationMissingField < Internal::Types::Model
7
+ field :field, -> { String }, optional: false, nullable: false
8
+
9
+ field :label, -> { String }, optional: false, nullable: false
10
+
11
+ field :reason, -> { String }, optional: false, nullable: false
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Whether the application's stored records meet the requirements for the services it requests.
6
+ class ValidationResult < Internal::Types::Model
7
+ field :valid, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :services_evaluated, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "servicesEvaluated"
10
+
11
+ field :sections, -> { Payabli::Types::ValidationSections }, optional: false, nullable: false
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # Standard boarding response envelope wrapping a validation result.
6
+ class ValidationResultEnvelope < 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::ValidationResult }, 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
+ # The validation result for one section of the application.
6
+ class ValidationSection < Internal::Types::Model
7
+ field :complete, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
9
+ field :missing_fields, -> { Internal::Types::Array[Payabli::Types::ValidationMissingField] }, optional: false, nullable: false, api_name: "missingFields"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module Types
5
+ # The validation result for each section of the application.
6
+ class ValidationSections < Internal::Types::Model
7
+ field :business, -> { Payabli::Types::ValidationSection }, optional: false, nullable: false
8
+
9
+ field :sales_and_payments, -> { Payabli::Types::ValidationSection }, optional: false, nullable: false, api_name: "salesAndPayments"
10
+
11
+ field :banking, -> { Payabli::Types::ValidationSection }, optional: false, nullable: false
12
+
13
+ field :people, -> { Payabli::Types::ValidationSection }, optional: false, nullable: false
14
+ end
15
+ end
16
+ end
@@ -65,6 +65,8 @@ module Payabli
65
65
 
66
66
  field :vendor_status, -> { Integer }, optional: true, nullable: false, api_name: "vendorStatus"
67
67
 
68
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "issue1099"
69
+
68
70
  field :zip, -> { String }, optional: true, nullable: false
69
71
 
70
72
  field :default_method_id, -> { String }, optional: true, nullable: false, api_name: "defaultMethodId"
@@ -33,6 +33,8 @@ module Payabli
33
33
 
34
34
  field :location_code, -> { String }, optional: false, nullable: false, api_name: "LocationCode"
35
35
 
36
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "Issue1099"
37
+
36
38
  field :contacts, -> { Internal::Types::Array[Payabli::Types::ContactsResponse] }, optional: false, nullable: false, api_name: "Contacts"
37
39
 
38
40
  field :billing_data, -> { Payabli::Types::VendorResponseBillingData }, optional: false, nullable: false, api_name: "BillingData"
@@ -27,6 +27,8 @@ module Payabli
27
27
 
28
28
  field :location_code, -> { String }, optional: true, nullable: false, api_name: "LocationCode"
29
29
 
30
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "Issue1099"
31
+
30
32
  field :mcc, -> { String }, optional: true, nullable: false, api_name: "Mcc"
31
33
 
32
34
  field :name_1, -> { String }, optional: false, nullable: false, api_name: "Name1"
@@ -33,6 +33,8 @@ module Payabli
33
33
 
34
34
  field :location_code, -> { String }, optional: false, nullable: true, api_name: "LocationCode"
35
35
 
36
+ field :issue_1099, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "Issue1099"
37
+
36
38
  field :contacts, -> { Internal::Types::Array[Payabli::Types::ContactsResponse] }, optional: false, nullable: true, api_name: "Contacts"
37
39
 
38
40
  field :billing_data, -> { Payabli::Types::BillingDataResponse }, optional: false, nullable: true, api_name: "BillingData"
@@ -65,6 +65,7 @@ module Payabli
65
65
  # remit_zip: "31113",
66
66
  # state: "FL",
67
67
  # vendor_status: 1,
68
+ # issue_1099: true,
68
69
  # zip: "33139"
69
70
  # )
70
71
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payabli
4
- VERSION = "3.0.18"
4
+ VERSION = "3.0.20"
5
5
  end