xero-ruby 3.1.0 → 3.2.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.
Files changed (399) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +191 -225
  3. data/lib/xero-ruby.rb +2 -1
  4. data/lib/xero-ruby/api/accounting_api.rb +5 -5
  5. data/lib/xero-ruby/api_client.rb +16 -2
  6. data/lib/xero-ruby/models/accounting/account.rb +2 -0
  7. data/lib/xero-ruby/models/accounting/accounts.rb +2 -0
  8. data/lib/xero-ruby/models/accounting/accounts_payable.rb +2 -0
  9. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +2 -0
  10. data/lib/xero-ruby/models/accounting/action.rb +2 -0
  11. data/lib/xero-ruby/models/accounting/actions.rb +2 -0
  12. data/lib/xero-ruby/models/accounting/address.rb +2 -0
  13. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +2 -0
  14. data/lib/xero-ruby/models/accounting/allocation.rb +2 -0
  15. data/lib/xero-ruby/models/accounting/allocations.rb +2 -0
  16. data/lib/xero-ruby/models/accounting/attachment.rb +2 -0
  17. data/lib/xero-ruby/models/accounting/attachments.rb +2 -0
  18. data/lib/xero-ruby/models/accounting/balance_details.rb +2 -0
  19. data/lib/xero-ruby/models/accounting/balances.rb +2 -0
  20. data/lib/xero-ruby/models/accounting/bank_transaction.rb +2 -0
  21. data/lib/xero-ruby/models/accounting/bank_transactions.rb +2 -0
  22. data/lib/xero-ruby/models/accounting/bank_transfer.rb +2 -0
  23. data/lib/xero-ruby/models/accounting/bank_transfers.rb +2 -0
  24. data/lib/xero-ruby/models/accounting/batch_payment.rb +2 -0
  25. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +2 -0
  26. data/lib/xero-ruby/models/accounting/batch_payments.rb +2 -0
  27. data/lib/xero-ruby/models/accounting/bill.rb +2 -0
  28. data/lib/xero-ruby/models/accounting/branding_theme.rb +2 -0
  29. data/lib/xero-ruby/models/accounting/branding_themes.rb +2 -0
  30. data/lib/xero-ruby/models/accounting/budget.rb +10 -4
  31. data/lib/xero-ruby/models/accounting/{budget_lines.rb → budget_balance.rb} +5 -3
  32. data/lib/xero-ruby/models/accounting/budget_line.rb +244 -0
  33. data/lib/xero-ruby/models/accounting/budgets.rb +2 -0
  34. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +2 -0
  35. data/lib/xero-ruby/models/accounting/cis_org_settings.rb +2 -0
  36. data/lib/xero-ruby/models/accounting/cis_setting.rb +2 -0
  37. data/lib/xero-ruby/models/accounting/cis_settings.rb +2 -0
  38. data/lib/xero-ruby/models/accounting/contact.rb +2 -0
  39. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -0
  40. data/lib/xero-ruby/models/accounting/contact_groups.rb +2 -0
  41. data/lib/xero-ruby/models/accounting/contact_person.rb +2 -0
  42. data/lib/xero-ruby/models/accounting/contacts.rb +2 -0
  43. data/lib/xero-ruby/models/accounting/conversion_balances.rb +2 -0
  44. data/lib/xero-ruby/models/accounting/conversion_date.rb +2 -0
  45. data/lib/xero-ruby/models/accounting/credit_note.rb +2 -0
  46. data/lib/xero-ruby/models/accounting/credit_notes.rb +2 -0
  47. data/lib/xero-ruby/models/accounting/currencies.rb +2 -0
  48. data/lib/xero-ruby/models/accounting/currency.rb +2 -0
  49. data/lib/xero-ruby/models/accounting/element.rb +2 -0
  50. data/lib/xero-ruby/models/accounting/employee.rb +2 -0
  51. data/lib/xero-ruby/models/accounting/employees.rb +2 -0
  52. data/lib/xero-ruby/models/accounting/error.rb +2 -0
  53. data/lib/xero-ruby/models/accounting/expense_claim.rb +2 -0
  54. data/lib/xero-ruby/models/accounting/expense_claims.rb +2 -0
  55. data/lib/xero-ruby/models/accounting/external_link.rb +2 -0
  56. data/lib/xero-ruby/models/accounting/history_record.rb +2 -0
  57. data/lib/xero-ruby/models/accounting/history_records.rb +2 -0
  58. data/lib/xero-ruby/models/accounting/import_summary.rb +2 -0
  59. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +2 -0
  60. data/lib/xero-ruby/models/accounting/import_summary_object.rb +2 -0
  61. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +2 -0
  62. data/lib/xero-ruby/models/accounting/invoice.rb +2 -0
  63. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +2 -0
  64. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +2 -0
  65. data/lib/xero-ruby/models/accounting/invoices.rb +2 -0
  66. data/lib/xero-ruby/models/accounting/item.rb +2 -0
  67. data/lib/xero-ruby/models/accounting/items.rb +2 -0
  68. data/lib/xero-ruby/models/accounting/journal.rb +2 -0
  69. data/lib/xero-ruby/models/accounting/journal_line.rb +2 -0
  70. data/lib/xero-ruby/models/accounting/journals.rb +2 -0
  71. data/lib/xero-ruby/models/accounting/line_item.rb +2 -0
  72. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +2 -0
  73. data/lib/xero-ruby/models/accounting/linked_transaction.rb +2 -0
  74. data/lib/xero-ruby/models/accounting/linked_transactions.rb +2 -0
  75. data/lib/xero-ruby/models/accounting/manual_journal.rb +2 -0
  76. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +2 -0
  77. data/lib/xero-ruby/models/accounting/manual_journals.rb +2 -0
  78. data/lib/xero-ruby/models/accounting/online_invoice.rb +2 -0
  79. data/lib/xero-ruby/models/accounting/online_invoices.rb +2 -0
  80. data/lib/xero-ruby/models/accounting/organisation.rb +2 -0
  81. data/lib/xero-ruby/models/accounting/organisations.rb +2 -0
  82. data/lib/xero-ruby/models/accounting/overpayment.rb +2 -0
  83. data/lib/xero-ruby/models/accounting/overpayments.rb +2 -0
  84. data/lib/xero-ruby/models/accounting/payment.rb +2 -0
  85. data/lib/xero-ruby/models/accounting/payment_delete.rb +2 -0
  86. data/lib/xero-ruby/models/accounting/payment_service.rb +2 -0
  87. data/lib/xero-ruby/models/accounting/payment_services.rb +2 -0
  88. data/lib/xero-ruby/models/accounting/payment_term.rb +2 -0
  89. data/lib/xero-ruby/models/accounting/payments.rb +2 -0
  90. data/lib/xero-ruby/models/accounting/phone.rb +2 -0
  91. data/lib/xero-ruby/models/accounting/prepayment.rb +2 -0
  92. data/lib/xero-ruby/models/accounting/prepayments.rb +2 -0
  93. data/lib/xero-ruby/models/accounting/purchase.rb +2 -0
  94. data/lib/xero-ruby/models/accounting/purchase_order.rb +2 -0
  95. data/lib/xero-ruby/models/accounting/purchase_orders.rb +2 -0
  96. data/lib/xero-ruby/models/accounting/quote.rb +2 -0
  97. data/lib/xero-ruby/models/accounting/quotes.rb +2 -0
  98. data/lib/xero-ruby/models/accounting/receipt.rb +2 -0
  99. data/lib/xero-ruby/models/accounting/receipts.rb +2 -0
  100. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +2 -0
  101. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +2 -0
  102. data/lib/xero-ruby/models/accounting/report.rb +2 -0
  103. data/lib/xero-ruby/models/accounting/report_attribute.rb +2 -0
  104. data/lib/xero-ruby/models/accounting/report_cell.rb +2 -0
  105. data/lib/xero-ruby/models/accounting/report_fields.rb +2 -0
  106. data/lib/xero-ruby/models/accounting/report_row.rb +2 -0
  107. data/lib/xero-ruby/models/accounting/report_rows.rb +2 -0
  108. data/lib/xero-ruby/models/accounting/report_with_row.rb +2 -0
  109. data/lib/xero-ruby/models/accounting/report_with_rows.rb +2 -0
  110. data/lib/xero-ruby/models/accounting/reports.rb +2 -0
  111. data/lib/xero-ruby/models/accounting/request_empty.rb +2 -0
  112. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +2 -0
  113. data/lib/xero-ruby/models/accounting/schedule.rb +2 -0
  114. data/lib/xero-ruby/models/accounting/setup.rb +2 -0
  115. data/lib/xero-ruby/models/accounting/tax_component.rb +2 -0
  116. data/lib/xero-ruby/models/accounting/tax_rate.rb +2 -0
  117. data/lib/xero-ruby/models/accounting/tax_rates.rb +2 -0
  118. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +2 -0
  119. data/lib/xero-ruby/models/accounting/tracking_categories.rb +2 -0
  120. data/lib/xero-ruby/models/accounting/tracking_category.rb +2 -0
  121. data/lib/xero-ruby/models/accounting/tracking_option.rb +2 -0
  122. data/lib/xero-ruby/models/accounting/tracking_options.rb +2 -0
  123. data/lib/xero-ruby/models/accounting/user.rb +2 -0
  124. data/lib/xero-ruby/models/accounting/users.rb +2 -0
  125. data/lib/xero-ruby/models/accounting/validation_error.rb +2 -0
  126. data/lib/xero-ruby/models/assets/asset.rb +2 -0
  127. data/lib/xero-ruby/models/assets/asset_type.rb +2 -0
  128. data/lib/xero-ruby/models/assets/assets.rb +2 -0
  129. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +2 -0
  130. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +2 -0
  131. data/lib/xero-ruby/models/assets/error.rb +2 -0
  132. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +2 -0
  133. data/lib/xero-ruby/models/assets/pagination.rb +2 -0
  134. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +2 -0
  135. data/lib/xero-ruby/models/assets/setting.rb +2 -0
  136. data/lib/xero-ruby/models/files/association.rb +2 -0
  137. data/lib/xero-ruby/models/files/file_object.rb +2 -0
  138. data/lib/xero-ruby/models/files/files.rb +2 -0
  139. data/lib/xero-ruby/models/files/folder.rb +2 -0
  140. data/lib/xero-ruby/models/files/folders.rb +2 -0
  141. data/lib/xero-ruby/models/files/upload_object.rb +2 -0
  142. data/lib/xero-ruby/models/files/user.rb +2 -0
  143. data/lib/xero-ruby/models/payroll_au/account.rb +2 -0
  144. data/lib/xero-ruby/models/payroll_au/api_exception.rb +2 -0
  145. data/lib/xero-ruby/models/payroll_au/bank_account.rb +2 -0
  146. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +2 -0
  147. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +2 -0
  148. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +2 -0
  149. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +2 -0
  150. data/lib/xero-ruby/models/payroll_au/employee.rb +2 -0
  151. data/lib/xero-ruby/models/payroll_au/employees.rb +2 -0
  152. data/lib/xero-ruby/models/payroll_au/home_address.rb +2 -0
  153. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +2 -0
  154. data/lib/xero-ruby/models/payroll_au/leave_application.rb +2 -0
  155. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +2 -0
  156. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +2 -0
  157. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +2 -0
  158. data/lib/xero-ruby/models/payroll_au/leave_line.rb +2 -0
  159. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +2 -0
  160. data/lib/xero-ruby/models/payroll_au/leave_period.rb +2 -0
  161. data/lib/xero-ruby/models/payroll_au/leave_type.rb +2 -0
  162. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +2 -0
  163. data/lib/xero-ruby/models/payroll_au/pay_item.rb +2 -0
  164. data/lib/xero-ruby/models/payroll_au/pay_items.rb +2 -0
  165. data/lib/xero-ruby/models/payroll_au/pay_run.rb +2 -0
  166. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +2 -0
  167. data/lib/xero-ruby/models/payroll_au/pay_template.rb +2 -0
  168. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +2 -0
  169. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +2 -0
  170. data/lib/xero-ruby/models/payroll_au/payslip.rb +2 -0
  171. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +2 -0
  172. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +2 -0
  173. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +2 -0
  174. data/lib/xero-ruby/models/payroll_au/payslips.rb +2 -0
  175. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +2 -0
  176. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +2 -0
  177. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +2 -0
  178. data/lib/xero-ruby/models/payroll_au/settings.rb +2 -0
  179. data/lib/xero-ruby/models/payroll_au/settings_object.rb +2 -0
  180. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +2 -0
  181. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +2 -0
  182. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +2 -0
  183. data/lib/xero-ruby/models/payroll_au/super_fund.rb +2 -0
  184. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +2 -0
  185. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +2 -0
  186. data/lib/xero-ruby/models/payroll_au/super_funds.rb +2 -0
  187. data/lib/xero-ruby/models/payroll_au/super_line.rb +2 -0
  188. data/lib/xero-ruby/models/payroll_au/super_membership.rb +2 -0
  189. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +2 -0
  190. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +2 -0
  191. data/lib/xero-ruby/models/payroll_au/tax_line.rb +2 -0
  192. data/lib/xero-ruby/models/payroll_au/timesheet.rb +2 -0
  193. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +2 -0
  194. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +2 -0
  195. data/lib/xero-ruby/models/payroll_au/timesheets.rb +2 -0
  196. data/lib/xero-ruby/models/payroll_au/validation_error.rb +2 -0
  197. data/lib/xero-ruby/models/payroll_nz/account.rb +2 -0
  198. data/lib/xero-ruby/models/payroll_nz/accounts.rb +2 -0
  199. data/lib/xero-ruby/models/payroll_nz/address.rb +2 -0
  200. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +2 -0
  201. data/lib/xero-ruby/models/payroll_nz/benefit.rb +2 -0
  202. data/lib/xero-ruby/models/payroll_nz/deduction.rb +2 -0
  203. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +2 -0
  204. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +2 -0
  205. data/lib/xero-ruby/models/payroll_nz/deductions.rb +2 -0
  206. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +2 -0
  207. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +2 -0
  208. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +2 -0
  209. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +2 -0
  210. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +2 -0
  211. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +2 -0
  212. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +2 -0
  213. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +2 -0
  214. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +2 -0
  215. data/lib/xero-ruby/models/payroll_nz/employee.rb +2 -0
  216. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +2 -0
  217. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +2 -0
  218. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +2 -0
  219. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +2 -0
  220. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +2 -0
  221. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +2 -0
  222. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +2 -0
  223. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +2 -0
  224. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +2 -0
  225. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +2 -0
  226. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +2 -0
  227. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +2 -0
  228. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +2 -0
  229. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +2 -0
  230. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +2 -0
  231. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +2 -0
  232. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +2 -0
  233. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +2 -0
  234. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +2 -0
  235. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +2 -0
  236. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +2 -0
  237. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +2 -0
  238. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +2 -0
  239. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +2 -0
  240. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +2 -0
  241. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +2 -0
  242. data/lib/xero-ruby/models/payroll_nz/employees.rb +2 -0
  243. data/lib/xero-ruby/models/payroll_nz/employment.rb +2 -0
  244. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +2 -0
  245. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +2 -0
  246. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +2 -0
  247. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +2 -0
  248. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +2 -0
  249. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +2 -0
  250. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +2 -0
  251. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +2 -0
  252. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +2 -0
  253. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +2 -0
  254. data/lib/xero-ruby/models/payroll_nz/pagination.rb +2 -0
  255. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +2 -0
  256. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +2 -0
  257. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +2 -0
  258. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +2 -0
  259. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +2 -0
  260. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +2 -0
  261. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +2 -0
  262. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +2 -0
  263. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +2 -0
  264. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +2 -0
  265. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +2 -0
  266. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +2 -0
  267. data/lib/xero-ruby/models/payroll_nz/problem.rb +2 -0
  268. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +2 -0
  269. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +2 -0
  270. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +2 -0
  271. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +2 -0
  272. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +2 -0
  273. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +2 -0
  274. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +2 -0
  275. data/lib/xero-ruby/models/payroll_nz/settings.rb +2 -0
  276. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +2 -0
  277. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +2 -0
  278. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +2 -0
  279. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +2 -0
  280. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +2 -0
  281. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +2 -0
  282. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +2 -0
  283. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +2 -0
  284. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +2 -0
  285. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +2 -0
  286. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +2 -0
  287. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +2 -0
  288. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +2 -0
  289. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +2 -0
  290. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +2 -0
  291. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +2 -0
  292. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +2 -0
  293. data/lib/xero-ruby/models/payroll_uk/account.rb +2 -0
  294. data/lib/xero-ruby/models/payroll_uk/accounts.rb +2 -0
  295. data/lib/xero-ruby/models/payroll_uk/address.rb +2 -0
  296. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +2 -0
  297. data/lib/xero-ruby/models/payroll_uk/benefit.rb +2 -0
  298. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +2 -0
  299. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +2 -0
  300. data/lib/xero-ruby/models/payroll_uk/benefits.rb +2 -0
  301. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +2 -0
  302. data/lib/xero-ruby/models/payroll_uk/deduction.rb +2 -0
  303. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +2 -0
  304. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +2 -0
  305. data/lib/xero-ruby/models/payroll_uk/deductions.rb +2 -0
  306. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +2 -0
  307. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +2 -0
  308. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +2 -0
  309. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +2 -0
  310. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +5 -2
  311. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +2 -0
  312. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +2 -0
  313. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +2 -0
  314. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +2 -0
  315. data/lib/xero-ruby/models/payroll_uk/employee.rb +2 -0
  316. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +2 -0
  317. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +2 -0
  318. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +2 -0
  319. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +2 -0
  320. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +2 -0
  321. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +2 -0
  322. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +2 -0
  323. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +2 -0
  324. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +2 -0
  325. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +2 -0
  326. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +2 -0
  327. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +2 -0
  328. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +2 -0
  329. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +2 -0
  330. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +2 -0
  331. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +2 -0
  332. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +2 -0
  333. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +2 -0
  334. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +2 -0
  335. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +2 -0
  336. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +2 -0
  337. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +2 -0
  338. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +2 -0
  339. data/lib/xero-ruby/models/payroll_uk/employees.rb +2 -0
  340. data/lib/xero-ruby/models/payroll_uk/employment.rb +2 -0
  341. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +2 -0
  342. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +2 -0
  343. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +2 -0
  344. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +2 -0
  345. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +2 -0
  346. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +2 -0
  347. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +2 -0
  348. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +2 -0
  349. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +2 -0
  350. data/lib/xero-ruby/models/payroll_uk/pagination.rb +2 -0
  351. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +2 -0
  352. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +2 -0
  353. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +2 -0
  354. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +2 -0
  355. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +2 -0
  356. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +2 -0
  357. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +2 -0
  358. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +2 -0
  359. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +2 -0
  360. data/lib/xero-ruby/models/payroll_uk/payslip.rb +2 -0
  361. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +2 -0
  362. data/lib/xero-ruby/models/payroll_uk/payslips.rb +2 -0
  363. data/lib/xero-ruby/models/payroll_uk/problem.rb +2 -0
  364. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +2 -0
  365. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +2 -0
  366. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +2 -0
  367. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +2 -0
  368. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +2 -0
  369. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +2 -0
  370. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +2 -0
  371. data/lib/xero-ruby/models/payroll_uk/settings.rb +2 -0
  372. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +2 -0
  373. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +2 -0
  374. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +2 -0
  375. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +2 -0
  376. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +2 -0
  377. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +2 -0
  378. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +2 -0
  379. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +2 -0
  380. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +2 -0
  381. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +2 -0
  382. data/lib/xero-ruby/models/projects/amount.rb +2 -0
  383. data/lib/xero-ruby/models/projects/error.rb +2 -0
  384. data/lib/xero-ruby/models/projects/pagination.rb +2 -0
  385. data/lib/xero-ruby/models/projects/project.rb +2 -0
  386. data/lib/xero-ruby/models/projects/project_create_or_update.rb +2 -0
  387. data/lib/xero-ruby/models/projects/project_patch.rb +2 -0
  388. data/lib/xero-ruby/models/projects/project_user.rb +2 -0
  389. data/lib/xero-ruby/models/projects/project_users.rb +2 -0
  390. data/lib/xero-ruby/models/projects/projects.rb +2 -0
  391. data/lib/xero-ruby/models/projects/task.rb +2 -0
  392. data/lib/xero-ruby/models/projects/task_create_or_update.rb +2 -0
  393. data/lib/xero-ruby/models/projects/tasks.rb +2 -0
  394. data/lib/xero-ruby/models/projects/time_entries.rb +2 -0
  395. data/lib/xero-ruby/models/projects/time_entry.rb +2 -0
  396. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +2 -0
  397. data/lib/xero-ruby/version.rb +2 -2
  398. data/spec/api_client_spec.rb +23 -0
  399. metadata +4 -3
