payabli 2.2.15 → 2.2.17

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 (97) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +3 -3
  3. data/.rubocop.yml +10 -1
  4. data/LICENSE.md +1 -1
  5. data/README.md +11 -11
  6. data/lib/payabli/bill/types/bill_response_data.rb +3 -3
  7. data/lib/payabli/charge_backs/types/chargeback_query_records.rb +1 -1
  8. data/lib/payabli/client.rb +1 -1
  9. data/lib/payabli/invoice/types/get_invoice_record.rb +10 -10
  10. data/lib/payabli/invoice/types/query_invoice_response_records_item.rb +10 -10
  11. data/lib/payabli/money_in/client.rb +2 -1
  12. data/lib/payabli/money_in/types/transaction_detail_record.rb +4 -4
  13. data/lib/payabli/money_out_types/types/method_element_out.rb +19 -0
  14. data/lib/payabli/money_out_types/types/methods_list_out.rb +14 -0
  15. data/lib/payabli/money_out_types/types/payment_link_status.rb +16 -0
  16. data/lib/payabli/payment_link/client.rb +79 -5
  17. data/lib/payabli/payment_link/types/patch_out_payment_link_request.rb +14 -0
  18. data/lib/payabli/payment_link/types/pay_link_data_bill.rb +1 -1
  19. data/lib/payabli/payment_link/types/pay_link_data_out.rb +1 -1
  20. data/lib/payabli/payment_link/types/payment_page_request_body_out.rb +22 -0
  21. data/lib/payabli/query_types/types/batch_detail_response_record.rb +3 -3
  22. data/lib/payabli/query_types/types/limit_record.rb +1 -1
  23. data/lib/payabli/token_storage/client.rb +2 -2
  24. data/lib/payabli/token_storage/types/add_method_request.rb +2 -2
  25. data/lib/payabli/token_storage/types/create_anonymous.rb +1 -1
  26. data/lib/payabli/token_storage/types/temporary.rb +1 -1
  27. data/lib/payabli/types/accept_oauth.rb +1 -1
  28. data/lib/payabli/types/accept_register.rb +1 -1
  29. data/lib/payabli/types/ach_validation.rb +1 -1
  30. data/lib/payabli/types/annualrevenue.rb +1 -1
  31. data/lib/payabli/types/apple_pay_type.rb +1 -1
  32. data/lib/payabli/types/application_data.rb +1 -1
  33. data/lib/payabli/types/application_data_pay_in.rb +2 -2
  34. data/lib/payabli/types/application_details_record.rb +1 -1
  35. data/lib/payabli/types/application_query_record.rb +1 -1
  36. data/lib/payabli/types/attachments.rb +1 -1
  37. data/lib/payabli/types/avgmonthly.rb +1 -1
  38. data/lib/payabli/types/avgticketamt.rb +1 -1
  39. data/lib/payabli/types/bank_data.rb +1 -1
  40. data/lib/payabli/types/bill_approvals.rb +1 -1
  41. data/lib/payabli/types/bill_details_response.rb +2 -2
  42. data/lib/payabli/types/bill_events.rb +1 -1
  43. data/lib/payabli/types/bill_pay_out_data.rb +2 -2
  44. data/lib/payabli/types/bill_query_record_2_bill_approvals_item.rb +1 -1
  45. data/lib/payabli/types/billitems.rb +1 -1
  46. data/lib/payabli/types/contacts_field.rb +1 -1
  47. data/lib/payabli/types/device_id.rb +1 -1
  48. data/lib/payabli/types/discount.rb +1 -1
  49. data/lib/payabli/types/duty_amount.rb +1 -1
  50. data/lib/payabli/types/enrollment_status.rb +1 -1
  51. data/lib/payabli/types/expected_processing_date_time.rb +1 -1
  52. data/lib/payabli/types/force_customer_creation.rb +1 -1
  53. data/lib/payabli/types/freight_amount.rb +1 -1
  54. data/lib/payabli/types/has_vcard_transactions.rb +1 -1
  55. data/lib/payabli/types/highticketamt.rb +1 -1
  56. data/lib/payabli/types/is_root.rb +1 -1
  57. data/lib/payabli/types/is_same_day_ach.rb +1 -1
  58. data/lib/payabli/types/last_modified.rb +1 -1
  59. data/lib/payabli/types/mfa.rb +1 -1
  60. data/lib/payabli/types/netamountnullable.rb +1 -1
  61. data/lib/payabli/types/notification_query_record.rb +1 -1
  62. data/lib/payabli/types/notification_report_request.rb +1 -1
  63. data/lib/payabli/types/notification_standard_request.rb +1 -1
  64. data/lib/payabli/types/ownerid.rb +1 -1
  65. data/lib/payabli/types/ownership.rb +1 -1
  66. data/lib/payabli/types/payment_detail.rb +1 -0
  67. data/lib/payabli/types/payment_method_domain_api_response.rb +1 -1
  68. data/lib/payabli/types/pci_attestation.rb +1 -1
  69. data/lib/payabli/types/pending_fee_amount.rb +1 -1
  70. data/lib/payabli/types/query_response_notifications_records_item.rb +1 -1
  71. data/lib/payabli/types/read_only.rb +1 -1
  72. data/lib/payabli/types/risk_action_code.rb +1 -1
  73. data/lib/payabli/types/risk_flagged.rb +1 -1
  74. data/lib/payabli/types/risk_flagged_on.rb +1 -1
  75. data/lib/payabli/types/save_if_success.rb +1 -1
  76. data/lib/payabli/types/signer_acceptance.rb +1 -1
  77. data/lib/payabli/types/signer_data.rb +1 -1
  78. data/lib/payabli/types/signer_data_request.rb +1 -1
  79. data/lib/payabli/types/split_funding.rb +1 -1
  80. data/lib/payabli/types/subscription_query_records.rb +4 -4
  81. data/lib/payabli/types/tax.rb +1 -1
  82. data/lib/payabli/types/template_additional_data_section.rb +1 -1
  83. data/lib/payabli/types/template_code.rb +1 -1
  84. data/lib/payabli/types/ticketamt.rb +1 -1
  85. data/lib/payabli/types/transaction_query_records.rb +1 -1
  86. data/lib/payabli/types/transaction_query_records_customer.rb +1 -1
  87. data/lib/payabli/types/vendor_phone.rb +1 -1
  88. data/lib/payabli/types/visible.rb +1 -1
  89. data/lib/payabli/v_2_money_in_types/types/v_2_transaction_details.rb +4 -4
  90. data/lib/payabli/version.rb +1 -1
  91. data/lib/payabli.rb +6 -4
  92. data/reference.md +1055 -858
  93. data/wiremock/wiremock-mappings.json +1 -1
  94. metadata +6 -4
  95. data/lib/payabli/types/application_data_pay_in_bank_data.rb +0 -7
  96. data/lib/payabli/types/datenullable.rb +0 -23
  97. data/lib/payabli/types/datetime_nullable.rb +0 -23
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4e5570a4534220a2d2377264e01967db162cf12480b0bc7c1c3dc66d43291808
4
- data.tar.gz: 14d647dfa19da2a6f973bf98416544c60016a1ab3e593ae0135a80ab1a2ed768
3
+ metadata.gz: 6cb419ebbfe2565c5142a0453bd6683ab7e042677cb5255656bf7f0683345ccd
4
+ data.tar.gz: 9ba7ef36505e7c9efc0e248411a536c77296fb92ed07bd9d2af24cb93a09c9e4
5
5
  SHA512:
