lockstep_rails 0.3.22

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 (174) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +216 -0
  4. data/Rakefile +31 -0
  5. data/app/assets/config/lockstep_rails_manifest.js +0 -0
  6. data/app/concepts/lockstep/active_records/association.rb +78 -0
  7. data/app/concepts/lockstep/api_record.rb +1118 -0
  8. data/app/concepts/lockstep/api_records/scopes.rb +20 -0
  9. data/app/concepts/lockstep/client.rb +162 -0
  10. data/app/concepts/lockstep/error.rb +50 -0
  11. data/app/concepts/lockstep/exceptions.rb +4 -0
  12. data/app/concepts/lockstep/query.rb +409 -0
  13. data/app/concepts/lockstep/query_methods.rb +75 -0
  14. data/app/concepts/lockstep/relation_array.rb +100 -0
  15. data/app/helpers/types.rb +3 -0
  16. data/app/models/lockstep/account.rb +15 -0
  17. data/app/models/lockstep/connection.rb +19 -0
  18. data/app/models/lockstep/contact.rb +9 -0
  19. data/app/models/lockstep/customer_summary.rb +6 -0
  20. data/app/models/lockstep/invoice.rb +7 -0
  21. data/app/models/lockstep/invoice_summary.rb +6 -0
  22. data/app/models/lockstep/invoices/address.rb +24 -0
  23. data/app/models/lockstep/note.rb +7 -0
  24. data/app/models/lockstep/payment.rb +7 -0
  25. data/app/models/lockstep/payment_summary.rb +6 -0
  26. data/app/models/lockstep/user.rb +10 -0
  27. data/app/platform_api/model_template.rb.erb +27 -0
  28. data/app/platform_api/schema/action_result.rb +15 -0
  29. data/app/platform_api/schema/activity.rb +141 -0
  30. data/app/platform_api/schema/activity_fetch_result.rb +26 -0
  31. data/app/platform_api/schema/activity_stream_item.rb +58 -0
  32. data/app/platform_api/schema/activity_x_ref.rb +37 -0
  33. data/app/platform_api/schema/aging.rb +24 -0
  34. data/app/platform_api/schema/api_key.rb +71 -0
  35. data/app/platform_api/schema/api_key_fetch_result.rb +26 -0
  36. data/app/platform_api/schema/app_enrollment.rb +88 -0
  37. data/app/platform_api/schema/app_enrollment_custom_field.rb +67 -0
  38. data/app/platform_api/schema/app_enrollment_custom_field_fetch_result.rb +26 -0
  39. data/app/platform_api/schema/app_enrollment_fetch_result.rb +26 -0
  40. data/app/platform_api/schema/application.rb +89 -0
  41. data/app/platform_api/schema/application_fetch_result.rb +26 -0
  42. data/app/platform_api/schema/ar_aging_header_info.rb +47 -0
  43. data/app/platform_api/schema/ar_header_info.rb +118 -0
  44. data/app/platform_api/schema/assembly.rb +68 -0
  45. data/app/platform_api/schema/at_risk_invoice_summary.rb +90 -0
  46. data/app/platform_api/schema/at_risk_invoice_summary_fetch_result.rb +26 -0
  47. data/app/platform_api/schema/attachment.rb +92 -0
  48. data/app/platform_api/schema/attachment_fetch_result.rb +26 -0
  49. data/app/platform_api/schema/attachment_header_info.rb +41 -0
  50. data/app/platform_api/schema/batch_sync.rb +18 -0
  51. data/app/platform_api/schema/bulk_currency_conversion.rb +19 -0
  52. data/app/platform_api/schema/cashflow_report.rb +35 -0
  53. data/app/platform_api/schema/code_definition.rb +58 -0
  54. data/app/platform_api/schema/code_definition_fetch_result.rb +26 -0
  55. data/app/platform_api/schema/company.rb +243 -0
  56. data/app/platform_api/schema/company_fetch_result.rb +26 -0
  57. data/app/platform_api/schema/company_sync.rb +142 -0
  58. data/app/platform_api/schema/connector_info.rb +27 -0
  59. data/app/platform_api/schema/constructor_info.rb +128 -0
  60. data/app/platform_api/schema/contact.rb +148 -0
  61. data/app/platform_api/schema/contact_fetch_result.rb +26 -0
  62. data/app/platform_api/schema/contact_sync.rb +109 -0
  63. data/app/platform_api/schema/country.rb +62 -0
  64. data/app/platform_api/schema/country_fetch_result.rb +26 -0
  65. data/app/platform_api/schema/credit_memo_applied.rb +104 -0
  66. data/app/platform_api/schema/credit_memo_applied_fetch_result.rb +26 -0
  67. data/app/platform_api/schema/credit_memo_applied_sync.rb +67 -0
  68. data/app/platform_api/schema/credit_memo_invoice.rb +77 -0
  69. data/app/platform_api/schema/currency.rb +31 -0
  70. data/app/platform_api/schema/currency_fetch_result.rb +26 -0
  71. data/app/platform_api/schema/currency_rate.rb +28 -0
  72. data/app/platform_api/schema/custom_attribute_data.rb +18 -0
  73. data/app/platform_api/schema/custom_attribute_named_argument.rb +24 -0
  74. data/app/platform_api/schema/custom_attribute_typed_argument.rb +16 -0
  75. data/app/platform_api/schema/custom_field_definition.rb +76 -0
  76. data/app/platform_api/schema/custom_field_definition_fetch_result.rb +26 -0
  77. data/app/platform_api/schema/custom_field_sync.rb +71 -0
  78. data/app/platform_api/schema/custom_field_value.rb +75 -0
  79. data/app/platform_api/schema/custom_field_value_fetch_result.rb +26 -0
  80. data/app/platform_api/schema/customer_details.rb +98 -0
  81. data/app/platform_api/schema/customer_details_payment.rb +60 -0
  82. data/app/platform_api/schema/customer_summary.rb +88 -0
  83. data/app/platform_api/schema/customer_summary_fetch_result.rb +26 -0
  84. data/app/platform_api/schema/daily_sales_outstanding_report.rb +25 -0
  85. data/app/platform_api/schema/developer_account_submit.rb +23 -0
  86. data/app/platform_api/schema/email.rb +160 -0
  87. data/app/platform_api/schema/email_fetch_result.rb +26 -0
  88. data/app/platform_api/schema/erp.rb +23 -0
  89. data/app/platform_api/schema/erp_fetch_result.rb +26 -0
  90. data/app/platform_api/schema/erp_info.rb +18 -0
  91. data/app/platform_api/schema/erp_info_data.rb +23 -0
  92. data/app/platform_api/schema/event_info.rb +59 -0
  93. data/app/platform_api/schema/exception.rb +41 -0
  94. data/app/platform_api/schema/field_info.rb +105 -0
  95. data/app/platform_api/schema/financial_account.rb +90 -0
  96. data/app/platform_api/schema/financial_account_balance_history.rb +90 -0
  97. data/app/platform_api/schema/financial_account_balance_history_fetch_result.rb +26 -0
  98. data/app/platform_api/schema/financial_account_fetch_result.rb +26 -0
  99. data/app/platform_api/schema/financial_year_setting.rb +74 -0
  100. data/app/platform_api/schema/financial_year_setting_fetch_result.rb +26 -0
  101. data/app/platform_api/schema/invite.rb +25 -0
  102. data/app/platform_api/schema/invite_data.rb +18 -0
  103. data/app/platform_api/schema/invite_submit.rb +15 -0
  104. data/app/platform_api/schema/invoice.rb +226 -0
  105. data/app/platform_api/schema/invoice_address.rb +97 -0
  106. data/app/platform_api/schema/invoice_fetch_result.rb +29 -0
  107. data/app/platform_api/schema/invoice_history.rb +188 -0
  108. data/app/platform_api/schema/invoice_history_fetch_result.rb +26 -0
  109. data/app/platform_api/schema/invoice_line.rb +142 -0
  110. data/app/platform_api/schema/invoice_line_sync.rb +208 -0
  111. data/app/platform_api/schema/invoice_payment_detail.rb +65 -0
  112. data/app/platform_api/schema/invoice_summary.rb +85 -0
  113. data/app/platform_api/schema/invoice_summary_fetch_result.rb +26 -0
  114. data/app/platform_api/schema/invoice_sync.rb +280 -0
  115. data/app/platform_api/schema/lead.rb +32 -0
  116. data/app/platform_api/schema/member_info.rb +36 -0
  117. data/app/platform_api/schema/method_base.rb +128 -0
  118. data/app/platform_api/schema/method_info.rb +137 -0
  119. data/app/platform_api/schema/module.rb +44 -0
  120. data/app/platform_api/schema/module_handle.rb +15 -0
  121. data/app/platform_api/schema/note.rb +72 -0
  122. data/app/platform_api/schema/note_fetch_result.rb +26 -0
  123. data/app/platform_api/schema/parameter_info.rb +64 -0
  124. data/app/platform_api/schema/payment.rb +147 -0
  125. data/app/platform_api/schema/payment_applied.rb +95 -0
  126. data/app/platform_api/schema/payment_applied_fetch_result.rb +26 -0
  127. data/app/platform_api/schema/payment_applied_sync.rb +74 -0
  128. data/app/platform_api/schema/payment_detail.rb +110 -0
  129. data/app/platform_api/schema/payment_detail_fetch_result.rb +26 -0
  130. data/app/platform_api/schema/payment_detail_header.rb +43 -0
  131. data/app/platform_api/schema/payment_fetch_result.rb +26 -0
  132. data/app/platform_api/schema/payment_summary.rb +79 -0
  133. data/app/platform_api/schema/payment_summary_fetch_result.rb +26 -0
  134. data/app/platform_api/schema/payment_sync.rb +112 -0
  135. data/app/platform_api/schema/problem_details.rb +31 -0
  136. data/app/platform_api/schema/property_info.rb +60 -0
  137. data/app/platform_api/schema/provisioning.rb +28 -0
  138. data/app/platform_api/schema/provisioning_finalize_request.rb +28 -0
  139. data/app/platform_api/schema/provisioning_response.rb +42 -0
  140. data/app/platform_api/schema/risk_rate.rb +57 -0
  141. data/app/platform_api/schema/runtime_field_handle.rb +13 -0
  142. data/app/platform_api/schema/runtime_method_handle.rb +13 -0
  143. data/app/platform_api/schema/runtime_type_handle.rb +13 -0
  144. data/app/platform_api/schema/state.rb +22 -0
  145. data/app/platform_api/schema/state_fetch_result.rb +26 -0
  146. data/app/platform_api/schema/status.rb +72 -0
  147. data/app/platform_api/schema/struct_layout_attribute.rb +16 -0
  148. data/app/platform_api/schema/sync_entity_result.rb +34 -0
  149. data/app/platform_api/schema/sync_request.rb +71 -0
  150. data/app/platform_api/schema/sync_request_fetch_result.rb +26 -0
  151. data/app/platform_api/schema/sync_submit.rb +15 -0
  152. data/app/platform_api/schema/test_argument_exception.rb +41 -0
  153. data/app/platform_api/schema/test_timeout_exception.rb +41 -0
  154. data/app/platform_api/schema/transfer_owner.rb +16 -0
  155. data/app/platform_api/schema/transfer_owner_submit.rb +15 -0
  156. data/app/platform_api/schema/type.rb +278 -0
  157. data/app/platform_api/schema/type_info.rb +287 -0
  158. data/app/platform_api/schema/uri.rb +15 -0
  159. data/app/platform_api/schema/user_account.rb +152 -0
  160. data/app/platform_api/schema/user_account_fetch_result.rb +26 -0
  161. data/app/platform_api/schema/user_role.rb +50 -0
  162. data/app/platform_api/schema/user_role_fetch_result.rb +26 -0
  163. data/app/platform_api/schema/webhook.rb +96 -0
  164. data/app/platform_api/schema/webhook_fetch_result.rb +26 -0
  165. data/app/platform_api/schema/webhook_history_table_storage.rb +64 -0
  166. data/app/platform_api/schema/webhook_history_table_storage_fetch_result.rb +26 -0
  167. data/app/platform_api/swagger.json +22056 -0
  168. data/config/routes.rb +2 -0
  169. data/lib/lockstep_rails/engine.rb +4 -0
  170. data/lib/lockstep_rails/version.rb +3 -0
  171. data/lib/lockstep_rails.rb +5 -0
  172. data/lib/tasks/lockstep_rails_tasks.rake +4 -0
  173. data/lib/tasks/update_api_schema.rake +159 -0
  174. metadata +230 -0
@@ -0,0 +1,226 @@
1
+ class Schema::Invoice < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
9
+ # account will share the same GroupKey value. GroupKey values cannot be changed once created.
10
+ #
11
+ # For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
12
+ # @type: string
13
+ # @format: uuid
14
+ field :group_key
15
+
16
+ # The unique ID of this record, automatically assigned by Lockstep when this record is
17
+ # added to the Lockstep platform.
18
+ #
19
+ # For the ID of this record in its originating financial system, see `ErpKey`.
20
+ # @type: string
21
+ # @format: uuid
22
+ field :invoice_id
23
+
24
+ # The ID number of the company that created this invoice.
25
+ # @type: string
26
+ # @format: uuid
27
+ field :company_id
28
+
29
+ # The ID number of the counterparty for the invoice, for example, a customer or vendor.
30
+ # @type: string
31
+ # @format: uuid
32
+ field :customer_id
33
+
34
+ # The unique ID of this record as it was known in its originating financial system.
35
+ #
36
+ # If this company record was imported from a financial system, it will have the value `ErpKey`
37
+ # set to the original primary key number of the record as it was known in the originating financial
38
+ # system. If this record was not imported, this value will be `null`.
39
+ #
40
+ # For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
41
+ # @type: string
42
+ field :erp_key
43
+
44
+ # The "Purchase Order Code" is a code that is sometimes used by companies to refer to the original PO
45
+ # that was sent that caused this invoice to be written. If a customer sends a purchase order to a vendor,
46
+ # the vendor can then create an invoice and refer back to the originating purchase order using this field.
47
+ # @type: string
48
+ field :purchase_order_code
49
+
50
+ # An additional reference code that is sometimes used to identify this invoice.
51
+ # The meaning of this field is specific to the ERP or accounting system used by the user.
52
+ # @type: string
53
+ field :reference_code
54
+
55
+ # A code identifying the salesperson responsible for writing this quote, invoice, or order.
56
+ # @type: string
57
+ field :salesperson_code
58
+
59
+ # A name identifying the salesperson responsible for writing this quote, invoice, or order.
60
+ # @type: string
61
+ field :salesperson_name
62
+
63
+ # A code identifying the type of this invoice.
64
+ #
65
+ # Recognized Invoice types are:
66
+ # * `Invoice` - Represents an invoice sent by Company to the Customer
67
+ # * `AP Invoice` - Represents an invoice sent by Customer to the Company
68
+ # * `Credit Memo` - Represents a credit memo generated by Customer given to Company
69
+ # @type: string
70
+ field :invoice_type_code
71
+
72
+ # A code identifying the status of this invoice.
73
+ #
74
+ # Recognized Invoice status codes are:
75
+ # * `Open` - Represents an invoice that is considered open and needs more work to complete
76
+ # * `Closed` - Represents an invoice that is considered closed and resolved
77
+ # @type: string
78
+ field :invoice_status_code
79
+
80
+ # A code identifying the terms given to the purchaser. This field is imported directly from the originating
81
+ # financial system and does not follow a specified format.
82
+ # @type: string
83
+ field :terms_code
84
+
85
+ # If the customer negotiated any special terms different from the standard terms above, describe them here.
86
+ # @type: string
87
+ field :special_terms
88
+
89
+ # The three-character ISO 4217 currency code used for this invoice.
90
+ # @type: string
91
+ field :currency_code
92
+
93
+ # The total value of this invoice, inclusive of all taxes and line items.
94
+ # @type: number
95
+ # @format: double
96
+ field :total_amount
97
+
98
+ # The total sales (or transactional) tax calculated for this invoice.
99
+ # @type: number
100
+ # @format: double
101
+ field :sales_tax_amount
102
+
103
+ # The total discounts given by the seller to the buyer on this invoice.
104
+ # @type: number
105
+ # @format: double
106
+ field :discount_amount
107
+
108
+ # The remaining balance value of this invoice.
109
+ # @type: number
110
+ # @format: double
111
+ field :outstanding_balance_amount
112
+
113
+ # The reporting date for this invoice.
114
+ # @type: string
115
+ # @format: date
116
+ field :invoice_date
117
+
118
+ # The date when discounts were adjusted for this invoice.
119
+ # @type: string
120
+ # @format: date
121
+ field :discount_date
122
+
123
+ # The date when this invoice posted to the company's general ledger.
124
+ # @type: string
125
+ # @format: date
126
+ field :posted_date
127
+
128
+ # The date when the invoice was closed and finalized after completion of all payments and delivery of all products and
129
+ # services.
130
+ # @type: string
131
+ # @format: date
132
+ field :invoice_closed_date
133
+
134
+ # The date when the remaining outstanding balance is due.
135
+ # @type: string
136
+ # @format: date
137
+ field :payment_due_date
138
+
139
+ # The date and time when this record was imported from the user's ERP or accounting system.
140
+ # @type: string
141
+ # @format: date-time
142
+ field :imported_date, Types::Params::DateTime
143
+
144
+ # The ID number of the invoice's origination address
145
+ # @type: string
146
+ # @format: uuid
147
+ field :primary_origin_address_id
148
+
149
+ # The ID number of the invoice's bill-to address
150
+ # @type: string
151
+ # @format: uuid
152
+ field :primary_bill_to_address_id
153
+
154
+ # The ID number of the invoice's ship-to address
155
+ # @type: string
156
+ # @format: uuid
157
+ field :primary_ship_to_address_id
158
+
159
+ # The date on which this invoice record was created.
160
+ # @type: string
161
+ # @format: date-time
162
+ field :created, Types::Params::DateTime
163
+
164
+ # The ID number of the user who created this invoice.
165
+ # @type: string
166
+ # @format: uuid
167
+ field :created_user_id
168
+
169
+ # The date on which this invoice record was last modified.
170
+ # @type: string
171
+ # @format: date-time
172
+ field :modified, Types::Params::DateTime
173
+
174
+ # The ID number of the user who most recently modified this invoice.
175
+ # @type: string
176
+ # @format: uuid
177
+ field :modified_user_id
178
+
179
+ # The AppEnrollmentId of the application that imported this record. For accounts
180
+ # with more than one financial system connected, this field identifies the originating
181
+ # financial system that produced this record. This value is null if this record
182
+ # was not loaded from an external ERP or financial system.
183
+ # @type: string
184
+ # @format: uuid
185
+ field :app_enrollment_id
186
+
187
+ # Is the invoice voided?
188
+ # @type: boolean
189
+ field :is_voided
190
+
191
+ # Is the invoice in dispute?
192
+ # @type: boolean
193
+ field :in_dispute
194
+
195
+ # Should the invoice be excluded from aging calculations?
196
+ # @type: boolean
197
+ field :exclude_from_aging
198
+
199
+ # The Company associated to this invoice.
200
+ # To retrieve this item, specify `Company` in the "Include" parameter for your query.
201
+ field :company
202
+
203
+ # The Customer associated to the invoice customer
204
+ # To retrieve this item, specify `Customer` in the "Include" parameter for your query.
205
+ field :customer
206
+
207
+ # The Contact associated to the invoice customer
208
+ # To retrieve this item, specify `Customer` in the "Include" parameter for your query.
209
+ field :customer_primary_contact
210
+
211
+ belongs_to :company, { :class_name => "Lockstep::Account", :primary_key => :company_id, :foreign_key => "company_id" }
212
+ belongs_to :account, { :class_name => "Lockstep::Account", :primary_key => :company_id, :foreign_key => "company_id" }
213
+ belongs_to :customer, { :class_name => "Lockstep::Connection", :primary_key => :company_id, :foreign_key => "customer_id" }
214
+ belongs_to :connection, { :class_name => "Lockstep::Connection", :primary_key => :company_id, :foreign_key => "customer_id" }
215
+ belongs_to :created_user, { :class_name => "Lockstep::User", :primary_key => :user_id, :foreign_key => "created_user_id" }
216
+ belongs_to :modified_user, { :class_name => "Lockstep::User", :primary_key => :user_id, :foreign_key => "modified_user_id" }
217
+
218
+ has_many :addresses, { :class_name => "Schema::InvoiceAddress", :included => true }
219
+ has_many :lines, { :class_name => "Schema::InvoiceLine", :included => true }
220
+ has_many :payments, { :class_name => "Schema::InvoicePaymentDetail", :included => true }
221
+ has_many :notes, { :class_name => "Lockstep::Note", :included => true, :foreign_key => :object_key, :polymorphic => { :table_key => "Invoice" } }
222
+ has_many :attachments, { :class_name => "Schema::Attachment", :included => true }
223
+ has_many :credit_memos, { :class_name => "Schema::CreditMemoInvoice", :included => true }
224
+ has_many :custom_field_values, { :class_name => "Schema::CustomFieldValue", :included => true }
225
+ has_many :custom_field_definitions, { :class_name => "Schema::CustomFieldDefinition", :included => true }
226
+ end
@@ -0,0 +1,97 @@
1
+ class Schema::InvoiceAddress < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The unique ID of this record, automatically assigned by Lockstep when this record is
9
+ # added to the Lockstep platform.
10
+ # @type: string
11
+ # @format: uuid
12
+ field :invoice_address_id
13
+
14
+ # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
15
+ # account will share the same GroupKey value. GroupKey values cannot be changed once created.
16
+ #
17
+ # For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
18
+ # @type: string
19
+ # @format: uuid
20
+ field :group_key
21
+
22
+ # The ID number of the invoice this address belongs to
23
+ # @type: string
24
+ # @format: uuid
25
+ field :invoice_id
26
+
27
+ # The first line of the address.
28
+ # @type: string
29
+ field :line1
30
+
31
+ # The second line of the address.
32
+ # @type: string
33
+ field :line2
34
+
35
+ # The third line of the address.
36
+ # @type: string
37
+ field :line3
38
+
39
+ # The name of the city for this address.
40
+ # @type: string
41
+ field :city
42
+
43
+ # The state or region part of this address.
44
+ # @type: string
45
+ field :region
46
+
47
+ # The postal code for this address.
48
+ # @type: string
49
+ field :postal_code
50
+
51
+ # The country for this address.
52
+ # @type: string
53
+ field :country
54
+
55
+ # The latitude of this address, if available.
56
+ # @type: number
57
+ # @format: float
58
+ field :latitude
59
+
60
+ # The longitude of this address, if available.
61
+ # @type: number
62
+ # @format: float
63
+ field :longitude
64
+
65
+ # The date on which this address record was created.
66
+ # @type: string
67
+ # @format: date-time
68
+ field :created, Types::Params::DateTime
69
+
70
+ # The ID number of the user who created this address.
71
+ # @type: string
72
+ # @format: uuid
73
+ field :created_user_id
74
+
75
+ # The date on which this address record was last modified.
76
+ # @type: string
77
+ # @format: date-time
78
+ field :modified, Types::Params::DateTime
79
+
80
+ # The ID number of the user who most recently modified this address.
81
+ # @type: string
82
+ # @format: uuid
83
+ field :modified_user_id
84
+
85
+ # The AppEnrollmentId of the application that imported this record. For accounts
86
+ # with more than one financial system connected, this field identifies the originating
87
+ # financial system that produced this record. This value is null if this record
88
+ # was not loaded from an external ERP or financial system.
89
+ # @type: string
90
+ # @format: uuid
91
+ field :app_enrollment_id
92
+
93
+ belongs_to :created_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"created_user_id"}
94
+ belongs_to :modified_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"modified_user_id"}
95
+
96
+
97
+ end
@@ -0,0 +1,29 @@
1
+ class Schema::InvoiceFetchResult < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+
9
+ # @type: integer
10
+ # @format: int32
11
+ field :total_count
12
+
13
+
14
+ # @type: integer
15
+ # @format: int32
16
+ field :page_size
17
+
18
+
19
+ # @type: integer
20
+ # @format: int32
21
+ field :page_number
22
+
23
+ # For more information on Invoices, see [InvoiceModel](https://developer.lockstep.io/reference/get_api-v1-invoices-id).
24
+ # @type: array
25
+ field :records
26
+
27
+
28
+
29
+ end
@@ -0,0 +1,188 @@
1
+ class Schema::InvoiceHistory < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
9
+ # account will share the same GroupKey value. GroupKey values cannot be changed once created.
10
+ #
11
+ # For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
12
+ # @type: string
13
+ # @format: uuid
14
+ field :group_key
15
+
16
+ # The unique ID number of this invoice history entry.
17
+ # @type: string
18
+ # @format: uuid
19
+ field :invoice_history_id
20
+
21
+ # The unique ID of the Invoice represented by this history entry. This ID was automatically assigned
22
+ # by Lockstep to the Invoice record when it was added to the Lockstep platform.
23
+ #
24
+ # For the ID of this record in its originating financial system, see `ErpKey`.
25
+ # @type: string
26
+ # @format: uuid
27
+ field :invoice_id
28
+
29
+ # The ID number of the company that created this invoice.
30
+ # @type: string
31
+ # @format: uuid
32
+ field :company_id
33
+
34
+ # The ID number of the counterparty for the invoice, for example, a customer or vendor.
35
+ # @type: string
36
+ # @format: uuid
37
+ field :customer_id
38
+
39
+ # The unique ID of this record as it was known in its originating financial system.
40
+ #
41
+ # If this company record was imported from a financial system, it will have the value `ErpKey`
42
+ # set to the original primary key number of the record as it was known in the originating financial
43
+ # system. If this record was not imported, this value will be `null`.
44
+ #
45
+ # For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
46
+ # @type: string
47
+ field :erp_key
48
+
49
+ # The purchase order code as it exists in the user's ERP or accounting system.
50
+ # @type: string
51
+ field :purchase_order_code
52
+
53
+ # An additional reference code that is sometimes used to identify this invoice.
54
+ # The meaning of this field is specific to the ERP or accounting system used by the user.
55
+ # @type: string
56
+ field :reference_code
57
+
58
+ # A code identifying the salesperson responsible for writing this invoice.
59
+ # @type: string
60
+ field :salesperson_code
61
+
62
+ # A string identifying the salesperson responsible for writing this invoice.
63
+ # @type: string
64
+ field :salesperson_name
65
+
66
+ # A code identifying the type of this invoice.
67
+ # @type: string
68
+ field :invoice_type_code
69
+
70
+ # A code identifying the status of this invoice.
71
+ # @type: string
72
+ field :invoice_status_code
73
+
74
+ # A code identifying the terms given to the purchaser.
75
+ # @type: string
76
+ field :terms_code
77
+
78
+ # If the customer negotiated any special terms different from the standard terms above, describe them here.
79
+ # @type: string
80
+ field :special_terms
81
+
82
+ # The three-character ISO 4217 currency code used for this invoice. This will be validated by the /api/v1/currencies data set
83
+ # @type: string
84
+ field :currency_code
85
+
86
+ # The total value of this invoice, inclusive of all taxes and line items.
87
+ # @type: number
88
+ # @format: double
89
+ field :total_amount
90
+
91
+ # The total sales (or transactional) tax calculated for this invoice.
92
+ # @type: number
93
+ # @format: double
94
+ field :sales_tax_amount
95
+
96
+ # The total discounts given by the seller to the buyer on this invoice.
97
+ # @type: number
98
+ # @format: double
99
+ field :discount_amount
100
+
101
+ # The remaining balance value of this invoice.
102
+ # @type: number
103
+ # @format: double
104
+ field :outstanding_balance_amount
105
+
106
+ # The reporting date for this invoice.
107
+ # @type: string
108
+ # @format: date
109
+ field :invoice_date
110
+
111
+ # The date when discounts were adjusted for this invoice.
112
+ # @type: string
113
+ # @format: date
114
+ field :discount_date
115
+
116
+ # The date when this invoice posted to the company's general ledger.
117
+ # @type: string
118
+ # @format: date
119
+ field :posted_date
120
+
121
+ # The date when the invoice was closed and finalized after completion of all payments and delivery of all products and
122
+ # services.
123
+ # @type: string
124
+ # @format: date
125
+ field :invoice_closed_date
126
+
127
+ # The date when the remaining outstanding balance is due.
128
+ # @type: string
129
+ # @format: date
130
+ field :payment_due_date
131
+
132
+ # The date and time when this record was imported from the user's ERP or accounting system.
133
+ # @type: string
134
+ # @format: date-time
135
+ field :imported_date, Types::Params::DateTime
136
+
137
+ # The ID number of the invoice's origination address
138
+ # @type: string
139
+ # @format: uuid
140
+ field :primary_origin_address_id
141
+
142
+ # The ID number of the invoice's bill-to address
143
+ # @type: string
144
+ # @format: uuid
145
+ field :primary_bill_to_address_id
146
+
147
+ # The ID number of the invoice's ship-to address
148
+ # @type: string
149
+ # @format: uuid
150
+ field :primary_ship_to_address_id
151
+
152
+ # The date on which this invoice record was created.
153
+ # @type: string
154
+ # @format: date-time
155
+ field :created, Types::Params::DateTime
156
+
157
+ # The ID number of the user who created this invoice.
158
+ # @type: string
159
+ # @format: uuid
160
+ field :created_user_id
161
+
162
+ # The date on which this invoice record was last modified.
163
+ # @type: string
164
+ # @format: date-time
165
+ field :modified, Types::Params::DateTime
166
+
167
+ # The ID number of the user who most recently modified this invoice.
168
+ # @type: string
169
+ # @format: uuid
170
+ field :modified_user_id
171
+
172
+ # The AppEnrollmentId of the application that imported this record. For accounts
173
+ # with more than one financial system connected, this field identifies the originating
174
+ # financial system that produced this record. This value is null if this record
175
+ # was not loaded from an external ERP or financial system.
176
+ # @type: string
177
+ # @format: uuid
178
+ field :app_enrollment_id
179
+
180
+ belongs_to :company, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
181
+ belongs_to :account, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
182
+ belongs_to :customer, {:class_name=>"Lockstep::Connection", :primary_key=>:company_id, :foreign_key=>"customer_id"}
183
+ belongs_to :connection, {:class_name=>"Lockstep::Connection", :primary_key=>:company_id, :foreign_key=>"customer_id"}
184
+ belongs_to :created_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"created_user_id"}
185
+ belongs_to :modified_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"modified_user_id"}
186
+
187
+
188
+ end
@@ -0,0 +1,26 @@
1
+ class Schema::InvoiceHistoryFetchResult < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+
9
+ # @type: integer
10
+ # @format: int32
11
+ field :total_count
12
+
13
+
14
+ # @type: integer
15
+ # @format: int32
16
+ field :page_size
17
+
18
+
19
+ # @type: integer
20
+ # @format: int32
21
+ field :page_number
22
+
23
+
24
+ has_many :records, {:class_name=>"Schema::InvoiceHistory", :included=>true}
25
+
26
+ end