@@ -422,6 +422,8 @@ module XeroRuby::PayrollUk
422
422
  original, date, timezone = *date_pattern.match(datestring)
423
423
  date = (date.to_i / 1000)
424
424
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
425
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
426
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
425
427
  else # handle date 'types' for small subset of payroll API's
426
428
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
427
429
  end
@@ -252,6 +252,8 @@ module XeroRuby::PayrollUk
252
252
  original, date, timezone = *date_pattern.match(datestring)
253
253
  date = (date.to_i / 1000)
254
254
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
255
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
256
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
255
257
  else # handle date 'types' for small subset of payroll API's
256
258
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
257
259
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -222,6 +222,8 @@ module XeroRuby::PayrollUk
222
222
  original, date, timezone = *date_pattern.match(datestring)
223
223
  date = (date.to_i / 1000)
224
224
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
225
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
226
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
225
227
  else # handle date 'types' for small subset of payroll API's
226
228
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
227
229
  end
@@ -430,6 +430,8 @@ module XeroRuby::PayrollUk
430
430
  original, date, timezone = *date_pattern.match(datestring)
431
431
  date = (date.to_i / 1000)
432
432
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
433
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
434
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
433
435
  else # handle date 'types' for small subset of payroll API's
434
436
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
435
437
  end
@@ -242,6 +242,8 @@ module XeroRuby::PayrollUk
242
242
  original, date, timezone = *date_pattern.match(datestring)