6
- metadata.gz: 14ecdae519c81169a049294d59bcd4f2c86255e6f32b3122517b86b2b16693b0905332a8f62eabc0d8558bc5c84006655fca2314c5eeb59fb4651e64a6525e3b
7
- data.tar.gz: b3bb126add655d34888c4ee569d528d1e29e36ccd85dd010f5b994581a2a3e39b7284d4edfc17253a26aa8d802d8287058bcd8c5fe037e94b7c5a9433ba67150
6
+ metadata.gz: 9e1fcd2655bd59d2a9771190b05a21299a63d0f3461506b946f4c7cdeb026e884108201288e03af0302a02333a06c749872b2cf308d989e7f425aa5b3c8f0731
7
+ data.tar.gz: 1acaf8d46b1552d9bddabff143eed41b7149db613a4a8e01a66c67d39de24051fabbbba48e8e7033decfcd8ccb5f198b5d8c914d08f3a8a42e92c9cdbcf04be9
data/.fern/metadata.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
- "cliVersion": "3.68.1",
2
+ "cliVersion": "3.79.2",
3
3
  "generatorName": "fernapi/fern-ruby-sdk",
4
- "generatorVersion": "1.0.0-rc83",
4
+ "generatorVersion": "1.0.0-rc86",
5
5
  "generatorConfig": {
6
6
  "enableWireTests": true
7
7
  },
8
- "sdkVersion": "2.2.15"
8
+ "sdkVersion": "2.2.17"
9
9
  }
data/.rubocop.yml CHANGED
@@ -45,7 +45,7 @@ Layout/LineLength:
45
45
  Enabled: false
46
46
 
47
47
  Naming/VariableNumber:
48
- EnforcedStyle: snake_case
48
+ EnforcedStyle: normalcase
49
49
 
50
50
  Style/Documentation:
51
51
  Enabled: false
@@ -58,3 +58,12 @@ Minitest/MultipleAssertions:
58
58
 
59
59
  Minitest/UselessAssertion:
60
60
  Enabled: false
61
+
62
+ # Dynamic snippets are code samples for documentation, not standalone Ruby files.
63
+ Style/FrozenStringLiteralComment:
64
+ Exclude:
65
+ - "dynamic-snippets/**/*"
66
+
67
+ Layout/FirstHashElementIndentation:
68
+ Exclude:
69
+ - "dynamic-snippets/**/*"
data/LICENSE.md CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2025 Payabli, Inc.
1
+ Copyright (c) 2026 Payabli, Inc.
2
2
 
3
3
  All Rights Reserved.
4
4
 
data/README.md CHANGED
@@ -59,28 +59,28 @@ Instantiate and use the client with the following:
59
59
  ```ruby
60
60
  require "payabli"
61
61
 
62
- client = Payabli::Client.new(api_key: '<value>');
62
+ client = Payabli::Client.new(api_key: "<value>")
63
63
 
64
64
  client.money_in.getpaid(
65
65
  customer_data: {
66
66
  customer_id: 4440
67
67
  },
68
- entry_point: 'f743aed24a',
69
- ipaddress: '255.255.255.255',
68
+ entry_point: "f743aed24a",
69
+ ipaddress: "255.255.255.255",
70
70
  payment_details: {
71
71
  service_fee: 0,
72
72
  total_amount: 100
73
73
  },
74
74
  payment_method: {
75
- cardcvv: '999',
76
- cardexp: '02/27',
77
- card_holder: 'John Cassian',
78
- cardnumber: '4111111111111111',
79
- cardzip: '12345',
80
- initiator: 'payor',
81
- method_: 'card'
75
+ cardcvv: "999",
76
+ cardexp: "02/27",
77
+ card_holder: "John Cassian",
78
+ cardnumber: "4111111111111111",
79
+ cardzip: "12345",
80
+ initiator: "payor",
81
+ method_: "card"
82
82
  }
83
- );
83
+ )
84
84
  ```
