xero-ruby 1.0 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (343) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +43 -3
  3. data/build_notes.md +21 -0
  4. data/docs/accounting/AccountingApi.md +1514 -722
  5. data/docs/accounting/Allocation.md +11 -1
  6. data/docs/accounting/BankTransfer.md +1 -1
  7. data/docs/accounting/BatchPayment.md +1 -1
  8. data/docs/accounting/Contact.md +2 -2
  9. data/docs/accounting/CreditNote.md +2 -2
  10. data/docs/accounting/Invoice.md +2 -2
  11. data/docs/accounting/Journal.md +1 -1
  12. data/docs/accounting/ManualJournalLine.md +2 -0
  13. data/docs/accounting/Organisation.md +3 -1
  14. data/docs/accounting/Payment.md +6 -4
  15. data/docs/accounting/Quote.md +5 -1
  16. data/docs/accounting/Report.md +1 -1
  17. data/docs/accounting/{TenNinteyNineContact.md → TenNinetyNineContact.md} +2 -2
  18. data/docs/assets/AssetApi.md +40 -16
  19. data/docs/assets/AssetType.md +1 -1
  20. data/docs/projects/Amount.md +19 -0
  21. data/docs/projects/ChargeType.md +16 -0
  22. data/docs/projects/CurrencyCode.md +16 -0
  23. data/docs/projects/Error.md +19 -0
  24. data/docs/projects/Pagination.md +23 -0
  25. data/docs/projects/Project.md +59 -0
  26. data/docs/projects/ProjectApi.md +979 -0
  27. data/docs/projects/ProjectCreateOrUpdate.md +23 -0
  28. data/docs/projects/ProjectPatch.md +17 -0
  29. data/docs/projects/ProjectStatus.md +16 -0
  30. data/docs/projects/ProjectUser.md +21 -0
  31. data/docs/projects/ProjectUsers.md +19 -0
  32. data/docs/projects/Projects.md +19 -0
  33. data/docs/projects/Task.md +45 -0
  34. data/docs/projects/TaskCreateOrUpdate.md +23 -0
  35. data/docs/projects/Tasks.md +19 -0
  36. data/docs/projects/TimeEntries.md +19 -0
  37. data/docs/projects/TimeEntry.md +33 -0
  38. data/docs/projects/TimeEntryCreateOrUpdate.md +25 -0
  39. data/lib/xero-ruby.rb +22 -3
  40. data/lib/xero-ruby/api/accounting_api.rb +85 -9
  41. data/lib/xero-ruby/api/asset_api.rb +3 -3
  42. data/lib/xero-ruby/api/project_api.rb +1035 -0
  43. data/lib/xero-ruby/api_client.rb +103 -37
  44. data/lib/xero-ruby/api_error.rb +2 -2
  45. data/lib/xero-ruby/configuration.rb +4 -5
  46. data/lib/xero-ruby/models/accounting/account.rb +61 -20
  47. data/lib/xero-ruby/models/accounting/account_type.rb +2 -2
  48. data/lib/xero-ruby/models/accounting/accounts.rb +8 -3
  49. data/lib/xero-ruby/models/accounting/accounts_payable.rb +11 -5
  50. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +11 -5
  51. data/lib/xero-ruby/models/accounting/address.rb +19 -12
  52. data/lib/xero-ruby/models/accounting/allocation.rb +66 -9
  53. data/lib/xero-ruby/models/accounting/allocations.rb +8 -3
  54. data/lib/xero-ruby/models/accounting/attachment.rb +12 -8
  55. data/lib/xero-ruby/models/accounting/attachments.rb +8 -3
  56. data/lib/xero-ruby/models/accounting/balances.rb +9 -3
  57. data/lib/xero-ruby/models/accounting/bank_transaction.rb +43 -24
  58. data/lib/xero-ruby/models/accounting/bank_transactions.rb +8 -3
  59. data/lib/xero-ruby/models/accounting/bank_transfer.rb +20 -14
  60. data/lib/xero-ruby/models/accounting/bank_transfers.rb +8 -3
  61. data/lib/xero-ruby/models/accounting/batch_payment.rb +29 -19
  62. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +11 -7
  63. data/lib/xero-ruby/models/accounting/batch_payments.rb +8 -3
  64. data/lib/xero-ruby/models/accounting/bill.rb +8 -3
  65. data/lib/xero-ruby/models/accounting/branding_theme.rb +13 -8
  66. data/lib/xero-ruby/models/accounting/branding_themes.rb +8 -3
  67. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +9 -5
  68. data/lib/xero-ruby/models/accounting/cis_setting.rb +8 -4
  69. data/lib/xero-ruby/models/accounting/cis_settings.rb +8 -3
  70. data/lib/xero-ruby/models/accounting/contact.rb +51 -37
  71. data/lib/xero-ruby/models/accounting/contact_group.rb +12 -6
  72. data/lib/xero-ruby/models/accounting/contact_groups.rb +8 -3
  73. data/lib/xero-ruby/models/accounting/contact_person.rb +10 -6
  74. data/lib/xero-ruby/models/accounting/contacts.rb +8 -3
  75. data/lib/xero-ruby/models/accounting/country_code.rb +2 -2
  76. data/lib/xero-ruby/models/accounting/credit_note.rb +47 -30
  77. data/lib/xero-ruby/models/accounting/credit_notes.rb +8 -3
  78. data/lib/xero-ruby/models/accounting/currencies.rb +8 -3
  79. data/lib/xero-ruby/models/accounting/currency.rb +9 -4
  80. data/lib/xero-ruby/models/accounting/currency_code.rb +4 -4
  81. data/lib/xero-ruby/models/accounting/element.rb +14 -4
  82. data/lib/xero-ruby/models/accounting/employee.rb +17 -8
  83. data/lib/xero-ruby/models/accounting/employees.rb +8 -3
  84. data/lib/xero-ruby/models/accounting/error.rb +10 -6
  85. data/lib/xero-ruby/models/accounting/expense_claim.rb +26 -15
  86. data/lib/xero-ruby/models/accounting/expense_claims.rb +8 -3
  87. data/lib/xero-ruby/models/accounting/external_link.rb +14 -4
  88. data/lib/xero-ruby/models/accounting/history_record.rb +10 -6
  89. data/lib/xero-ruby/models/accounting/history_records.rb +8 -3
  90. data/lib/xero-ruby/models/accounting/invoice.rb +69 -46
  91. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +7 -3
  92. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +8 -3
  93. data/lib/xero-ruby/models/accounting/invoices.rb +8 -3
  94. data/lib/xero-ruby/models/accounting/item.rb +24 -18
  95. data/lib/xero-ruby/models/accounting/items.rb +8 -3
  96. data/lib/xero-ruby/models/accounting/journal.rb +40 -11
  97. data/lib/xero-ruby/models/accounting/journal_line.rb +21 -16
  98. data/lib/xero-ruby/models/accounting/journals.rb +8 -3
  99. data/lib/xero-ruby/models/accounting/line_amount_types.rb +2 -2
  100. data/lib/xero-ruby/models/accounting/line_item.rb +25 -21
  101. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +10 -6
  102. data/lib/xero-ruby/models/accounting/linked_transaction.rb +25 -13
  103. data/lib/xero-ruby/models/accounting/linked_transactions.rb +8 -3
  104. data/lib/xero-ruby/models/accounting/manual_journal.rb +25 -15
  105. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +26 -12
  106. data/lib/xero-ruby/models/accounting/manual_journals.rb +8 -3
  107. data/lib/xero-ruby/models/accounting/online_invoice.rb +7 -3
  108. data/lib/xero-ruby/models/accounting/online_invoices.rb +8 -3
  109. data/lib/xero-ruby/models/accounting/organisation.rb +122 -32
  110. data/lib/xero-ruby/models/accounting/organisations.rb +8 -3
  111. data/lib/xero-ruby/models/accounting/overpayment.rb +36 -23
  112. data/lib/xero-ruby/models/accounting/overpayments.rb +8 -3
  113. data/lib/xero-ruby/models/accounting/payment.rb +57 -24
  114. data/lib/xero-ruby/models/accounting/payment_delete.rb +7 -3
  115. data/lib/xero-ruby/models/accounting/payment_service.rb +12 -8
  116. data/lib/xero-ruby/models/accounting/payment_services.rb +8 -3
  117. data/lib/xero-ruby/models/accounting/payment_term.rb +9 -3
  118. data/lib/xero-ruby/models/accounting/payment_term_type.rb +2 -2
  119. data/lib/xero-ruby/models/accounting/payments.rb +8 -3
  120. data/lib/xero-ruby/models/accounting/phone.rb +16 -6
  121. data/lib/xero-ruby/models/accounting/prepayment.rb +37 -23
  122. data/lib/xero-ruby/models/accounting/prepayments.rb +8 -3
  123. data/lib/xero-ruby/models/accounting/purchase.rb +11 -7
  124. data/lib/xero-ruby/models/accounting/purchase_order.rb +45 -33
  125. data/lib/xero-ruby/models/accounting/purchase_orders.rb +8 -3
  126. data/lib/xero-ruby/models/accounting/quote.rb +58 -28
  127. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +2 -2
  128. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +3 -2
  129. data/lib/xero-ruby/models/accounting/quotes.rb +8 -3
  130. data/lib/xero-ruby/models/accounting/receipt.rb +32 -19
  131. data/lib/xero-ruby/models/accounting/receipts.rb +8 -3
  132. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +30 -17
  133. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +8 -3
  134. data/lib/xero-ruby/models/accounting/report.rb +15 -9
  135. data/lib/xero-ruby/models/accounting/report_attribute.rb +9 -3
  136. data/lib/xero-ruby/models/accounting/report_cell.rb +9 -3
  137. data/lib/xero-ruby/models/accounting/report_fields.rb +10 -3
  138. data/lib/xero-ruby/models/accounting/report_row.rb +10 -3
  139. data/lib/xero-ruby/models/accounting/report_rows.rb +11 -3
  140. data/lib/xero-ruby/models/accounting/report_with_row.rb +15 -9
  141. data/lib/xero-ruby/models/accounting/report_with_rows.rb +8 -3
  142. data/lib/xero-ruby/models/accounting/reports.rb +8 -3
  143. data/lib/xero-ruby/models/accounting/request_empty.rb +7 -3
  144. data/lib/xero-ruby/models/accounting/row_type.rb +2 -2
  145. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +8 -4
  146. data/lib/xero-ruby/models/accounting/schedule.rb +23 -11
  147. data/lib/xero-ruby/models/accounting/tax_component.rb +11 -7
  148. data/lib/xero-ruby/models/accounting/tax_rate.rb +100 -18
  149. data/lib/xero-ruby/models/accounting/tax_rates.rb +8 -3
  150. data/lib/xero-ruby/models/accounting/tax_type.rb +6 -2
  151. data/lib/xero-ruby/models/accounting/{ten_nintey_nine_contact.rb → ten_ninety_nine_contact.rb} +44 -40
  152. data/lib/xero-ruby/models/accounting/time_zone.rb +2 -2
  153. data/lib/xero-ruby/models/accounting/tracking_categories.rb +8 -3
  154. data/lib/xero-ruby/models/accounting/tracking_category.rb +15 -8
  155. data/lib/xero-ruby/models/accounting/tracking_option.rb +13 -6
  156. data/lib/xero-ruby/models/accounting/tracking_options.rb +8 -3
  157. data/lib/xero-ruby/models/accounting/user.rb +20 -9
  158. data/lib/xero-ruby/models/accounting/users.rb +8 -3
  159. data/lib/xero-ruby/models/accounting/validation_error.rb +7 -3
  160. data/lib/xero-ruby/models/assets/asset.rb +24 -17
  161. data/lib/xero-ruby/models/assets/asset_status.rb +2 -2
  162. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +2 -2
  163. data/lib/xero-ruby/models/assets/asset_type.rb +13 -13
  164. data/lib/xero-ruby/models/assets/assets.rb +9 -3
  165. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +19 -15
  166. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +26 -11
  167. data/lib/xero-ruby/models/assets/error.rb +11 -7
  168. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +12 -8
  169. data/lib/xero-ruby/models/assets/pagination.rb +11 -3
  170. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +11 -7
  171. data/lib/xero-ruby/models/assets/setting.rb +14 -10
  172. data/lib/xero-ruby/models/projects/amount.rb +218 -0
  173. data/lib/xero-ruby/models/projects/charge_type.rb +38 -0
  174. data/lib/xero-ruby/models/projects/currency_code.rb +199 -0
  175. data/lib/xero-ruby/models/projects/error.rb +218 -0
  176. data/lib/xero-ruby/models/projects/pagination.rb +238 -0
  177. data/lib/xero-ruby/models/projects/project.rb +423 -0
  178. data/lib/xero-ruby/models/projects/project_create_or_update.rb +243 -0
  179. data/lib/xero-ruby/models/projects/project_patch.rb +213 -0
  180. data/lib/xero-ruby/models/projects/project_status.rb +37 -0
  181. data/lib/xero-ruby/models/projects/project_user.rb +228 -0
  182. data/lib/xero-ruby/models/projects/project_users.rb +220 -0
  183. data/lib/xero-ruby/models/projects/projects.rb +220 -0
  184. data/lib/xero-ruby/models/projects/task.rb +385 -0
  185. data/lib/xero-ruby/models/projects/task_create_or_update.rb +253 -0
  186. data/lib/xero-ruby/models/projects/tasks.rb +220 -0
  187. data/lib/xero-ruby/models/projects/time_entries.rb +220 -0
  188. data/lib/xero-ruby/models/projects/time_entry.rb +324 -0
  189. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +268 -0
  190. data/lib/xero-ruby/version.rb +3 -3
  191. data/spec/accounting/api/accounting_api_spec.rb +19 -6
  192. data/spec/accounting/models/account_spec.rb +1 -1
  193. data/spec/accounting/models/account_type_spec.rb +1 -1
  194. data/spec/accounting/models/accounts_payable_spec.rb +1 -1
  195. data/spec/accounting/models/accounts_receivable_spec.rb +1 -1
  196. data/spec/accounting/models/accounts_spec.rb +1 -1
  197. data/spec/accounting/models/address_spec.rb +1 -1
  198. data/spec/accounting/models/allocation_spec.rb +1 -1
  199. data/spec/accounting/models/allocations_spec.rb +1 -1
  200. data/spec/accounting/models/attachment_spec.rb +1 -1
  201. data/spec/accounting/models/attachments_spec.rb +1 -1
  202. data/spec/accounting/models/balances_spec.rb +1 -1
  203. data/spec/accounting/models/bank_transaction_spec.rb +1 -1
  204. data/spec/accounting/models/bank_transactions_spec.rb +1 -1
  205. data/spec/accounting/models/bank_transfer_spec.rb +1 -1
  206. data/spec/accounting/models/bank_transfers_spec.rb +1 -1
  207. data/spec/accounting/models/batch_payment_details_spec.rb +1 -1
  208. data/spec/accounting/models/batch_payment_spec.rb +1 -1
  209. data/spec/accounting/models/batch_payments_spec.rb +1 -1
  210. data/spec/accounting/models/bill_spec.rb +1 -1
  211. data/spec/accounting/models/branding_theme_spec.rb +1 -1
  212. data/spec/accounting/models/branding_themes_spec.rb +1 -1
  213. data/spec/accounting/models/cis_org_setting_spec.rb +1 -1
  214. data/spec/accounting/models/cis_setting_spec.rb +1 -1
  215. data/spec/accounting/models/cis_settings_spec.rb +1 -1
  216. data/spec/accounting/models/contact_group_spec.rb +1 -1
  217. data/spec/accounting/models/contact_groups_spec.rb +1 -1
  218. data/spec/accounting/models/contact_person_spec.rb +1 -1
  219. data/spec/accounting/models/contact_spec.rb +1 -1
  220. data/spec/accounting/models/contacts_spec.rb +1 -1
  221. data/spec/accounting/models/country_code_spec.rb +1 -1
  222. data/spec/accounting/models/credit_note_spec.rb +1 -1
  223. data/spec/accounting/models/credit_notes_spec.rb +1 -1
  224. data/spec/accounting/models/currencies_spec.rb +1 -1
  225. data/spec/accounting/models/currency_code_spec.rb +1 -1
  226. data/spec/accounting/models/currency_spec.rb +1 -1
  227. data/spec/accounting/models/element_spec.rb +1 -1
  228. data/spec/accounting/models/employee_spec.rb +1 -1
  229. data/spec/accounting/models/employees_spec.rb +1 -1
  230. data/spec/accounting/models/error_spec.rb +1 -1
  231. data/spec/accounting/models/expense_claim_spec.rb +1 -1
  232. data/spec/accounting/models/expense_claims_spec.rb +1 -1
  233. data/spec/accounting/models/external_link_spec.rb +1 -1
  234. data/spec/accounting/models/history_record_spec.rb +1 -1
  235. data/spec/accounting/models/history_records_spec.rb +1 -1
  236. data/spec/accounting/models/invoice_reminder_spec.rb +1 -1
  237. data/spec/accounting/models/invoice_reminders_spec.rb +1 -1
  238. data/spec/accounting/models/invoice_spec.rb +1 -1
  239. data/spec/accounting/models/invoices_spec.rb +1 -1
  240. data/spec/accounting/models/item_spec.rb +1 -1
  241. data/spec/accounting/models/items_spec.rb +1 -1
  242. data/spec/accounting/models/journal_line_spec.rb +1 -1
  243. data/spec/accounting/models/journal_spec.rb +1 -1
  244. data/spec/accounting/models/journals_spec.rb +1 -1
  245. data/spec/accounting/models/line_amount_types_spec.rb +1 -1
  246. data/spec/accounting/models/line_item_spec.rb +1 -1
  247. data/spec/accounting/models/line_item_tracking_spec.rb +1 -1
  248. data/spec/accounting/models/linked_transaction_spec.rb +1 -1
  249. data/spec/accounting/models/linked_transactions_spec.rb +1 -1
  250. data/spec/accounting/models/manual_journal_line_spec.rb +1 -1
  251. data/spec/accounting/models/manual_journal_spec.rb +1 -1
  252. data/spec/accounting/models/manual_journals_spec.rb +1 -1
  253. data/spec/accounting/models/online_invoice_spec.rb +1 -1
  254. data/spec/accounting/models/online_invoices_spec.rb +1 -1
  255. data/spec/accounting/models/organisation_spec.rb +1 -1
  256. data/spec/accounting/models/organisations_spec.rb +1 -1
  257. data/spec/accounting/models/overpayment_spec.rb +1 -1
  258. data/spec/accounting/models/overpayments_spec.rb +1 -1
  259. data/spec/accounting/models/payment_delete_spec.rb +1 -1
  260. data/spec/accounting/models/payment_service_spec.rb +1 -1
  261. data/spec/accounting/models/payment_services_spec.rb +1 -1
  262. data/spec/accounting/models/payment_spec.rb +7 -1
  263. data/spec/accounting/models/payment_term_spec.rb +1 -1
  264. data/spec/accounting/models/payment_term_type_spec.rb +1 -1
  265. data/spec/accounting/models/payments_spec.rb +1 -1
  266. data/spec/accounting/models/phone_spec.rb +1 -1
  267. data/spec/accounting/models/prepayment_spec.rb +1 -1
  268. data/spec/accounting/models/prepayments_spec.rb +1 -1
  269. data/spec/accounting/models/purchase_order_spec.rb +1 -1
  270. data/spec/accounting/models/purchase_orders_spec.rb +1 -1
  271. data/spec/accounting/models/purchase_spec.rb +1 -1
  272. data/spec/accounting/models/quote_line_amount_types_spec.rb +1 -1
  273. data/spec/accounting/models/quote_spec.rb +1 -1
  274. data/spec/accounting/models/quote_status_codes_spec.rb +1 -1
  275. data/spec/accounting/models/quotes_spec.rb +1 -1
  276. data/spec/accounting/models/receipt_spec.rb +1 -1
  277. data/spec/accounting/models/receipts_spec.rb +1 -1
  278. data/spec/accounting/models/repeating_invoice_spec.rb +1 -1
  279. data/spec/accounting/models/repeating_invoices_spec.rb +1 -1
  280. data/spec/accounting/models/report_attribute_spec.rb +1 -1
  281. data/spec/accounting/models/report_cell_spec.rb +1 -1
  282. data/spec/accounting/models/report_fields_spec.rb +1 -1
  283. data/spec/accounting/models/report_row_spec.rb +1 -1
  284. data/spec/accounting/models/report_rows_spec.rb +1 -1
  285. data/spec/accounting/models/report_spec.rb +1 -1
  286. data/spec/accounting/models/report_with_row_spec.rb +1 -1
  287. data/spec/accounting/models/report_with_rows_spec.rb +1 -1
  288. data/spec/accounting/models/reports_spec.rb +1 -1
  289. data/spec/accounting/models/request_empty_spec.rb +1 -1
  290. data/spec/accounting/models/row_type_spec.rb +1 -1
  291. data/spec/accounting/models/sales_tracking_category_spec.rb +1 -1
  292. data/spec/accounting/models/schedule_spec.rb +1 -1
  293. data/spec/accounting/models/tax_component_spec.rb +1 -1
  294. data/spec/accounting/models/tax_rate_spec.rb +2 -2
  295. data/spec/accounting/models/tax_rates_spec.rb +1 -1
  296. data/spec/accounting/models/tax_type_spec.rb +1 -1
  297. data/spec/accounting/models/ten_nintey_nine_contact_spec.rb +7 -7
  298. data/spec/accounting/models/time_zone_spec.rb +1 -1
  299. data/spec/accounting/models/tracking_categories_spec.rb +1 -1
  300. data/spec/accounting/models/tracking_category_spec.rb +1 -1
  301. data/spec/accounting/models/tracking_option_spec.rb +1 -1
  302. data/spec/accounting/models/tracking_options_spec.rb +1 -1
  303. data/spec/accounting/models/user_spec.rb +1 -1
  304. data/spec/accounting/models/users_spec.rb +1 -1
  305. data/spec/accounting/models/validation_error_spec.rb +1 -1
  306. data/spec/api_client_spec.rb +120 -33
  307. data/spec/assets/api/asset_api_spec.rb +4 -4
  308. data/spec/assets/models/asset_spec.rb +1 -1
  309. data/spec/assets/models/asset_status_query_param_spec.rb +1 -1
  310. data/spec/assets/models/asset_status_spec.rb +1 -1
  311. data/spec/assets/models/asset_type_spec.rb +1 -1
  312. data/spec/assets/models/assets_spec.rb +1 -1
  313. data/spec/assets/models/book_depreciation_detail_spec.rb +1 -1
  314. data/spec/assets/models/book_depreciation_setting_spec.rb +1 -1
  315. data/spec/assets/models/error_spec.rb +1 -1
  316. data/spec/assets/models/field_validation_errors_element_spec.rb +1 -1
  317. data/spec/assets/models/pagination_spec.rb +1 -1
  318. data/spec/assets/models/resource_validation_errors_element_spec.rb +1 -1
  319. data/spec/assets/models/setting_spec.rb +1 -1
  320. data/spec/configuration_spec.rb +8 -24
  321. data/spec/projects/api/project_api_spec.rb +229 -0
  322. data/spec/projects/models/amount_spec.rb +47 -0
  323. data/spec/projects/models/charge_type_spec.rb +35 -0
  324. data/spec/projects/models/currency_code_spec.rb +35 -0
  325. data/spec/projects/models/error_spec.rb +47 -0
  326. data/spec/projects/models/pagination_spec.rb +59 -0
  327. data/spec/projects/models/project_create_or_update_spec.rb +59 -0
  328. data/spec/projects/models/project_patch_spec.rb +41 -0
  329. data/spec/projects/models/project_spec.rb +167 -0
  330. data/spec/projects/models/project_status_spec.rb +35 -0
  331. data/spec/projects/models/project_user_spec.rb +53 -0
  332. data/spec/projects/models/project_users_spec.rb +47 -0
  333. data/spec/projects/models/projects_spec.rb +47 -0
  334. data/spec/projects/models/task_create_or_update_spec.rb +59 -0
  335. data/spec/projects/models/task_spec.rb +129 -0
  336. data/spec/projects/models/tasks_spec.rb +47 -0
  337. data/spec/projects/models/time_entries_spec.rb +47 -0
  338. data/spec/projects/models/time_entry_create_or_update_spec.rb +65 -0
  339. data/spec/projects/models/time_entry_spec.rb +93 -0
  340. data/spec/spec_helper.rb +1 -1
  341. data/xero-ruby.gemspec +3 -4
  342. metadata +85 -9
  343. data/xero-ruby.gem +0 -0
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,9 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class LinkedTransactions
18
- attr_accessor :linked_transactions
19
20
 
