xero-ruby 3.8.0 → 3.9.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 64ea98826b9c024df40c0e3db6390722313e610c19b74a32f9200aa032fa8de9
4
- data.tar.gz: 2b8d8f8fe9bd8909d3ea64f814763787752313ef3b224218f4e373af5bf13a7d
3
+ metadata.gz: 9da0e17f450205612e5090cdb258485529efa412eadc1ead5c564050d68b51d9
4
+ data.tar.gz: f06c54f4fd72e7dd1281a6960beb82969899d9015f2e14cf737018596199cb73
5
5
  SHA512:
6
- metadata.gz: acf352b5dc0ab2bc6fe5de48b1ad0fdac7e90ecf1828f9a1184d93b4663f4a5c67b32085430471c4264fbbea98e2015ef30414da5324b5b522df84dde10ed5bc
7
- data.tar.gz: b41a5a3cfd6cd0086991173efc0430c8b5d53e9776f0636400b1d53411f006e722b8f0c2bf903b3a4f0f487a3583fbdfe0d9d79cbeb18f387d18cefac64ddc69
6
+ metadata.gz: 602762907bb324d2a7f308418f3789602e077d32621b5329e3d4a83154524b0981b1876f99a655cb978b40514cfcc63fd63509e5117af567c097c4affd38655e
7
+ data.tar.gz: fbaddb461ba6b3db40c906e6195012b591e076ee2dc7248d4501621e4fa5dbb3c9cefa134317a4f76d3218d909ce7a302bdcaa9449fd970cc7d43d98356c08a8
@@ -9952,6 +9952,81 @@ module XeroRuby
9952
9952
  return data, status_code, headers
9953
9953
  end
9954
9954
 
9955
+ # Retrieves a specific journal using a unique journal number.
9956
+ # @param xero_tenant_id [String] Xero identifier for Tenant
9957
+ # @param journal_number [Integer] Number of a Journal
9958
+ # @param [Hash] opts the optional parameters
9959
+ # @return [Journals]
9960
+ def get_journal_by_number(xero_tenant_id, journal_number, opts = {})
9961
+ data, _status_code, _headers = get_journal_by_number_with_http_info(xero_tenant_id, journal_number, opts)
9962
+ data
9963
+ end
9964
+
9965
+ # Retrieves a specific journal using a unique journal number.
9966
+ # @param xero_tenant_id [String] Xero identifier for Tenant
9967
+ # @param journal_number [Integer] Number of a Journal
9968
+ # @param [Hash] opts the optional parameters
9969
+ # @return [Array<(Journals, Integer, Hash)>] Journals data, response status code and response headers
9970
+ def get_journal_by_number_with_http_info(xero_tenant_id, journal_number, options = {})
9971
+ opts = options.dup
9972
+ if @api_client.config.debugging
9973
+ @api_client.config.logger.debug 'Calling API: AccountingApi.get_journal_by_number ...'
9974
+ end
9975
+ # verify the required parameter 'xero_tenant_id' is set
9976
+ if @api_client.config.client_side_validation && xero_tenant_id.nil?
9977
+ fail ArgumentError, "Missing the required parameter 'xero_tenant_id' when calling AccountingApi.get_journal_by_number"
9978
+ end
9979
+ # verify the required parameter 'journal_number' is set
9980
+ if @api_client.config.client_side_validation && journal_number.nil?
9981
+ fail ArgumentError, "Missing the required parameter 'journal_number' when calling AccountingApi.get_journal_by_number"
9982
+ end
9983
+ # resource path
9984
+ local_var_path = '/Journals/{JournalNumber}'.sub('{' + 'JournalNumber' + '}', journal_number.to_s)
9985
+
9986
+ # camelize keys of incoming `where` opts
9987
+ opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
9988
+
9989
+ # query parameters
9990
+ query_params = opts[:query_params] || {}
9991
+
9992
+ # XeroAPI's `IDs` convention openapi-generator does not snake_case properly.. manual over-riding `i_ds` malformations:
9993
+ query_params[:'IDs'] = @api_client.build_collection_param(opts[:'ids'], :csv) if !opts[:'ids'].nil?
9994
+ query_params[:'ContactIDs'] = @api_client.build_collection_param(opts[:'contact_ids'], :csv) if !opts[:'contact_ids'].nil?
9995
+
9996
+ # header parameters
9997
+ header_params = opts[:header_params] || {}
9998
+ # HTTP header 'Accept' (if needed)
9999
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
10000
+ header_params[:'xero-tenant-id'] = xero_tenant_id
10001
+
10002
+ # form parameters
10003
+ form_params = opts[:form_params] || {}
10004
+
10005
+ # http body (model)
10006
+ post_body = opts[:body]
10007
+
10008
+ # return_type
10009
+ return_type = opts[:return_type] || 'Journals'
10010
+
10011
+ # auth_names
10012
+ auth_names = opts[:auth_names] || ['OAuth2']
10013
+
10014
+ new_options = opts.merge(
10015
+ :header_params => header_params,
10016
+ :query_params => query_params,
10017
+ :form_params => form_params,
10018
+ :body => post_body,
10019
+ :auth_names => auth_names,
10020
+ :return_type => return_type
10021
+ )
10022
+
10023
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, "AccountingApi", new_options)
10024
+ if @api_client.config.debugging
10025
+ @api_client.config.logger.debug "API called: AccountingApi#get_journal_by_number\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
10026
+ end
10027
+ return data, status_code, headers
10028
+ end
10029
+
9955
10030
  # Retrieves journals
