lockstep_rails 0.3.87 → 0.3.89

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fcefbcd84186a76490ec812d59c2cab17f7ff081a79585792b3418fa7d13b262
4
- data.tar.gz: 734d52eeb0306582135c94d35329f429ded9c57373dcf33b5b1a729e5dace116
3
+ metadata.gz: 1008eefb914dcab235285b2999755c9242e8d05534f9384c52206f3b058e1862
4
+ data.tar.gz: c85cd4993e3fc9c93aa0e0e547c9d3779c5896abbf53e41cd10c373c5f020dd0
5
5
  SHA512:
6
- metadata.gz: b6e9354d23de33cb388330f55fc28320ccb11c2c7b02e0317c99fedb88f8a1bdeff06494071c131ea7a6e24f318bf74a0868cd7102f253c76815d9449c852f21
7
- data.tar.gz: e600d47dea0f90d304cea657d2fea6e7a40888808663208f8b3a63c1dca692d3cb592eef95df57d25bd13f22696dbb64249fb664563f59ef208c27182d453d9c
6
+ metadata.gz: 9562d96a4d771cfaeed3158afaf26a73b470e1f14b363650a4d30ec150d67f0dcd3c8cf10bf2e2954994bb908ab51577e8ef204cdae26d625b9258d767ee6b1e
7
+ data.tar.gz: a9b258a6e704fbc0d58dec9491bf9e3d91a7df0642c9c25226679d34593904b6c320a94e57a70d84ed4f4393d37362ccfefa41be47f405d107a7a91d187c1467
@@ -1,8 +1,8 @@
1
1
  class Lockstep::Status
2
2
  Lockstep::ApiRecord.model_name_uri = 'v1/Status'
3
3
 
4
- def self.ping
5
- resp = Lockstep::ApiRecord.resource.get('')
4
+ def self.ping(query_params = {})
5
+ resp = Lockstep::ApiRecord.resource.get('', params: query_params)
6
6
  raise Lockstep::Exceptions::BadRequestError, 'Endpoint not found' if resp.code == '404'
7
7
 
8
8
  status = JSON.parse(resp.body)
@@ -5,20 +5,17 @@ def self.id_ref
5
5
  nil
6
6
  end
7
7
 
8
- # Aging bucket of outstanding balance data (days past due date of invoice)
9
- # @type: integer
10
- # @format: int32
11
- field :bucket
12
-
13
- # Currency code of aging bucket
8
+ # The Group Key the aging data is calculated for.
14
9
  # @type: string
15
- field :currency_code
10
+ # @format: uuid
11
+ field :group_key
16
12
 
17
- # Outstanding balance for the given aging bucket
13
+ # The total AR outstanding amount in the group's base currency.
18
14
  # @type: number
19
15
  # @format: double
20
- field :outstanding_balance
16
+ field :total
21
17
 
22
18
 
19
+ has_many :buckets, {:class_name=>"Schema::AgingBucketResult", :included=>true}
23
20
 
24
21
  end
@@ -0,0 +1,18 @@
1
+ class Schema::AgingBucketResult < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The different buckets used for aging.
9
+ field :bucket
10
+
11
+ # The outstanding amount for the given bucket in the group's base currency.
12
+ # @type: number
13
+ # @format: double
14
+ field :value
15
+
16
+
17
+
18
+ end
@@ -35,6 +35,7 @@ end
35
35
  has_many :credit_memo_applications, {:class_name=>"Schema::CreditMemoAppliedSync", :included=>true}
36
36
  has_many :invoices, {:class_name=>"Schema::InvoiceSync", :included=>true}
37
37
  has_many :invoice_lines, {:class_name=>"Schema::InvoiceLineSync", :included=>true}
38
+ has_many :invoice_workflow_statuses, {:class_name=>"Schema::InvoiceWorkflowStatusSync", :included=>true}
38
39
  has_many :custom_fields, {:class_name=>"Schema::CustomFieldSync", :included=>true}
39
40
  has_many :payments, {:class_name=>"Schema::PaymentSync", :included=>true}
40
41
  has_many :payment_applications, {:class_name=>"Schema::PaymentAppliedSync", :included=>true}
@@ -151,10 +151,6 @@ end
151
151
  # @format: uuid
152
152
  field :modified_user_id
153
153
 
154
- # The name of the user who last modified this company
155
- # @type: string
156
- field :modified_user_name
157
-
158
154
  # Federal Tax ID
159
155
  # @type: string
160
156
  field :tax_id
@@ -276,6 +272,7 @@ end
276
272
  belongs_to :created_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"created_user_id"}
