{
  "schema_version": "1.7.0",
  "id": "x_SHAPI-xero-organisation-class-ultra-enum",
  "modified": "2026-10-31T01:23:22Z",
  "published": "2026-06-30T00:00:00Z",
  "summary": "Organisation Class enum gains ULTRA",
  "details": "Since 2026-06-30 the Organisation endpoint can return Class ULTRA for Australian organisations on the new Xero Ultra plan. Xero warns that integrations assuming only the existing values may fail to keep their connection to Xero. Strict enum parsing, including older SDK enums, can throw on the new value.\n\nAccept unknown Organisation Class values instead of failing, and map ULTRA wherever you branch on plan type. If you use a generated SDK, upgrade to a version whose Class enum includes ULTRA, or deserialize Class as a plain string.",
  "affected": [
    {
      "ecosystem_specific": {
        "provider": "xero",
        "endpoint": {
          "method": "GET",
          "path": "/api.xro/2.0/Organisation"
        },
        "change_class": "enum-added",
        "trigger": {
          "enums": [
            {
              "field": "Organisations[].Class"
            },
            {
              "field": "Class"
            }
          ]
        },
        "effective_date": "2026-06-30"
      }
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://developer.xero.com/changelog"
    },
    {
      "type": "WEB",
      "url": "https://raw.githubusercontent.com/XeroAPI/Xero-OpenAPI/master/xero_accounting.yaml"
    }
  ],
  "database_specific": {
    "severity": "medium",
    "status": "verified",
    "url": "https://shapi.dev/osv/xero-organisation-class-ultra-enum.json"
  }
}