85
85
 
86
86
  ## Environments
@@ -9,8 +9,8 @@ module Payabli
9
9
  field :net_amount, -> { Integer }, optional: true, nullable: false, api_name: "NetAmount"
10
10
  field :discount, -> { Integer }, optional: true, nullable: false, api_name: "Discount"
11
11
  field :total_amount, -> { Integer }, optional: true, nullable: false, api_name: "TotalAmount"
12
- field :bill_date, -> { String }, optional: true, nullable: false, api_name: "BillDate"
13
- field :due_date, -> { String }, optional: true, nullable: false, api_name: "DueDate"
12
+ field :bill_date, -> { String }, optional: false, nullable: true, api_name: "BillDate"
13
+ field :due_date, -> { String }, optional: false, nullable: true, api_name: "DueDate"
14
14
  field :comments, -> { String }, optional: true, nullable: false, api_name: "Comments"
15
15
  field :batch_number, -> { String }, optional: true, nullable: false, api_name: "BatchNumber"
16
16
  field :bill_items, -> { Internal::Types::Array[Payabli::Types::BillItem] }, optional: true, nullable: false, api_name: "BillItems"
@@ -25,7 +25,7 @@ module Payabli
25
25
  field :vendor, -> { Payabli::Types::VendorDataResponse }, optional: true, nullable: false, api_name: "Vendor"
26
26
  field :status, -> { Integer }, optional: true, nullable: false, api_name: "Status"
27
27
  field :created_at, -> { String }, optional: true, nullable: false, api_name: "CreatedAt"
28
- field :end_date, -> { String }, optional: true, nullable: false, api_name: "EndDate"
28
+ field :end_date, -> { String }, optional: false, nullable: true, api_name: "EndDate"
29
29
  field :last_updated, -> { String }, optional: true, nullable: false, api_name: "LastUpdated"
30
30
  field :frequency, -> { Payabli::Types::Frequency }, optional: true, nullable: false, api_name: "Frequency"
31
31
  field :transaction, -> { Payabli::Types::TransactionOutQueryRecord }, optional: true, nullable: false, api_name: "Transaction"
@@ -19,7 +19,7 @@ module Payabli
19
19
  field :payment_trans_id, -> { String }, optional: false, nullable: false, api_name: "PaymentTransId"
20
20
  field :schedule_reference, -> { Integer }, optional: true, nullable: false, api_name: "ScheduleReference"
21
21
  field :order_id, -> { String }, optional: false, nullable: false, api_name: "OrderId"
22
- field :net_amount, -> { Integer }, optional: false, nullable: false, api_name: "NetAmount"
22
+ field :net_amount, -> { Integer }, optional: true, nullable: false, api_name: "NetAmount"
23
23
  field :transaction_time, -> { String }, optional: false, nullable: false, api_name: "TransactionTime"
24
24
  field :customer, -> { Payabli::Types::QueryTransactionPayorData }, optional: false, nullable: false, api_name: "Customer"
25
25
  field :payment_data, -> { Payabli::Types::QueryPaymentData }, optional: false, nullable: false, api_name: "PaymentData"