21
+ attr_accessor :linked_transactions
22
+
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
@@ -129,6 +132,8 @@ module XeroRuby::Accounting
129
132
  value.to_i
130
133
  when :Float
131
134
  value.to_f
135
+ when :BigDecimal
136
+ BigDecimal(value.to_s)
132
137
  when :Boolean
133
138
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
139
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,48 +14,56 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class ManualJournal
18
20
  # Description of journal being posted
19
21
  attr_accessor :narration
20
-
22
+
21
23
  # See JournalLines
22
24
  attr_accessor :journal_lines
23
-
25
+
24
26
  # Date journal was posted – YYYY-MM-DD
25
27
  attr_accessor :date
28
+
26
29
 
27
30
  attr_accessor :line_amount_types
28
-
31
+
29
32
  # See Manual Journal Status Codes
30
33
  attr_accessor :status
31
-
34
+ DRAFT = "DRAFT".freeze
35
+ POSTED = "POSTED".freeze
36
+ DELETED = "DELETED".freeze
37
+ VOIDED = "VOIDED".freeze
38
+ ARCHIVED = "ARCHIVED".freeze
39
+
32
40
  # Url link to a source document – shown as “Go to [appName]” in the Xero app
33
41
  attr_accessor :url
34
-
42
+
35
43
  # Boolean – default is true if not specified
