xero-ruby 3.3.0 → 3.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (231) hide show
  1. checksums.yaml +4 -4
  2. data/lib/xero-ruby/api/accounting_api.rb +86 -2
  3. data/lib/xero-ruby/api/finance_api.rb +961 -0
  4. data/lib/xero-ruby/api/payroll_au_api.rb +14 -14
  5. data/lib/xero-ruby/api/payroll_nz_api.rb +18 -12
  6. data/lib/xero-ruby/api/payroll_uk_api.rb +16 -4
  7. data/lib/xero-ruby/api_client.rb +13 -2
  8. data/lib/xero-ruby/configuration.rb +2 -0
  9. data/lib/xero-ruby/models/accounting/account.rb +34 -34
  10. data/lib/xero-ruby/models/accounting/account_type.rb +22 -22
  11. data/lib/xero-ruby/models/accounting/action.rb +2 -2
  12. data/lib/xero-ruby/models/accounting/address.rb +2 -2
  13. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +3 -3
  14. data/lib/xero-ruby/models/accounting/bank_transaction.rb +11 -11
  15. data/lib/xero-ruby/models/accounting/bank_transfer.rb +35 -1
  16. data/lib/xero-ruby/models/accounting/batch_payment.rb +4 -4
  17. data/lib/xero-ruby/models/accounting/branding_theme.rb +1 -1
  18. data/lib/xero-ruby/models/accounting/budget.rb +2 -2
  19. data/lib/xero-ruby/models/accounting/budget_balance.rb +2 -2
  20. data/lib/xero-ruby/models/accounting/contact.rb +89 -4
  21. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -2
  22. data/lib/xero-ruby/models/accounting/country_code.rb +240 -240
  23. data/lib/xero-ruby/models/accounting/credit_note.rb +8 -8
  24. data/lib/xero-ruby/models/accounting/currency_code.rb +166 -166
  25. data/lib/xero-ruby/models/accounting/employee.rb +4 -4
  26. data/lib/xero-ruby/models/accounting/expense_claim.rb +5 -5
  27. data/lib/xero-ruby/models/accounting/external_link.rb +5 -5
  28. data/lib/xero-ruby/models/accounting/invoice.rb +14 -14
  29. data/lib/xero-ruby/models/accounting/journal.rb +25 -25
  30. data/lib/xero-ruby/models/accounting/line_amount_types.rb +3 -3
  31. data/lib/xero-ruby/models/accounting/line_item.rb +11 -1
  32. data/lib/xero-ruby/models/accounting/line_item_item.rb +272 -0
  33. data/lib/xero-ruby/models/accounting/linked_transaction.rb +8 -8
  34. data/lib/xero-ruby/models/accounting/manual_journal.rb +5 -5
  35. data/lib/xero-ruby/models/accounting/organisation.rb +79 -76
  36. data/lib/xero-ruby/models/accounting/overpayment.rb +6 -6
  37. data/lib/xero-ruby/models/accounting/payment.rb +10 -10
  38. data/lib/xero-ruby/models/accounting/payment_term_type.rb +4 -4
  39. data/lib/xero-ruby/models/accounting/phone.rb +5 -5
  40. data/lib/xero-ruby/models/accounting/prepayment.rb +7 -7
  41. data/lib/xero-ruby/models/accounting/purchase_order.rb +5 -5
  42. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +3 -3
  43. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +6 -6
  44. data/lib/xero-ruby/models/accounting/receipt.rb +5 -5
  45. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +5 -5
  46. data/lib/xero-ruby/models/accounting/report.rb +1 -1
  47. data/lib/xero-ruby/models/accounting/row_type.rb +4 -4
  48. data/lib/xero-ruby/models/accounting/schedule.rb +8 -8
  49. data/lib/xero-ruby/models/accounting/tax_rate.rb +87 -80
  50. data/lib/xero-ruby/models/accounting/tax_type.rb +66 -59
  51. data/lib/xero-ruby/models/accounting/time_zone.rb +109 -109
  52. data/lib/xero-ruby/models/accounting/tracking_category.rb +3 -3
  53. data/lib/xero-ruby/models/accounting/tracking_option.rb +3 -3
  54. data/lib/xero-ruby/models/accounting/user.rb +7 -7
  55. data/lib/xero-ruby/models/app_store/plan.rb +6 -5
  56. data/lib/xero-ruby/models/app_store/product.rb +30 -9
  57. data/lib/xero-ruby/models/app_store/subscription.rb +37 -0
  58. data/lib/xero-ruby/models/app_store/subscription_item.rb +63 -1
  59. data/lib/xero-ruby/models/assets/asset_status.rb +3 -3
  60. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +3 -3
  61. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +11 -11
  62. data/lib/xero-ruby/models/files/object_group.rb +12 -11
  63. data/lib/xero-ruby/models/files/object_type.rb +56 -55
  64. data/lib/xero-ruby/models/finance/account_usage.rb +342 -0
  65. data/lib/xero-ruby/models/finance/account_usage_response.rb +254 -0
  66. data/lib/xero-ruby/models/finance/balance_sheet_account_detail.rb +262 -0
  67. data/lib/xero-ruby/models/finance/balance_sheet_account_group.rb +234 -0
  68. data/lib/xero-ruby/models/finance/balance_sheet_account_type.rb +244 -0
  69. data/lib/xero-ruby/models/finance/balance_sheet_response.rb +252 -0
  70. data/lib/xero-ruby/models/finance/bank_statement_accounting_response.rb +254 -0
  71. data/lib/xero-ruby/models/finance/bank_statement_response.rb +232 -0
  72. data/lib/xero-ruby/models/finance/bank_transaction_response.rb +274 -0
  73. data/lib/xero-ruby/models/finance/cash_account_response.rb +262 -0
  74. data/lib/xero-ruby/models/finance/cash_balance.rb +242 -0
  75. data/lib/xero-ruby/models/finance/cash_validation_response.rb +262 -0
  76. data/lib/xero-ruby/models/finance/cashflow_account.rb +282 -0
  77. data/lib/xero-ruby/models/finance/cashflow_activity.rb +244 -0
  78. data/lib/xero-ruby/models/finance/cashflow_response.rb +254 -0
  79. data/lib/xero-ruby/models/finance/cashflow_type.rb +244 -0
  80. data/lib/xero-ruby/models/finance/contact_detail.rb +274 -0
  81. data/lib/xero-ruby/models/finance/contact_response.rb +232 -0
  82. data/lib/xero-ruby/models/finance/contact_total_detail.rb +242 -0
  83. data/lib/xero-ruby/models/finance/contact_total_other.rb +252 -0
  84. data/lib/xero-ruby/models/finance/credit_note_response.rb +254 -0
  85. data/lib/xero-ruby/models/finance/current_statement_response.rb +272 -0
  86. data/lib/xero-ruby/models/finance/data_source_response.rb +362 -0
  87. data/lib/xero-ruby/models/finance/history_record_response.rb +262 -0
  88. data/lib/xero-ruby/models/finance/income_by_contact_response.rb +284 -0
  89. data/lib/xero-ruby/models/finance/invoice_response.rb +254 -0
  90. data/lib/xero-ruby/models/finance/line_item_response.rb +252 -0
  91. data/lib/xero-ruby/models/finance/lock_history_model.rb +242 -0
  92. data/lib/xero-ruby/models/finance/lock_history_response.rb +244 -0
  93. data/lib/xero-ruby/models/finance/manual_journal_total.rb +222 -0
  94. data/lib/xero-ruby/models/finance/overpayment_response.rb +254 -0
  95. data/lib/xero-ruby/models/finance/payment_response.rb +312 -0
  96. data/lib/xero-ruby/models/finance/pnl_account.rb +272 -0
  97. data/lib/xero-ruby/models/finance/pnl_account_class.rb +234 -0
  98. data/lib/xero-ruby/models/finance/pnl_account_type.rb +244 -0
  99. data/lib/xero-ruby/models/finance/practice_response.rb +262 -0
  100. data/lib/xero-ruby/models/finance/prepayment_response.rb +254 -0
  101. data/lib/xero-ruby/models/finance/problem.rb +252 -0
  102. data/lib/xero-ruby/models/finance/problem_type.rb +44 -0
  103. data/lib/xero-ruby/models/finance/profit_and_loss_response.rb +262 -0
  104. data/lib/xero-ruby/models/finance/report_history_model.rb +242 -0
  105. data/lib/xero-ruby/models/finance/report_history_response.rb +244 -0
  106. data/lib/xero-ruby/models/finance/statement_balance_response.rb +232 -0
  107. data/lib/xero-ruby/models/finance/statement_line_response.rb +346 -0
  108. data/lib/xero-ruby/models/finance/statement_lines_response.rb +382 -0
  109. data/lib/xero-ruby/models/finance/statement_response.rb +294 -0
  110. data/lib/xero-ruby/models/finance/total_detail.rb +242 -0
  111. data/lib/xero-ruby/models/finance/total_other.rb +242 -0
  112. data/lib/xero-ruby/models/finance/trial_balance_account.rb +312 -0
  113. data/lib/xero-ruby/models/finance/trial_balance_entry.rb +232 -0
  114. data/lib/xero-ruby/models/finance/trial_balance_movement.rb +252 -0
  115. data/lib/xero-ruby/models/finance/trial_balance_response.rb +244 -0
  116. data/lib/xero-ruby/models/finance/user_activities_response.rb +244 -0
  117. data/lib/xero-ruby/models/finance/user_response.rb +336 -0
  118. data/lib/xero-ruby/models/payroll_au/account_type.rb +23 -23
  119. data/lib/xero-ruby/models/payroll_au/allowance_category.rb +41 -0
  120. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +10 -7
  121. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +6 -6
  122. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +3 -3
  123. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +3 -3
  124. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +14 -4
  125. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +3 -3
  126. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +12 -10
  127. data/lib/xero-ruby/models/payroll_au/employee.rb +11 -11
  128. data/lib/xero-ruby/models/payroll_au/employee_status.rb +2 -2
  129. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +5 -5
  130. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +2 -2
  131. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +2 -2
  132. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +5 -5
  133. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +2 -2
  134. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +4 -4
  135. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +6 -5
  136. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +2 -2
  137. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +7 -7
  138. data/lib/xero-ruby/models/payroll_au/rate_type.rb +3 -3
  139. data/lib/xero-ruby/models/payroll_au/residency_status.rb +3 -3
  140. data/lib/xero-ruby/models/payroll_au/state.rb +8 -8
  141. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +2 -2
  142. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +3 -3
  143. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +4 -4
  144. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +4 -4
  145. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +5 -5
  146. data/lib/xero-ruby/models/payroll_nz/account.rb +4 -4
  147. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +2 -2
  148. data/lib/xero-ruby/models/payroll_nz/benefit.rb +5 -5
  149. data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +7 -7
  150. data/lib/xero-ruby/models/payroll_nz/deduction.rb +4 -4
  151. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +18 -18
  152. data/lib/xero-ruby/models/payroll_nz/employee.rb +2 -2
  153. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +4 -4
  154. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +6 -6
  155. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +8 -8
  156. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +5 -5
  157. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +2 -2
  158. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +5 -5
  159. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +3 -3
  160. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +3 -3
  161. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +8 -8
  162. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +5 -5
  163. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +11 -11
  164. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +19 -19
  165. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +2 -2
  166. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +4 -4
  167. data/lib/xero-ruby/models/payroll_uk/account.rb +7 -7
  168. data/lib/xero-ruby/models/payroll_uk/benefit.rb +4 -4
  169. data/lib/xero-ruby/models/payroll_uk/deduction.rb +12 -12
  170. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +28 -28
  171. data/lib/xero-ruby/models/payroll_uk/employee.rb +16 -6
  172. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +4 -4
  173. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +6 -6
  174. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +8 -8
  175. data/lib/xero-ruby/models/payroll_uk/employment.rb +15 -10
  176. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +2 -2
  177. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +11 -11
  178. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +6 -6
  179. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +3 -3
  180. data/lib/xero-ruby/models/payroll_uk/payslip.rb +3 -3
  181. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +5 -5
  182. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +14 -14
  183. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +3 -3
  184. data/lib/xero-ruby/models/projects/charge_type.rb +3 -3
  185. data/lib/xero-ruby/models/projects/currency_code.rb +164 -164
  186. data/lib/xero-ruby/models/projects/project_status.rb +2 -2
  187. data/lib/xero-ruby/models/projects/task.rb +3 -3
  188. data/lib/xero-ruby/models/projects/time_entry.rb +3 -3
  189. data/lib/xero-ruby/version.rb +2 -2
  190. data/lib/xero-ruby.rb +57 -0
  191. data/spec/api_client_spec.rb +3 -0
  192. data/spec/app_store/api/app_store_api_spec.rb +1 -1
  193. data/spec/configuration_spec.rb +1 -0
  194. data/spec/finance/api/finance_api_spec.rb +156 -0
  195. data/spec/finance/models/account_usage_response_spec.rb +58 -0
  196. data/spec/finance/models/account_usage_spec.rb +112 -0
  197. data/spec/finance/models/balance_sheet_account_detail_spec.rb +64 -0
  198. data/spec/finance/models/balance_sheet_account_group_spec.rb +46 -0
  199. data/spec/finance/models/balance_sheet_account_type_spec.rb +52 -0
  200. data/spec/finance/models/balance_sheet_response_spec.rb +58 -0
  201. data/spec/finance/models/bank_statement_response_spec.rb +46 -0
  202. data/spec/finance/models/cash_account_response_spec.rb +64 -0
  203. data/spec/finance/models/cash_balance_spec.rb +52 -0
  204. data/spec/finance/models/cash_validation_response_spec.rb +64 -0
  205. data/spec/finance/models/cashflow_account_spec.rb +76 -0
  206. data/spec/finance/models/cashflow_activity_spec.rb +52 -0
  207. data/spec/finance/models/cashflow_response_spec.rb +58 -0
  208. data/spec/finance/models/cashflow_type_spec.rb +52 -0
  209. data/spec/finance/models/current_statement_response_spec.rb +70 -0
  210. data/spec/finance/models/data_source_response_spec.rb +124 -0
  211. data/spec/finance/models/history_record_response_spec.rb +64 -0
  212. data/spec/finance/models/lock_history_model_spec.rb +52 -0
  213. data/spec/finance/models/lock_history_response_spec.rb +52 -0
  214. data/spec/finance/models/pnl_account_class_spec.rb +46 -0
  215. data/spec/finance/models/pnl_account_spec.rb +70 -0
  216. data/spec/finance/models/pnl_account_type_spec.rb +52 -0
  217. data/spec/finance/models/practice_response_spec.rb +64 -0
  218. data/spec/finance/models/problem_spec.rb +58 -0
  219. data/spec/finance/models/problem_type_spec.rb +34 -0
  220. data/spec/finance/models/profit_and_loss_response_spec.rb +64 -0
  221. data/spec/finance/models/report_history_model_spec.rb +52 -0
  222. data/spec/finance/models/report_history_response_spec.rb +52 -0
  223. data/spec/finance/models/statement_balance_response_spec.rb +46 -0
  224. data/spec/finance/models/statement_lines_response_spec.rb +136 -0
  225. data/spec/finance/models/trial_balance_account_spec.rb +94 -0
  226. data/spec/finance/models/trial_balance_entry_spec.rb +46 -0
  227. data/spec/finance/models/trial_balance_movement_spec.rb +58 -0
  228. data/spec/finance/models/trial_balance_response_spec.rb +52 -0
  229. data/spec/finance/models/user_activities_response_spec.rb +52 -0
  230. data/spec/finance/models/user_response_spec.rb +106 -0
  231. metadata +134 -3
