lockstep_sdk 2022.15.31.1 → 2022.26.12.0

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/lib/lockstep_sdk/clients/app_enrollments_client.rb +10 -0
  3. data/lib/lockstep_sdk/clients/companies_client.rb +25 -5
  4. data/lib/lockstep_sdk/clients/financial_account_client.rb +1 -1
  5. data/lib/lockstep_sdk/clients/group_accounts_client.rb +46 -0
  6. data/lib/lockstep_sdk/clients/payment_applications_client.rb +1 -1
  7. data/lib/lockstep_sdk/clients/provisioning_client.rb +0 -18
  8. data/lib/lockstep_sdk/clients/reports_client.rb +132 -8
  9. data/lib/lockstep_sdk/clients/user_accounts_client.rb +12 -0
  10. data/lib/lockstep_sdk/clients/webhook_rules_client.rb +81 -0
  11. data/lib/lockstep_sdk/clients/webhooks_client.rb +13 -2
  12. data/lib/lockstep_sdk/lockstep_api.rb +14 -4
  13. data/lib/lockstep_sdk/models/action_result_model.rb +52 -0
  14. data/lib/lockstep_sdk/models/ap_aging_header_info_model.rb +101 -0
  15. data/lib/lockstep_sdk/models/ap_header_info_model.rb +197 -0
  16. data/lib/lockstep_sdk/models/ar_aging_header_info_model.rb +18 -0
  17. data/lib/lockstep_sdk/models/ar_header_info_model.rb +46 -10
  18. data/lib/lockstep_sdk/models/{customer_details_model.rb → company_details_model.rb} +22 -22
  19. data/lib/lockstep_sdk/models/{customer_details_payment_model.rb → company_details_payment_model.rb} +3 -3
  20. data/lib/lockstep_sdk/models/company_model.rb +6 -0
  21. data/lib/lockstep_sdk/models/company_sync_model.rb +13 -1
  22. data/lib/lockstep_sdk/models/connector_info_model.rb +18 -0
  23. data/lib/lockstep_sdk/models/contact_sync_model.rb +2 -2
  24. data/lib/lockstep_sdk/models/customer_summary_model.rb +36 -0
  25. data/lib/lockstep_sdk/models/daily_payable_outstanding_report_model.rb +59 -0
  26. data/lib/lockstep_sdk/models/daily_sales_outstanding_report_model.rb +0 -6
  27. data/lib/lockstep_sdk/models/dpo_summary_group_total_model.rb +71 -0
  28. data/lib/lockstep_sdk/models/dpo_summary_model.rb +83 -0
  29. data/lib/lockstep_sdk/models/error_result.rb +77 -0
  30. data/lib/lockstep_sdk/models/group_account_model.rb +101 -0
  31. data/lib/lockstep_sdk/models/invoice_line_sync_model.rb +3 -3
  32. data/lib/lockstep_sdk/models/invoice_model.rb +7 -1
  33. data/lib/lockstep_sdk/models/invoice_summary_model.rb +6 -0
  34. data/lib/lockstep_sdk/models/invoice_sync_model.rb +10 -4
  35. data/lib/lockstep_sdk/models/payables_coming_due_header_model.rb +77 -0
  36. data/lib/lockstep_sdk/models/payables_coming_due_model.rb +89 -0
  37. data/lib/lockstep_sdk/models/payables_coming_due_widget_model.rb +59 -0
  38. data/lib/lockstep_sdk/models/payables_summary_report_model.rb +77 -0
  39. data/lib/lockstep_sdk/models/payment_applied_model.rb +6 -0
  40. data/lib/lockstep_sdk/models/payment_detail_model.rb +7 -1
  41. data/lib/lockstep_sdk/models/payment_model.rb +2 -2
  42. data/lib/lockstep_sdk/models/payment_summary_model.rb +45 -9
  43. data/lib/lockstep_sdk/models/payment_sync_model.rb +2 -2
  44. data/lib/lockstep_sdk/models/status_model.rb +12 -0
  45. data/lib/lockstep_sdk/models/sync_entity_result_model.rb +6 -0
  46. data/lib/lockstep_sdk/models/user_group_model.rb +66 -0
  47. data/lib/lockstep_sdk/models/vendor_summary_model.rb +143 -0
  48. data/lib/lockstep_sdk/models/webhook_model.rb +7 -1
  49. data/lib/lockstep_sdk/models/webhook_rule_model.rb +116 -0
  50. data/lib/lockstep_sdk/version.rb +1 -1
  51. metadata +21 -8
  52. data/lib/lockstep_sdk/models/erp_info_data_model.rb +0 -62
  53. data/lib/lockstep_sdk/models/trial_balance_report_cell_model.rb +0 -49
  54. data/lib/lockstep_sdk/models/trial_balance_report_model.rb +0 -79
  55. data/lib/lockstep_sdk/models/trial_balance_report_row_model.rb +0 -67