243
243
  date = (date.to_i / 1000)
244
244
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
245
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
246
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
245
247
  else # handle date 'types' for small subset of payroll API's
246
248
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
247
249
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -292,6 +292,8 @@ module XeroRuby::PayrollUk
292
292
  original, date, timezone = *date_pattern.match(datestring)
293
293
  date = (date.to_i / 1000)
294
294
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
295
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
296
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
295
297
  else # handle date 'types' for small subset of payroll API's
296
298
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
297
299
  end
@@ -259,6 +259,8 @@ module XeroRuby::PayrollUk
259
259
  original, date, timezone = *date_pattern.match(datestring)
260
260
  date = (date.to_i / 1000)
261
261
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
262
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
263
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
262
264
  else # handle date 'types' for small subset of payroll API's
263
265
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
264
266
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -46,6 +46,7 @@ module XeroRuby::PayrollUk
46
46
  STATUTORY_SICK_PAY_NON_PENSIONABLE = "StatutorySickPayNonPensionable".freeze
47
47
  TIPS_DIRECT = "Tips(Direct)".freeze
48
48
  TIPS_NON_DIRECT = "Tips(Non-Direct)".freeze
49
+ TERMINATION_PAY = "TerminationPay".freeze
49
50
 
50
51
  # Indicates the type of the earning rate