@@ -10,7 +10,7 @@ module Payabli
10
10
  @raw_client = Payabli::Internal::Http::RawClient.new(
11
11
  base_url: base_url || Payabli::Environment::SANDBOX,
12
12
  headers: {
13
- "User-Agent" => "payabli/2.2.15",
13
+ "User-Agent" => "payabli/2.2.17",
14
14
  "X-Fern-Language" => "Ruby",
15
15
  requestToken: api_key.to_s
16
16
  }
@@ -8,11 +8,11 @@ module Payabli
8
8
  field :customer_id, -> { Integer }, optional: false, nullable: false, api_name: "customerId"
9
9
  field :paypoint_id, -> { Integer }, optional: false, nullable: false, api_name: "paypointId"
10
10
  field :invoice_number, -> { String }, optional: false, nullable: false, api_name: "invoiceNumber"
11
- field :invoice_date, -> { String }, optional: false, nullable: false, api_name: "invoiceDate"
12
- field :invoice_due_date, -> { String }, optional: false, nullable: false, api_name: "invoiceDueDate"
13
- field :invoice_sent_date, -> { String }, optional: false, nullable: false, api_name: "invoiceSentDate"
14
- field :invoice_end_date, -> { String }, optional: false, nullable: false, api_name: "invoiceEndDate"
15
- field :last_payment_date, -> { String }, optional: false, nullable: false, api_name: "lastPaymentDate"
11
+ field :invoice_date, -> { String }, optional: false, nullable: true, api_name: "invoiceDate"
12
+ field :invoice_due_date, -> { String }, optional: false, nullable: true, api_name: "invoiceDueDate"
13
+ field :invoice_sent_date, -> { String }, optional: false, nullable: true, api_name: "invoiceSentDate"
14
+ field :invoice_end_date, -> { String }, optional: false, nullable: true, api_name: "invoiceEndDate"
15
+ field :last_payment_date, -> { String }, optional: false, nullable: true, api_name: "lastPaymentDate"
16
16
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
17
17
  field :invoice_status, -> { Integer }, optional: false, nullable: false, api_name: "invoiceStatus"
18
18
  field :invoice_type, -> { Integer }, optional: false, nullable: false, api_name: "invoiceType"
@@ -20,12 +20,12 @@ module Payabli
20
20
  field :payment_terms, -> { String }, optional: false, nullable: false, api_name: "paymentTerms"
21
21
  field :terms_conditions, -> { String }, optional: false, nullable: true, api_name: "termsConditions"
22
22
  field :notes, -> { String }, optional: false, nullable: true
23
- field :tax, -> { Integer }, optional: false, nullable: false
24
- field :discount, -> { Integer }, optional: false, nullable: false
23
+ field :tax, -> { Integer }, optional: true, nullable: false
24
+ field :discount, -> { Integer }, optional: true, nullable: false
25
25
  field :invoice_amount, -> { Integer }, optional: false, nullable: false, api_name: "invoiceAmount"
26
26
  field :invoice_paid_amount, -> { Integer }, optional: false, nullable: false, api_name: "invoicePaidAmount"
27
- field :freight_amount, -> { Integer }, optional: false, nullable: false, api_name: "freightAmount"
28
- field :duty_amount, -> { Integer }, optional: false, nullable: false, api_name: "dutyAmount"
27
+ field :freight_amount, -> { Integer }, optional: true, nullable: false, api_name: "freightAmount"
28
+ field :duty_amount, -> { Integer }, optional: true, nullable: false, api_name: "dutyAmount"
29
29
  field :purchase_order, -> { String }, optional: false, nullable: false, api_name: "purchaseOrder"
30
30
  field :first_name, -> { String }, optional: true, nullable: false, api_name: "firstName"
31
31
  field :last_name, -> { String }, optional: true, nullable: false, api_name: "lastName"
@@ -43,7 +43,7 @@ module Payabli
43
43
  field :items, -> { Internal::Types::Array[Payabli::Types::BillItem] }, optional: false, nullable: false
44
44
  field :customer, -> { Payabli::Types::PayorDataResponse }, optional: false, nullable: false, api_name: "Customer"
45
45
  field :paylink_id, -> { String }, optional: false, nullable: false, api_name: "paylinkId"
46
- field :bill_events, -> { Internal::Types::Array[Payabli::Types::GeneralEvents] }, optional: false, nullable: false, api_name: "billEvents"
46
+ field :bill_events, -> { Internal::Types::Array[Payabli::Types::GeneralEvents] }, optional: true, nullable: false, api_name: "billEvents"
47
47
  field :scheduled_options, -> { Payabli::Types::BillOptions }, optional: false, nullable: false, api_name: "scheduledOptions"
48
48
  field :paypoint_legalname, -> { String }, optional: false, nullable: false, api_name: "PaypointLegalname"
49
49
  field :paypoint_dbaname, -> { String }, optional: false, nullable: false, api_name: "PaypointDbaname"
@@ -8,11 +8,11 @@ module Payabli
8
8
  field :customer_id, -> { Integer }, optional: false, nullable: false, api_name: "customerId"
9
9
  field :paypoint_id, -> { Integer }, optional: false, nullable: false, api_name: "paypointId"
10
10
  field :invoice_number, -> { String }, optional: false, nullable: false, api_name: "invoiceNumber"
11
- field :invoice_date, -> { String }, optional: false, nullable: false, api_name: "invoiceDate"
12
- field :invoice_due_date, -> { String }, optional: false, nullable: false, api_name: "invoiceDueDate"
13
- field :invoice_sent_date, -> { String }, optional: false, nullable: false, api_name: "invoiceSentDate"
14
- field :invoice_end_date, -> { String }, optional: false, nullable: false, api_name: "invoiceEndDate"
15
- field :last_payment_date, -> { String }, optional: true, nullable: false, api_name: "lastPaymentDate"
11
+ field :invoice_date, -> { String }, optional: false, nullable: true, api_name: "invoiceDate"
12
+ field :invoice_due_date, -> { String }, optional: false, nullable: true, api_name: "invoiceDueDate"
13
+ field :invoice_sent_date, -> { String }, optional: false, nullable: true, api_name: "invoiceSentDate"
14
+ field :invoice_end_date, -> { String }, optional: false, nullable: true, api_name: "invoiceEndDate"
15
+ field :last_payment_date, -> { String }, optional: false, nullable: true, api_name: "lastPaymentDate"
16
16
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
17
17
  field :invoice_status, -> { Integer }, optional: false, nullable: false, api_name: "invoiceStatus"
18
18
  field :invoice_type, -> { Integer }, optional: false, nullable: false, api_name: "invoiceType"
@@ -20,12 +20,12 @@ module Payabli
20
20
  field :payment_terms, -> { String }, optional: false, nullable: false, api_name: "paymentTerms"
21
21
  field :terms_conditions, -> { String }, optional: false, nullable: true, api_name: "termsConditions"
22
22
  field :notes, -> { String }, optional: false, nullable: true
23
- field :tax, -> { Integer }, optional: false, nullable: false
24
- field :discount, -> { Integer }, optional: false, nullable: false
23
+ field :tax, -> { Integer }, optional: true, nullable: false
24
+ field :discount, -> { Integer }, optional: true, nullable: false
25
25
  field :invoice_amount, -> { Integer }, optional: false, nullable: false, api_name: "invoiceAmount"
26
26
  field :invoice_paid_amount, -> { Integer }, optional: false, nullable: false, api_name: "invoicePaidAmount"
27
- field :freight_amount, -> { Integer }, optional: false, nullable: false, api_name: "freightAmount"
28
- field :duty_amount, -> { Integer }, optional: false, nullable: false, api_name: "dutyAmount"
27
+ field :freight_amount, -> { Integer }, optional: true, nullable: false, api_name: "freightAmount"
28
+ field :duty_amount, -> { Integer }, optional: true, nullable: false, api_name: "dutyAmount"
29
29
  field :purchase_order, -> { String }, optional: false, nullable: true, api_name: "purchaseOrder"
30
30
  field :first_name, -> { String }, optional: false, nullable: false, api_name: "firstName"
31
31
  field :last_name, -> { String }, optional: false, nullable: false, api_name: "lastName"
@@ -43,7 +43,7 @@ module Payabli
43
43
  field :items, -> { Internal::Types::Array[Payabli::Types::BillItem] }, optional: false, nullable: false
44
44
  field :customer, -> { Payabli::Types::PayorDataResponse }, optional: false, nullable: false, api_name: "Customer"
45
45
  field :paylink_id, -> { String }, optional: false, nullable: false, api_name: "paylinkId"
46
- field :bill_events, -> { Internal::Types::Array[Payabli::Types::GeneralEvents] }, optional: false, nullable: false, api_name: "billEvents"
46
+ field :bill_events, -> { Internal::Types::Array[Payabli::Types::GeneralEvents] }, optional: true, nullable: false, api_name: "billEvents"
47
47
  field :scheduled_options, -> { Payabli::Types::BillOptions }, optional: false, nullable: true, api_name: "scheduledOptions"
48
48
  field :paypoint_legalname, -> { String }, optional: false, nullable: false, api_name: "PaypointLegalname"
49
49
  field :paypoint_dbaname, -> { String }, optional: false, nullable: false, api_name: "PaypointDbaname"
@@ -152,7 +152,8 @@ module Payabli
152
152
  end
153
153
 
154
154
  # Make a temporary microdeposit in a customer account to verify the customer's ownership and access to the target
155
- # account. Reverse the microdeposit with `reverseCredit`.
155
+ # account. Reverse the microdeposit with `reverseCredit`. Payabli doesn't automatically make microdeposits when
156
+ # you add a bank account, you must manually make the requests.
156
157
  #
157
158
  # This feature must be enabled by Payabli on a per-merchant basis. Contact support for help.
158
159
  #
@@ -45,13 +45,13 @@ module Payabli
45
45
  field :split_funding_instructions, -> { Internal::Types::Array[Payabli::Types::SplitFundingContent] }, optional: false, nullable: true, api_name: "splitFundingInstructions"
46
46
  field :cfee_transactions, -> { Internal::Types::Array[Payabli::Types::QueryCFeeTransaction] }, optional: false, nullable: false, api_name: "cfeeTransactions"
47
47
  field :transaction_events, -> { Internal::Types::Array[Payabli::MoneyIn::Types::TransactionDetailEvent] }, optional: false, nullable: false, api_name: "transactionEvents"
48
- field :pending_fee_amount, -> { Integer }, optional: false, nullable: false, api_name: "pendingFeeAmount"
49
- field :risk_flagged, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "riskFlagged"
50
- field :risk_flagged_on, -> { String }, optional: false, nullable: false, api_name: "riskFlaggedOn"
48
+ field :pending_fee_amount, -> { Integer }, optional: true, nullable: false, api_name: "pendingFeeAmount"
49
+ field :risk_flagged, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "riskFlagged"
50
+ field :risk_flagged_on, -> { String }, optional: true, nullable: false, api_name: "riskFlaggedOn"
51
51
  field :risk_status, -> { String }, optional: false, nullable: false, api_name: "riskStatus"
52
52
  field :risk_reason, -> { String }, optional: false, nullable: false, api_name: "riskReason"
53
53
  field :risk_action, -> { String }, optional: false, nullable: false, api_name: "riskAction"
54
- field :risk_action_code, -> { Integer }, optional: false, nullable: false, api_name: "riskActionCode"
54
+ field :risk_action_code, -> { Integer }, optional: true, nullable: false, api_name: "riskActionCode"
55
55
  field :device_id, -> { String }, optional: false, nullable: false, api_name: "deviceId"
56
56
  field :ach_sec_code, -> { String }, optional: false, nullable: false, api_name: "achSecCode"
57
57
  field :ach_holder_type, -> { Payabli::Types::AchHolderType }, optional: false, nullable: false, api_name: "achHolderType"
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module MoneyOutTypes
5
+ module Types
6
+ # Configuration for payment method selection on Pay Out payment links.
7
+ class MethodElementOut < Internal::Types::Model
8
+ field :all_methods_checked, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "allMethodsChecked"
9
+ field :allow_multiple_methods, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "allowMultipleMethods"
10
+ field :default_method, -> { String }, optional: true, nullable: false, api_name: "defaultMethod"
11
+ field :enabled, -> { Internal::Types::Boolean }, optional: true, nullable: false
12
+ field :header, -> { String }, optional: true, nullable: false
13
+ field :methods, -> { Payabli::MoneyOutTypes::Types::MethodsListOut }, optional: true, nullable: false
14
+ field :order, -> { Integer }, optional: true, nullable: false
15
+ field :show_preview_virtual_card, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "showPreviewVirtualCard"
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module MoneyOutTypes
5
+ module Types
6
+ # Payment methods available for Pay Out payment links. Controls which payout options are offered to the vendor.
7
+ class MethodsListOut < Internal::Types::Model
8
+ field :ach, -> { Internal::Types::Boolean }, optional: true, nullable: false
9
+ field :check, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
+ field :vcard, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module MoneyOutTypes
5
+ module Types
6
+ module PaymentLinkStatus
7
+ extend Payabli::Internal::Types::Enum
8
+
9
+ ACTIVE = "Active"
10
+ EXPIRED = "Expired"
11
+ CANCELED = "Canceled"
12
+ DELETED = "Deleted"
13
+ end
14
+ end
15
+ end
16
+ end
@@ -62,10 +62,11 @@ module Payabli
62
62
  end
63
63
  end
64
64
 
65
- # Generates a payment link for a bill from the bill ID.
65
+ # Generates a payment link for a bill from the bill ID. The vendor receives a secure page where they can select
66
+ # their preferred payment method (ACH, virtual card, or check) and complete the payment.
66
67
  #
67
68
  # @param request_options [Hash]
68
- # @param params [Payabli::PaymentLink::Types::PaymentPageRequestBody]
69
+ # @param params [Payabli::PaymentLink::Types::PaymentPageRequestBodyOut]
69
70
  # @option request_options [String] :base_url
70
71
  # @option request_options [Hash{String => Object}] :additional_headers
71
72
  # @option request_options [Hash{String => Object}] :additional_query_parameters
@@ -97,7 +98,7 @@ module Payabli
97
98
  path: "PaymentLink/bill/#{params[:bill_id]}",
98
99
  headers: headers,
99
100
  query: query_params,
100
- body: Payabli::PaymentLink::Types::PaymentPageRequestBody.new(body_params).to_h,
101
+ body: Payabli::PaymentLink::Types::PaymentPageRequestBodyOut.new(body_params).to_h,
101
102
  request_options: request_options
102
103
  )