@@ -21,8 +21,8 @@ module XeroRuby::Accounting
21
21
 
22
22
  # Type of Budget. OVERALL or TRACKING
23
23
  attr_accessor :type
24
- OVERALL = "OVERALL".freeze
25
- TRACKING = "TRACKING".freeze
24
+ OVERALL ||= "OVERALL".freeze
25
+ TRACKING ||= "TRACKING".freeze
26
26
 
27
27
  # The Budget description
28
28
  attr_accessor :description
@@ -42,8 +42,8 @@ module XeroRuby::Accounting
42
42
  def self.openapi_types
43
43
  {
44
44
  :'period' => :'Date',
45
- :'amount' => :'Integer',
46
- :'unit_amount' => :'Integer',
45
+ :'amount' => :'BigDecimal',
46
+ :'unit_amount' => :'BigDecimal',
47
47
  :'notes' => :'String'
48
48
  }
49
49
  end
@@ -19,6 +19,9 @@ module XeroRuby::Accounting
19
19
  # Xero identifier
20
20
  attr_accessor :contact_id
21
21
 
22
+ # ID for the destination of a merged contact. Only returned when using paging or when fetching a contact by ContactId or ContactNumber.
23
+ attr_accessor :merged_to_contact_id
24
+
22
25
  # This can be updated via the API only i.e. This field is read only on the Xero contact screen, used to identify contacts in external systems (max length = 50). If the Contact Number is used, this is displayed as Contact Code in the Contacts UI in Xero.