277
273
  belongs_to :modified_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"modified_user_id"}
278
274
 
275
+ has_many :company_identifiers, {:class_name=>"Schema::CompanyIdentifier", :included=>true}
279
276
  has_many :notes, {:class_name=>"Lockstep::Note", :included=>true, :foreign_key=>:object_key, :polymorphic=>{:table_key=>"Company"}}
280
277
  has_many :attachments, {:class_name=>"Schema::Attachment", :included=>true}
281
278
  has_many :contacts, {:class_name=>"Schema::Contact", :included=>true}
@@ -0,0 +1,26 @@
1
+ class Schema::CompanyIdentifier < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The type of identifier.
9
+ # @type: string
10
+ field :type
11
+
12
+ # The value of the identifier.
13
+ # @type: string
14
+ field :value
15
+
16
+ # The jurisdiction of the identifier.
17
+ # @type: string
18
+ field :jurisdiction
19
+
20
+ # The sub-jurisdiction of the identifier, ISO3166-1 or ISO3166-2 code.
21
+ # @type: string
22
+ field :subjurisdiction
23
+
24
+
25
+
26
+ end
@@ -115,6 +115,10 @@ end
115
115
  # @format: uuid
116
116
  field :invite_status_modified_user_id
117
117
 
118
+ # This flag indicates whether the company is currently active.
119
+ # @type: boolean
120
+ field :is_active
121
+
118
122
  belongs_to :company, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
119
123
  belongs_to :account, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
120
124
 
@@ -31,6 +31,10 @@ end
31
31
  # @format: uuid
32
32
  field :customer_id
33
33
 
34
+ # The name of the customer associated with this invoice.
35
+ # @type: string
36
+ field :customer_name
37
+
34
38
  # The unique ID of this record as it was known in its originating financial system.
35
39
  #
36
40
  # If this company record was imported from a financial system, it will have the value `ErpKey`
@@ -87,6 +91,12 @@ end
87
91
  # @type: string
88
92
  field :workflow_status_notes
89
93
 
94
+ # The reason code for the current workflow status of this invoice.
95
+ #
96
+ # Empty if workflow status does not require a reason code.
97
+ # @type: string
98
+ field :workflow_status_reason_code
99
+
90
100
  # A code identifying the terms given to the purchaser. This field is imported directly from the originating
91
101
  # financial system and does not follow a specified format.
92
102
  # @type: string
@@ -120,6 +130,21 @@ end
120
130
  # @format: double
121
131
  field :outstanding_balance_amount
122
132
 
133
+ # The shipping amount of this invoice in it's tendered currency.
134
+ # @type: number
135
+ # @format: double
136
+ field :shipping_amount
137
+
138
+ # The total value of this invoice with deductions, excluding taxes.
139
+ # @type: number
140
+ # @format: double
141
+ field :net_amount
142
+
143
+ # The shipping amount of this invoice in it's tendered currency.
144
+ # @type: number
145
+ # @format: double
146
+ field :base_currency_shipping_amount
147
+
123
148
  # The reporting date for this invoice.
124
149
  # @type: string
125
150
  # @format: date
@@ -151,6 +176,11 @@ end
151
176
  # @format: date-time
152
177
  field :imported_date, Types::Params::DateTime
153
178
 
179
+ # The date when the tax becomes applicable; used for tax reporting.
180
+ # @type: string
181
+ # @format: date
182
+ field :tax_point_date
183
+
154
184
  # The ID number of the invoice's origination address
155
185
  # @type: string
156
186
  # @format: uuid
@@ -243,6 +273,11 @@ end
243
273
  # @format: double
244
274
  field :base_currency_outstanding_balance_amount
245
275
 
276
+ # The total value of this invoice with deductions, excluding taxes and in the invoice's base currency.
277
+ # @type: number
278
+ # @format: double
279
+ field :base_currency_net_amount
280
+
246
281
  # Possible statuses for a record that supports ERP Update.
247
282
  field :erp_update_status
248
283
 
@@ -278,6 +313,14 @@ end
278
313
  # @type: object
279
314
  field :erp_system_attributes
280
315
 
316
+ # The source of the invoice (e.g ERP, Peppol, Email, Gov System)
317
+ # @type: string
318
+ field :document_source
319
+
320
+ # The jurisdiction or country from which the invoice originates (e.g., US, AU)
321
+ # @type: string
322
+ field :jurisdiction
323
+
281
324
  belongs_to :company, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
282
325
  belongs_to :account, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
283
326
  belongs_to :customer, {:class_name=>"Lockstep::Connection", :primary_key=>:company_id, :foreign_key=>"customer_id"}