103
104
  begin
@@ -344,7 +345,7 @@ module Payabli
344
345
  # lot number for a vendor with a single payment link.
345
346
  #
346
347
  # @param request_options [Hash]
347
- # @param params [Payabli::PaymentLink::Types::PaymentPageRequestBody]
348
+ # @param params [Payabli::PaymentLink::Types::PaymentPageRequestBodyOut]
348
349
  # @option request_options [String] :base_url
349
350
  # @option request_options [Hash{String => Object}] :additional_headers
350
351
  # @option request_options [Hash{String => Object}] :additional_query_parameters
@@ -375,7 +376,80 @@ module Payabli
375
376
  method: "POST",
376
377
  path: "PaymentLink/bill/lotNumber/#{params[:lot_number]}",
377
378
  query: query_params,
378
- body: Payabli::PaymentLink::Types::PaymentPageRequestBody.new(body_params).to_h,
379
+ body: Payabli::PaymentLink::Types::PaymentPageRequestBodyOut.new(body_params).to_h,
380
+ request_options: request_options
381
+ )
382
+ begin
383
+ response = @client.send(request)
384
+ rescue Net::HTTPRequestTimeout
385
+ raise Payabli::Errors::TimeoutError
386
+ end
387
+ code = response.code.to_i
388
+ if code.between?(200, 299)
389
+ Payabli::PaymentLink::Types::PayabliApiResponsePaymentLinks.load(response.body)
390
+ else
391
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
392
+ raise error_class.new(response.body, code: code)
393
+ end
394
+ end
395
+
396
+ # Partially updates a Pay Out payment link's content, expiration date, and/or status. Use this to modify the
397
+ # payment page configuration, extend or change the expiration, or cancel a link. Updating the expiration date of
398
+ # an expired link reactivates it to Active status.
399
+ #
400
+ # @param request_options [Hash]
401
+ # @param params [Payabli::PaymentLink::Types::PatchOutPaymentLinkRequest]
402
+ # @option request_options [String] :base_url
403
+ # @option request_options [Hash{String => Object}] :additional_headers
404
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
405
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
406
+ # @option request_options [Integer] :timeout_in_seconds
407
+ # @option params [String] :paylink_id
408
+ #
409
+ # @return [Payabli::PaymentLink::Types::PayabliApiResponsePaymentLinks]
410
+ def patch_out_payment_link(request_options: {}, **params)
411
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
412
+ request = Payabli::Internal::JSON::Request.new(
413
+ base_url: request_options[:base_url],
414
+ method: "PATCH",
415
+ path: "PaymentLink/out/#{params[:paylink_id]}",
416
+ body: Payabli::PaymentLink::Types::PatchOutPaymentLinkRequest.new(params).to_h,
417
+ request_options: request_options
418
+ )
419
+ begin
420
+ response = @client.send(request)
421
+ rescue Net::HTTPRequestTimeout
422
+ raise Payabli::Errors::TimeoutError
423
+ end
424
+ code = response.code.to_i
425
+ if code.between?(200, 299)
426
+ Payabli::PaymentLink::Types::PayabliApiResponsePaymentLinks.load(response.body)
427
+ else
428
+ error_class = Payabli::Errors::ResponseError.subclass_for_code(code)
429
+ raise error_class.new(response.body, code: code)
430
+ end
431
+ end
432
+
433
+ # Updates the payment page content for a Pay Out payment link. Use this to change the branding, messaging, payment
434
+ # methods offered, or other page configuration.
435
+ #
436
+ # @param request_options [Hash]
437
+ # @param params [Payabli::PaymentLink::Types::PaymentPageRequestBodyOut]
438
+ # @option request_options [String] :base_url
439
+ # @option request_options [Hash{String => Object}] :additional_headers
440
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
441
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
442
+ # @option request_options [Integer] :timeout_in_seconds
443
+ # @option params [String] :paylink_id
444
+ #
445
+ # @return [Payabli::PaymentLink::Types::PayabliApiResponsePaymentLinks]
446
+ def update_pay_link_out_from_id(request_options: {}, **params)
447
+ params = Payabli::Internal::Types::Utils.normalize_keys(params)
448
+ request = Payabli::Internal::JSON::Request.new(
449
+ base_url: request_options[:base_url],
450
+ method: "PATCH",
451
+ path: "PaymentLink/updateOut/#{params[:paylink_id]}",
452
+ body: Payabli::PaymentLink::Types::PaymentPageRequestBodyOut.new(params).to_h,
379
453
  request_options: request_options
380
454
  )