@@ -55,7 +55,7 @@ module LockstepSdk
55
55
  end
56
56
 
57
57
  ##
58
- # @return [String] This is the primary key of the Contact record. For this field, you should use whatever the contact's unique identifying number is in the originating system. Search for a unique, non-changing number within the originating financial system for this record. Example: If you store your contact records in a database, whatever the primary key for the contact table is in the database should be the "ErpKey". As some ERP systems don't maintain a unique key for Contacts, we also support syncing Contacts with ERP keys of the form {CompanyErpKey}|{index}, for example CompanyErpKey|1, CompanyErpKey|2 and so on. For this reason, please ensure that your Company/Contact ERP keys don't contain the '|' symbol or that it is replaced by an alternate symbol if they do. For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
58
+ # @return [String] This is the primary key of the Contact record. For this field, you should use whatever the contact's unique identifying number is in the originating system. Search for a unique, non-changing number within the originating financial system for this record. Example: If you store your contact records in a database, whatever the primary key for the contact table is in the database should be the "ErpKey". As some ERP systems don't maintain a unique key for Contacts, we also support syncing Contacts with ERP keys of the form {prefix}|{index}, for example ContactPrefix|1, ContactPrefix|2 and so on. For this reason, please ensure that your Contact ERP keys don't otherwise contain the '|' symbol or that it is replaced by an alternate symbol if they do. For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
59
59
  attr_accessor :erp_key
60
60
 
61
61
  ##
@@ -115,7 +115,7 @@ module LockstepSdk
115
115
  attr_accessor :postal_code
116
116
 
117
117
  ##
118
- # @return [String] The mailing address information for this contact. This will be validated by the /api/v1/definitions/countries data set
118
+ # @return [String] The mailing address information for this contact.
119
119
  attr_accessor :country_code
120
120
 
121
121
  ##
@@ -31,10 +31,16 @@ module LockstepSdk
31
31
  @total_invoices_open = params.dig(:total_invoices_open)
32
32
  @total_invoices_past_due = params.dig(:total_invoices_past_due)
33
33
  @closed_invoices = params.dig(:closed_invoices)
34
+ @closed_invoices_past_thirty_days = params.dig(:closed_invoices_past_thirty_days)
34
35
  @amount_collected = params.dig(:amount_collected)
36
+ @amount_collected_past_thirty_days = params.dig(:amount_collected_past_thirty_days)
35
37
  @outstanding_amount = params.dig(:outstanding_amount)
38
+ @invoiced_amount_past_thirty_days = params.dig(:invoiced_amount_past_thirty_days)
39
+ @outstanding_amount_past_thirty_days = params.dig(:outstanding_amount_past_thirty_days)
40
+ @invoices_past_thirty_days = params.dig(:invoices_past_thirty_days)
36
41
  @amount_past_due = params.dig(:amount_past_due)
37
42
  @unapplied_payments = params.dig(:unapplied_payments)
43
+ @unapplied_amount_past_thirty_days = params.dig(:unapplied_amount_past_thirty_days)
38
44
  @percent_of_total_ar = params.dig(:percent_of_total_ar)
39
45
  @dso = params.dig(:dso)
40
46
  @newest_activity = params.dig(:newest_activity)
@@ -72,14 +78,34 @@ module LockstepSdk
72
78
  # @return [Int32] The number of closed invoices for this customer.
73
79
  attr_accessor :closed_invoices
74
80
 