@@ -294,5 +337,6 @@ end
294
337
  has_many :credit_memos, {:class_name=>"Schema::CreditMemoInvoice", :included=>true}
295
338
  has_many :custom_field_values, {:class_name=>"Schema::CustomFieldValue", :included=>true}
296
339
  has_many :custom_field_definitions, {:class_name=>"Schema::CustomFieldDefinition", :included=>true}
340
+ has_many :tax_summary, {:class_name=>"Schema::TaxSummary", :included=>true}
297
341
 
298
342
  end
@@ -54,6 +54,10 @@ end
54
54
  # @type: string
55
55
  field :description
56
56
 
57
+ # The location to where specific items from an invoice will go.
58
+ # @type: string
59
+ field :location
60
+
57
61
  # For lines measured in a unit other than "quantity", this code indicates the measurement system for the quantity field.
58
62
  # If the line is measured in quantity, this field is null.
59
63
  # @type: string
@@ -84,6 +88,15 @@ end
84
88
  # @format: double
85
89
  field :total_amount
86
90
 
91
+ # The tax code used for taxation on this line.
92
+ # @type: string
93
+ field :tax_code
94
+
95
+ # The taxation rate for this line.
96
+ # @type: number
97
+ # @format: double
98
+ field :tax_rate
99
+
87
100
  # The amount of sales tax for this line in the transaction's currency.
88
101
  # @type: number
89
102
  # @format: double
@@ -94,10 +107,24 @@ end
94
107
  # @format: double
95
108
  field :base_currency_sales_tax_amount
96
109
 
110
+ # The total value of this invoice line with deductions, excluding taxes.
111
+ # @type: number
112
+ # @format: double
113
+ field :net_amount
114
+
115
+ # The total value of this invoice line with deductions, excluding taxes and in the invoice's base currency.
116
+ # @type: number
117
+ # @format: double
118
+ field :base_currency_net_amount
119
+
97
120
  # If this line is tax exempt, this code indicates the reason for the exemption.
98
121
  # @type: string
99
122
  field :exemption_code
100
123
 
124
+ # Unique identifier for tax purposes, used for reference, validation, or compliance.
125
+ # @type: string
126
+ field :tax_uid
127
+
101
128
  # If null, the products specified on this line were delivered on the same date as all other lines.
102
129
  # If not null, this line was delivered or finalized on a different date than the overall invoice.
103
130
  # @type: string
@@ -52,6 +52,10 @@ end
52
52
  # @type: string
53
53
  field :description
54
54
 
55
+ # The location to where specific items from an invoice will go.
56
+ # @type: string
57
+ field :location
58
+
55
59
  # For lines measured in a unit other than "quantity", this code indicates the measurement system for the quantity field.
56
60
  # If the line is measured in quantity, this field is null.
57
61
  # @type: string
@@ -82,6 +86,15 @@ end
82
86
  # @format: double
83
87
  field :total_amount
84
88
 
89
+ # The tax code used for taxation on this line.
90
+ # @type: string
91
+ field :tax_code
92
+
93
+ # The taxation rate for this line.
94
+ # @type: number
95
+ # @format: double
96
+ field :tax_rate
97
+
85
98
  # The amount of sales tax for this line in the transaction's currency.
86
99
  # @type: number
87
100
  # @format: double
@@ -92,10 +105,24 @@ end
92
105
  # @format: double
93
106
  field :base_currency_sales_tax_amount
94
107
 
108
+ # The total value of this invoice line with deductions, excluding taxes.
109
+ # @type: number
110
+ # @format: double
111
+ field :net_amount
112
+
113
+ # The total value of this invoice line with deductions, excluding taxes and in the invoice's base currency.
114
+ # @type: number
115
+ # @format: double
116
+ field :base_currency_net_amount
117
+
95
118
  # If this line is tax exempt, this code indicates the reason for the exemption.
96
119
  # @type: string
97
120
  field :exemption_code
98
121
 
122
+ # Unique identifier for tax purposes, used for reference, validation, or compliance.
123
+ # @type: string
124
+ field :tax_uid
125
+
99
126
  # If null, the products specified on this line were delivered on the same date as all other lines.
100
127
  # If not null, this line was delivered or finalized on a different date than the overall invoice.
101
128
  # @type: string
@@ -127,6 +127,16 @@ end
127
127
  # @format: double
128
128
  field :outstanding_balance_amount
129
129
 
130
+ # The shipping amount of this invoice in it's tendered currency.
131
+ # @type: number
132
+ # @format: double
133
+ field :shipping_amount
134
+
135
+ # The total value of this invoice with deductions, excluding taxes.
136
+ # @type: number
137
+ # @format: double
138
+ field :net_amount
139
+
130
140
  # The reporting date for this invoice.
131
141
  # @type: string
132
142
  # @format: date-time
@@ -158,6 +168,11 @@ end
158
168
  # @format: date-time
159
169
  field :imported_date, Types::Params::DateTime
160
170
 
171
+ # The date when the tax becomes applicable; used for tax reporting.
172
+ # @type: string
173
+ # @format: date-time
174
+ field :tax_point_date, Types::Params::DateTime
175
+
161
176
  # The origination address for this invoice
162
177
  # @type: string
163
178
  field :origin_address_line1
@@ -331,6 +346,16 @@ end
331
346
  # @format: double
332
347
  field :base_currency_outstanding_balance_amount
333
348
 
349
+ # The shipping amount of this invoice in it's tendered currency.
350
+ # @type: number
351
+ # @format: double
352
+ field :base_currency_shipping_amount
353
+
354
+ # The total value of this invoice with deductions, excluding taxes and in the invoice's base currency.
355
+ # @type: number
356
+ # @format: double
357
+ field :base_currency_net_amount
358
+
334
359
  # True if the invoice is an E-Invoice
335
360
  # @type: boolean
336
361
  field :is_e_invoice
@@ -348,10 +373,28 @@ end
348
373
  # @type: string
349
374
  field :workflow_status_notes
350
375
 
376
+ # The reason code for the current workflow status of this invoice.
377
+ #
378
+ # Empty if workflow status does not require a reason code.
379
+ # @type: string
380
+ field :workflow_status_reason_code
381
+
351
382
  # Workflow status code dictated by government standards
352
383
  # @type: string
353
384
  field :workflow_status_code
354
385
 
386
+ # A JSON string representing the tax information for this invoice
387
+ # @type: string
388
+ field :tax_summary
389
+
390
+ # The source of the invoice (e.g ERP, Peppol, Email, Gov System)
391
+ # @type: string
392
+ field :document_source
393
+
394
+ # The jurisdiction or country from which the invoice originates (e.g., US, AU)
395
+ # @type: string
396
+ field :jurisdiction
397
+
355
398
 
356
399
 
357
400
  end
@@ -25,6 +25,11 @@ end
25
25
  # @type: string
26
26
  field :workflow_status_name
27
27
 
28
+ # The workflow transition ID associated with the invoice workflow status history.
29
+ # @type: string
30
+ # @format: uuid
31
+ field :workflow_transition_id
32
+
28
33
  # The GroupKey uniquely identifies a single Accounting Data Services Platform account. All records for this
29
34
  # account will share the same GroupKey value. GroupKey values cannot be changed once created.
30
35
  #
@@ -37,6 +42,12 @@ end
37
42
  # @type: string
38
43
  field :workflow_status_notes
39
44
 
45
+ # The reason code for the invoice workflow status history.
46
+ #
47
+ # Specific reason codes are defined by the workflow status.
48
+ # @type: string
49
+ field :workflow_status_reason_code
50
+
40
51
  # The date that the invoice workflow status history was created.
41
52
  # @type: string
42
53
  # @format: date-time
@@ -0,0 +1,39 @@
1
+ class Schema::InvoiceWorkflowStatusSync < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # This is the primary key of the Invoice record. For this field, you should use whatever the invoice's unique
9
+ # identifying number is in the originating system. Search for a unique, non-changing number within the
10
+ # originating financial system for this record.
11
+ #
12
+ # Example: If you store your invoice records in a database, whatever the primary key for the invoice table is
13
+ # in the database should be the "ErpKey".
14
+ #
15
+ # For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
16
+ # @type: string
17
+ field :invoice_erp_key
18
+
19
+ # Workflow status of the invoice.
20
+ # @type: string
21
+ # @format: uuid
22
+ field :workflow_status_id
23
+
24
+ # Notes associated to workflow status
25
+ # @type: string
26
+ field :notes
27
+
28
+ # Workflow status code dictated by government standards
29
+ # @type: string
30
+ field :code
31
+
32
+ # The date when the workflow status was updated for the e-invoice
33
+ # @type: string
34
+ # @format: date-time
35
+ field :created, Types::Params::DateTime
36
+
37
+
38
+
39
+ end
@@ -51,6 +51,11 @@ end
51
51
  # @type: string
52
52
  field :currency_code
53
53
 
54
+ # The CurrencyRate of the connected Payment
55
+ # @type: number
56
+ # @format: double
57
+ field :currency_rate
58
+
54
59
  # The base currency debit amount for the account.
55
60
  # @type: number
56
61
  # @format: double
@@ -26,6 +26,10 @@ end
26
26
  # @format: uuid
27
27
  field :company_id
28
28
 
29
+ # The name of the company associated with this payment.
30
+ # @type: string
31
+ field :company_name
32
+
29
33
  # The unique ID of this record as it was known in its originating financial system.
30
34
  #
31
35
  # If this company record was imported from a financial system, it will have the value `ErpKey`
@@ -26,7 +26,12 @@ end
26
26
  # @format: uuid
27
27
  field :invoice_id
28
28
 
29
- # The Payment applied to the invoice.
29
+ # The refund Payment that funded the payment.
30
+ # @type: string
31
+ # @format: uuid
32
+ field :refund_id
33
+
34
+ # The Payment applied to the invoice or receiving funding from a refund.
30
35
  # @type: string
31
36
  # @format: uuid
32
37
  field :payment_id
@@ -102,6 +107,9 @@ end
102
107
  # The invoice associated with this applied payment.
103
108
  field :invoice
104
109
 
110
+ # The refund payment associated with this applied payment
111
+ field :refund
112
+
105
113
  # Additional attributes that may be required by the source system.
106
114
  # @type: object
107
115
  field :erp_system_attributes
@@ -40,9 +40,25 @@ end
40
40
  # @format: uuid
41
41
  field :invoice_network_id
42
42
 
43
- # This field indicates which Payment was used to provide the funds for this payment application. In this
44
- # field, identify the original primary key or unique ID of the Payment that was used for this payment
45
- # application.
43
+ # This field indicates which Payment is being used to provide the funds for a the payment. In this field,
44
+ # identify the original primary key or unique ID of the Payment which will be supplying the funds.
45
+ #
46
+ # This information lets you track how a payment was funded. You can identify what proportion of an payment's
47
+ # balance was paid by which methods by joining this field to the Payment.
48
+ #
49
+ # This value should match the [Payment ErpKey](https://developer.lockstep.io/docs/importing-payments#erpkey)
50
+ # field on the [PaymentSyncModel](https://developer.lockstep.io/docs/importing-payments).
51
+ # @type: string
52
+ field :refund_erp_key
53
+
54
+ # The network id of the related refund Payment.
55
+ # @type: string
56
+ # @format: uuid
57
+ field :refund_network_id
58
+
59
+ # This field indicates which Payment was used to provide the funds for this payment application, or the payment that
60
+ # is being funded in the case of a refund. In this field, identify the original primary key or unique ID of the
61
+ # Payment that was used for this payment or the Payment that is being refunded.
46
62
  #
47
63
  # This information lets you track how an invoice was paid. You can identify what proportion of an payment's
48
64
  # balance was paid by which methods by joining this field to the Payment.
@@ -0,0 +1,29 @@
1
+ class Schema::TaxSummary < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The tax code for this invoice
9
+ # @type: string
10
+ field :tax_code
11
+
12
+ # The tax rate for this invoice
13
+ # @type: number
14
+ # @format: double
15
+ field :tax_rate
16
+
17
+ # The tax total for this invoice
18
+ # @type: number
19
+ # @format: double
20
+ field :tax_total
21
+
22
+ # The base currency tax total for this invoice
23
+ # @type: number
24
+ # @format: double
25
+ field :base_currency_tax_total
26
+
27
+
28
+
29
+ end
@@ -54,10 +54,6 @@ end
54
54
  # @format: uuid
55
55
  field :modified_user_id
56
56
 
57
- # The name of the user who last modified the user account
58
- # @type: string
59
- field :modified_user_name
60
-
61
57
  # The ID of the user in Azure B2C
62
58
  # @type: string
63
59
  # @format: uuid
@@ -36,6 +36,10 @@ end
36
36
  # @type: boolean
37
37
  field :is_notes_required
38
38
 
39
+ # Indicates whether a reason is required or not.
40
+ # @type: boolean
41
+ field :is_reason_required
42
+
39
43
  # Indicates whether the status change should be reported to the ERP or not.
40
44
  # @type: boolean
41
45
  field :promote_to_erp
@@ -67,6 +71,7 @@ end
67
71
  belongs_to :created_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"created_user_id"}
68
72
  belongs_to :modified_user, {:class_name=>"Lockstep::User", :primary_key=>:user_id, :foreign_key=>"modified_user_id"}
69
73
 
74
+ has_many :parents, {:class_name=>"Schema::WorkflowStatus", :included=>true}
70
75
  has_many :children, {:class_name=>"Schema::WorkflowStatus", :included=>true}
71
76
 
72
77
  end