381
455
  begin
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module PaymentLink
5
+ module Types
6
+ # Request body for partially updating a Pay Out payment link.
7
+ class PatchOutPaymentLinkRequest < Internal::Types::Model
8
+ field :bill_page_data, -> { Payabli::PaymentLink::Types::PaymentPageRequestBodyOut }, optional: true, nullable: false, api_name: "billPageData"
9
+ field :expiration_date, -> { String }, optional: true, nullable: false, api_name: "expirationDate"
10
+ field :status, -> { Payabli::MoneyOutTypes::Types::PaymentLinkStatus }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
14
+ end
@@ -8,7 +8,7 @@ module Payabli
8
8
  field :amount_fixed, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "amountFixed"
9
9
  field :mail_2, -> { String }, optional: true, nullable: false, api_name: "mail2"
10
10
  field :idempotency_key, -> { String }, optional: true, nullable: false, api_name: "idempotencyKey"
11
- field :body, -> { Payabli::PaymentLink::Types::PaymentPageRequestBody }, optional: false, nullable: false
11
+ field :body, -> { Payabli::PaymentLink::Types::PaymentPageRequestBodyOut }, optional: false, nullable: false
12
12
  end
13
13
  end
14
14
  end
@@ -9,7 +9,7 @@ module Payabli
9
9
  field :vendor_number, -> { String }, optional: false, nullable: false, api_name: "vendorNumber"
