xero-ruby 3.12.0 → 3.14.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 +4 -4
- data/lib/xero-ruby/api/accounting_api.rb +75 -0
- data/lib/xero-ruby/api/project_api.rb +5 -5
- data/lib/xero-ruby/api_client.rb +7 -1
- data/lib/xero-ruby/models/accounting/account.rb +1 -1
- data/lib/xero-ruby/models/accounting/journal_line.rb +1 -1
- data/lib/xero-ruby/models/accounting/tax_rate.rb +9 -2
- data/lib/xero-ruby/models/accounting/time_zone.rb +123 -91
- data/lib/xero-ruby/models/payroll_au/country_of_residence.rb +285 -0
- data/lib/xero-ruby/models/payroll_au/employee.rb +41 -1
- data/lib/xero-ruby/models/payroll_au/employment_basis.rb +1 -0
- data/lib/xero-ruby/models/payroll_au/employment_type.rb +36 -0
- data/lib/xero-ruby/models/payroll_au/income_type.rb +39 -0
- data/lib/xero-ruby/models/payroll_au/leave_category_code.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/senior_marital_status.rb +37 -0
- data/lib/xero-ruby/models/payroll_au/settings.rb +14 -4
- data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +41 -1
- data/lib/xero-ruby/models/payroll_au/tax_scale_type.rb +40 -0
- data/lib/xero-ruby/models/payroll_au/work_condition.rb +37 -0
- data/lib/xero-ruby/version.rb +2 -2
- data/lib/xero-ruby.rb +6 -0
- metadata +12 -6
@@ -0,0 +1,285 @@
|
|
1
|
+
=begin
|
2
|
+
#Xero Payroll AU API
|
3
|
+
|
4
|
+
#This is the Xero Payroll API for orgs in Australia region.
|
5
|
+
|
6
|
+
Contact: api@xero.com
|
7
|
+
Generated by: https://openapi-generator.tech
|
8
|
+
OpenAPI Generator version: 4.3.1
|
9
|
+
|
10
|
+
=end
|
11
|
+
|
12
|
+
require 'time'
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module XeroRuby::PayrollAu
|
16
|
+
class CountryOfResidence
|
17
|
+
AF ||= "AF".freeze
|
18
|
+
AX ||= "AX".freeze
|
19
|
+
AL ||= "AL".freeze
|
20
|
+
DZ ||= "DZ".freeze
|
21
|
+
AS ||= "AS".freeze
|
22
|
+
AD ||= "AD".freeze
|
23
|
+
AO ||= "AO".freeze
|
24
|
+
AI ||= "AI".freeze
|
25
|
+
AQ ||= "AQ".freeze
|
26
|
+
AG ||= "AG".freeze
|
27
|
+
AR ||= "AR".freeze
|
28
|
+
AM ||= "AM".freeze
|
29
|
+
AW ||= "AW".freeze
|
30
|
+
AU ||= "AU".freeze
|
31
|
+
AT ||= "AT".freeze
|
32
|
+
AZ ||= "AZ".freeze
|
33
|
+
BS ||= "BS".freeze
|
34
|
+
BH ||= "BH".freeze
|
35
|
+
BD ||= "BD".freeze
|
36
|
+
BB ||= "BB".freeze
|
37
|
+
BY ||= "BY".freeze
|
38
|
+
BE ||= "BE".freeze
|
39
|
+
BZ ||= "BZ".freeze
|
40
|
+
BJ ||= "BJ".freeze
|
41
|
+
BM ||= "BM".freeze
|
42
|
+
BT ||= "BT".freeze
|
43
|
+
BO ||= "BO".freeze
|
44
|
+
BA ||= "BA".freeze
|
45
|
+
BW ||= "BW".freeze
|
46
|
+
BV ||= "BV".freeze
|
47
|
+
BR ||= "BR".freeze
|
48
|
+
IO ||= "IO".freeze
|
49
|
+
BN ||= "BN".freeze
|
50
|
+
BG ||= "BG".freeze
|
51
|
+
BF ||= "BF".freeze
|
52
|
+
BI ||= "BI".freeze
|
53
|
+
KH ||= "KH".freeze
|
54
|
+
CM ||= "CM".freeze
|
55
|
+
CA ||= "CA".freeze
|
56
|
+
CV ||= "CV".freeze
|
57
|
+
KY ||= "KY".freeze
|
58
|
+
CF ||= "CF".freeze
|
59
|
+
TD ||= "TD".freeze
|
60
|
+
CL ||= "CL".freeze
|
61
|
+
CN ||= "CN".freeze
|
62
|
+
CX ||= "CX".freeze
|
63
|
+
CC ||= "CC".freeze
|
64
|
+
CO ||= "CO".freeze
|
65
|
+
KM ||= "KM".freeze
|
66
|
+
CG ||= "CG".freeze
|
67
|
+
CD ||= "CD".freeze
|
68
|
+
CK ||= "CK".freeze
|
69
|
+
CR ||= "CR".freeze
|
70
|
+
CI ||= "CI".freeze
|
71
|
+
HR ||= "HR".freeze
|
72
|
+
CU ||= "CU".freeze
|
73
|
+
CY ||= "CY".freeze
|
74
|
+
CZ ||= "CZ".freeze
|
75
|
+
DK ||= "DK".freeze
|
76
|
+
DJ ||= "DJ".freeze
|
77
|
+
DM ||= "DM".freeze
|
78
|
+
DO ||= "DO".freeze
|
79
|
+
EC ||= "EC".freeze
|
80
|
+
EG ||= "EG".freeze
|
81
|
+
SV ||= "SV".freeze
|
82
|
+
GQ ||= "GQ".freeze
|
83
|
+
ER ||= "ER".freeze
|
84
|
+
EE ||= "EE".freeze
|
85
|
+
ET ||= "ET".freeze
|
86
|
+
FK ||= "FK".freeze
|
87
|
+
FO ||= "FO".freeze
|
88
|
+
FJ ||= "FJ".freeze
|
89
|
+
FI ||= "FI".freeze
|
90
|
+
FR ||= "FR".freeze
|
91
|
+
GF ||= "GF".freeze
|
92
|
+
PF ||= "PF".freeze
|
93
|
+
TF ||= "TF".freeze
|
94
|
+
GA ||= "GA".freeze
|
95
|
+
GM ||= "GM".freeze
|
96
|
+
GE ||= "GE".freeze
|
97
|
+
DE ||= "DE".freeze
|
98
|
+
GH ||= "GH".freeze
|
99
|
+
GI ||= "GI".freeze
|
100
|
+
GR ||= "GR".freeze
|
101
|
+
GL ||= "GL".freeze
|
102
|
+
GD ||= "GD".freeze
|
103
|
+
GP ||= "GP".freeze
|
104
|
+
GU ||= "GU".freeze
|
105
|
+
GT ||= "GT".freeze
|
106
|
+
GG ||= "GG".freeze
|
107
|
+
GN ||= "GN".freeze
|
108
|
+
GW ||= "GW".freeze
|
109
|
+
GY ||= "GY".freeze
|
110
|
+
HT ||= "HT".freeze
|
111
|
+
HM ||= "HM".freeze
|
112
|
+
VA ||= "VA".freeze
|
113
|
+
HN ||= "HN".freeze
|
114
|
+
HK ||= "HK".freeze
|
115
|
+
HU ||= "HU".freeze
|
116
|
+
IS ||= "IS".freeze
|
117
|
+
IN ||= "IN".freeze
|
118
|
+
ID ||= "ID".freeze
|
119
|
+
IR ||= "IR".freeze
|
120
|
+
IQ ||= "IQ".freeze
|
121
|
+
IE ||= "IE".freeze
|
122
|
+
IM ||= "IM".freeze
|
123
|
+
IL ||= "IL".freeze
|
124
|
+
IT ||= "IT".freeze
|
125
|
+
JM ||= "JM".freeze
|
126
|
+
JP ||= "JP".freeze
|
127
|
+
JE ||= "JE".freeze
|
128
|
+
JO ||= "JO".freeze
|
129
|
+
KZ ||= "KZ".freeze
|
130
|
+
KE ||= "KE".freeze
|
131
|
+
KI ||= "KI".freeze
|
132
|
+
KP ||= "KP".freeze
|
133
|
+
KR ||= "KR".freeze
|
134
|
+
KW ||= "KW".freeze
|
135
|
+
KG ||= "KG".freeze
|
136
|
+
LA ||= "LA".freeze
|
137
|
+
LV ||= "LV".freeze
|
138
|
+
LB ||= "LB".freeze
|
139
|
+
LS ||= "LS".freeze
|
140
|
+
LR ||= "LR".freeze
|
141
|
+
LY ||= "LY".freeze
|
142
|
+
LI ||= "LI".freeze
|
143
|
+
LT ||= "LT".freeze
|
144
|
+
LU ||= "LU".freeze
|
145
|
+
MO ||= "MO".freeze
|
146
|
+
MK ||= "MK".freeze
|
147
|
+
MG ||= "MG".freeze
|
148
|
+
MW ||= "MW".freeze
|
149
|
+
MY ||= "MY".freeze
|
150
|
+
MV ||= "MV".freeze
|
151
|
+
ML ||= "ML".freeze
|
152
|
+
MT ||= "MT".freeze
|
153
|
+
MH ||= "MH".freeze
|
154
|
+
MQ ||= "MQ".freeze
|
155
|
+
MR ||= "MR".freeze
|
156
|
+
MU ||= "MU".freeze
|
157
|
+
YT ||= "YT".freeze
|
158
|
+
MX ||= "MX".freeze
|
159
|
+
FM ||= "FM".freeze
|
160
|
+
MD ||= "MD".freeze
|
161
|
+
MC ||= "MC".freeze
|
162
|
+
MN ||= "MN".freeze
|
163
|
+
ME ||= "ME".freeze
|
164
|
+
MS ||= "MS".freeze
|
165
|
+
MA ||= "MA".freeze
|
166
|
+
MZ ||= "MZ".freeze
|
167
|
+
MM ||= "MM".freeze
|
168
|
+
NA ||= "NA".freeze
|
169
|
+
NR ||= "NR".freeze
|
170
|
+
NP ||= "NP".freeze
|
171
|
+
NL ||= "NL".freeze
|
172
|
+
AN ||= "AN".freeze
|
173
|
+
NC ||= "NC".freeze
|
174
|
+
NZ ||= "NZ".freeze
|
175
|
+
NI ||= "NI".freeze
|
176
|
+
NE ||= "NE".freeze
|
177
|
+
NG ||= "NG".freeze
|
178
|
+
NU ||= "NU".freeze
|
179
|
+
NF ||= "NF".freeze
|
180
|
+
MP ||= "MP".freeze
|
181
|
+
NO ||= "NO".freeze
|
182
|
+
OM ||= "OM".freeze
|
183
|
+
PK ||= "PK".freeze
|
184
|
+
PW ||= "PW".freeze
|
185
|
+
PS ||= "PS".freeze
|
186
|
+
PA ||= "PA".freeze
|
187
|
+
PG ||= "PG".freeze
|
188
|
+
PY ||= "PY".freeze
|
189
|
+
PE ||= "PE".freeze
|
190
|
+
PH ||= "PH".freeze
|
191
|
+
PN ||= "PN".freeze
|
192
|
+
PL ||= "PL".freeze
|
193
|
+
PT ||= "PT".freeze
|
194
|
+
PR ||= "PR".freeze
|
195
|
+
QA ||= "QA".freeze
|
196
|
+
RE ||= "RE".freeze
|
197
|
+
RO ||= "RO".freeze
|
198
|
+
RU ||= "RU".freeze
|
199
|
+
RW ||= "RW".freeze
|
200
|
+
BL ||= "BL".freeze
|
201
|
+
SH ||= "SH".freeze
|
202
|
+
KN ||= "KN".freeze
|
203
|
+
LC ||= "LC".freeze
|
204
|
+
MF ||= "MF".freeze
|
205
|
+
PM ||= "PM".freeze
|
206
|
+
VC ||= "VC".freeze
|
207
|
+
WS ||= "WS".freeze
|
208
|
+
SM ||= "SM".freeze
|
209
|
+
ST ||= "ST".freeze
|
210
|
+
SA ||= "SA".freeze
|
211
|
+
SN ||= "SN".freeze
|
212
|
+
RS ||= "RS".freeze
|
213
|
+
SC ||= "SC".freeze
|
214
|
+
SL ||= "SL".freeze
|
215
|
+
SG ||= "SG".freeze
|
216
|
+
SK ||= "SK".freeze
|
217
|
+
SI ||= "SI".freeze
|
218
|
+
SB ||= "SB".freeze
|
219
|
+
SO ||= "SO".freeze
|
220
|
+
ZA ||= "ZA".freeze
|
221
|
+
GS ||= "GS".freeze
|
222
|
+
ES ||= "ES".freeze
|
223
|
+
LK ||= "LK".freeze
|
224
|
+
SD ||= "SD".freeze
|
225
|
+
SR ||= "SR".freeze
|
226
|
+
SJ ||= "SJ".freeze
|
227
|
+
SZ ||= "SZ".freeze
|
228
|
+
SE ||= "SE".freeze
|
229
|
+
CH ||= "CH".freeze
|
230
|
+
SY ||= "SY".freeze
|
231
|
+
TW ||= "TW".freeze
|
232
|
+
TJ ||= "TJ".freeze
|
233
|
+
TZ ||= "TZ".freeze
|
234
|
+
TH ||= "TH".freeze
|
235
|
+
TL ||= "TL".freeze
|
236
|
+
TG ||= "TG".freeze
|
237
|
+
TK ||= "TK".freeze
|
238
|
+
TO ||= "TO".freeze
|
239
|
+
TT ||= "TT".freeze
|
240
|
+
TN ||= "TN".freeze
|
241
|
+
TR ||= "TR".freeze
|
242
|
+
TM ||= "TM".freeze
|
243
|
+
TC ||= "TC".freeze
|
244
|
+
TV ||= "TV".freeze
|
245
|
+
UG ||= "UG".freeze
|
246
|
+
UA ||= "UA".freeze
|
247
|
+
AE ||= "AE".freeze
|
248
|
+
GB ||= "GB".freeze
|
249
|
+
US ||= "US".freeze
|
250
|
+
UM ||= "UM".freeze
|
251
|
+
UY ||= "UY".freeze
|
252
|
+
UZ ||= "UZ".freeze
|
253
|
+
VU ||= "VU".freeze
|
254
|
+
VE ||= "VE".freeze
|
255
|
+
VN ||= "VN".freeze
|
256
|
+
VG ||= "VG".freeze
|
257
|
+
VI ||= "VI".freeze
|
258
|
+
WF ||= "WF".freeze
|
259
|
+
EH ||= "EH".freeze
|
260
|
+
YE ||= "YE".freeze
|
261
|
+
ZM ||= "ZM".freeze
|
262
|
+
ZW ||= "ZW".freeze
|
263
|
+
BQ ||= "BQ".freeze
|
264
|
+
CW ||= "CW".freeze
|
265
|
+
SX ||= "SX".freeze
|
266
|
+
SS ||= "SS".freeze
|
267
|
+
EMPTY ||= "".freeze
|
268
|
+
|
269
|
+
# Builds the enum from string
|
270
|
+
# @param [String] The enum value in the form of the string
|
271
|
+
# @return [String] The enum value
|
272
|
+
def self.build_from_hash(value)
|
273
|
+
new.build_from_hash(value)
|
274
|
+
end
|
275
|
+
|
276
|
+
# Builds the enum from string
|
277
|
+
# @param [String] The enum value in the form of the string
|
278
|
+
# @return [String] The enum value
|
279
|
+
def build_from_hash(value)
|
280
|
+
constantValues = CountryOfResidence.constants.select { |c| CountryOfResidence::const_get(c) == value }
|
281
|
+
raise "Invalid ENUM value #{value} for class #CountryOfResidence" if constantValues.empty?
|
282
|
+
value
|
283
|
+
end
|
284
|
+
end
|
285
|
+
end
|
@@ -106,6 +106,18 @@ module XeroRuby::PayrollAu
|
|
106
106
|
attr_accessor :tax_declaration
|
107
107
|
|
108
108
|
|
109
|
+
attr_accessor :income_type
|
110
|
+
|
111
|
+
|
112
|
+
attr_accessor :employment_type
|
113
|
+
|
114
|
+
|
115
|
+
attr_accessor :country_of_residence
|
116
|
+
|
117
|
+
# Indicates if the employee has been updated for STP Phase 2 compliance. Doesn't indicate that the employee is payable.
|
118
|
+
attr_accessor :is_stp2_qualified
|
119
|
+
|
120
|
+
|
109
121
|
attr_accessor :leave_balances
|
110
122
|
|
111
123
|
|
@@ -174,6 +186,10 @@ module XeroRuby::PayrollAu
|
|
174
186
|
:'pay_template' => :'PayTemplate',
|
175
187
|
:'opening_balances' => :'OpeningBalances',
|
176
188
|
:'tax_declaration' => :'TaxDeclaration',
|
189
|
+
:'income_type' => :'IncomeType',
|
190
|
+
:'employment_type' => :'EmploymentType',
|
191
|
+
:'country_of_residence' => :'CountryOfResidence',
|
192
|
+
:'is_stp2_qualified' => :'IsSTP2Qualified',
|
177
193
|
:'leave_balances' => :'LeaveBalances',
|
178
194
|
:'leave_lines' => :'LeaveLines',
|
179
195
|
:'super_memberships' => :'SuperMemberships',
|
@@ -212,6 +228,10 @@ module XeroRuby::PayrollAu
|
|
212
228
|
:'pay_template' => :'PayTemplate',
|
213
229
|
:'opening_balances' => :'OpeningBalances',
|
214
230
|
:'tax_declaration' => :'TaxDeclaration',
|
231
|
+
:'income_type' => :'IncomeType',
|
232
|
+
:'employment_type' => :'EmploymentType',
|
233
|
+
:'country_of_residence' => :'CountryOfResidence',
|
234
|
+
:'is_stp2_qualified' => :'Boolean',
|
215
235
|
:'leave_balances' => :'Array<LeaveBalance>',
|
216
236
|
:'leave_lines' => :'Array<LeaveLine>',
|
217
237
|
:'super_memberships' => :'Array<SuperMembership>',
|
@@ -342,6 +362,22 @@ module XeroRuby::PayrollAu
|
|
342
362
|
self.tax_declaration = attributes[:'tax_declaration']
|
343
363
|
end
|
344
364
|
|
365
|
+
if attributes.key?(:'income_type')
|
366
|
+
self.income_type = attributes[:'income_type']
|
367
|
+
end
|
368
|
+
|
369
|
+
if attributes.key?(:'employment_type')
|
370
|
+
self.employment_type = attributes[:'employment_type']
|
371
|
+
end
|
372
|
+
|
373
|
+
if attributes.key?(:'country_of_residence')
|
374
|
+
self.country_of_residence = attributes[:'country_of_residence']
|
375
|
+
end
|
376
|
+
|
377
|
+
if attributes.key?(:'is_stp2_qualified')
|
378
|
+
self.is_stp2_qualified = attributes[:'is_stp2_qualified']
|
379
|
+
end
|
380
|
+
|
345
381
|
if attributes.key?(:'leave_balances')
|
346
382
|
if (value = attributes[:'leave_balances']).is_a?(Array)
|
347
383
|
self.leave_balances = value
|
@@ -458,6 +494,10 @@ module XeroRuby::PayrollAu
|
|
458
494
|
pay_template == o.pay_template &&
|
459
495
|
opening_balances == o.opening_balances &&
|
460
496
|
tax_declaration == o.tax_declaration &&
|
497
|
+
income_type == o.income_type &&
|
498
|
+
employment_type == o.employment_type &&
|
499
|
+
country_of_residence == o.country_of_residence &&
|
500
|
+
is_stp2_qualified == o.is_stp2_qualified &&
|
461
501
|
leave_balances == o.leave_balances &&
|
462
502
|
leave_lines == o.leave_lines &&
|
463
503
|
super_memberships == o.super_memberships &&
|
@@ -475,7 +515,7 @@ module XeroRuby::PayrollAu
|
|
475
515
|
# Calculates hash code according to all attributes.
|
476
516
|
# @return [Integer] Hash code
|
477
517
|
def hash
|
478
|
-
[first_name, last_name, date_of_birth, home_address, start_date, title, middle_names, email, gender, phone, mobile, twitter_user_name, is_authorised_to_approve_leave, is_authorised_to_approve_timesheets, job_title, classification, ordinary_earnings_rate_id, payroll_calendar_id, employee_group_name, employee_id, termination_date, termination_reason, bank_accounts, pay_template, opening_balances, tax_declaration, leave_balances, leave_lines, super_memberships, status, updated_date_utc, validation_errors].hash
|
518
|
+
[first_name, last_name, date_of_birth, home_address, start_date, title, middle_names, email, gender, phone, mobile, twitter_user_name, is_authorised_to_approve_leave, is_authorised_to_approve_timesheets, job_title, classification, ordinary_earnings_rate_id, payroll_calendar_id, employee_group_name, employee_id, termination_date, termination_reason, bank_accounts, pay_template, opening_balances, tax_declaration, income_type, employment_type, country_of_residence, is_stp2_qualified, leave_balances, leave_lines, super_memberships, status, updated_date_utc, validation_errors].hash
|
479
519
|
end
|
480
520
|
|
481
521
|
# Builds the object from hash
|
@@ -19,6 +19,7 @@ module XeroRuby::PayrollAu
|
|
19
19
|
CASUAL ||= "CASUAL".freeze
|
20
20
|
LABOURHIRE ||= "LABOURHIRE".freeze
|
21
21
|
SUPERINCOMESTREAM ||= "SUPERINCOMESTREAM".freeze
|
22
|
+
NONEMPLOYEE ||= "NONEMPLOYEE".freeze
|
22
23
|
|
23
24
|
# Builds the enum from string
|
24
25
|
# @param [String] The enum value in the form of the string
|
@@ -0,0 +1,36 @@
|
|
1
|
+
=begin
|
2
|
+
#Xero Payroll AU API
|
3
|
+
|
4
|
+
#This is the Xero Payroll API for orgs in Australia region.
|
5
|
+
|
6
|
+
Contact: api@xero.com
|
7
|
+
Generated by: https://openapi-generator.tech
|
8
|
+
OpenAPI Generator version: 4.3.1
|
9
|
+
|
10
|
+
=end
|
11
|
+
|
12
|
+
require 'time'
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module XeroRuby::PayrollAu
|
16
|
+
class EmploymentType
|
17
|
+
EMPLOYEE ||= "EMPLOYEE".freeze
|
18
|
+
CONTRACTOR ||= "CONTRACTOR".freeze
|
19
|
+
|
20
|
+
# Builds the enum from string
|
21
|
+
# @param [String] The enum value in the form of the string
|
22
|
+
# @return [String] The enum value
|
23
|
+
def self.build_from_hash(value)
|
24
|
+
new.build_from_hash(value)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Builds the enum from string
|
28
|
+
# @param [String] The enum value in the form of the string
|
29
|
+
# @return [String] The enum value
|
30
|
+
def build_from_hash(value)
|
31
|
+
constantValues = EmploymentType.constants.select { |c| EmploymentType::const_get(c) == value }
|
32
|
+
raise "Invalid ENUM value #{value} for class #EmploymentType" if constantValues.empty?
|
33
|
+
value
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
=begin
|
2
|
+
#Xero Payroll AU API
|
3
|
+
|
4
|
+
#This is the Xero Payroll API for orgs in Australia region.
|
5
|
+
|
6
|
+
Contact: api@xero.com
|
7
|
+
Generated by: https://openapi-generator.tech
|
8
|
+
OpenAPI Generator version: 4.3.1
|
9
|
+
|
10
|
+
=end
|
11
|
+
|
12
|
+
require 'time'
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module XeroRuby::PayrollAu
|
16
|
+
class IncomeType
|
17
|
+
SALARYANDWAGES ||= "SALARYANDWAGES".freeze
|
18
|
+
WORKINGHOLIDAYMAKER ||= "WORKINGHOLIDAYMAKER".freeze
|
19
|
+
NONEMPLOYEE ||= "NONEMPLOYEE".freeze
|
20
|
+
CLOSELYHELDPAYEES ||= "CLOSELYHELDPAYEES".freeze
|
21
|
+
LABOURHIRE ||= "LABOURHIRE".freeze
|
22
|
+
|
23
|
+
# Builds the enum from string
|
24
|
+
# @param [String] The enum value in the form of the string
|
25
|
+
# @return [String] The enum value
|
26
|
+
def self.build_from_hash(value)
|
27
|
+
new.build_from_hash(value)
|
28
|
+
end
|
29
|
+
|
30
|
+
# Builds the enum from string
|
31
|
+
# @param [String] The enum value in the form of the string
|
32
|
+
# @return [String] The enum value
|
33
|
+
def build_from_hash(value)
|
34
|
+
constantValues = IncomeType.constants.select { |c| IncomeType::const_get(c) == value }
|
35
|
+
raise "Invalid ENUM value #{value} for class #IncomeType" if constantValues.empty?
|
36
|
+
value
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -16,7 +16,7 @@ module XeroRuby::PayrollAu
|
|
16
16
|
class LeaveCategoryCode
|
17
17
|
ANNUALLEAVE ||= "ANNUALLEAVE".freeze
|
18
18
|
LONGSERVICELEAVE ||= "LONGSERVICELEAVE".freeze
|
19
|
-
|
19
|
+
PERSONALSICKCARERSLEAVE ||= "PERSONALSICKCARERSLEAVE".freeze
|
20
20
|
ROSTEREDDAYOFF ||= "ROSTEREDDAYOFF".freeze
|
21
21
|
TIMEOFFINLIEU ||= "TIMEOFFINLIEU".freeze
|
22
22
|
COMPASSIONATEANDBEREAVEMENTLEAVE ||= "COMPASSIONATEANDBEREAVEMENTLEAVE".freeze
|
@@ -0,0 +1,37 @@
|
|
1
|
+
=begin
|
2
|
+
#Xero Payroll AU API
|
3
|
+
|
4
|
+
#This is the Xero Payroll API for orgs in Australia region.
|
5
|
+
|
6
|
+
Contact: api@xero.com
|
7
|
+
Generated by: https://openapi-generator.tech
|
8
|
+
OpenAPI Generator version: 4.3.1
|
9
|
+
|
10
|
+
=end
|
11
|
+
|
12
|
+
require 'time'
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module XeroRuby::PayrollAu
|
16
|
+
class SeniorMaritalStatus
|
17
|
+
MEMBEROFCOUPLE ||= "MEMBEROFCOUPLE".freeze
|
18
|
+
MEMBEROFILLNESSSEPARATEDCOUPLE ||= "MEMBEROFILLNESSSEPARATEDCOUPLE".freeze
|
19
|
+
SINGLE ||= "SINGLE".freeze
|
20
|
+
|
21
|
+
# Builds the enum from string
|
22
|
+
# @param [String] The enum value in the form of the string
|
23
|
+
# @return [String] The enum value
|
24
|
+
def self.build_from_hash(value)
|
25
|
+
new.build_from_hash(value)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Builds the enum from string
|
29
|
+
# @param [String] The enum value in the form of the string
|
30
|
+
# @return [String] The enum value
|
31
|
+
def build_from_hash(value)
|
32
|
+
constantValues = SeniorMaritalStatus.constants.select { |c| SeniorMaritalStatus::const_get(c) == value }
|
33
|
+
raise "Invalid ENUM value #{value} for class #SeniorMaritalStatus" if constantValues.empty?
|
34
|
+
value
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -25,12 +25,16 @@ module XeroRuby::PayrollAu
|
|
25
25
|
# Number of days in the Payroll year
|
26
26
|
attr_accessor :days_in_payroll_year
|
27
27
|
|
28
|
+
# Indicates if the organisation has been enabled for STP Phase 2 editing of employees.
|
29
|
+
attr_accessor :employees_are_stp2
|
30
|
+
|
28
31
|
# Attribute mapping from ruby-style variable name to JSON key.
|
29
32
|
def self.attribute_map
|
30
33
|
{
|
31
34
|
:'accounts' => :'Accounts',
|
32
35
|
:'tracking_categories' => :'TrackingCategories',
|
33
|
-
:'days_in_payroll_year' => :'DaysInPayrollYear'
|
36
|
+
:'days_in_payroll_year' => :'DaysInPayrollYear',
|
37
|
+
:'employees_are_stp2' => :'EmployeesAreSTP2'
|
34
38
|
}
|
35
39
|
end
|
36
40
|
|
@@ -39,7 +43,8 @@ module XeroRuby::PayrollAu
|
|
39
43
|
{
|
40
44
|
:'accounts' => :'Array<Account>',
|
41
45
|
:'tracking_categories' => :'SettingsTrackingCategories',
|
42
|
-
:'days_in_payroll_year' => :'Integer'
|
46
|
+
:'days_in_payroll_year' => :'Integer',
|
47
|
+
:'employees_are_stp2' => :'Boolean'
|
43
48
|
}
|
44
49
|
end
|
45
50
|
|
@@ -71,6 +76,10 @@ module XeroRuby::PayrollAu
|
|
71
76
|
if attributes.key?(:'days_in_payroll_year')
|
72
77
|
self.days_in_payroll_year = attributes[:'days_in_payroll_year']
|
73
78
|
end
|
79
|
+
|
80
|
+
if attributes.key?(:'employees_are_stp2')
|
81
|
+
self.employees_are_stp2 = attributes[:'employees_are_stp2']
|
82
|
+
end
|
74
83
|
end
|
75
84
|
|
76
85
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -93,7 +102,8 @@ module XeroRuby::PayrollAu
|
|
93
102
|
self.class == o.class &&
|
94
103
|
accounts == o.accounts &&
|
95
104
|
tracking_categories == o.tracking_categories &&
|
96
|
-
days_in_payroll_year == o.days_in_payroll_year
|
105
|
+
days_in_payroll_year == o.days_in_payroll_year &&
|
106
|
+
employees_are_stp2 == o.employees_are_stp2
|
97
107
|
end
|
98
108
|
|
99
109
|
# @see the `==` method
|
@@ -105,7 +115,7 @@ module XeroRuby::PayrollAu
|
|
105
115
|
# Calculates hash code according to all attributes.
|
106
116
|
# @return [Integer] Hash code
|
107
117
|
def hash
|
108
|
-
[accounts, tracking_categories, days_in_payroll_year].hash
|
118
|
+
[accounts, tracking_categories, days_in_payroll_year, employees_are_stp2].hash
|
109
119
|
end
|
110
120
|
|
111
121
|
# Builds the object from hash
|
@@ -28,12 +28,24 @@ module XeroRuby::PayrollAu
|
|
28
28
|
# The tax file number e.g 123123123.
|
29
29
|
attr_accessor :tax_file_number
|
30
30
|
|
31
|
+
# 11-digit Australian Business Number e.g 21006819692 or an empty string (\"\") to unset a previously set value. Only applicable, and mandatory if income type is NONEMPLOYEE.
|
32
|
+
attr_accessor :abn
|
33
|
+
|
31
34
|
# If the employee is Australian resident for tax purposes. e.g true or false
|
32
35
|
attr_accessor :australian_resident_for_tax_purposes
|
33
36
|
|
34
37
|
|
35
38
|
attr_accessor :residency_status
|
36
39
|
|
40
|
+
|
41
|
+
attr_accessor :tax_scale_type
|
42
|
+
|
43
|
+
|
44
|
+
attr_accessor :work_condition
|
45
|
+
|
46
|
+
|
47
|
+
attr_accessor :senior_marital_status
|
48
|
+
|
37
49
|
# If tax free threshold claimed. e.g true or false
|
38
50
|
attr_accessor :tax_free_threshold_claimed
|
39
51
|
|
@@ -74,8 +86,12 @@ module XeroRuby::PayrollAu
|
|
74
86
|
:'employment_basis' => :'EmploymentBasis',
|
75
87
|
:'tfn_exemption_type' => :'TFNExemptionType',
|
76
88
|
:'tax_file_number' => :'TaxFileNumber',
|
89
|
+
:'abn' => :'ABN',
|
77
90
|
:'australian_resident_for_tax_purposes' => :'AustralianResidentForTaxPurposes',
|
78
91
|
:'residency_status' => :'ResidencyStatus',
|
92
|
+
:'tax_scale_type' => :'TaxScaleType',
|
93
|
+
:'work_condition' => :'WorkCondition',
|
94
|
+
:'senior_marital_status' => :'SeniorMaritalStatus',
|
79
95
|
:'tax_free_threshold_claimed' => :'TaxFreeThresholdClaimed',
|
80
96
|
:'tax_offset_estimated_amount' => :'TaxOffsetEstimatedAmount',
|
81
97
|
:'has_help_debt' => :'HasHELPDebt',
|
@@ -97,8 +113,12 @@ module XeroRuby::PayrollAu
|
|
97
113
|
:'employment_basis' => :'EmploymentBasis',
|
98
114
|
:'tfn_exemption_type' => :'TFNExemptionType',
|
99
115
|
:'tax_file_number' => :'String',
|
116
|
+
:'abn' => :'String',
|
100
117
|
:'australian_resident_for_tax_purposes' => :'Boolean',
|
101
118
|
:'residency_status' => :'ResidencyStatus',
|
119
|
+
:'tax_scale_type' => :'TaxScaleType',
|
120
|
+
:'work_condition' => :'WorkCondition',
|
121
|
+
:'senior_marital_status' => :'SeniorMaritalStatus',
|
102
122
|
:'tax_free_threshold_claimed' => :'Boolean',
|
103
123
|
:'tax_offset_estimated_amount' => :'Float',
|
104
124
|
:'has_help_debt' => :'Boolean',
|
@@ -144,6 +164,10 @@ module XeroRuby::PayrollAu
|
|
144
164
|
self.tax_file_number = attributes[:'tax_file_number']
|
145
165
|
end
|
146
166
|
|
167
|
+
if attributes.key?(:'abn')
|
168
|
+
self.abn = attributes[:'abn']
|
169
|
+
end
|
170
|
+
|
147
171
|
if attributes.key?(:'australian_resident_for_tax_purposes')
|
148
172
|
self.australian_resident_for_tax_purposes = attributes[:'australian_resident_for_tax_purposes']
|
149
173
|
end
|
@@ -152,6 +176,18 @@ module XeroRuby::PayrollAu
|
|
152
176
|
self.residency_status = attributes[:'residency_status']
|
153
177
|
end
|
154
178
|
|
179
|
+
if attributes.key?(:'tax_scale_type')
|
180
|
+
self.tax_scale_type = attributes[:'tax_scale_type']
|
181
|
+
end
|
182
|
+
|
183
|
+
if attributes.key?(:'work_condition')
|
184
|
+
self.work_condition = attributes[:'work_condition']
|
185
|
+
end
|
186
|
+
|
187
|
+
if attributes.key?(:'senior_marital_status')
|
188
|
+
self.senior_marital_status = attributes[:'senior_marital_status']
|
189
|
+
end
|
190
|
+
|
155
191
|
if attributes.key?(:'tax_free_threshold_claimed')
|
156
192
|
self.tax_free_threshold_claimed = attributes[:'tax_free_threshold_claimed']
|
157
193
|
end
|
@@ -219,8 +255,12 @@ module XeroRuby::PayrollAu
|
|
219
255
|
employment_basis == o.employment_basis &&
|
220
256
|
tfn_exemption_type == o.tfn_exemption_type &&
|
221
257
|
tax_file_number == o.tax_file_number &&
|
258
|
+
abn == o.abn &&
|
222
259
|
australian_resident_for_tax_purposes == o.australian_resident_for_tax_purposes &&
|
223
260
|
residency_status == o.residency_status &&
|
261
|
+
tax_scale_type == o.tax_scale_type &&
|
262
|
+
work_condition == o.work_condition &&
|
263
|
+
senior_marital_status == o.senior_marital_status &&
|
224
264
|
tax_free_threshold_claimed == o.tax_free_threshold_claimed &&
|
225
265
|
tax_offset_estimated_amount == o.tax_offset_estimated_amount &&
|
226
266
|
has_help_debt == o.has_help_debt &&
|
@@ -243,7 +283,7 @@ module XeroRuby::PayrollAu
|
|
243
283
|
# Calculates hash code according to all attributes.
|
244
284
|
# @return [Integer] Hash code
|
245
285
|
def hash
|
246
|
-
[employee_id, employment_basis, tfn_exemption_type, tax_file_number, australian_resident_for_tax_purposes, residency_status, tax_free_threshold_claimed, tax_offset_estimated_amount, has_help_debt, has_sfss_debt, has_trade_support_loan_debt, upward_variation_tax_withholding_amount, eligible_to_receive_leave_loading, approved_withholding_variation_percentage, has_student_startup_loan, has_loan_or_student_debt, updated_date_utc].hash
|
286
|
+
[employee_id, employment_basis, tfn_exemption_type, tax_file_number, abn, australian_resident_for_tax_purposes, residency_status, tax_scale_type, work_condition, senior_marital_status, tax_free_threshold_claimed, tax_offset_estimated_amount, has_help_debt, has_sfss_debt, has_trade_support_loan_debt, upward_variation_tax_withholding_amount, eligible_to_receive_leave_loading, approved_withholding_variation_percentage, has_student_startup_loan, has_loan_or_student_debt, updated_date_utc].hash
|
247
287
|
end
|
248
288
|
|
249
289
|
# Builds the object from hash
|