36
44
  attr_accessor :show_on_cash_basis_reports
37
-
45
+
38
46
  # Boolean to indicate if a manual journal has an attachment
39
47
  attr_accessor :has_attachments
40
-
48
+
41
49
  # Last modified date UTC format
42
50
  attr_accessor :updated_date_utc
43
-
51
+
44
52
  # The Xero identifier for a Manual Journal
45
53
  attr_accessor :manual_journal_id
46
-
54
+
47
55
  # A string to indicate if a invoice status
48
56
  attr_accessor :status_attribute_string
49
-
57
+
50
58
  # Displays array of warning messages from the API
51
59
  attr_accessor :warnings
52
-
60
+
53
61
  # Displays array of validation error messages from the API
54
62
  attr_accessor :validation_errors
55
-
63
+
56
64
  # Displays array of attachments from the API
57
65
  attr_accessor :attachments
58
-
66
+
59
67
  class EnumAttributeValidator
60
68
  attr_reader :datatype
61
69
  attr_reader :allowable_values
@@ -306,6 +314,8 @@ module XeroRuby::Accounting
306
314
  value.to_i
307
315
  when :Float
308
316
  value.to_f
317
+ when :BigDecimal
318
+ BigDecimal(value.to_s)
309
319
  when :Boolean
310
320
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
311
321
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,33 +14,39 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class ManualJournalLine
18
20
  # total for line. Debits are positive, credits are negative value