81
+ ##
82
+ # @return [Int32] The number of closed invoices for this customer in the past thirty days.
83
+ attr_accessor :closed_invoices_past_thirty_days
84
+
75
85
  ##
76
86
  # @return [Double] The total from collected payments.
77
87
  attr_accessor :amount_collected
78
88
 
89
+ ##
90
+ # @return [Double] The total from collected payments in the past thirty days.
91
+ attr_accessor :amount_collected_past_thirty_days
92
+
79
93
  ##
80
94
  # @return [Double] The total balance of outstanding invoices.
81
95
  attr_accessor :outstanding_amount
82
96
 
97
+ ##
98
+ # @return [Double] The total amount invoiced in the past thirty days.
99
+ attr_accessor :invoiced_amount_past_thirty_days
100
+
101
+ ##
102
+ # @return [Double] The total amount outstanding from the invoices invoiced in the past thirty days.
103
+ attr_accessor :outstanding_amount_past_thirty_days
104
+
105
+ ##
106
+ # @return [Int32] The number of invoices invoiced in the past thirty days.
107
+ attr_accessor :invoices_past_thirty_days
108
+
83
109
  ##
84
110
  # @return [Double] The total amount past due for this customer.
85
111
  attr_accessor :amount_past_due
@@ -88,6 +114,10 @@ module LockstepSdk
88
114
  # @return [Double] The total value of unapplied Payments for this Customer.
89
115
  attr_accessor :unapplied_payments
90
116
 
117
+ ##
118
+ # @return [Double] The total value of unapplied Payments for this Customer in the past thirty days.
119
+ attr_accessor :unapplied_amount_past_thirty_days
120
+
91
121
  ##
92
122
  # @return [Double] Portion of Total AR for this Customer that is Past due. (TotalPastDue / Total AR).
93
123
  attr_accessor :percent_of_total_ar
@@ -112,10 +142,16 @@ module LockstepSdk
112
142
  'totalInvoicesOpen' => @total_invoices_open,
113
143
  'totalInvoicesPastDue' => @total_invoices_past_due,
114
144
  'closedInvoices' => @closed_invoices,
145
+ 'closedInvoicesPastThirtyDays' => @closed_invoices_past_thirty_days,
115
146
  'amountCollected' => @amount_collected,
147
+ 'amountCollectedPastThirtyDays' => @amount_collected_past_thirty_days,
116
148
  'outstandingAmount' => @outstanding_amount,
149
+ 'invoicedAmountPastThirtyDays' => @invoiced_amount_past_thirty_days,
150
+ 'outstandingAmountPastThirtyDays' => @outstanding_amount_past_thirty_days,
151
+ 'invoicesPastThirtyDays' => @invoices_past_thirty_days,
117
152
  'amountPastDue' => @amount_past_due,
118
153
  'unappliedPayments' => @unapplied_payments,
154
+ 'unappliedAmountPastThirtyDays' => @unapplied_amount_past_thirty_days,
119
155
  'percentOfTotalAr' => @percent_of_total_ar,
120
156
  'dso' => @dso,
121
157
  'newestActivity' => @newest_activity,
@@ -0,0 +1,59 @@
1
+ #
2
+ # Lockstep Platform SDK for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Lockstep Network <support@lockstep.io>
10
+ # @copyright 2021-2022 Lockstep, Inc.
11
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
12
+ #
13
+
14
+
15
+ require 'json'
16
+
17
+ module LockstepSdk
18
+
19
+ ##
20
+ # Represents the daily payable outstanding report
21
+ class DailyPayableOutstandingReportModel
22
+
23
+ ##
24
+ # Initialize the DailyPayableOutstandingReportModel using the provided prototype
25
+ def initialize(params = {})
26
+ @timeframe = params.dig(:timeframe)
27
+ @invoice_count = params.dig(:invoice_count)
28
+ @daily_payable_outstanding = params.dig(:daily_payable_outstanding)
29
+ end
30
+
31
+ ##
32
+ # @return [Date-time] Timeframe (quarter) the daily payable outstanding values are associated with
33
+ attr_accessor :timeframe
34
+
35
+ ##
36
+ # @return [Int32] Number of invoices the average daily payable outstanding is calculated on
37
+ attr_accessor :invoice_count
38
+
39
+ ##
40
+ # @return [Double] Time (in days) between an invoice was completed paid off and when the invoice was issued
41
+ attr_accessor :daily_payable_outstanding
42
+
43
+ ##
44
+ # @return [object] This object as a JSON key-value structure
45
+ def as_json(options={})
46
+ {
47
+ 'timeframe' => @timeframe,
48
+ 'invoiceCount' => @invoice_count,
49
+ 'dailyPayableOutstanding' => @daily_payable_outstanding,
50
+ }
51
+ end
52
+
53
+ ##
54
+ # @return [String] This object converted to a JSON string
55
+ def to_json(*options)
56
+ "[#{as_json(*options).to_json(*options)}]"
57
+ end
58
+ end
59
+ end
@@ -24,7 +24,6 @@ module LockstepSdk
24
24
  # Initialize the DailySalesOutstandingReportModel using the provided prototype
