{"templateId":"api_docs","sharedDataIds":{"apiDocsStore":"api-docs-products/class/apis/partner/period-updates.yaml","sidebar":"sidebar-sidebar.yaml__products_class_apis_partner_period-updates","current-catalog-info":"current-catalog-info-/products/class/apis/partner/period-updates"},"props":{"definitionId":"products/class/apis/partner/period-updates.yaml","settings":{"baseUrlPath":"/products/class/apis/partner/period-updates"},"disableAutoScroll":true,"seo":{"title":"Period Updates"},"dynamicMarkdocComponents":[],"metadata":{"type":"openapi","title":"Period Updates","version":"1.0","description":"A **period update** brings a fund's accounts up to date to a chosen date. It is part of the\nyear-end process, but it can also be run part-way through a financial year when balances need\nto be confirmed and investments revalued, for example before starting a pension or paying a\nlump sum.\n\nWhen a period update runs, Class:\n\n- posts depreciation expense from the depreciation worksheet\n- completes any outstanding parcel matching\n- calculates profit or loss on investment disposals\n- revalues the fund's investments\n- posts income tax expense\n- allocates benefits to members or beneficiaries\n- updates the investment, member, fund and tax registers.\n\nFor the full product explanation, see\n[Period Update](https://support.class.com.au/hc/en-au/articles/360001382755-Period-Update).\n\n---\n\n**Period updates run in the background**\n\n**New period update** and **Roll back period update** return `200` as soon as the work has\nbeen accepted and queued, not when it has finished. Use **Period update detail** to follow\nprogress until `ProcessingStatus` reaches a final value.\n\n| Operation | Status when accepted | Final status |\n|-----------|----------------------|--------------|\n| **New period update** | `Initial` | `Processed`, or `Errored` if processing failed |\n| **Roll back period update** | Usually `Cancelling` (see below) | `Cancelled` |\n\n`Initial` covers both waiting in the queue and processing. There is no separate in-progress\nstatus.\n\nStraight after a rollback is accepted, the period update can still show `Processed` for a\nshort time before it changes to `Cancelling`. After a rollback, only `Cancelled` means it has\nfinished.\n\n**Running a period update, in this order**\n\n1. **Period updates**: list the fund's period updates. A new period update starts the day\n   after the fund's latest active period update ends or, if the fund has none, on the fund's\n   start date. Its `PeriodEndDate` must be later than the end of the latest active period\n   update.\n2. **New period update**: send the `PeriodEndDate` and a `Description`. Class works out the\n   start date and financial year. Keep the returned `PeriodUpdateId`.\n3. **Period update detail**: poll with the `PeriodUpdateId` at a modest interval until `ProcessingStatus` is `Processed` or `Errored`. When it is\n   `Errored`, `Messages` explains what went wrong.\n\nRun one period update at a time for each fund. Do not send **New period update** while the\nfund's latest period update is still `Initial` or `Cancelling`.\n\n**Rolling back**\n\nOnly the fund's latest active period update can be rolled back, and only once it has finished\nprocessing. To roll back several, start with the most recent and work backwards, waiting for\neach to reach `Cancelled`. Class's own rollback rules also apply, and a rollback they reject\nreturns `400` with the reason in `Errors`.\n\n**Which funds are supported**\n\nSuper funds (SMSF and SAF) and other entity types (Personal, Trust, Company and Partnership)\nare supported. Consolidated entities are rejected on every operation with\n`API_INVALID_FUND_TYPE`. A fund that is not Active can still be read, but period updates\ncannot be created or rolled back on it.\n\n\n<div class=\"env-panel\" data-component-name=\"EnvPanel\"><div class=\"env-panel__header\">Servers</div><div class=\"env-panel__body\"><div class=\"env-row\"><div class=\"env-name\">Partner Integration Environment (Sandbox)</div><div class=\"env-url-row\"><span class=\"env-url\">https://api.class-pie.com.au/api/1.0</span><button type=\"button\" class=\"copy-btn\" data-copy=\"https://api.class-pie.com.au/api/1.0\" aria-label=\"Copy\"><svg viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.16667 2.66667C5.16667 2.57462 5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667 2.57462 12.1667 2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12 10.8333H10H5.33333C5.24129 10.8333 5.16667 10.7587 5.16667 10.6667V4.66667V2.66667ZM4.16667 4.16667V2.66667C4.16667 2.02233 4.689 1.5 5.33333 1.5H12C12.6443 1.5 13.1667 2.02233 13.1667 2.66667V10.6667C13.1667 11.311 12.6443 11.8333 12 11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395 10.1583 14.1583C9.9395 14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725 14.5 2.0605 14.3771 1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5 13.3333V5.33333C1.5 5.02391 1.62292 4.72717 1.84171 4.50838C2.0605 4.28958 2.35725 4.16667 2.66667 4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775 9.48244 13.4199 9.45118 13.4512C9.41993 13.4824 9.37754 13.5 9.33333 13.5H2.66667C2.62246 13.5 2.58007 13.4824 2.54882 13.4512C2.51756 13.4199 2.5 13.3775 2.5 13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882 5.21548C2.58007 5.18423 2.62246 5.16667 2.66667 5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333 5.33333 11.8333H9.5Z\" fill=\"currentColor\"/></svg></button></div></div><div class=\"env-row\"><div class=\"env-name\">Production Environment</div><div class=\"env-url-row\"><span class=\"env-url\">https://api.class.com.au/api/1.0</span><button type=\"button\" class=\"copy-btn\" data-copy=\"https://api.class.com.au/api/1.0\" aria-label=\"Copy\"><svg viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.16667 2.66667C5.16667 2.57462 5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667 2.57462 12.1667 2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12 10.8333H10H5.33333C5.24129 10.8333 5.16667 10.7587 5.16667 10.6667V4.66667V2.66667ZM4.16667 4.16667V2.66667C4.16667 2.02233 4.689 1.5 5.33333 1.5H12C12.6443 1.5 13.1667 2.02233 13.1667 2.66667V10.6667C13.1667 11.311 12.6443 11.8333 12 11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395 10.1583 14.1583C9.9395 14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725 14.5 2.0605 14.3771 1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5 13.3333V5.33333C1.5 5.02391 1.62292 4.72717 1.84171 4.50838C2.0605 4.28958 2.35725 4.16667 2.66667 4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775 9.48244 13.4199 9.45118 13.4512C9.41993 13.4824 9.37754 13.5 9.33333 13.5H2.66667C2.62246 13.5 2.58007 13.4824 2.54882 13.4512C2.51756 13.4199 2.5 13.3775 2.5 13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882 5.21548C2.58007 5.18423 2.62246 5.16667 2.66667 5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333 5.33333 11.8333H9.5Z\" fill=\"currentColor\"/></svg></button></div></div></div></div>","apiId":"Class Partner v1","tags":["Class Partner"]},"compilationErrors":[],"markdown":{"partials":{},"variables":{"rbac":{"teams":["anonymous"]},"user":{},"remoteAddr":{"hostname":"nonprod.developer.myhub.com.au","port":4000,"ipAddress":"216.73.216.208"},"lang":"default_locale","env":{"PUBLIC_REDOCLY_BRANCH_NAME":"develop"}}},"pagePropGetterError":{"message":"","name":""}},"slug":"/products/class/apis/partner/period-updates","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}