51
52
  attr_accessor :rate_type
@@ -213,7 +214,7 @@ module XeroRuby::PayrollUk
213
214
  def valid?
214
215
  return false if @name.nil?
215
216
  return false if @earnings_type.nil?
216
- earnings_type_validator = EnumAttributeValidator.new('String', ["Allowance", "Backpay", "Bonus", "Commission", "LumpSum", "OtherEarnings", "OvertimeEarnings", "RegularEarnings", "StatutoryAdoptionPay", "StatutoryAdoptionPayNonPensionable", "StatutoryBereavementPay", "StatutoryMaternityPay", "StatutoryMaternityPayNonPensionable", "StatutoryPaternityPay", "StatutoryPaternityPayNonPensionable", "StatutoryParentalBereavementPayNonPensionable", "StatutorySharedParentalPay", "StatutorySharedParentalPayNonPensionable", "StatutorySickPay", "StatutorySickPayNonPensionable", "Tips(Direct)", "Tips(Non-Direct)"])
217
+ earnings_type_validator = EnumAttributeValidator.new('String', ["Allowance", "Backpay", "Bonus", "Commission", "LumpSum", "OtherEarnings", "OvertimeEarnings", "RegularEarnings", "StatutoryAdoptionPay", "StatutoryAdoptionPayNonPensionable", "StatutoryBereavementPay", "StatutoryMaternityPay", "StatutoryMaternityPayNonPensionable", "StatutoryPaternityPay", "StatutoryPaternityPayNonPensionable", "StatutoryParentalBereavementPayNonPensionable", "StatutorySharedParentalPay", "StatutorySharedParentalPayNonPensionable", "StatutorySickPay", "StatutorySickPayNonPensionable", "Tips(Direct)", "Tips(Non-Direct)", "TerminationPay"])
217
218
  return false unless earnings_type_validator.valid?(@earnings_type)