23
26
  attr_accessor :contact_number
24
27
 
@@ -27,9 +30,9 @@ module XeroRuby::Accounting
27
30
 
28
31
  # Current status of a contact – see contact status types
29
32
  attr_accessor :contact_status
30
- ACTIVE = "ACTIVE".freeze
31
- ARCHIVED = "ARCHIVED".freeze
32
- GDPRREQUEST = "GDPRREQUEST".freeze
33
+ ACTIVE ||= "ACTIVE".freeze
34
+ ARCHIVED ||= "ARCHIVED".freeze
35
+ GDPRREQUEST ||= "GDPRREQUEST".freeze
33
36
 
34
37
  # Full name of contact/organisation (max length = 255)
35
38
  attr_accessor :name
@@ -40,6 +43,9 @@ module XeroRuby::Accounting
40
43
  # Last name of contact person (max length = 255)
41
44
  attr_accessor :last_name
42
45
 
46
+ # Company registration number (max length = 50)
47
+ attr_accessor :company_number
48
+
43
49
  # Email address of contact person (umlauts not supported) (max length = 255)
44
50
  attr_accessor :email_address
45
51
 
@@ -73,6 +79,18 @@ module XeroRuby::Accounting
73
79
  # true or false – Boolean that describes if a contact has any AR invoices entered against them. Cannot be set via PUT or POST – it is automatically set when an accounts receivable invoice is generated against this contact.