25
25
  def initialize(params = {})
26
26
  @timeframe = params.dig(:timeframe)
27
- @invoice_count = params.dig(:invoice_count)
28
27
  @daily_sales_outstanding = params.dig(:daily_sales_outstanding)
29
28
  end
30
29
 
@@ -32,10 +31,6 @@ module LockstepSdk
32
31
  # @return [Date-time] Timeframe (month) the daily sales outstanding values are associated with
33
32
  attr_accessor :timeframe
34
33
 
35
- ##
36
- # @return [Int32] Number of invoices the average daily sales outstanding is calculated on
37
- attr_accessor :invoice_count
38
-
39
34
  ##
40
35
  # @return [Double] Time (in days) between an invoice was completed paid off and when the invoice was issued
41
36
  attr_accessor :daily_sales_outstanding
@@ -45,7 +40,6 @@ module LockstepSdk
45
40
  def as_json(options={})
46
41
  {
47
42
  'timeframe' => @timeframe,
48
- 'invoiceCount' => @invoice_count,
49
43
  'dailySalesOutstanding' => @daily_sales_outstanding,
50
44
  }
51
45
  end
@@ -0,0 +1,71 @@
1
+ #
2
+ # Lockstep Platform SDK for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Lockstep Network <support@lockstep.io>
10
+ # @copyright 2021-2022 Lockstep, Inc.
11
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
12
+ #
13
+
14
+
15
+ require 'json'
16
+
17
+ module LockstepSdk
18
+
19
+ ##
20
+ # Represents the group totals for the values found in the daily payable outstanding summary
21
+ class DpoSummaryGroupTotalModel
22
+
23
+ ##
24
+ # Initialize the DpoSummaryGroupTotalModel using the provided prototype
25
+ def initialize(params = {})
26
+ @group_key = params.dig(:group_key)
27
+ @vendors = params.dig(:vendors)
28
+ @bills = params.dig(:bills)
29
+ @amount_outstanding = params.dig(:amount_outstanding)
30
+ @dpo = params.dig(:dpo)
31
+ end
32
+
33
+ ##
34
+ # @return [Uuid] The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
35
+ attr_accessor :group_key
36
+
37
+ ##
38
+ # @return [Int32] The total number of vendors with outstanding bills
39
+ attr_accessor :vendors
40
+
41
+ ##
42
+ # @return [Int32] The total number of bills outstanding
43
+ attr_accessor :bills
44
+
45
+ ##
46
+ # @return [Double] The total amount outstanding
47
+ attr_accessor :amount_outstanding
48
+
49
+ ##
50
+ # @return [Double] The total dpo for the group key
51
+ attr_accessor :dpo
52
+
53
+ ##
54
+ # @return [object] This object as a JSON key-value structure
55
+ def as_json(options={})
56
+ {
57
+ 'groupKey' => @group_key,
58
+ 'vendors' => @vendors,
59
+ 'bills' => @bills,
60
+ 'amountOutstanding' => @amount_outstanding,
61
+ 'dpo' => @dpo,
62
+ }
63
+ end
64
+
65
+ ##
66
+ # @return [String] This object converted to a JSON string
67
+ def to_json(*options)
68
+ "[#{as_json(*options).to_json(*options)}]"
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,83 @@
1
+ #
2
+ # Lockstep Platform SDK for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Lockstep Network <support@lockstep.io>
10
+ # @copyright 2021-2022 Lockstep, Inc.
11
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
12
+ #
13
+
14
+
15
+ require 'json'
16
+
17
+ module LockstepSdk
18
+
19
+ ##
20
+ # Represents a summary of outstanding amounts for bills to vendors and their associated daily payable outstanding value.
21
+ class DpoSummaryModel
22
+
23
+ ##
24
+ # Initialize the DpoSummaryModel using the provided prototype
25
+ def initialize(params = {})
26
+ @group_key = params.dig(:group_key)
27
+ @vendor_id = params.dig(:vendor_id)
28
+ @vendor_name = params.dig(:vendor_name)
29
+ @primary_contact = params.dig(:primary_contact)
30
+ @bills = params.dig(:bills)
31
+ @amount_outstanding = params.dig(:amount_outstanding)
32
+ @dpo = params.dig(:dpo)
33
+ end
34
+
35
+ ##
36
+ # @return [Uuid] The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
37
+ attr_accessor :group_key
38
+
39
+ ##
40
+ # @return [Uuid] The unique ID of the vendor.
41
+ attr_accessor :vendor_id
42
+
43
+ ##
44
+ # @return [String] The name of the vendor.
45
+ attr_accessor :vendor_name
46
+
47
+ ##
48
+ # @return [String] The name of the primary contact.
49
+ attr_accessor :primary_contact
50
+
51
+ ##
52
+ # @return [Int32] The total number of outstanding bills.
53
+ attr_accessor :bills
54
+
55
+ ##
56
+ # @return [Double] The total amount outstanding.
57
+ attr_accessor :amount_outstanding
58
+
59
+ ##
60
+ # @return [Double] The days payable outstanding value.
61
+ attr_accessor :dpo
62
+
63
+ ##
64
+ # @return [object] This object as a JSON key-value structure
65
+ def as_json(options={})
66
+ {
67
+ 'groupKey' => @group_key,
68
+ 'vendorId' => @vendor_id,
69
+ 'vendorName' => @vendor_name,
70
+ 'primaryContact' => @primary_contact,
71
+ 'bills' => @bills,
72
+ 'amountOutstanding' => @amount_outstanding,
73
+ 'dpo' => @dpo,
74
+ }
75
+ end
76
+
77
+ ##
78
+ # @return [String] This object converted to a JSON string
79
+ def to_json(*options)
80
+ "[#{as_json(*options).to_json(*options)}]"
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,77 @@
1
+ #
2
+ # Lockstep Platform SDK for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Lockstep Network <support@lockstep.io>
10
+ # @copyright 2021-2022 Lockstep, Inc.
11
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
12
+ #
13
+
14
+
15
+ require 'json'
16
+
17
+ module LockstepSdk
18
+
19
+ ##
20
+ # Represents a failed API request.
21
+ class ErrorResult
22
+
23
+ ##
24
+ # Initialize the ErrorResult using the provided prototype
25
+ def initialize(params = {})
26
+ @type = params.dig(:type)
27
+ @title = params.dig(:title)
28
+ @status = params.dig(:status)
29
+ @detail = params.dig(:detail)
30
+ @instance = params.dig(:instance)
31
+ @content = params.dig(:content)
32
+ end
33
+
34
+ ##
35
+ # @return [String] A description of the type of error that occurred.
36
+ attr_accessor :type
37
+
38
+ ##
39
+ # @return [String] A short title describing the error.
40
+ attr_accessor :title
41
+
42
+ ##
43
+ # @return [Int32] If an error code is applicable, this contains an error number.
44
+ attr_accessor :status
45
+
46
+ ##
47
+ # @return [String] If detailed information about this error is available, this value contains more information.
48
+ attr_accessor :detail
49
+
50
+ ##
51
+ # @return [String] If this error corresponds to a specific instance or object, this field indicates which one.
52
+ attr_accessor :instance
53
+
54
+ ##
55
+ # @return [String] The full content of the HTTP response.
56
+ attr_accessor :content
57
+
58
+ ##
59
+ # @return [object] This object as a JSON key-value structure
60
+ def as_json(options={})
61
+ {
62
+ 'type' => @type,
63
+ 'title' => @title,
64
+ 'status' => @status,
65
+ 'detail' => @detail,
66
+ 'instance' => @instance,
67
+ 'content' => @content,
68
+ }
69
+ end
70
+
71
+ ##
72
+ # @return [String] This object converted to a JSON string
73
+ def to_json(*options)
74
+ "[#{as_json(*options).to_json(*options)}]"
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,101 @@
1
+ #
2
+ # Lockstep Platform SDK for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Lockstep Network <support@lockstep.io>
10
+ # @copyright 2021-2022 Lockstep, Inc.
11
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
12
+ #
13
+
14
+
15
+ require 'json'
16
+
17
+ module LockstepSdk
18
+
19
+ ##
20
+ # Represents an account for an entire group
21
+ class GroupAccountModel
22
+
23
+ ##
24
+ # Initialize the GroupAccountModel using the provided prototype
25
+ def initialize(params = {})
26
+ @group_key = params.dig(:group_key)
27
+ @group_name = params.dig(:group_name)
28
+ @primary_user_id = params.dig(:primary_user_id)
29
+ @group_company_id = params.dig(:group_company_id)
30
+ @is_active = params.dig(:is_active)
31
+ @onboarding_scheduled = params.dig(:onboarding_scheduled)
32
+ @created = params.dig(:created)
33
+ @created_user_id = params.dig(:created_user_id)
34
+ @modified = params.dig(:modified)
35
+ @modified_user_id = params.dig(:modified_user_id)
36
+ end
37
+
38
+ ##
39
+ # @return [Uuid] The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
40
+ attr_accessor :group_key
41
+
42
+ ##
43
+ # @return [String] The name of the group
44
+ attr_accessor :group_name
45
+
46
+ ##
47
+ # @return [Uuid] The primary user for the group
48
+ attr_accessor :primary_user_id
49
+
50
+ ##
51
+ # @return [Uuid] The CompanyId of the Company the group is associated with
52
+ attr_accessor :group_company_id
53
+
54
+ ##
55
+ # @return [Boolean] The active status of the group
56
+ attr_accessor :is_active
57
+
58
+ ##
59
+ # @return [Boolean] The onboarding session status of the group
60
+ attr_accessor :onboarding_scheduled
61
+
62
+ ##
63
+ # @return [Date-time] The date this group account was created
64
+ attr_accessor :created
65
+
66
+ ##
67
+ # @return [Uuid] The ID of the user who created this group account
68
+ attr_accessor :created_user_id
69
+
70
+ ##
71
+ # @return [Date-time] The date this group account was last modified
72
+ attr_accessor :modified
73
+
74
+ ##
75
+ # @return [Uuid] The ID of the user who last modified this group account
76
+ attr_accessor :modified_user_id
77
+
78
+ ##
79
+ # @return [object] This object as a JSON key-value structure
80
+ def as_json(options={})
81
+ {
82
+ 'groupKey' => @group_key,
83
+ 'groupName' => @group_name,
84
+ 'primaryUserId' => @primary_user_id,
85
+ 'groupCompanyId' => @group_company_id,
86
+ 'isActive' => @is_active,
87
+ 'onboardingScheduled' => @onboarding_scheduled,
88
+ 'created' => @created,
89
+ 'createdUserId' => @created_user_id,
90
+ 'modified' => @modified,
91
+ 'modifiedUserId' => @modified_user_id,
92
+ }
93
+ end
94
+
95
+ ##
96
+ # @return [String] This object converted to a JSON string
97
+ def to_json(*options)
98
+ "[#{as_json(*options).to_json(*options)}]"
99
+ end
100
+ end
101
+ end
@@ -152,7 +152,7 @@ module LockstepSdk
152
152
  attr_accessor :origin_address_postal_code