218
219
  return false if @rate_type.nil?
219
220
  rate_type_validator = EnumAttributeValidator.new('String', ["RatePerUnit", "MultipleOfOrdinaryEarningsRate", "FixedAmount"])
@@ -226,7 +227,7 @@ module XeroRuby::PayrollUk
226
227
  # Custom attribute writer method checking allowed values (enum).
227
228
  # @param [Object] earnings_type Object to be assigned
228
229
  def earnings_type=(earnings_type)
229
- validator = EnumAttributeValidator.new('String', ["Allowance", "Backpay", "Bonus", "Commission", "LumpSum", "OtherEarnings", "OvertimeEarnings", "RegularEarnings", "StatutoryAdoptionPay", "StatutoryAdoptionPayNonPensionable", "StatutoryBereavementPay", "StatutoryMaternityPay", "StatutoryMaternityPayNonPensionable", "StatutoryPaternityPay", "StatutoryPaternityPayNonPensionable", "StatutoryParentalBereavementPayNonPensionable", "StatutorySharedParentalPay", "StatutorySharedParentalPayNonPensionable", "StatutorySickPay", "StatutorySickPayNonPensionable", "Tips(Direct)", "Tips(Non-Direct)"])
230
+ validator = EnumAttributeValidator.new('String', ["Allowance", "Backpay", "Bonus", "Commission", "LumpSum", "OtherEarnings", "OvertimeEarnings", "RegularEarnings", "StatutoryAdoptionPay", "StatutoryAdoptionPayNonPensionable", "StatutoryBereavementPay", "StatutoryMaternityPay", "StatutoryMaternityPayNonPensionable", "StatutoryPaternityPay", "StatutoryPaternityPayNonPensionable", "StatutoryParentalBereavementPayNonPensionable", "StatutorySharedParentalPay", "StatutorySharedParentalPayNonPensionable", "StatutorySickPay", "StatutorySickPayNonPensionable", "Tips(Direct)", "Tips(Non-Direct)", "TerminationPay"])
230
231
  unless validator.valid?(earnings_type)