10
10
  field :mail_2, -> { String }, optional: true, nullable: false, api_name: "mail2"
11
11
  field :amount_fixed, -> { String }, optional: true, nullable: false, api_name: "amountFixed"
12
- field :body, -> { Payabli::PaymentLink::Types::PaymentPageRequestBody }, optional: false, nullable: false
12
+ field :body, -> { Payabli::PaymentLink::Types::PaymentPageRequestBodyOut }, optional: false, nullable: false
13
13
  end
14
14
  end
15
15
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module PaymentLink
5
+ module Types
6
+ # Configuration for the Pay Out payment link page. Controls branding, messaging, vendor fields, and which payout
7
+ # methods are offered to the vendor.
8
+ class PaymentPageRequestBodyOut < Internal::Types::Model
9
+ field :contact_us, -> { Payabli::Types::ContactElement }, optional: true, nullable: false, api_name: "contactUs"
10
+ field :logo, -> { Payabli::Types::Element }, optional: true, nullable: false
11
+ field :message_before_paying, -> { Payabli::Types::LabelElement }, optional: true, nullable: false, api_name: "messageBeforePaying"
12
+ field :notes, -> { Payabli::Types::NoteElement }, optional: true, nullable: false
13
+ field :page, -> { Payabli::Types::PageElement }, optional: true, nullable: false
14
+ field :payment_button, -> { Payabli::Types::LabelElement }, optional: true, nullable: false, api_name: "paymentButton"
15
+ field :payment_methods, -> { Payabli::MoneyOutTypes::Types::MethodElementOut }, optional: true, nullable: false, api_name: "paymentMethods"
16
+ field :review, -> { Payabli::Types::HeaderElement }, optional: true, nullable: false
17
+ field :bills, -> { Payabli::Types::Element }, optional: true, nullable: false
18
+ field :settings, -> { Payabli::Types::PagelinkSetting }, optional: true, nullable: false
19
+ end
20
+ end
21
+ end
22
+ end
@@ -18,7 +18,7 @@ module Payabli
18
18
  field :order_id, -> { String }, optional: false, nullable: false, api_name: "OrderId"
19
19
  field :trans_method, -> { String }, optional: false, nullable: false, api_name: "TransMethod"
20
20
  field :payment_data, -> { Payabli::Types::QueryPaymentData }, optional: false, nullable: true, api_name: "PaymentData"
21
- field :net_amount, -> { Integer }, optional: false, nullable: false, api_name: "NetAmount"
21
+ field :net_amount, -> { Integer }, optional: true, nullable: false, api_name: "NetAmount"
22
22
  field :operation, -> { String }, optional: false, nullable: false, api_name: "Operation"
23
23
  field :category, -> { String }, optional: false, nullable: false, api_name: "Category"
24
24
  field :source, -> { String }, optional: false, nullable: true, api_name: "Source"