19
21
  attr_accessor :line_amount
20
-
22
+
21
23
  # See Accounts
22
24
  attr_accessor :account_code
23
-
25
+
26
+ # See Accounts
27
+ attr_accessor :account_id
28
+
24
29
  # Description for journal line
25
30
  attr_accessor :description
26
-
31
+
27
32
  # The tax type from TaxRates
28
33
  attr_accessor :tax_type
29
-
34
+
30
35
  # Optional Tracking Category – see Tracking. Any JournalLine can have a maximum of 2 <TrackingCategory> elements.
31
36
  attr_accessor :tracking
32
-
37
+
33
38
  # The calculated tax amount based on the TaxType and LineAmount
34
39
  attr_accessor :tax_amount
35
-
40
+
36
41
  # is the line blank
37
42
  attr_accessor :is_blank
38
-
43
+
39
44
  # Attribute mapping from ruby-style variable name to JSON key.
40
45
  def self.attribute_map
41
46
  {
42
47
  :'line_amount' => :'LineAmount',
43
48
  :'account_code' => :'AccountCode',
49
+ :'account_id' => :'AccountID',
44
50
  :'description' => :'Description',
45
51
  :'tax_type' => :'TaxType',
46
52
  :'tracking' => :'Tracking',
@@ -52,12 +58,13 @@ module XeroRuby::Accounting
52
58
  # Attribute type mapping.
53
59
  def self.openapi_types
54
60
  {
55
- :'line_amount' => :'Float',
61
+ :'line_amount' => :'BigDecimal',
56
62
  :'account_code' => :'String',
63
+ :'account_id' => :'String',
57
64
  :'description' => :'String',
58
65
  :'tax_type' => :'String',
59
66
  :'tracking' => :'Array<TrackingCategory>',
60
- :'tax_amount' => :'Float',
67
+ :'tax_amount' => :'BigDecimal',
61
68
  :'is_blank' => :'Boolean'
62
69
  }
63
70
  end
@@ -85,6 +92,10 @@ module XeroRuby::Accounting
85
92
  self.account_code = attributes[:'account_code']
86
93
  end
87
94
 
95
+ if attributes.key?(:'account_id')
96
+ self.account_id = attributes[:'account_id']
97
+ end
98
+
88
99
  if attributes.key?(:'description')
89
100
  self.description = attributes[:'description']
90
101
  end
@@ -128,6 +139,7 @@ module XeroRuby::Accounting
128
139
  self.class == o.class &&
129
140
  line_amount == o.line_amount &&
130
141
  account_code == o.account_code &&
142
+ account_id == o.account_id &&
131
143
  description == o.description &&
132
144
  tax_type == o.tax_type &&
133
145
  tracking == o.tracking &&
@@ -144,7 +156,7 @@ module XeroRuby::Accounting
144
156
  # Calculates hash code according to all attributes.
145
157
  # @return [Integer] Hash code
146
158
  def hash
147
- [line_amount, account_code, description, tax_type, tracking, tax_amount, is_blank].hash
159
+ [line_amount, account_code, account_id, description, tax_type, tracking, tax_amount, is_blank].hash
148
160
  end
149
161
 
150
162
  # Builds the object from hash
@@ -190,6 +202,8 @@ module XeroRuby::Accounting
190
202
  value.to_i
191
203
  when :Float
192
204
  value.to_f
205
+ when :BigDecimal
206
+ BigDecimal(value.to_s)
193
207
  when :Boolean
194
208
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
195
209
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,9 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class ManualJournals
18
- attr_accessor :manual_journals
19
20
 
21
+ attr_accessor :manual_journals
22
+
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
@@ -129,6 +132,8 @@ module XeroRuby::Accounting
129
132
  value.to_i
130
133
  when :Float
131
134
  value.to_f
135
+ when :BigDecimal
136
+ BigDecimal(value.to_s)
132
137
  when :Boolean
133
138
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
139
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,10 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class OnlineInvoice
18
20
  # the URL to an online invoice
19
21
  attr_accessor :online_invoice_url
20
-
22
+
21
23
  # Attribute mapping from ruby-style variable name to JSON key.
22
24
  def self.attribute_map
23
25
  {
@@ -128,6 +130,8 @@ module XeroRuby::Accounting
128
130
  value.to_i
129
131
  when :Float
130
132
  value.to_f
133
+ when :BigDecimal
134
+ BigDecimal(value.to_s)
131
135
  when :Boolean
132
136
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
133
137
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,9 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class OnlineInvoices
18
- attr_accessor :online_invoices
19
20
 
21
+ attr_accessor :online_invoices
22
+
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
@@ -129,6 +132,8 @@ module XeroRuby::Accounting
129
132
  value.to_i
130
133
  when :Float
131
134
  value.to_f
135
+ when :BigDecimal
136
+ BigDecimal(value.to_s)
132
137
  when :Boolean
133
138
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
139
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,99 +14,180 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class Organisation
18
20
  # Unique Xero identifier
19
21
  attr_accessor :organisation_id
20
-
22
+
21
23
  # Display a unique key used for Xero-to-Xero transactions
22
24
  attr_accessor :api_key
23
-
25
+
24
26
  # Display name of organisation shown in Xero
25
27
  attr_accessor :name
26
-
28
+
27
29
  # Organisation name shown on Reports
28
30
  attr_accessor :legal_name
29
-
31
+
30
32
  # Boolean to describe if organisation is registered with a local tax authority i.e. true, false
31
33
  attr_accessor :pays_tax
32
-
34
+
33
35
  # See Version Types
34
36
  attr_accessor :version
35
-
37
+ AU = "AU".freeze
38
+ NZ = "NZ".freeze
39
+ GLOBAL = "GLOBAL".freeze
40
+ UK = "UK".freeze
41
+ US = "US".freeze
42
+ AUONRAMP = "AUONRAMP".freeze
43
+ NZONRAMP = "NZONRAMP".freeze
44
+ GLOBALONRAMP = "GLOBALONRAMP".freeze
45
+ UKONRAMP = "UKONRAMP".freeze
46
+ USONRAMP = "USONRAMP".freeze
47
+
36
48
  # Organisation Type
37
49
  attr_accessor :organisation_type
50
+ ACCOUNTING_PRACTICE = "ACCOUNTING_PRACTICE".freeze
51
+ COMPANY = "COMPANY".freeze
52
+ CHARITY = "CHARITY".freeze
53
+ CLUB_OR_SOCIETY = "CLUB_OR_SOCIETY".freeze
54
+ LOOK_THROUGH_COMPANY = "LOOK_THROUGH_COMPANY".freeze
55
+ NOT_FOR_PROFIT = "NOT_FOR_PROFIT".freeze
56
+ PARTNERSHIP = "PARTNERSHIP".freeze
57
+ S_CORPORATION = "S_CORPORATION".freeze
58
+ SELF_MANAGED_SUPERANNUATION_FUND = "SELF_MANAGED_SUPERANNUATION_FUND".freeze
59
+ SOLE_TRADER = "SOLE_TRADER".freeze
60
+ SUPERANNUATION_FUND = "SUPERANNUATION_FUND".freeze
61
+ TRUST = "TRUST".freeze
62
+
38
63
 
39
64
  attr_accessor :base_currency
65
+
40
66
 
41
67
  attr_accessor :country_code
42
-
68
+
43
69
  # Boolean to describe if organisation is a demo company.
44
70
  attr_accessor :is_demo_company
45
-
71
+
46
72
  # Will be set to ACTIVE if you can connect to organisation via the Xero API
47
73
  attr_accessor :organisation_status
48
-
74
+
49
75
  # Shows for New Zealand, Australian and UK organisations
50
76
  attr_accessor :registration_number
51
-
77
+
78
+ # Shown if set. US Only.
79
+ attr_accessor :employer_identification_number
80
+
52
81
  # Shown if set. Displays in the Xero UI as Tax File Number (AU), GST Number (NZ), VAT Number (UK) and Tax ID Number (US & Global).
53
82
  attr_accessor :tax_number
54
-
83
+
55
84
  # Calendar day e.g. 0-31
56
85
  attr_accessor :financial_year_end_day
57
-
86
+
58
87
  # Calendar Month e.g. 1-12
59
88
  attr_accessor :financial_year_end_month
60
-
89
+
61
90
  # The accounting basis used for tax returns. See Sales Tax Basis
62
91
  attr_accessor :sales_tax_basis
63
-
92
+ PAYMENTS = "PAYMENTS".freeze
93
+ INVOICE = "INVOICE".freeze
94
+ NONE = "NONE".freeze
95
+ CASH = "CASH".freeze
96
+ ACCRUAL = "ACCRUAL".freeze
97
+ FLATRATECASH = "FLATRATECASH".freeze
98
+ FLATRATEACCRUAL = "FLATRATEACCRUAL".freeze
99
+ ACCRUALS = "ACCRUALS".freeze
100
+
64
101
  # The frequency with which tax returns are processed. See Sales Tax Period
65
102
  attr_accessor :sales_tax_period
66
-
103
+ MONTHLY = "MONTHLY".freeze
104
+ QUARTERLY1 = "QUARTERLY1".freeze
105
+ QUARTERLY2 = "QUARTERLY2".freeze
106
+ QUARTERLY3 = "QUARTERLY3".freeze
107
+ ANNUALLY = "ANNUALLY".freeze
108
+ ONEMONTHS = "ONEMONTHS".freeze
109
+ TWOMONTHS = "TWOMONTHS".freeze
110
+ SIXMONTHS = "SIXMONTHS".freeze
111
+ N1_MONTHLY = "1MONTHLY".freeze
112
+ N2_MONTHLY = "2MONTHLY".freeze
113
+ N3_MONTHLY = "3MONTHLY".freeze
114
+ N6_MONTHLY = "6MONTHLY".freeze
115
+ QUARTERLY = "QUARTERLY".freeze
116
+ YEARLY = "YEARLY".freeze
117
+ # duplicate definitions generated: https://github.com/XeroAPI/xero-ruby/issues/53#issuecomment-668893305
118
+ # NONE = "NONE".freeze
119
+
67
120
  # The default for LineAmountTypes on sales transactions
68
121
  attr_accessor :default_sales_tax
69
-
122
+
70
123
  # The default for LineAmountTypes on purchase transactions
71
124
  attr_accessor :default_purchases_tax
72
-
125
+
73
126
  # Shown if set. See lock dates
74
127
  attr_accessor :period_lock_date
75
-
128
+
76
129
  # Shown if set. See lock dates
77
130
  attr_accessor :end_of_year_lock_date
78
-
131
+
79
132
  # Timestamp when the organisation was created in Xero
80
133
  attr_accessor :created_date_utc
134
+
81
135
 
82
136
  attr_accessor :timezone
83
-
84
- # Organisation Type
137
+
138
+ # Organisation Entity Type
85
139
  attr_accessor :organisation_entity_type
86
-
140
+ # duplicate definitions generated: https://github.com/XeroAPI/xero-ruby/issues/53#issuecomment-668893305
141
+ # ACCOUNTING_PRACTICE = "ACCOUNTING_PRACTICE".freeze
142
+ # COMPANY = "COMPANY".freeze
143
+ # CHARITY = "CHARITY".freeze
144
+ # CLUB_OR_SOCIETY = "CLUB_OR_SOCIETY".freeze
145
+ # LOOK_THROUGH_COMPANY = "LOOK_THROUGH_COMPANY".freeze
146
+ # NOT_FOR_PROFIT = "NOT_FOR_PROFIT".freeze
147
+ # PARTNERSHIP = "PARTNERSHIP".freeze
148
+ # S_CORPORATION = "S_CORPORATION".freeze
149
+ # SELF_MANAGED_SUPERANNUATION_FUND = "SELF_MANAGED_SUPERANNUATION_FUND".freeze
150
+ # SOLE_TRADER = "SOLE_TRADER".freeze
151
+ # SUPERANNUATION_FUND = "SUPERANNUATION_FUND".freeze
152
+ # TRUST = "TRUST".freeze
153
+
87
154
  # A unique identifier for the organisation. Potential uses.
88
155
  attr_accessor :short_code
89
-
156
+
90
157
  # Organisation Classes describe which plan the Xero organisation is on (e.g. DEMO, TRIAL, PREMIUM)
91
158
  attr_accessor :_class
92
-
159
+ DEMO = "DEMO".freeze
160
+ TRIAL = "TRIAL".freeze
161
+ STARTER = "STARTER".freeze
162
+ STANDARD = "STANDARD".freeze
163
+ PREMIUM = "PREMIUM".freeze
164
+ PREMIUM_20 = "PREMIUM_20".freeze
165
+ PREMIUM_50 = "PREMIUM_50".freeze
166
+ PREMIUM_100 = "PREMIUM_100".freeze
167
+ LEDGER = "LEDGER".freeze
168
+ GST_CASHBOOK = "GST_CASHBOOK".freeze
169
+ NON_GST_CASHBOOK = "NON_GST_CASHBOOK".freeze
170
+
93
171
  # BUSINESS or PARTNER. Partner edition organisations are sold exclusively through accounting partners and have restricted functionality (e.g. no access to invoicing)
94
172
  attr_accessor :edition
95
-
173
+ BUSINESS = "BUSINESS".freeze
174
+ PARTNER = "PARTNER".freeze
175
+
96
176
  # Description of business type as defined in Organisation settings
97
177
  attr_accessor :line_of_business
98
-
178
+
99
179
  # Address details for organisation – see Addresses
100
180
  attr_accessor :addresses
101
-
181
+
102
182
  # Phones details for organisation – see Phones
103
183
  attr_accessor :phones
104
-
184
+
105
185
  # Organisation profile links for popular services such as Facebook,Twitter, GooglePlus and LinkedIn. You can also add link to your website here. Shown if Organisation settings is updated in Xero. See ExternalLinks below
106
186
  attr_accessor :external_links
187
+
107
188
 
108
189
  attr_accessor :payment_terms
109
-
190
+
110
191
  class EnumAttributeValidator
111
192
  attr_reader :datatype
112
193
  attr_reader :allowable_values
@@ -144,6 +225,7 @@ module XeroRuby::Accounting
144
225
  :'is_demo_company' => :'IsDemoCompany',
145
226
  :'organisation_status' => :'OrganisationStatus',
146
227
  :'registration_number' => :'RegistrationNumber',
228
+ :'employer_identification_number' => :'EmployerIdentificationNumber',
147
229
  :'tax_number' => :'TaxNumber',
148
230
  :'financial_year_end_day' => :'FinancialYearEndDay',
149
231
  :'financial_year_end_month' => :'FinancialYearEndMonth',
@@ -182,6 +264,7 @@ module XeroRuby::Accounting
182
264
  :'is_demo_company' => :'Boolean',
183
265
  :'organisation_status' => :'String',
184
266
  :'registration_number' => :'String',
267
+ :'employer_identification_number' => :'String',
185
268
  :'tax_number' => :'String',
186
269
  :'financial_year_end_day' => :'Integer',
187
270
  :'financial_year_end_month' => :'Integer',
@@ -268,6 +351,10 @@ module XeroRuby::Accounting
268
351
  self.registration_number = attributes[:'registration_number']
269
352
  end
270
353
 
354
+ if attributes.key?(:'employer_identification_number')
355
+ self.employer_identification_number = attributes[:'employer_identification_number']
356
+ end
357
+
271
358
  if attributes.key?(:'tax_number')
272
359
  self.tax_number = attributes[:'tax_number']
273
360
  end
@@ -469,6 +556,7 @@ module XeroRuby::Accounting
469
556
  is_demo_company == o.is_demo_company &&
470
557
  organisation_status == o.organisation_status &&
471
558
  registration_number == o.registration_number &&
559
+ employer_identification_number == o.employer_identification_number &&
472
560
  tax_number == o.tax_number &&
473
561
  financial_year_end_day == o.financial_year_end_day &&
474
562
  financial_year_end_month == o.financial_year_end_month &&
@@ -500,7 +588,7 @@ module XeroRuby::Accounting
500
588
  # Calculates hash code according to all attributes.
501
589
  # @return [Integer] Hash code
502
590
  def hash
503
- [organisation_id, api_key, name, legal_name, pays_tax, version, organisation_type, base_currency, country_code, is_demo_company, organisation_status, registration_number, tax_number, financial_year_end_day, financial_year_end_month, sales_tax_basis, sales_tax_period, default_sales_tax, default_purchases_tax, period_lock_date, end_of_year_lock_date, created_date_utc, timezone, organisation_entity_type, short_code, _class, edition, line_of_business, addresses, phones, external_links, payment_terms].hash
591
+ [organisation_id, api_key, name, legal_name, pays_tax, version, organisation_type, base_currency, country_code, is_demo_company, organisation_status, registration_number, employer_identification_number, tax_number, financial_year_end_day, financial_year_end_month, sales_tax_basis, sales_tax_period, default_sales_tax, default_purchases_tax, period_lock_date, end_of_year_lock_date, created_date_utc, timezone, organisation_entity_type, short_code, _class, edition, line_of_business, addresses, phones, external_links, payment_terms].hash
504
592
  end
505
593
 
506
594
  # Builds the object from hash
@@ -546,6 +634,8 @@ module XeroRuby::Accounting
546
634
  value.to_i
547
635
  when :Float
548
636
  value.to_f
637
+ when :BigDecimal
638
+ BigDecimal(value.to_s)
549
639
  when :Boolean
550
640
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
551
641
  true