231
232
  fail ArgumentError, "invalid value for \"earnings_type\", must be one of #{validator.allowable_values}."
232
233
  end
@@ -398,6 +399,8 @@ module XeroRuby::PayrollUk
398
399
  original, date, timezone = *date_pattern.match(datestring)
399
400
  date = (date.to_i / 1000)
400
401
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
402
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
403
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
401
404
  else # handle date 'types' for small subset of payroll API's
402
405
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
403
406
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -262,6 +262,8 @@ module XeroRuby::PayrollUk
262
262
  original, date, timezone = *date_pattern.match(datestring)
263
263
  date = (date.to_i / 1000)
264
264
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
265
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
266
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
265
267
  else # handle date 'types' for small subset of payroll API's
266
268
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
267
269
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -388,6 +388,8 @@ module XeroRuby::PayrollUk
388
388
  original, date, timezone = *date_pattern.match(datestring)
389
389
  date = (date.to_i / 1000)
390
390
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
391
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
392
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
391
393
  else # handle date 'types' for small subset of payroll API's
392
394
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
393
395
  end
@@ -294,6 +294,8 @@ module XeroRuby::PayrollUk
294
294
  original, date, timezone = *date_pattern.match(datestring)
295
295
  date = (date.to_i / 1000)
296
296
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
297
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
298
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
297
299
  else # handle date 'types' for small subset of payroll API's