@@ -49,10 +49,10 @@ module Payabli
49
49
  field :org_id, -> { Integer }, optional: false, nullable: false, api_name: "OrgId"
50
50
  field :payor_id, -> { Integer }, optional: false, nullable: false, api_name: "PayorId"
51
51
  field :paypoint_id, -> { Integer }, optional: false, nullable: false, api_name: "PaypointId"
52
- field :pending_fee_amount, -> { Integer }, optional: false, nullable: false, api_name: "PendingFeeAmount"
52
+ field :pending_fee_amount, -> { Integer }, optional: true, nullable: false, api_name: "PendingFeeAmount"
53
53
  field :refund_id, -> { Integer }, optional: false, nullable: false, api_name: "RefundId"
54
54
  field :returned_id, -> { Integer }, optional: false, nullable: false, api_name: "ReturnedId"
55
- field :split_funding_instructions, -> { Internal::Types::Array[Payabli::Types::SplitFundingContent] }, optional: false, nullable: false, api_name: "splitFundingInstructions"
55
+ field :split_funding_instructions, -> { Internal::Types::Array[Payabli::Types::SplitFundingContent] }, optional: true, nullable: false, api_name: "splitFundingInstructions"
56
56
  field :total_amount, -> { Integer }, optional: false, nullable: false, api_name: "TotalAmount"
57
57
  field :cfee_transactions, -> { Internal::Types::Array[Payabli::Types::QueryCFeeTransaction] }, optional: false, nullable: false, api_name: "CfeeTransactions"
58
58
  field :invoice_data, -> { Payabli::Types::BillData }, optional: false, nullable: true, api_name: "invoiceData"
@@ -4,7 +4,7 @@ module Payabli
4
4
  module QueryTypes
5
5
  module Types
6
6
  module LimitRecord
7
- # LimitRecord is an alias for Object
7
+ # LimitRecord is an alias for Integer
8
8
 
9
9
  # @option str [String]
10
10
  #
@@ -22,9 +22,9 @@ module Payabli
22
22
  # @option request_options [Hash{String => Object}] :additional_body_parameters
23
23
  # @option request_options [Integer] :timeout_in_seconds
24
24
  # @option params [Boolean, nil] :ach_validation
25
- # @option params [Payabli::TokenStorage::Types::CreateAnonymous] :create_anonymous
25
+ # @option params [Boolean, nil] :create_anonymous
26
26
  # @option params [Boolean, nil] :force_customer_creation
27
- # @option params [Payabli::TokenStorage::Types::Temporary] :temporary
27
+ # @option params [Boolean, nil] :temporary
28
28
  # @option params [String, nil] :idempotency_key
29
29
  #
30
30
  # @return [Payabli::TokenStorage::Types::AddMethodResponse]
@@ -5,9 +5,9 @@ module Payabli
5
5
  module Types
6
6
  class AddMethodRequest < Internal::Types::Model
7
7
  field :ach_validation, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "achValidation"
8
- field :create_anonymous, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "createAnonymous"
8
+ field :create_anonymous, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "createAnonymous"
9
9
  field :force_customer_creation, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "forceCustomerCreation"
10
- field :temporary, -> { Internal::Types::Boolean }, optional: false, nullable: false
10
+ field :temporary, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
11
  field :idempotency_key, -> { String }, optional: true, nullable: false, api_name: "idempotencyKey"
12
12
  field :body, -> { Payabli::TokenStorage::Types::RequestTokenStorage }, optional: false, nullable: false
13
13
  end
@@ -4,7 +4,7 @@ module Payabli
4
4
  module TokenStorage
5
5
  module Types
6
6
  module CreateAnonymous
7
- # CreateAnonymous is an alias for Object
7
+ # CreateAnonymous is an alias for Boolean
8
8
 
9
9
  # @option str [String]
10
10
  #
@@ -4,7 +4,7 @@ module Payabli
4
4
  module TokenStorage
5
5
  module Types
6
6
  module Temporary
7
- # Temporary is an alias for Object
7
+ # Temporary is an alias for Boolean
8
8
 
9
9
  # @option str [String]
10
10
  #
@@ -3,7 +3,7 @@
3
3
  module Payabli
4
4
  module Types
5
5
  module AcceptOauth
6
- # AcceptOauth is an alias for Object
6
+ # AcceptOauth is an alias for Boolean
7
7
 
8
8
  # @option str [String]
9
9
  #
@@ -3,7 +3,7 @@
3
3
  module Payabli
4
4
  module Types
5
5
  module AcceptRegister
6
- # AcceptRegister is an alias for Object
6
+ # AcceptRegister is an alias for Boolean
7
7
 
8
8
  # @option str [String]
9
9
  #
@@ -3,7 +3,7 @@
3
3
  module Payabli
4
4
  module Types
5
5
  module AchValidation
6
- # AchValidation is an alias for Object
6
+ # AchValidation is an alias for Boolean
7
7
 
8
8
  # @option str [String]
9
9
  #
@@ -3,7 +3,7 @@
3
3
  module Payabli
4
4
  module Types
5
5
  module Annualrevenue
6
- # Annualrevenue is an alias for Object
6
+ # Annualrevenue is an alias for Float
7
7
 
8
8
  # @option str [String]
9
9
  #
@@ -3,7 +3,7 @@
3
3
  module Payabli
4
4
  module Types
5
5
  module ApplePayType
6
- # ApplePayType is an alias for Object
6
+ # ApplePayType is an alias for String
7
7
 
8
8
  # @option str [String]
9
9
  #