9956
10031
  # @param xero_tenant_id [String] Xero identifier for Tenant
9957
10032
  # @param [Hash] opts the optional parameters
@@ -166,6 +166,7 @@ module XeroRuby::Accounting
166
166
  LEDGER ||= "LEDGER".freeze
167
167
  GST_CASHBOOK ||= "GST_CASHBOOK".freeze
168
168
  NON_GST_CASHBOOK ||= "NON_GST_CASHBOOK".freeze
169
+ ULTIMATE ||= "ULTIMATE".freeze
169
170
 
170
171
  # BUSINESS or PARTNER. Partner edition organisations are sold exclusively through accounting partners and have restricted functionality (e.g. no access to invoicing)
171
172
  attr_accessor :edition
@@ -461,7 +462,7 @@ module XeroRuby::Accounting
461
462
  return false unless sales_tax_period_validator.valid?(@sales_tax_period)
462
463
  organisation_entity_type_validator = EnumAttributeValidator.new('String', ["ACCOUNTING_PRACTICE", "COMPANY", "CHARITY", "CLUB_OR_SOCIETY", "INDIVIDUAL", "LOOK_THROUGH_COMPANY", "NOT_FOR_PROFIT", "PARTNERSHIP", "S_CORPORATION", "SELF_MANAGED_SUPERANNUATION_FUND", "SOLE_TRADER", "SUPERANNUATION_FUND", "TRUST"])
463
464
  return false unless organisation_entity_type_validator.valid?(@organisation_entity_type)
464
- _class_validator = EnumAttributeValidator.new('String', ["DEMO", "TRIAL", "STARTER", "STANDARD", "PREMIUM", "PREMIUM_20", "PREMIUM_50", "PREMIUM_100", "LEDGER", "GST_CASHBOOK", "NON_GST_CASHBOOK"])
465
+ _class_validator = EnumAttributeValidator.new('String', ["DEMO", "TRIAL", "STARTER", "STANDARD", "PREMIUM", "PREMIUM_20", "PREMIUM_50", "PREMIUM_100", "LEDGER", "GST_CASHBOOK", "NON_GST_CASHBOOK", "ULTIMATE"])
465
466
  return false unless _class_validator.valid?(@_class)
466
467
  edition_validator = EnumAttributeValidator.new('String', ["BUSINESS", "PARTNER"])
467
468
  return false unless edition_validator.valid?(@edition)
@@ -521,7 +522,7 @@ module XeroRuby::Accounting
521
522
  # Custom attribute writer method checking allowed values (enum).
522
523
  # @param [Object] _class Object to be assigned