298
300
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
299
301
  end
@@ -242,6 +242,8 @@ module XeroRuby::PayrollUk
242
242
  original, date, timezone = *date_pattern.match(datestring)
243
243
  date = (date.to_i / 1000)
244
244
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
245
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
246
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
245
247
  else # handle date 'types' for small subset of payroll API's
246
248
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
247
249
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -310,6 +310,8 @@ module XeroRuby::PayrollUk
310
310
  original, date, timezone = *date_pattern.match(datestring)
311
311
  date = (date.to_i / 1000)
312
312
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
313
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
314
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
313
315
  else # handle date 'types' for small subset of payroll API's
314
316
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
315
317
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -262,6 +262,8 @@ module XeroRuby::PayrollUk
262
262
  original, date, timezone = *date_pattern.match(datestring)
263
263
  date = (date.to_i / 1000)
264
264
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
265
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
266
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
265
267
  else # handle date 'types' for small subset of payroll API's
266
268
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
267
269
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -224,6 +224,8 @@ module XeroRuby::PayrollUk
224
224
  original, date, timezone = *date_pattern.match(datestring)
225
225
  date = (date.to_i / 1000)
226
226
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
227
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
228
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
227
229
  else # handle date 'types' for small subset of payroll API's
228
230
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
229
231
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -284,6 +284,8 @@ module XeroRuby::PayrollUk
284
284
  original, date, timezone = *date_pattern.match(datestring)
285
285
  date = (date.to_i / 1000)
286
286
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
287
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
288
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
287
289
  else # handle date 'types' for small subset of payroll API's
288
290
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
289
291
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -326,6 +326,8 @@ module XeroRuby::PayrollUk
326
326
  original, date, timezone = *date_pattern.match(datestring)
327
327
  date = (date.to_i / 1000)
328
328
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
329
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
330
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
329
331
  else # handle date 'types' for small subset of payroll API's
330
332
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
331
333
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -423,6 +423,8 @@ module XeroRuby::PayrollUk
423
423
  original, date, timezone = *date_pattern.match(datestring)
424
424
  date = (date.to_i / 1000)
425
425
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
426
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
427
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
426
428
  else # handle date 'types' for small subset of payroll API's
427
429
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
428
430
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end
@@ -234,6 +234,8 @@ module XeroRuby::PayrollUk
234
234
  original, date, timezone = *date_pattern.match(datestring)
235
235
  date = (date.to_i / 1000)
236
236
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
237
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
238
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  else # handle date 'types' for small subset of payroll API's
238
240
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
239
241
  end
@@ -312,6 +312,8 @@ module XeroRuby::PayrollUk
312
312
  original, date, timezone = *date_pattern.match(datestring)
313
313
  date = (date.to_i / 1000)
314
314
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
315
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
316
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
315
317
  else # handle date 'types' for small subset of payroll API's
316
318
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
317
319
  end
@@ -232,6 +232,8 @@ module XeroRuby::PayrollUk
232
232
  original, date, timezone = *date_pattern.match(datestring)
233
233
  date = (date.to_i / 1000)
234
234
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
235
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
236
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
235
237
  else # handle date 'types' for small subset of payroll API's
236
238
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
237
239
  end