153
153
 
154
154
  ##
155
- # @return [String] Origination address for this invoice line, if this line item was originated from a different address This will be validated by the /api/v1/definitions/countries data set
155
+ # @return [String] Origination address for this invoice line, if this line item was originated from a different address
156
156
  attr_accessor :origin_address_country
157
157
 
158
158
  ##
@@ -188,7 +188,7 @@ module LockstepSdk
188
188
  attr_accessor :bill_to_address_postal_code
189
189
 
190
190
  ##
191
- # @return [String] Billing address for this invoice line, if this line item is to be billed to a different address This will be validated by the /api/v1/definitions/countries data set
191
+ # @return [String] Billing address for this invoice line, if this line item is to be billed to a different address
192
192
  attr_accessor :bill_to_address_country
193
193
 
194
194
  ##
@@ -224,7 +224,7 @@ module LockstepSdk
224
224
  attr_accessor :ship_to_address_postal_code
225
225
 
226
226
  ##
227
- # @return [String] Shipping address for this invoice line, if this line item is to be shipped to a different address This will be validated by the /api/v1/definitions/countries data set
227
+ # @return [String] Shipping address for this invoice line, if this line item is to be shipped to a different address
228
228
  attr_accessor :ship_to_address_country
229
229
 
230
230
  ##