523
524
  def _class=(_class)
524
- validator = EnumAttributeValidator.new('String', ["DEMO", "TRIAL", "STARTER", "STANDARD", "PREMIUM", "PREMIUM_20", "PREMIUM_50", "PREMIUM_100", "LEDGER", "GST_CASHBOOK", "NON_GST_CASHBOOK"])
525
+ validator = EnumAttributeValidator.new('String', ["DEMO", "TRIAL", "STARTER", "STANDARD", "PREMIUM", "PREMIUM_20", "PREMIUM_50", "PREMIUM_100", "LEDGER", "GST_CASHBOOK", "NON_GST_CASHBOOK", "ULTIMATE"])
525
526
  unless validator.valid?(_class)
526
527
  fail ArgumentError, "invalid value for \"_class\", must be one of #{validator.allowable_values}."
527
528
  end
@@ -108,6 +108,13 @@ module XeroRuby::Accounting
108
108
  ZRINPUT ||= "ZRINPUT".freeze
109
109
  BADDEBT ||= "BADDEBT".freeze
110
110
  OTHERINPUT ||= "OTHERINPUT".freeze
111
+ BADDEBTRELIEF ||= "BADDEBTRELIEF".freeze
112
+ IGDSINPUT3 ||= "IGDSINPUT3".freeze
113
+ SROVR ||= "SROVR".freeze
114
+ TOURISTREFUND ||= "TOURISTREFUND".freeze
115
+ TXRCN33_INPUT ||= "TXRCN33INPUT".freeze
116
+ TXRCREINPUT ||= "TXRCREINPUT".freeze
117
+ TXRCESSINPUT ||= "TXRCESSINPUT".freeze
111
118
 
112
119
  # Boolean to describe if tax rate can be used for asset accounts i.e. true,false
113
120
  attr_accessor :can_apply_to_assets
@@ -266,7 +273,7 @@ module XeroRuby::Accounting
266
273
  def valid?
267
274
  status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "DELETED", "ARCHIVED", "PENDING"])
268
275
  return false unless status_validator.valid?(@status)
269
- report_tax_type_validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT"])
276
+ report_tax_type_validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT"])
270
277
  return false unless report_tax_type_validator.valid?(@report_tax_type)
271
278
  true
272
279
  end
@@ -284,7 +291,7 @@ module XeroRuby::Accounting
284
291
  # Custom attribute writer method checking allowed values (enum).
285
292
  # @param [Object] report_tax_type Object to be assigned
286
293
  def report_tax_type=(report_tax_type)
287
- validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT"])
294
+ validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT"])
288
295
  unless validator.valid?(report_tax_type)
289
296
  fail ArgumentError, "invalid value for \"report_tax_type\", must be one of #{validator.allowable_values}."
290
297
  end
@@ -73,6 +73,13 @@ module XeroRuby::Accounting
73
73
  DRCHARGE20 ||= "DRCHARGE20".freeze
74
74
  DRCHARGESUPPLY5 ||= "DRCHARGESUPPLY5".freeze
75
75
  DRCHARGE5 ||= "DRCHARGE5".freeze
76
+ BADDEBTRELIEF ||= "BADDEBTRELIEF".freeze
77
+ IGDSINPUT3 ||= "IGDSINPUT3".freeze
78
+ SROVR ||= "SROVR".freeze
79
+ TOURISTREFUND ||= "TOURISTREFUND".freeze
80
+ TXRCN33_INPUT ||= "TXRCN33INPUT".freeze
81
+ TXRCREINPUT ||= "TXRCREINPUT".freeze
82
+ TXRCESSINPUT ||= "TXRCESSINPUT".freeze
76
83
 
77
84
  # Builds the enum from string
78
85
  # @param [String] The enum value in the form of the string
@@ -28,9 +28,15 @@ module XeroRuby::Finance
28
28
  # Utc date time of when the statement was imported in Xero
29
29
  attr_accessor :imported_date_time_utc
30
30
 