74
80
  attr_accessor :is_customer
75
81
 
82
+ # The default sales line amount type for a contact. Only available when summaryOnly parameter or paging is used, or when fetch by ContactId or ContactNumber.
83
+ attr_accessor :sales_default_line_amount_type
84
+ INCLUSIVE ||= "INCLUSIVE".freeze
85
+ EXCLUSIVE ||= "EXCLUSIVE".freeze
86
+ NONE ||= "NONE".freeze
87
+
88
+ # The default purchases line amount type for a contact Only available when summaryOnly parameter or paging is used, or when fetch by ContactId or ContactNumber.
89
+ attr_accessor :purchases_default_line_amount_type
90
+ INCLUSIVE ||= "INCLUSIVE".freeze
91
+ EXCLUSIVE ||= "EXCLUSIVE".freeze
92
+ NONE ||= "NONE".freeze
93
+
76
94
 
77
95
  attr_accessor :default_currency
78
96
 
@@ -162,12 +180,14 @@ module XeroRuby::Accounting
162
180
  def self.attribute_map
163
181
  {
164
182
  :'contact_id' => :'ContactID',
183
+ :'merged_to_contact_id' => :'MergedToContactID',
165
184
  :'contact_number' => :'ContactNumber',
166
185
  :'account_number' => :'AccountNumber',
167
186
  :'contact_status' => :'ContactStatus',
168
187
  :'name' => :'Name',
169
188
  :'first_name' => :'FirstName',
170
189
  :'last_name' => :'LastName',
190
+ :'company_number' => :'CompanyNumber',
171
191
  :'email_address' => :'EmailAddress',
172
192
  :'skype_user_name' => :'SkypeUserName',
173
193
  :'contact_persons' => :'ContactPersons',
@@ -179,6 +199,8 @@ module XeroRuby::Accounting
179
199
  :'phones' => :'Phones',
180
200
  :'is_supplier' => :'IsSupplier',
181
201
  :'is_customer' => :'IsCustomer',
202
+ :'sales_default_line_amount_type' => :'SalesDefaultLineAmountType',
203
+ :'purchases_default_line_amount_type' => :'PurchasesDefaultLineAmountType',
182
204
  :'default_currency' => :'DefaultCurrency',
183
205
  :'xero_network_key' => :'XeroNetworkKey',
184
206
  :'sales_default_account_code' => :'SalesDefaultAccountCode',
@@ -207,12 +229,14 @@ module XeroRuby::Accounting
207
229
  def self.openapi_types
208
230
  {
209
231
  :'contact_id' => :'String',
232
+ :'merged_to_contact_id' => :'String',
210
233
  :'contact_number' => :'String',
211
234
  :'account_number' => :'String',
212
235
  :'contact_status' => :'String',
213
236
  :'name' => :'String',
214
237
  :'first_name' => :'String',
215
238
  :'last_name' => :'String',
239
+ :'company_number' => :'String',
216
240
  :'email_address' => :'String',
217
241
  :'skype_user_name' => :'String',
218
242
  :'contact_persons' => :'Array<ContactPerson>',
@@ -224,6 +248,8 @@ module XeroRuby::Accounting
224
248
  :'phones' => :'Array<Phone>',
225
249
  :'is_supplier' => :'Boolean',
226
250
  :'is_customer' => :'Boolean',
251
+ :'sales_default_line_amount_type' => :'String',
252
+ :'purchases_default_line_amount_type' => :'String',
227
253
  :'default_currency' => :'CurrencyCode',
228
254
  :'xero_network_key' => :'String',
229
255
  :'sales_default_account_code' => :'String',
@@ -267,6 +293,10 @@ module XeroRuby::Accounting
267
293
  self.contact_id = attributes[:'contact_id']
268
294
  end
269
295
 
296
+ if attributes.key?(:'merged_to_contact_id')
297
+ self.merged_to_contact_id = attributes[:'merged_to_contact_id']
298
+ end
299
+
270
300
  if attributes.key?(:'contact_number')
271
301
  self.contact_number = attributes[:'contact_number']
272
302
  end
@@ -291,6 +321,10 @@ module XeroRuby::Accounting
291
321
  self.last_name = attributes[:'last_name']
292
322
  end
293
323
 
324
+ if attributes.key?(:'company_number')
325
+ self.company_number = attributes[:'company_number']
326
+ end
327
+
294
328
  if attributes.key?(:'email_address')
295
329
  self.email_address = attributes[:'email_address']
296
330
  end
@@ -341,6 +375,14 @@ module XeroRuby::Accounting
341
375
  self.is_customer = attributes[:'is_customer']
342
376
  end
343
377
 
378
+ if attributes.key?(:'sales_default_line_amount_type')
379
+ self.sales_default_line_amount_type = attributes[:'sales_default_line_amount_type']
380
+ end
381
+
382
+ if attributes.key?(:'purchases_default_line_amount_type')
383
+ self.purchases_default_line_amount_type = attributes[:'purchases_default_line_amount_type']
384
+ end
385
+
344
386
  if attributes.key?(:'default_currency')
345
387
  self.default_currency = attributes[:'default_currency']
346
388
  end
@@ -464,6 +506,10 @@ module XeroRuby::Accounting
464
506
  invalid_properties.push('invalid value for "last_name", the character length must be smaller than or equal to 255.')
465
507
  end
466
508
 
509
+ if !@company_number.nil? && @company_number.to_s.length > 50
510
+ invalid_properties.push('invalid value for "company_number", the character length must be smaller than or equal to 50.')
511
+ end
512
+
467
513
  if !@email_address.nil? && @email_address.to_s.length > 255
468
514
  invalid_properties.push('invalid value for "email_address", the character length must be smaller than or equal to 255.')
469
515
  end
@@ -485,8 +531,13 @@ module XeroRuby::Accounting
485
531
  return false if !@name.nil? && @name.to_s.length > 255
486
532
  return false if !@first_name.nil? && @first_name.to_s.length > 255
487
533
  return false if !@last_name.nil? && @last_name.to_s.length > 255
534
+ return false if !@company_number.nil? && @company_number.to_s.length > 50
488
535
  return false if !@email_address.nil? && @email_address.to_s.length > 255
489
536
  return false if !@tax_number.nil? && @tax_number.to_s.length > 50
537
+ sales_default_line_amount_type_validator = EnumAttributeValidator.new('String', ["INCLUSIVE", "EXCLUSIVE", "NONE"])
538
+ return false unless sales_default_line_amount_type_validator.valid?(@sales_default_line_amount_type)
539
+ purchases_default_line_amount_type_validator = EnumAttributeValidator.new('String', ["INCLUSIVE", "EXCLUSIVE", "NONE"])
540
+ return false unless purchases_default_line_amount_type_validator.valid?(@purchases_default_line_amount_type)
490
541
  true
491
542
  end
492
543
 
@@ -550,6 +601,16 @@ module XeroRuby::Accounting
550
601
  @last_name = last_name
551
602
  end
552
603
 
604
+ # Custom attribute writer method with validation
605
+ # @param [Object] company_number Value to be assigned
606
+ def company_number=(company_number)
607
+ if !company_number.nil? && company_number.to_s.length > 50
608
+ fail ArgumentError, 'invalid value for "company_number", the character length must be smaller than or equal to 50.'
609
+ end
610
+
611
+ @company_number = company_number
612
+ end
613
+
553
614
  # Custom attribute writer method with validation
554
615
  # @param [Object] email_address Value to be assigned
555
616
  def email_address=(email_address)
@@ -570,18 +631,40 @@ module XeroRuby::Accounting
570
631
  @tax_number = tax_number
571
632
  end
572
633
 
634
+ # Custom attribute writer method checking allowed values (enum).
635
+ # @param [Object] sales_default_line_amount_type Object to be assigned
636
+ def sales_default_line_amount_type=(sales_default_line_amount_type)
637
+ validator = EnumAttributeValidator.new('String', ["INCLUSIVE", "EXCLUSIVE", "NONE"])
638
+ unless validator.valid?(sales_default_line_amount_type)
639
+ fail ArgumentError, "invalid value for \"sales_default_line_amount_type\", must be one of #{validator.allowable_values}."
640
+ end
641
+ @sales_default_line_amount_type = sales_default_line_amount_type
642
+ end
643
+
644
+ # Custom attribute writer method checking allowed values (enum).
645
+ # @param [Object] purchases_default_line_amount_type Object to be assigned
646
+ def purchases_default_line_amount_type=(purchases_default_line_amount_type)
647
+ validator = EnumAttributeValidator.new('String', ["INCLUSIVE", "EXCLUSIVE", "NONE"])
648
+ unless validator.valid?(purchases_default_line_amount_type)
649
+ fail ArgumentError, "invalid value for \"purchases_default_line_amount_type\", must be one of #{validator.allowable_values}."
650
+ end
651
+ @purchases_default_line_amount_type = purchases_default_line_amount_type
652
+ end
653
+
573
654
  # Checks equality by comparing each attribute.
574
655
  # @param [Object] Object to be compared
575
656
  def ==(o)
576
657
  return true if self.equal?(o)
577
658
  self.class == o.class &&
578
659
  contact_id == o.contact_id &&
660
+ merged_to_contact_id == o.merged_to_contact_id &&
579
661
  contact_number == o.contact_number &&
580
662
  account_number == o.account_number &&
581
663
  contact_status == o.contact_status &&
582
664
  name == o.name &&
583
665
  first_name == o.first_name &&
584
666
  last_name == o.last_name &&
667
+ company_number == o.company_number &&
585
668
  email_address == o.email_address &&
586
669
  skype_user_name == o.skype_user_name &&
587
670
  contact_persons == o.contact_persons &&
@@ -593,6 +676,8 @@ module XeroRuby::Accounting
593
676
  phones == o.phones &&
594
677
  is_supplier == o.is_supplier &&
595
678
  is_customer == o.is_customer &&
679
+ sales_default_line_amount_type == o.sales_default_line_amount_type &&
680
+ purchases_default_line_amount_type == o.purchases_default_line_amount_type &&
596
681
  default_currency == o.default_currency &&
597
682
  xero_network_key == o.xero_network_key &&
598
683
  sales_default_account_code == o.sales_default_account_code &&
@@ -625,7 +710,7 @@ module XeroRuby::Accounting
625
710
  # Calculates hash code according to all attributes.
626
711
  # @return [Integer] Hash code
627
712
  def hash
628
- [contact_id, contact_number, account_number, contact_status, name, first_name, last_name, email_address, skype_user_name, contact_persons, bank_account_details, tax_number, accounts_receivable_tax_type, accounts_payable_tax_type, addresses, phones, is_supplier, is_customer, default_currency, xero_network_key, sales_default_account_code, purchases_default_account_code, sales_tracking_categories, purchases_tracking_categories, tracking_category_name, tracking_category_option, payment_terms, updated_date_utc, contact_groups, website, branding_theme, batch_payments, discount, balances, attachments, has_attachments, validation_errors, has_validation_errors, status_attribute_string].hash
713
+ [contact_id, merged_to_contact_id, contact_number, account_number, contact_status, name, first_name, last_name, company_number, email_address, skype_user_name, contact_persons, bank_account_details, tax_number, accounts_receivable_tax_type, accounts_payable_tax_type, addresses, phones, is_supplier, is_customer, sales_default_line_amount_type, purchases_default_line_amount_type, default_currency, xero_network_key, sales_default_account_code, purchases_default_account_code, sales_tracking_categories, purchases_tracking_categories, tracking_category_name, tracking_category_option, payment_terms, updated_date_utc, contact_groups, website, branding_theme, batch_payments, discount, balances, attachments, has_attachments, validation_errors, has_validation_errors, status_attribute_string].hash
629
714
  end
630
715
 
631
716
  # Builds the object from hash
@@ -21,8 +21,8 @@ module XeroRuby::Accounting
21
21
 
22
22
  # The Status of a contact group. To delete a contact group update the status to DELETED. Only contact groups with a status of ACTIVE are returned on GETs.
23
23
  attr_accessor :status
24
- ACTIVE = "ACTIVE".freeze
25
- DELETED = "DELETED".freeze
24
+ ACTIVE ||= "ACTIVE".freeze
25
+ DELETED ||= "DELETED".freeze
26
26
 
27
27
  # The Xero identifier for an contact group – specified as a string following the endpoint name. e.g. /297c2dc5-cc47-4afd-8ec8-74990b8761e9
28
28
  attr_accessor :contact_group_id