@@ -63,6 +63,7 @@ module LockstepSdk
63
63
  @is_voided = params.dig(:is_voided)
64
64
  @in_dispute = params.dig(:in_dispute)
65
65
  @exclude_from_aging = params.dig(:exclude_from_aging)
66
+ @preferred_delivery_method = params.dig(:preferred_delivery_method)
66
67
  @addresses = params.dig(:addresses)
67
68
  @lines = params.dig(:lines)
68
69
  @payments = params.dig(:payments)
@@ -113,7 +114,7 @@ module LockstepSdk
113
114
  attr_accessor :salesperson_name
114
115
 
115
116
  ##
116
- # @return [String] A code identifying the type of this invoice. Recognized Invoice types are: * `Invoice` - Represents an invoice sent by Company to the Customer * `AP Invoice` - Represents an invoice sent by Customer to the Company * `Credit Memo` - Represents a credit memo generated by Customer given to Company
117
+ # @return [String] A code identifying the type of this invoice. Recognized Invoice types are: * `AR Invoice` - Represents an invoice sent by Company to the Customer * `AP Invoice` - Represents an invoice sent by Vendor to the Company * `AR Credit Memo` - Represents a credit memo generated by Company given to Customer * `AP Credit Memo` - Represents a credit memo generated by Vendor given to Company
117
118
  attr_accessor :invoice_type_code
118
119
 
119
120
  ##
@@ -216,6 +217,10 @@ module LockstepSdk
216
217
  # @return [Boolean] Should the invoice be excluded from aging calculations?
217
218
  attr_accessor :exclude_from_aging
218
219
 
220
+ ##
221
+ # @return [String] Indicates the preferred delivery method for this invoice. Examples include Print, Email, Fax
222
+ attr_accessor :preferred_delivery_method
223
+
219
224
  ##
220
225
  # @return [InvoiceAddressModel] All addresses connected to this invoice. To retrieve this collection, specify `Addresses` in the "Include" parameter for your query.
221
226
  attr_accessor :addresses
@@ -299,6 +304,7 @@ module LockstepSdk
299
304
  'isVoided' => @is_voided,
300
305
  'inDispute' => @in_dispute,
301
306
  'excludeFromAging' => @exclude_from_aging,
307
+ 'preferredDeliveryMethod' => @preferred_delivery_method,
302
308
  'addresses' => @addresses,
303
309
  'lines' => @lines,
304
310
  'payments' => @payments,
@@ -28,6 +28,7 @@ module LockstepSdk
28
28
  @invoice_id = params.dig(:invoice_id)
29
29
  @invoice_number = params.dig(:invoice_number)
30
30
  @invoice_date = params.dig(:invoice_date)
31
+ @invoice_closed_date = params.dig(:invoice_closed_date)
31
32
  @customer_name = params.dig(:customer_name)
32
33
  @status = params.dig(:status)
33
34
  @payment_due_date = params.dig(:payment_due_date)
@@ -60,6 +61,10 @@ module LockstepSdk
60
61
  # @return [Date] The reporting date for this invoice.
61
62
  attr_accessor :invoice_date
62
63
 
64
+ ##
65
+ # @return [Date] The date when the invoice was closed and finalized after completion of all payments and delivery of all products and services.
66
+ attr_accessor :invoice_closed_date
67
+
63
68
  ##
64
69
  # @return [String] The name of the counterparty for the invoice, for example, a customer or vendor.
65
70
  attr_accessor :customer_name
@@ -109,6 +114,7 @@ module LockstepSdk
109
114
  'invoiceId' => @invoice_id,
110
115
  'invoiceNumber' => @invoice_number,
111
116
  'invoiceDate' => @invoice_date,
117
+ 'invoiceClosedDate' => @invoice_closed_date,
112
118
  'customerName' => @customer_name,
113
119
  'status' => @status,
114
120
  'paymentDueDate' => @payment_due_date,
@@ -84,6 +84,7 @@ module LockstepSdk
84
84
  @modified = params.dig(:modified)
85
85
  @is_voided = params.dig(:is_voided)
86
86
  @in_dispute = params.dig(:in_dispute)
87
+ @preferred_delivery_method = params.dig(:preferred_delivery_method)
87
88
  end
88
89
 
89
90
  ##
@@ -115,7 +116,7 @@ module LockstepSdk
115
116
  attr_accessor :salesperson_code
116
117
 
117
118
  ##
118
- # @return [String] A code identifying the type of this invoice. Recognized Invoice types are: * `Invoice` - Represents an invoice sent by Company to the Customer * `AP Invoice` - Represents an invoice sent by Vendor to the Company * `Credit Memo` - Represents a credit memo generated by Company given to Customer * `AP Credit Memo` - Represents a credit memo generated by Vendor given to Company
119
+ # @return [String] A code identifying the type of this invoice. Recognized Invoice types are: * `AR Invoice` - Represents an invoice sent by Company to the Customer * `AP Invoice` - Represents an invoice sent by Vendor to the Company * `AR Credit Memo` - Represents a credit memo generated by Company given to Customer * `AP Credit Memo` - Represents a credit memo generated by Vendor given to Company
119
120
  attr_accessor :invoice_type_code
120
121
 
121
122
  ##
@@ -199,7 +200,7 @@ module LockstepSdk
199
200
  attr_accessor :origin_address_postal_code
200
201
 
201
202
  ##
202
- # @return [String] The origination address for this invoice This will be validated by the /api/v1/definitions/countries data set
203
+ # @return [String] The origination address for this invoice
203
204
  attr_accessor :origin_address_country
204
205
 
205
206
  ##
@@ -235,7 +236,7 @@ module LockstepSdk
235
236
  attr_accessor :bill_to_address_postal_code
236
237
 
237
238
  ##
238
- # @return [String] The billing address for this invoice This will be validated by the /api/v1/definitions/countries data set
239
+ # @return [String] The billing address for this invoice
239
240
  attr_accessor :bill_to_address_country
240
241
 
241
242
  ##
@@ -271,7 +272,7 @@ module LockstepSdk
271
272
  attr_accessor :ship_to_address_postal_code
272
273
 
273
274
  ##
274
- # @return [String] The shipping address for this invoice This will be validated by the /api/v1/definitions/countries data set
275
+ # @return [String] The shipping address for this invoice
275
276
  attr_accessor :ship_to_address_country
276
277
 
277
278
  ##
@@ -298,6 +299,10 @@ module LockstepSdk
298
299
  # @return [Boolean] Is the invoice in dispute? If not specified, we assume the invoice is not in dispute.
299
300
  attr_accessor :in_dispute
300
301
 
302
+ ##
303
+ # @return [String] Indicates the preferred delivery method for this invoice. Examples include Print, Email, Fax
304
+ attr_accessor :preferred_delivery_method
305
+
301
306
  ##
302
307
  # @return [object] This object as a JSON key-value structure
303
308
  def as_json(options={})
@@ -355,6 +360,7 @@ module LockstepSdk
355
360
  'modified' => @modified,
356
361
  'isVoided' => @is_voided,
357
362
  'inDispute' => @in_dispute,
363
+ 'preferredDeliveryMethod' => @preferred_delivery_method,
358
364
  }
359
365
  end
360
366