31
- # Import source of statement (STMTIMPORTSRC/MANUAL, STMTIMPORTSRC/CSV, STMTIMPORTSRC/QIF, STMTIMPORTSRC/OFX, XeroApi)
31
+ # Indicates the source of the statement data. Either imported from 1) direct bank feed OR 2) manual customer entry or upload. Manual import sources are STMTIMPORTSRC/MANUAL, STMTIMPORTSRC/CSV, STMTIMPORTSRC/OFX, Ofx or STMTIMPORTSRC/QIF. All other import sources are direct and, depending on the direct solution, may contain the name of the financial institution.
32
32
  attr_accessor :import_source
33
33
 
34
+ # Opening balance sourced from imported bank statements (if supplied). Note, for manually uploaded statements, this balance is also manual and usually not supplied.
35
+ attr_accessor :start_balance
36
+
37
+ # Closing balance sourced from imported bank statements (if supplied). Note, for manually uploaded statements, this balance is also manual and usually not supplied.
38
+ attr_accessor :end_balance
39
+
34
40
  # List of statement lines
35
41
  attr_accessor :statement_lines
36
42
 
@@ -42,6 +48,8 @@ module XeroRuby::Finance
42
48
  :'end_date' => :'endDate',
43
49
  :'imported_date_time_utc' => :'importedDateTimeUtc',
44
50
  :'import_source' => :'importSource',
51
+ :'start_balance' => :'startBalance',
52
+ :'end_balance' => :'endBalance',
45
53
  :'statement_lines' => :'statementLines'
46
54
  }
47
55
  end
@@ -54,6 +62,8 @@ module XeroRuby::Finance
54
62
  :'end_date' => :'Date',
55
63
  :'imported_date_time_utc' => :'DateTime',
56
64
  :'import_source' => :'String',
65
+ :'start_balance' => :'BigDecimal',
66
+ :'end_balance' => :'BigDecimal',
57
67
  :'statement_lines' => :'Array<StatementLineResponse>'
58
68
  }
59
69
  end
@@ -93,6 +103,14 @@ module XeroRuby::Finance
93
103
  self.import_source = attributes[:'import_source']
94
104
  end
95
105
 
106
+ if attributes.key?(:'start_balance')
107
+ self.start_balance = attributes[:'start_balance']
108
+ end
109
+
110
+ if attributes.key?(:'end_balance')
111
+ self.end_balance = attributes[:'end_balance']
112
+ end
113
+
96
114
  if attributes.key?(:'statement_lines')
97
115
  if (value = attributes[:'statement_lines']).is_a?(Array)
98
116
  self.statement_lines = value
@@ -123,6 +141,8 @@ module XeroRuby::Finance
123
141
  end_date == o.end_date &&
124
142
  imported_date_time_utc == o.imported_date_time_utc &&
125
143
  import_source == o.import_source &&
144
+ start_balance == o.start_balance &&
145
+ end_balance == o.end_balance &&
126
146
  statement_lines == o.statement_lines
127
147
  end
128
148
 
@@ -135,7 +155,7 @@ module XeroRuby::Finance
135
155
  # Calculates hash code according to all attributes.
136
156
  # @return [Integer] Hash code
137
157
  def hash
138
- [statement_id, start_date, end_date, imported_date_time_utc, import_source, statement_lines].hash
158
+ [statement_id, start_date, end_date, imported_date_time_utc, import_source, start_balance, end_balance, statement_lines].hash
139
159
  end
140
160
 
141
161
  # Builds the object from hash
@@ -7,9 +7,9 @@ Contact: api@xero.com
7
7
  Generated by: https://openapi-generator.tech
8
8
  OpenAPI Generator version: 4.3.1
9
9
 
10
- The version of the XeroOpenAPI document: 2.21.0
10
+ The version of the XeroOpenAPI document: 2.22.4
11
11
  =end
12
12
 
13
13
  module XeroRuby
14
- VERSION = '3.8.0'
14
+ VERSION = '3.9.0'
15
15
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xero-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.0
4
+ version: 3.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Xero API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-14 00:00:00.000000000 Z
11
+ date: 2022-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday