# Areas
Source: https://support.visualcare.com.au/api-reference/areas
Retrieve area records from the Visualcare API
Retrieves all area records configured in your Visualcare organisation.
### GET /areas
No query parameters.
**Response:**
```json theme={null}
[
{
"AreaId": 1,
"AreaCode": "EAST",
"Area": "Eastern Suburbs",
"Reference1": "",
"Reference2": "",
"CDCNapsId": "",
"HaccAgencyId": "",
"TBACarerID": -1,
"Longitude": "138.666822",
"Latitude": "-34.9081122",
"Regions": "",
"Status": ""
}
]
```
**Response fields:**
| Field | Type | Example |
| - | - | - |
| `AreaId` | integer | `1` |
| `AreaCode` | string | `"EAST"` |
| `Area` | string | `"Eastern Suburbs"` |
| `Reference1` | string | `""` |
| `Reference2` | string | `""` |
| `CDCNapsId` | string | `""` |
| `HaccAgencyId` | string | `""` |
| `TBACarerID` | integer | `-1` when not set |
| `Longitude` | string | `"138.666822"` |
| `Latitude` | string | `"-34.9081122"` |
| `Regions` | string | `""` |
| `Status` | string | `""` for active records |
***
[Back to API overview](/api-reference/overview)
# Categories
Source: https://support.visualcare.com.au/api-reference/categories/index
Category lookup endpoints for expenses, documents, incidents, payers, roster items, and services
Six category lookup endpoints. All are GET-only with no query parameters.
`Status` is an empty string for active records and `"D"` for deleted records.
## Expenses
### GET /category-expenses
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `2` |
| `ExpenseCategory` | string | `"Grocery"` |
| `Status` | string | `""` |
## Documents
### GET /category-documents
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `1` |
| `Description` | string | `"Health"` |
| `Status` | string | `""` |
## Incidents
### GET /category-incidents
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `18` |
| `CategoryCode` | string | `"Category 1"` |
| `Description` | string | `"Category 1 Description"` |
| `HelpText` | string | `"Category 1 HelpText a"` |
| `Status` | string | `""` |
## Payers
### GET /category-payers
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `1` |
| `CategoryCode` | string | `"CHSP"` |
| `Description` | string | `"Community and Home Support"` |
| `Status` | string | `""` |
## Roster items
### GET /category-rosteritems
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `7` |
| `CategoryCode` | string | `"CatA"` |
| `Description` | string | `"Category A"` |
| `Reference1` | string | `"ref1"` |
| `Status` | string | `""` |
## Services
### GET /category-services
| Field | Type | Example |
| - | - | - |
| `CategoryId` | integer | `9` |
| `CategoryCode` | string | `"Assistance with Daily Li"` |
| `Description` | string | `"Assistance with Daily Life"` |
| `Status` | string | `""` |
# Agreements
Source: https://support.visualcare.com.au/api-reference/clients/agreements
Retrieve client agreements including agreement items, budget details, and NDIS/CHSP/DVA configuration
### GET /agreements
Retrieves all client agreements.
Default limit is 200 items if not specified.
**Example:** `GET /agreements?fromDate=2023-01-01&toDate=2023-12-31&limit=5000&includeItems=TRUE`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Number of items to return. Values of 10,000 or more revert to the default 200 |
| `page` | 0 | Pagination offset (skips N records) |
| `fromDate` | - | Agreements with start date >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Agreements with end date \<= value. Format: `YYYY-MM-DD` |
| `payerId` | - | Filter by payer ID |
| `clientId` | - | Filter by client ID |
| `area` | - | Filter by area |
| `includeItems` | - | If `TRUE`, returns all `AgreementItems` for each agreement |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `AgreementId` | integer | |
| `AgreementType` | string | |
| `ClientId` | integer | |
| `PayerId` | integer | |
| `ChargeLevel` | integer | |
| `MMMLevel` | integer | |
| `AgreementCode` | string | |
| `Reference` | string | |
| `Reference2` | string | |
| `Reference3` | string | |
| `StartDate` | string | Date |
| `EndDate` | string | Date |
| `AlertDate` | string | Date |
| `Current` | integer | 0/1 |
| `GST` | integer | 0/1 |
| `Area` | string | |
| `ZoneId` | integer | |
| `IncomeType` | integer | |
| `conDVAZone` | string | |
| `conDVAServicePlanNo` | integer | |
| `conHeadContractId` | integer | |
| `DVASXNo` | string | |
| `DVAPlanId` | string | |
| `Status` | string | |
| `AllowAdHoc` | integer | 0/1 |
| `RatesOverride` | integer | 0/1 |
| `SAHLevel` | integer | Support at Home level |
| `SAHClinical` | integer | |
| `SAHIdp` | integer | |
| `SAHLiving` | integer | |
| `RatesOverrideCharge` | integer | 0/1 |
| `Budget` | string | Decimal |
| `BudgetPeriod` | string | e.g. `"FORTNIGHTLY"` |
| `BudgetHour` | integer | |
| `KM` | integer | |
| `KmPayer` | integer | |
| `KmPayerId` | integer | |
| `KmToTime` | integer | |
| `KmChargeOverride` | integer | |
| `KmChargeCode` | string | |
| `KMChargeNDIS` | string | |
| `KmOverrideChargeRate` | string | Decimal |
| `ExclPh` | integer | 0/1 |
| `NDISActivityType` | string | e.g. `"ROSTER"` |
| `NDISMgnt` | string | e.g. `"AGENCY"` |
| `NDISPlanId` | string | |
| `IsClosed` | integer | 0/1 |
| `CHSPPayer` | string | |
| `Note` | string | |
| `_LastModTime` | string | Datetime |
| `_LastModUser` | string | Email |
| `_CreateTime` | string | Datetime |
| `_CreateUser` | string | Email |
**AgreementItems** (when `includeItems=TRUE`):
| Field | Type | Notes |
| - | - | - |
| `AgreementItemId` | integer | |
| `AgreementId` | integer | |
| `ServiceId` | integer | |
| `ChargeRate` | float | |
| `PayRate` | number | Integer or decimal |
| `CHSPRate` | integer | |
| `CHSPType` | string | e.g. `"UNIT"` |
| `CHSPPayrollCode` | null/string | |
| `DEXCaseId` | integer | |
| `DEXServiceTypeId` | integer | |
| `DVAPeriodCode` | integer | |
| `Quantity` | integer | |
| `Unit` | string/null | |
| `Period` | null/string | |
| `PeriodTotal` | integer | |
| `BudgetAmount` | number | Integer or decimal |
| `BudgetHours` | number | Integer or decimal |
| `Comments` | null/string | |
| `ListId` | integer | |
| `Timestamp` | null/string | |
| `GST` | integer | 0/1 |
| `Ratio` | float | |
# Client compliance
Source: https://support.visualcare.com.au/api-reference/clients/compliance
Retrieve all client compliance items including status, dates, and requirements
### GET /compliance-clients
Retrieves all client compliance items.
**Parameters:** None. Returns every compliance item for every client in a single unpaginated response.
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `FirstName` | string | |
| `LastName` | string | |
| `ClientId` | integer | |
| `Area` | string | |
| `Area2` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `Email` | string | |
| `LinkId` | integer | |
| `ComplianceId` | integer | |
| `Required` | integer | 0/1 |
| `StartDate` | string | Date |
| `AlertDate` | string | Date |
| `ExpiryDate` | string | Date |
| `Note` | string | |
| `Completed` | integer | 0/1 |
| `Status` | string | |
| `Description` | string | |
| `ExpiryDays` | integer | |
| `WarningDays` | integer | |
| `Mandatory` | integer | 0/1 |
| `NoStartDate` | integer | 0/1 |
| `NoExpiryDate` | integer | 0/1 |
# Contacts
Source: https://support.visualcare.com.au/api-reference/clients/contacts
Retrieve client contacts including personal details, phone numbers, and app permissions
### GET /contacts
Retrieves client contacts.
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `contactId` | - | Returns specific contact |
| `includeDeleted` | - | Returns deleted contacts |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `ContactId` | integer | |
| `Title` | string | |
| `FirstName` | string | |
| `LastName` | string | |
| `Organisation` | string | |
| `Description` | string | |
| `Position` | string | |
| `DefaultContactType` | string | |
| `EmailWork` | string | |
| `EmailPersonal` | string | |
| `Mobile` | string | |
| `MobileOther` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `State` | string | |
| `PostCode` | string | |
| `Skype` | string | |
| `OtherContact` | string | |
| `Area1`, `Phone1`, `Ext1` | string | Phone line 1 |
| `Area2`, `Phone2`, `Ext2` | string | Phone line 2 |
| `Area3`, `Phone3`, `Ext3` | string | Phone line 3 |
| `Note` | string | |
| `AccountNote` | string | |
| `DOB` | string | Date |
| `HaccSlk` | string | |
| `HaccGender` | string | |
| `HaccDobEst` | integer | |
| `HaccCountryOfBirth` | string | |
| `HaccLanguage` | string | |
| `HaccIndigenous` | string | |
| `HaccState` | string | |
| `HaccResidency` | string | |
| `HaccRelationship` | string | |
| `HaccMoreThanOne` | string | |
| `PersonalContact` | integer | 0/1 |
| `vClient` | integer | 0/1 |
| `WebID` | string | |
| `AppRequest` | integer | 0/1 |
| `AppBudget` | integer | 0/1 |
| `AppDoc` | integer | 0/1 |
| `AppExpense` | integer | 0/1 |
| `AppQuote` | integer | 0/1 |
| `AppMsg` | integer | 0/1 |
| `AppForm` | integer | 0/1 |
| `AppSign` | integer | 0/1 |
| `AppShowSWNote` | integer | 0/1 |
| `Status` | string | |
| `_CreateTime` | string | Date |
| `_CreateUser` | string | Email |
| `ContactLink` | object | Present only when the contact is linked. Keys `CLIENT`, `LEAD`, `AGENCY`, `LOCATION`, each an array of integer IDs |
# DEX cases
Source: https://support.visualcare.com.au/api-reference/clients/dex-cases
Retrieve DEX (Data Exchange) case records for clients
### GET /DEXCase
Retrieves DEX (Data Exchange) case records for clients.
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `clientId` | - | Filter by client ID |
| `dexCaseId` | - | Filter by specific DEX Case ID. Parameter names are case-sensitive: `DexCaseId` is silently ignored |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `DexCaseId` | integer | |
| `ClientId` | integer | |
| `CaseId` | string | |
| `OutletActivityId` | integer | |
| `OutletDesc` | string | |
| `StartDate` | string | Date |
| `EndDate` | string | Date |
# Client documents
Source: https://support.visualcare.com.au/api-reference/clients/documents
Retrieve client documents with metadata including visibility and protection settings
### GET /documents-clients
Retrieves metadata for client documents. Returns records only; no file content or download URL is included in the response.
This endpoint is read-only. There is no POST or PUT endpoint for client document uploads. For worker document upload and update, see [Worker documents](/api-reference/workers/documents).
**Example:** `GET /documents-clients?fromDate=2026-01-01&toDate=2026-01-31`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `fromDate` | - | Only documents created on or after this date. Format: `YYYY-MM-DD` |
| `toDate` | - | Only documents created on or before this date. Format: `YYYY-MM-DD` |
| `clientId` | - | Filter by client ID |
| `categoryId` | - | Filter by document category ID (from `/category-documents`). Parameter names are case-sensitive: `CategoryId` is silently ignored |
Date filters apply to `CreatedAt`.
**Response:**
```json theme={null}
[
{
"DocId": 1832,
"ClientId": 8760,
"DocumentName": "Care plan - 2026.pdf",
"Note": "",
"Protected": 0,
"VisibleCarerMobile": 1,
"VisibleClientMobile": 0,
"CreatedBy": "user@example.com",
"Category": 3,
"CreatedAt": "2026-01-12 09:41:07"
}
]
```
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `DocId` | integer | Unique document record ID. |
| `ClientId` | integer | Client the document is attached to. |
| `DocumentName` | string | Original filename as uploaded. |
| `Note` | string | Free-text note saved with the document. Empty string if no note was entered. |
| `Protected` | integer | `1` if the document is marked as protected in Visualcare, otherwise `0`. Protected documents are restricted from users without the relevant permission. |
| `VisibleCarerMobile` | integer | `1` if the document is visible to the assigned worker in the vWorker mobile app, otherwise `0`. |
| `VisibleClientMobile` | integer | `1` if the document is visible to the client in the vAboutMe mobile app, otherwise `0`. |
| `CreatedBy` | string | Email address of the Visualcare user who uploaded the document. |
| `Category` | integer | Document category ID. Look up categories with `GET /category-documents`. |
| `CreatedAt` | string | Datetime the document was uploaded. |
The response does not include file size.
# Expenses
Source: https://support.visualcare.com.au/api-reference/clients/expenses
Retrieve client expenses including costs, charges, markup, and export status
### GET /Expenses
Retrieves client expenses.
**Example:** `GET /expenses?fromDate=YYYY-MM-DD&toDate=YYYY-MM-DD&clientId=368`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `fromDate` | - | Expenses with date >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Expenses with date \<= value. Format: `YYYY-MM-DD` |
| `clientId` | - | Filter by client ID |
| `carerId` | - | Filter by carer/worker ID |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `ExpId` | integer | |
| `CategoryId` | integer | |
| `Date` | string | Date |
| `InvoiceNumber` | string | |
| `Supplier` | string | |
| `Description` | string | |
| `Units` | float | |
| `UnitType` | string | e.g. `"UNITS"` |
| `Amount` | number | Decimal |
| `Cost` | number | Decimal |
| `GST` | number | |
| `PercOverTotal` | number | |
| `Note` | string | |
| `SeparateMarkup` | integer | 0/1 |
| `MarkupDesc` | string | |
| `MarkupChargeCode` | string | |
| `MarkupOption` | string | |
| `ExportCost` | number | |
| `PurchaseMethodType` | string | |
| `IsCharge` | integer | 0/1 |
| `ClientId` | integer | |
| `AgreementId` | integer | |
| `AgreementItemId` | integer | |
| `ChargeCode` | string | |
| `HCPInvoiceClient` | integer | 0/1 |
| `NDISSupportNumber` | string | |
| `IsReimburse` | integer | 0/1 |
| `CarerId` | integer | |
| `RosterItemId` | integer | |
| `PayCode` | string | |
| `ExportInvoiceDateTime` | string | Date |
| `ExportTsDateTime` | string | Date |
| `LockedInvoice` | string | Date |
| `LockedTimeSheet` | string | Date |
| `InclHCP` | integer | 0/1 |
| `ClientApp` | integer | 0/1 |
| `CreatedOn` | string | Date |
| `CreatedBy` | string | Email |
| `Status` | string | |
# Client groups
Source: https://support.visualcare.com.au/api-reference/clients/groups
Retrieve client group definitions including group codes and descriptions
### GET /groups
Retrieves client groups.
**Parameters:** None
**Response fields:**
| Field | Type |
| - | - |
| `GroupId` | integer |
| `GroupCode` | string |
| `GroupDesc` | string |
# Client information
Source: https://support.visualcare.com.au/api-reference/clients/information
Retrieve client profile data including demographics, contact details, health information, and preferences
The Visualcare public API provides a range of client-related endpoints covering core profile data, agreements, DEX cases, contacts, compliance, documents, expenses, groups, and notes.
All endpoints in this section are read-only (GET).
### GET /clients
Retrieves all clients. By default, deleted and non-current clients are excluded.
**Example:** `GET /clients?clientId=8760&includeDex=TRUE&includeHealth=TRUE`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `clientId` | - | If set to numeric ID, returns a one-element array containing that client |
| `includeDeleted` | - | If `TRUE`, returns deleted clients |
| `includeNonCurrent` | - | If `TRUE`, returns non-current clients |
| `serviceStatus` | - | Returns clients matching this status |
| `serviceStart` | - | Returns clients with service start date >= value. Format: `YYYY-MM-DD` |
| `serviceEnd` | - | Returns clients with service end date \<= value. Clients with no end date are always included. Format: `YYYY-MM-DD` |
| `includeNotes` | - | If `TRUE`, returns: `NotesRisk`, `NotesAlert`, `NotesGeneral`, `NotesRoster`, `NotesClientProfile`, `NotesShiftAlert` |
| `includeVulnerable` | - | If `TRUE`, returns: `Vulnerable`, `VulnerableFire`, `VulnerableHeat`, `VulnerableFlood`, `VulnerablePower`, `VulnerableStateRegistered`, `VulnerableFinancial`, `VulnerableWeatherEvents`, `VulnerableReason` |
| `includeHealth` | - | If `TRUE`, returns: `PrimaryDisability`, `SecondaryDisability`, `AssociatedDisability`, `MedicalConditions`, `MobilityLevel`, `ManualHandling`, `DiagnosedDisability`, `VisionImpaired`, `SpeechImpaired`, `HearingImpaired`, `UndiagnosedDisability`, `DisabilitySupportPension`, `Mobility`, `Dementia`, `VulnerableClient`, `VulnerableStateRegistered`, `VulnerableHeat`, `VulnerableReason`, `ComplexNeeds`, `ManagementPlan`, `ManagementPlanType`, `MedicationAdmin`, `MedicationPrompt`, `MedicationNote`, `SelfAdministered`, `Diagnosis`, `HealthCareCard` |
| `includePref` | - | If `TRUE`, returns: `PrefGender`, `PrefNonSmoker`, `PrefPet`, `PrefLanguages`, `PrefCultures`, `PrefInterests`, `PrefSkills`, `PrefTraining`, `PrefAdditional` |
| `includeDex` | - | If `TRUE`, returns: `PlaceOfBirth`, `LivingCircumstances`, `HomelessIndicatorCode`, `HasDisabilities`, `DisabilityCode`. Parameter names are case-sensitive: `includeDEX` is silently ignored |
**Base response fields:**
| Field | Type | Notes |
| - | - | - |
| `ClientId` | integer | |
| `ClientCode` | string | |
| `DexClientId` | string | |
| `Slk` | string | |
| `FirstName` | string | |
| `MiddleName` | string | |
| `LastName` | string | |
| `PreferredName` | string | |
| `Gender` | string | |
| `FundingType` | string | |
| `ClientType` | string/null | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `State` | string | |
| `PostCode` | string | |
| `Longitude` | string | |
| `Latitude` | string | |
| `Email` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `PhoneSMS` | string | |
| `Fax` | string | |
| `ContactPref` | string | |
| `DateOfBirth` | string | Date format |
| `PayerId` | integer | |
| `Area` | string | |
| `Division` | string | |
| `Group` | string | |
| `CaseManager` | string | Email format |
| `CaseManager2` | string | Email format |
| `MaritalStatus` | string | |
| `Aboriginal` | integer | 0/1 |
| `TorresStraitIslander` | integer | 0/1 |
| `LGBQTI` | integer | 0/1 |
| `LanguageEnglish` | integer | 0/1 |
| `LanguageOther` | string | |
| `InterpreterRequired` | integer | 0/1 |
| `ClientNo` | string | |
| `AccountingCode` | string | |
| `MedicareNo` | string | |
| `AmbulanceNo` | string | |
| `Weight` | integer | |
| `Height` | integer | |
| `DVA` | string | |
| `TSI` | integer | 0/1 |
| `ATSI` | integer | 0/1 |
| `CALD` | integer | 0/1 |
| `CHSP` | integer | 0/1 |
| `SATSS` | integer | 0/1 |
| `HCPLevel` | integer | |
| `LiveAlone` | integer | 0/1 |
| `SingleWorker` | integer | 0/1 |
| `CompanionCard` | string | |
| `PrivateHealth` | string | |
| `LegalOrders` | string | |
| `LivingArrangement` | string | |
| `EmploymentType` | string | |
| `Referral` | integer | 0/1 |
| `Referer` | string | |
| `RefererCode` | string | |
| `MACCode` | string | |
| `MyAgedCareReference` | string | |
| `NotesAccess` | string | |
| `CurrentStatus` | string | |
| `ServiceStatus` | string | |
| `ServiceStart` | string | Date format |
| `ServiceEnd` | string | Date format |
| `ServiceReview` | string | Date format |
| `ServiceReview2` | string | Date format |
| `EnquiryDate` | string | Date format |
| `LastServiceReview` | string | Date format |
| `ReasonServiceEnded` | string | |
| `NIDISNo` | string | |
| `NDISNumber` | string | |
| `NDISNote` | string | |
| `PensionNo` | string | |
| `CareRecipientId` | string | |
| `IsDex` | integer | 0/1 |
| `Status` | string | |
| `LocationId` | integer | |
| `Current` | integer | 0/1 |
| `CreatedBy` | string | Email format |
| `CreatedTime` | string | Datetime format |
| `LastModifiedTime` | string | Datetime format |
| `PreferedWorker` | array | |
| `NonPreferedWorker` | array | |
Conditional fields are included when the corresponding `include*` flags are set to `TRUE` (see query parameters above).
# Client notes
Source: https://support.visualcare.com.au/api-reference/clients/notes
Retrieve client notes including categories, assignments, follow-ups, and task status
### GET /notes-client
Retrieves client notes.
`ClientId` must be specified unless you're using the `page` parameter.
**Example:** `GET /notes-client?page=0&limit=200&fromDate=YYYY-MM-DD`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Items per page |
| `page` | 0 | Pagination offset (skips N records) |
| `fromDate` | - | Notes with timestamp >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Notes with timestamp \<= value. Format: `YYYY-MM-DD` |
| `assignedTo` | - | Filter by assigned email address |
| `closed` | - | `1` returns only closed items, `0` returns only open items |
| `taskClosed` | - | `1` returns only items with closed tasks, `0` returns only items with open tasks |
| `ClientId` | - | **Required** unless `page` is set. Filter by client ID. This parameter is case-sensitive and, unlike other endpoints, uses `ClientId`: `clientId` returns `{"status":"error","message":"Client Id Required"}` |
The client ID is not returned as a named field. It is in `_ReferringId_1` for notes created directly on the client and `_ReferringId_2` for roster-linked notes.
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `NoteId` | integer | |
| `CategoryId` | integer | |
| `NoteType` | string | e.g. `"APPNOTEGENERAL"` |
| `Note` | string | |
| `Reason` | string | |
| `Comment` | string | |
| `Action` | string | |
| `Outcome` | string | |
| `Response` | string/null | |
| `Location` | string | |
| `Occurrence` | string | |
| `Performance` | string | |
| `Timestamp` | string | Datetime |
| `NoteDate` | string | Date |
| `NotifiedDate` | string | Date |
| `AlertDate` | string | Date |
| `CloseDate` | string | Date |
| `TaskClosedDate` | string | Date |
| `AssignedTo` | string | Email |
| `AssignedToSecond` | string | Email |
| `Closed` | integer | 0/1 |
| `TaskClosed` | integer | 0/1 |
| `RequiresFollowUp` | integer | 0/1 |
| `VisibleClientApp` | integer | 0/1 |
| `VisibleWorkerApp` | integer | 0/1 |
| `CreatedBy` | string | |
| `_ReferringId_1` | integer | |
| `_ReferringId_2` | integer | |
| `_ReferringId_3` | integer | |
# Divisions
Source: https://support.visualcare.com.au/api-reference/divisions
Division records
### GET /Divisions
Returns all division records configured in your Visualcare organisation.
**Query parameters:** None
**Response fields:**
| Field | Type |
| - | - |
| `AreaId2` | integer |
| `AreaCode2` | string |
| `Area2` | string |
| `Reference1` | string |
| `Status2` | string |
| `TemplateId` | integer |
| `IncidentId` | integer |
# Forms
Source: https://support.visualcare.com.au/api-reference/forms
Form submissions and data
### GET /Forms
Default limit is 200 items.
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Items per page |
| `page` | 0 | Pagination offset |
| `fromDate` | - | Forms with `CreatedDate` >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Forms with `CreatedDate` \<= value. Format: `YYYY-MM-DD` |
| `carerId` | - | Filter by carer ID. Parameter names are case-sensitive: `CarerId` is silently ignored |
| `clientId` | - | Filter by client ID |
| `templateId` | - | Filter by template ID |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `FormId` | integer | |
| `FormName` | string | |
| `TemplateId` | integer | |
| `AssignedTo` | string | Email |
| `CreatedBy` | string | Email |
| `CreatedDate` | string | Datetime |
| `FormDate` | string | Datetime. `0000-00-00 00:00:00` when not set |
| `ReviewDate` | string | Datetime |
| `CompletedDate` | string | Datetime |
| `Status` | string | |
| `ClientId` | string | Numeric string |
| `LeadId` | integer | |
| `CarerId` | integer | |
| `LocationId` | integer | |
| `vis_sw_mob` | integer | 0/1 |
| `vis_cl_mob` | integer | 0/1 |
| `RosterItemId` | integer | |
| `TimeSheetId` | integer | |
| `SubmissionId` | string | Numeric string |
| `FormData` | object/null | Nested form submission data. `null` when the form has no submission |
**FormData** nested structure:
| Field | Type | Notes |
| - | - | - |
| `id` | string | Numeric string |
| `ip` | string | |
| `new` | string | Numeric string |
| `flag` | string | Numeric string |
| `notes` | string | |
| `status` | string | for example `"ACTIVE"` |
| `form_id` | string | Numeric string |
| `created_at` | string | Datetime |
| `updated_at` | string | Datetime |
| `answers` | object | Keyed by question ID. Each value has `name`, `text`, `type`, `order` and, when answered, `answer` |
# Incidents
Source: https://support.visualcare.com.au/api-reference/incidents
SIRS and general incident records
This page documents the API endpoints for retrieving incident data programmatically. If you need to view, edit, or report on an individual incident record in vCore, for example when preparing evidence for the NDIS Commission, see [Editing incidents](/incidents/editing-incidents) and the [SIRS register](/incidents/sirs-register) instead.
### GET /incidents
**Example:** `GET /incidents?fromDate=YYYY-MM-DD&toDate=YYYY-MM-DD&limit=100`
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Maximum rows returned. There is no `page` parameter on this endpoint, so use date windows to retrieve more than `limit` rows |
| `fromDate` | - | Incidents with NoteDate >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Incidents with NoteDate \<= value. Format: `YYYY-MM-DD` |
| `createDateFrom` | - | Incidents with Timestamp >= value. Format: `YYYY-MM-DD` |
| `createDateTo` | - | Incidents with Timestamp \<= value. Format: `YYYY-MM-DD` |
| `clientId` | - | Filter by client ID (compares against `_ReferringId_1`) |
| `assignedTo` | - | Filter by assigned user email |
| `closed` | - | Filter by closed status: `1` or `0`. The values `true`/`false` are not recognised and behave as `0` |
| `taskClosed` | - | Filter by task closed status: `1` or `0`. The values `true`/`false` are not recognised and behave as `0` |
| `inclForm` | - | If `TRUE`, adds a `Form` object to each incident. Parameter names are case-sensitive: `InclForm` is ignored |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `IncidentId` | integer | |
| `CategoryId` | integer | |
| `IncidentType` | string | for example `"CLIENT"` |
| `Note` | string | |
| `Reason` | string | |
| `Comment` | string | |
| `Action` | string | |
| `Outcome` | string | |
| `Response` | null/string | |
| `Location` | string | |
| `Occurrence` | string | |
| `Performance` | string | |
| `NoteDate` | string | Datetime |
| `NotifiedDate` | string | Datetime |
| `AlertDate` | string | Datetime |
| `CloseDate` | string | Datetime |
| `TaskClosedDate` | string | Datetime |
| `IsReportable` | integer | 0/1 |
| `Reported24Hour` | integer | 0/1 |
| `Reported5Day` | integer | 0/1 |
| `AssignedTo` | string | Email |
| `AssignedToSecond` | string | |
| `Closed` | integer | 0/1 |
| `TaskClosed` | integer | 0/1 |
| `RequiresFollowUp` | integer | 0/1 |
| `VisibleClientApp` | integer | 0/1 |
| `VisibleWorkerApp` | integer | 0/1 |
| `CreatedBy` | string | User display name |
| `DataSource` | string | for example `"Incidents"` |
| `Priority` | string | |
| `ReadDate` | string | Datetime |
| `ReadBy` | string | |
| `IncidentCode` | string | |
| `Timestamp` | string | Datetime |
| `_ReferringId_1` | integer | Usually the client ID. For roster-linked incidents this can hold the roster item ID, with the client in `_ReferringId_2` and worker in `_ReferringId_3` |
| `_ReferringId_2` | integer | |
| `_ReferringId_3` | integer | |
**Form** (when `inclForm=TRUE`): an object with the same fields as a `/Forms` row plus `Signature`, `SignatureDate` and `VehicleId`. `Form.FormData` is `null` when there is no submission, otherwise an object whose `answers` value is an object keyed by question ID, each with `name`, `text`, `type`, `order` and optionally `answer`.
***
### GET /SIRS
Serious Incident Response Scheme incidents.
**Example:** `GET /SIRS?fromDate=YYYY-MM-DD&toDate=YYYY-MM-DD&limit=100`
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Maximum rows returned. There is no `page` parameter on this endpoint |
| `fromDate` | - | SIRS with IncidentDate >= value. Format: `YYYY-MM-DD`. Records with no incident date are only returned when no date filter is set |
| `toDate` | - | SIRS with IncidentDate \<= value. Format: `YYYY-MM-DD` |
| `createDateFrom` | - | SIRS with Timestamp >= value. Format: `YYYY-MM-DD` |
| `createDateTo` | - | SIRS with Timestamp \<= value. Format: `YYYY-MM-DD` |
| `clientId` | - | Filter by client ID (maps to `_ReferringId_1`) |
| `assignedTo` | - | Filter by assigned user email |
| `closed` | - | Filter by closed status: `1` or `0`. The values `true`/`false` are not recognised and behave as `0` |
| `taskClosed` | - | Filter by task closed status: `1` or `0`. The values `true`/`false` are not recognised and behave as `0` |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `SIRSIncidentId` | integer | |
| `CategoryId` | integer | |
| `Note` | string | |
| `Reason` | string | |
| `Comment` | string | |
| `Action` | string | |
| `Outcome` | string | |
| `Response` | array | Objects of `{ Question, Answer, Outcome }`. `Answer` is `"yes"`, `"no"` or `null` |
| `Priority` | string | |
| `IncidentDate` | string | Datetime. `0000-00-00 00:00:00` when not set |
| `NotifiedDate` | string | Datetime |
| `AlertDate` | string | Datetime |
| `CloseDate` | string | Datetime |
| `TaskClosedDate` | string | Datetime |
| `AssignedTo` | string | |
| `AssignedToSecond` | string | |
| `Closed` | integer | 0/1 |
| `TaskClosed` | integer | 0/1 |
| `RequiresFollowUp` | integer | 0/1 |
| `VisibleClientApp` | integer | 0/1 |
| `VisibleWorkerApp` | integer | 0/1 |
| `IsReportable` | integer | 0/1 |
| `Reported24Hour` | integer | 0/1 |
| `Reported5Day` | integer | 0/1 |
| `ReadDate` | string | Datetime |
| `ReadBy` | string | |
| `CreatedBy` | string | Email |
| `Timestamp` | string | Datetime |
| `_ReferringId_1` | integer | Client ID |
| `_ReferringId_2` | integer | |
| `_ReferringId_3` | integer | |
# Leads and referrals
Source: https://support.visualcare.com.au/api-reference/leads
Lead records and referral agencies
### GET /Leads
**Example:** `GET /leads?leadType=CLIENT&leadId=328`
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `leadId` | - | Returns a one-element array containing the matching lead. An unknown ID returns `[]` |
| `leadType` | - | Filter by type: `CARER` or `CLIENT` (value is case-insensitive). Leads with an empty type are excluded by either filter |
| `includeDeleted` | - | If present (any value, including `FALSE`), also returns deleted leads (`Status` = `"D"`) |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `LeadId` | integer | |
| `LinkId` | integer | |
| `LeadStatus` | null/string | |
| `LeadSource` | string | |
| `LeadType` | string | `"CLIENT"` or `"CARER"` |
| `Title` | string | |
| `FirstName` | string | |
| `LastName` | string | |
| `MiddleName` | string | |
| `PreferredName` | string | |
| `Area` | string | |
| `Division` | string | |
| `Groups` | string | |
| `Type` | string | |
| `CaseManager` | string | Email |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `State` | string | |
| `Postcode` | string | |
| `Phone` | string | |
| `Mobile` | string | |
| `Email` | string | |
| `ContactPref` | string | |
| `DOB` | string | Date |
| `Gender` | string | |
| `Marital` | string | |
| `Vacancy` | string | |
| `NDISNo` | string | |
| `NDISAspirations` | string | |
| `MyAgedCareReference` | string | |
| `MACCode` | string | |
| `MedicareNo` | string | |
| `AmbulanceNo` | string | |
| `PensionNo` | string | |
| `Aboriginal` | integer | 0/1 |
| `TSI` | integer | 0/1 |
| `LGBQTI` | integer | 0/1 |
| `ATSI` | integer | 0/1 |
| `CALD` | integer | 0/1 |
| `InterpreterRequired` | integer | 0/1 |
| `AssistiveTechnology` | integer | 0/1 |
| `Auslan` | integer | 0/1 |
| `ClientBinary` | integer | 0/1 |
| `TTL` | integer | 0/1 |
| `CommunicationAssistance` | string | |
| `HCPLevel` | integer | |
| `Notes` | string | |
| `Comments` | string | |
| `Finalised` | integer | 0/1 |
| `StartDate` | string | Date |
| `FollowUpDate` | string | Date |
| `FinalisedDate` | string | Date |
| `LanguageOther` | string | |
| `Allergy` | string | |
| `PrimaryDisability` | string | |
| `AssociatedDisability` | string | |
| `HealthInfo` | string | |
| `MedicationNote` | string | |
| `FinanceLegalStatus` | string | |
| `LegalOrders` | string | |
| `VulnerableFinancial` | integer | 0/1 |
| `_LastModTime` | string | Datetime |
| `_LastModUser` | string | Email |
| `_CreateTime` | string | Datetime |
| `_CreateUser` | string | Email |
| `Status` | string | |
***
### GET /Referral
Returns all referral agencies.
**Query parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `AgencyId` | integer | |
| `AgencyCode` | string | |
| `Name` | string | |
| `Title` | string/null | |
| `FirstName` | string/null | |
| `LastName` | string/null | |
| `Phone` | string/null | |
| `Phone2` | string/null | |
| `Mobile` | string/null | |
| `Fax` | string/null | |
| `Address1` | string/null | |
| `Address2` | string/null | |
| `Suburb` | string/null | |
| `State` | string/null | |
| `PostCode` | string/null | |
| `Email` | string/null | |
| `Website` | string/null | |
| `Note` | string/null | |
| `AccountType` | string/null | |
| `ContactType` | string | |
| `CorporateStatus` | string/null | |
| `Status` | string | |
| `Area` | string | |
| `Area2` | string | |
# Locations
Source: https://support.visualcare.com.au/api-reference/locations
Location records
### GET /locations
Returns all location records.
**Query parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `LocationId` | integer | |
| `Code` | string | |
| `AccountingCode` | string | |
| `Description` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `Postcode` | integer | |
| `State` | string | |
| `Area` | string | |
| `Longitude` | string | |
| `Latitude` | string | |
| `Phone` | string | |
| `Fax` | string | |
| `Email` | string | |
| `FacilityType` | string | |
| `FacilityStatus` | string | |
| `CaseManager` | string | |
| `StaffRatio` | integer | |
| `ClientRatio` | integer | |
| `Comments` | string | |
| `FinanceLegalStatus` | string | |
| `OHSNote` | string | |
| `OHSCheck` | integer | 0/1 |
| `SafetyDevice` | string | |
| `NotesAlert` | string | |
| `NotesAlertCheck` | integer | 0/1 |
| `NotesRoster` | string | |
| `NotesRosterCheck` | integer | 0/1 |
| `VisibleOnline` | integer | 0/1 |
| `KMExempt` | integer | 0/1 |
| `Status` | string | `""` for active records |
# Public API reference
Source: https://support.visualcare.com.au/api-reference/overview
Overview of the Visualcare public API, including authentication, error codes, and endpoint catalogue
The Visualcare public API provides programmatic access to your organisation's data. All endpoints return JSON and use the base URL below.
**Base URL:** `https://publicapi.visualcare.com.au`
**Requesting API access**
To request API access for your Visualcare database, [support@visualcare.com.au](mailto:support@visualcare.com.au). The team provides API credentials and documentation for your specific integration needs.
## Authentication
All API requests require three custom headers:
| Header | Value |
| - | - |
| `User` | Your user UUID |
| `Key` | Your API key |
| `Secret` | Your API secret |
Credentials are provided directly by Visualcare. Contact [visualcare.com.au/contact](https://visualcare.com.au/contact) to request credentials.
```shell theme={null}
curl "https://publicapi.visualcare.com.au/{endpoint}"
-H "User: user-uuid"
-H "Key: key"
-H "Secret: secret"
```
## Query parameters
Query parameter names are **case-sensitive** and use lowerCamelCase, for example `carerId`, `clientId`, `fromDate`, `includeNotes`. A parameter sent with different casing, such as `CarerId`, is silently ignored and the unfiltered result is returned. Endpoint paths are not case-sensitive.
Flag parameters such as `includeDeleted` are enabled by their presence, so `includeDeleted=FALSE` still includes deleted records. Omit the parameter to turn the behaviour off.
Status values in responses are an empty string for active records and `"D"` for deleted records.
## Error codes
| Code | Meaning |
| - | - |
| 400 | Bad Request -- Your request is invalid. |
| 401 | Unauthorized -- Your API key is wrong. |
| 403 | Forbidden -- The requested resource is hidden for administrators only. |
| 404 | Not Found -- The specified resource could not be found. |
| 405 | Method Not Allowed -- You tried to access a resource with an invalid method. |
| 406 | Not Acceptable -- You requested a format that isn't JSON. |
| 410 | Gone -- The resource requested has been removed from our servers. |
| 429 | Too Many Requests -- You've sent too many requests in a short period of time. |
| 500 | Internal Server Error -- We had a problem with our server. Try again later. |
| 503 | Service Unavailable -- We're temporarily offline for maintenance. Try again later. |
Successful requests return HTTP 200. GET endpoints return a JSON array. Errors are also returned with HTTP 200 and a body of `{"status":"error","message":"..."}`, so check the response body rather than the status code.
## Endpoint summary table
| Method | Path | Resource | Auth | Pagination |
| - | - | - | - | - |
| GET | `/areas` | Areas | Yes | No |
| GET | `/category-expenses` | Categories | Yes | No |
| GET | `/category-documents` | Categories | Yes | No |
| GET | `/category-incidents` | Categories | Yes | No |
| GET | `/category-payers` | Categories | Yes | No |
| GET | `/category-rosteritems` | Categories | Yes | No |
| GET | `/category-services` | Categories | Yes | No |
| GET | `/clients` | Clients | Yes | No |
| GET | `/agreements` | Agreements | Yes | Yes (limit/page) |
| GET | `/DEXCase` | DEX Cases | Yes | No |
| GET | `/contacts` | Contacts | Yes | No |
| GET | `/compliance-clients` | Client Compliance | Yes | No |
| GET | `/documents-clients` | Client Documents | Yes | No |
| GET | `/Expenses` | Client Expenses | Yes | No |
| GET | `/groups` | Client Groups | Yes | No |
| GET | `/notes-client` | Client Notes | Yes | Yes (limit/page) |
| GET | `/Divisions` | Divisions | Yes | No |
| GET | `/Forms` | Forms | Yes | Yes (limit/page) |
| GET | `/incidents` | Incidents | Yes | limit only, no page |
| GET | `/Leads` | Leads | Yes | No |
| GET | `/locations` | Locations | Yes | No |
| GET | `/payers` | Payers | Yes | No |
| GET | `/quotes` | Quotes | Yes | Yes (limit/page) |
| GET | `/Referral` | Referral Agencies | Yes | No |
| GET | `/rosters` | Roster Items | Yes | Yes (limit/page, max 20,000) |
| GET | `/roster-master` | Roster Masters | Yes | No |
| GET | `/services` | Services | Yes | No |
| GET | `/Settings` | Org Settings | Yes | No |
| GET | `/SIRS` | SIRS Incidents | Yes | limit only, no page |
| GET | `/skills` | Skills | Yes | No |
| GET | `/timesheets` | Timesheets | Yes | Yes (limit/page, max 40,000) |
| GET | `/Training-items` | Training Items | Yes | No |
| GET | `/Users` | Users | Yes | No |
| GET | `/workers` | Workers | Yes | No |
| POST | `/worker` | Create Worker | Yes | - |
| PUT | `/worker` | Update Worker | Yes | - |
| POST | `/worker-skill` | Add Worker Skill | Yes | - |
| PUT | `/worker-skill` | Update Worker Skill | Yes | - |
| GET | `/worker-roles` | Worker Roles | Yes | No |
| GET | `/availability` | Worker Availability | Yes | No |
| GET | `/documents-workers` | Worker Documents | Yes | No |
| POST | `/worker-doc` | Upload Worker Doc | Yes | - |
| PUT | `/worker-doc` | Update Worker Doc | Yes | - |
| GET | `/compliance` | Worker Compliance | Yes | No |
| POST | `/worker-compliance` | Add Worker Compliance | Yes | - |
| PUT | `/worker-compliance` | Update Worker Compliance | Yes | - |
| GET | `/Leave` | Worker Leave | Yes | No |
| GET | `/Training` | Worker Training | Yes | No |
| GET | `/nextshift` | Worker Next Shift | Yes | No |
| GET | `/prevshift` | Worker Previous Shift | Yes | No |
**Total: 50 endpoint operations across 46 unique URL paths**
## Endpoint pages
Client records, agreements, contacts, compliance, documents, expenses, groups, and notes
Worker records, skills, roles, availability, documents, compliance, leave, training, and shifts
Category lookups for expenses, documents, incidents, payers, roster items, and services
Area lookup data
Division lookup data
Location lookup data
Organisation-level settings
Service definitions and rates
Roster items and master list
Timesheet records
Lead records and referral agencies
Payer records
User account records
Incidents and SIRS records
Form submissions and data
Quote records and line items
# Payers
Source: https://support.visualcare.com.au/api-reference/payers
Payer organisation records
### GET /payers
Returns all payer organisations.
**Query parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `PayerId` | integer | |
| `PayerCode` | string | |
| `PayerName` | string | |
| `ContactName` | string | |
| `Salutation` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `PostCode` | string | |
| `State` | string | |
| `Phone` | string | |
| `Mobile` | string | |
| `Email` | string | |
| `AccountingCode` | string | |
| `ABN` | string | |
| `Category` | string | |
| `Active` | integer | 0/1 |
| `Status` | string | |
# Quotes
Source: https://support.visualcare.com.au/api-reference/quotes
Quote records and line items
### GET /quotes
By default, quote line items are not included.
**Example:** `GET /quotes?fromDate=YYYY-MM-DD&toDate=YYYY-MM-DD&limit=100&includeItems=TRUE`
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Items per page |
| `page` | 0 | Pagination offset |
| `fromDate` | - | Quotes with `DateOfQuote` >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Quotes with `DateOfQuote` \<= value. Format: `YYYY-MM-DD` |
| `payerId` | - | Filter by payer ID |
| `clientId` | - | Filter by client ID |
| `includeItems` | - | If `TRUE`, returns `QuoteLineItems` |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `QuoteId` | integer | |
| `ClientId` | integer | |
| `PayerId` | integer | |
| `FundingTypeId` | integer | |
| `QuoteStatus` | string/null | for example `"pending"`, `"in_progress"` |
| `Finalised` | integer | 0/1 |
| `DateOfQuote` | string | Date |
| `FollowUpDate` | string | Date. `0000-00-00` when not set |
| `QuoteTotal` | number | Decimal |
| `QuoteTotalHours` | integer | |
| `QuoteStart` | string | Date |
| `QuoteEnd` | string | Date |
| `FirstName` | string | |
| `LastName` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Subrub` | string | **Typo in API** - should be `Suburb` |
| `Postcode` | string | |
| `State` | string | |
| `Phone1` | string | |
| `Email` | string | |
| `DOB` | string | Date |
| `NDISNo` | string | |
| `_CreateUser` | string | |
| `_UpdateUser` | string | Email |
| `_UpdateComment` | string | |
| `Status` | string | |
The quote object also returns funding and package fields that are not listed above, including `QuoteType`, `FundType`, `ClientNumber`, `LocationId`, `Area`, `ApprovedBy`, `ApprovedClient`, `QuoteNote`, `MyAgedCareReference`, NDIS fields (`NDISActivityType`, `NDISMgnt`, `MMMLevel`) and Support at Home fields (`sah_living`, `sah_independence`, `sah_clinical`, `SAHRestorative`, `SAHEndOfLife`, `SAHAssistiveTechnology`, `SAHHomeModifications`). Money values in these fields are returned as strings such as `"0.00"`.
**QuoteLineItems** (when `includeItems=TRUE`):
| Field | Type | Notes |
| - | - | - |
| `QuoteItemId` | integer | |
| `QuoteId` | integer | |
| `LineNo` | integer | |
| `ServiceId` | integer | |
| `Description` | string | |
| `Price` | number | Decimal |
| `Quantity` | integer | |
| `TotalQuantity` | integer | |
| `Total` | number | Decimal |
| `Budget` | integer | |
| `StartTime` | string | Time |
| `FreqTye` | string | **Typo in API** - should be `FreqType`. for example `"weekly"` |
| `FreqQty` | integer | |
| `FreqDaysStr` | string | for example `"MO;WE;FR"` |
| `FreqDays` | array | for example `["MO", "WE", "FR"]` |
# Rosters
Source: https://support.visualcare.com.au/api-reference/rosters
Roster items and roster master list
### GET /rosters
Default limit is 200 items. Maximum limit is 20,000. If you exceed the maximum, the API reverts to the default.
**Example:** `GET /rosters?fromDate=2018-02-19&toDate=2018-02-20&page=0&limit=100`
Parameter names are case-sensitive: `Limit`, `Page`, `CarerId` and similar spellings are silently ignored.
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Default 200, max 20,000 |
| `page` | 0 | Pagination offset |
| `fromDate` | - | Roster items with `DateOfService` >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Roster items with `DateOfService` \<= value. Format: `YYYY-MM-DD` |
| `createdTimeFrom` | - | Roster items with `CreatedTime` >= value. Format: `YYYY-MM-DD` |
| `createdTimeTo` | - | Roster items with `CreatedTime` \<= value. Format: `YYYY-MM-DD` |
| `rosterItemId` | - | Filter by roster item ID |
| `clientId` | - | Filter by client ID |
| `carerId` | - | Filter by carer ID |
| `serviceId` | - | Filter by service ID |
| `includeNotes` | - | If `TRUE`, adds a `Notes` array to each roster item |
| `onHoldType` | - | Filter by a specific hold type value, for example `LEAVE-HOS`. The value is matched literally, so `ALL` returns no rows |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `RosterItemId` | integer | |
| `RosterMasterId` | integer | Links to `MasterId` in `/roster-master` |
| `ClientId` | integer | |
| `CarerId` | integer | `-1` when unallocated |
| `PayerId` | integer | |
| `ServiceId` | integer | |
| `LocationId` | integer | `-1` when not set |
| `CategoryId` | integer | `-1` when not set |
| `DateOfService` | string | Date |
| `StartTime` | string | Time |
| `Minutes` | integer | |
| `ChargeRate` | number | Decimal |
| `PayRate` | number | Decimal |
| `FixedFee` | integer | |
| `HasBreak` | integer | 0/1 |
| `BreakStartTime1` | string | Time |
| `BreakMinutes1` | integer | |
| `BreakMinutes2` | integer | |
| `OrderNumber` | string | |
| `RecurrenceId` | integer | |
| `RecurrenceStart` | string | Date |
| `RecurrenceEnd` | string | Date |
| `RecurrenceType` | string | for example `"UNTIL"` |
| `OccurenceDays` | string | for example `"TU,TH,SU"` |
| `OccurenceCount` | integer | |
| `OccurencePeriodic` | string | for example `"WEEKLY"` |
| `OccurenceInterval` | integer | |
| `OnHoldType` | string | |
| `OnHoldNote` | string | |
| `OnHoldCode` | string | |
| `OnHoldChargePer` | integer | |
| `OnHoldPayMinutes` | integer | |
| `OnHoldDateTime` | string | Datetime. `0000-00-00 00:00:00` when not set |
| `TimeSheetId` | integer | |
| `AgreementId` | integer | |
| `AgreementItemId` | integer | |
| `DEXCaseId` | integer | |
| `DEXServiceTypeId` | integer | |
| `APP_StartTime` | string | Datetime |
| `APP_FinishTime` | string | Datetime |
| `APP_LastLongtitude` | string | |
| `APP_LastLatitude` | string | |
| `LastModified` | string | Datetime |
| `LastModifiedBy` | string | Email |
| `LastModifiedType` | string | for example `"UNALLOCATE A SHIFT"` |
| `CreatedTime` | string | Datetime |
| `CreatedBy` | string | Email |
| `Notes` | array | Only when `includeNotes=TRUE`. Objects of `{ RosterItemId, NoteId, CategoryId, Note, NoteType, Timestamp }` |
***
### GET /roster-master
Returns all roster master records that have not been flagged as deleted. `MasterId` links to `RosterMasterId` in the roster items endpoint above.
**Query parameters:** None. This endpoint is not paginated and returns every roster master in one response; `limit`, `carerId` and `clientId` are ignored.
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `MasterId` | integer | |
| `ClientId` | integer | |
| `LocationId` | integer | |
| `RosterId` | string | |
| `Reference` | string | |
| `Complete` | integer | 0/1 |
| `DefaultServiceId` | integer | |
| `DefaultDateOfService` | string | Date |
| `IsDraft` | integer | 0/1 |
| `RosterTimeZone` | string | for example `"Adelaide"` |
| `Type` | string | for example `"TRAN"`, `"SC"` or empty |
| `CategoryId` | integer | |
| `LimitBookingsPeriod` | integer | |
| `VisibleOnline` | integer | 0/1 |
| `Status` | string | |
# Services
Source: https://support.visualcare.com.au/api-reference/services
Service catalogue and rate configuration
### GET /services
Returns the service catalogue configured in your Visualcare instance.
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `includeDeleted` | - | If present (any value, including `FALSE`), also returns deleted services (`Status` = `"D"`) |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `ServiceId` | integer | |
| `ServiceCode` | string | |
| `Description` | string | |
| `Unit` | string | for example `"HR"` |
| `Area` | string | |
| `Category` | integer | |
| `ExpenseCategory` | integer | |
| `Type` | string | for example `"Private"` |
| `ShiftType` | string | for example `"WKDAY"` |
| `Reference1` | string | |
| `Reference2` | string | |
| `IsSleepover` | integer | 0/1 |
| `IsNormalTime` | integer | 0/1 |
| `LinkedNormalTime` | integer | |
| `ChargeRate` | number | Integer or decimal |
| `ChargeRate2` | number | Integer or decimal |
| `ChargeRate3` | number | Integer or decimal |
| `CHSPRate` | integer | |
| `PayRate1` through `PayRate48` | number | 48 pay rate tiers. Integer or decimal |
| `AccountingCode` | string | |
| `PayrollCode1` through `PayrollCode48` | string | 48 payroll code tiers |
| `AllowanceCode` | string | |
| `GST` | integer | 0/1 |
| `NDISSupportNumber` | string | |
| `NDISGSTCode` | string | |
| `NDISRegGrpNumber` | integer | |
| `NDISKmCode` | integer | |
| `NDISCentreCapitalCosts` | integer | |
| `HACCItemNumber` | integer | `-1` when not set |
| `DVAType` | string | |
| `SAHCategory` | string | Support at Home category |
| `SAHService` | string | Support at Home service |
| `ServiceLocationSettingCode` | string | |
| `IsSubcontractorDelivered` | integer | 0/1 |
| `IsVolunteerDirectService` | integer | 0/1 |
| `IsOvernightSupportIncluded` | integer | 0/1 |
| `EngagementTimeMinutes` | integer | |
| `TripTimeMinutes` | integer | |
| `TripDistanceKm` | integer | |
| `IsMealCookedOffsite` | integer | 0/1 |
| `IsMealProvided` | integer | 0/1 |
| `IsItemsTextureModified` | integer | 0/1 |
| `SnackCount` | integer | |
| `BeverageCount` | integer | |
| `DessertCount` | integer | |
| `LightMealCount` | integer | |
| `MainMealCount` | integer | |
| `_LastModTime` | string | Datetime |
| `_LastModUser` | string | |
| `_CreateTime` | string | Datetime |
| `_CreateUser` | string | Email |
| `Active` | integer | 0/1 |
| `Status` | string | `""` for active records, `"D"` for deleted |
# Organisation settings
Source: https://support.visualcare.com.au/api-reference/settings
Organisation-level settings and contact details
### GET /Settings
Returns your organisation-level settings, including contact details, identifiers, and default rates.
**Query parameters:** None
The response is a one-element JSON array containing a single settings object. All values are strings except `PAYROLLCODES`.
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `CompanyName` | string | |
| `ABN` | string | |
| `Website` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `State` | string | |
| `Postcode` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `Fax` | string | |
| `Email` | string | |
| `NDISNo` | string | |
| `HCPNapsId` | string | |
| `KMChargeRate` | string | Decimal as a string, for example `"0.9"` |
| `KMPayRate` | string | Decimal as a string, for example `"1.0"` |
| `PAYROLLCODES` | array | Array of payroll code label strings |
# Timesheets
Source: https://support.visualcare.com.au/api-reference/timesheets
Timesheet records
### GET /timesheets
Default limit is 200 items. Maximum limit is 40,000. Exceeding the maximum reverts to the default.
**Example:** `GET /timesheets?fromDate=2023-01-01&toDate=2023-12-31&limit=1000`
Parameter names are case-sensitive: `Limit`, `Page`, `CarerId` and similar spellings are silently ignored.
**Query parameters:**
| Parameter | Default | Description |
| - | - | - |
| `limit` | 200 | Default 200, max 40,000 |
| `page` | 0 | Pagination offset |
| `fromDate` | - | Timesheets with `DateOfService` >= value. Format: `YYYY-MM-DD` |
| `toDate` | - | Timesheets with `DateOfService` \<= value. Format: `YYYY-MM-DD` |
| `createdTimeFrom` | - | Timesheets with `CreatedTime` >= value. Format: `YYYY-MM-DD` |
| `createdTimeTo` | - | Timesheets with `CreatedTime` \<= value. Format: `YYYY-MM-DD` |
| `timesheetId` | - | Filter by timesheet ID |
| `clientId` | - | Filter by client ID |
| `carerId` | - | Filter by carer ID |
| `serviceId` | - | Filter by service ID |
| `includeNotes` | - | If `TRUE`, populates the `Notes` array. Without it `Notes` is always `[]` |
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `TimeSheetId` | integer | |
| `ClientId` | integer | |
| `CarerId` | integer | |
| `AgreementId` | integer | |
| `AgreementItemId` | integer | |
| `ServiceId` | integer | |
| `DateOfService` | string | Date |
| `StartTime` | string | Time |
| `Minutes` | integer | |
| `ChargeRate` | number | Decimal |
| `PayRate` | number | Decimal |
| `FixedFee` | integer | |
| `KM` | integer | |
| `KMCharge` | integer | |
| `KMNoCharge` | integer | |
| `KMTravelTime` | integer | |
| `Variation` | integer | 0/1 |
| `VariationQty` | integer | |
| `VariationComment` | string | |
| `VariationApproved` | integer | 0/1 |
| `ExtraChargeClient` | integer | |
| `BreakStartTime1` | string | Time |
| `BreakMinutes1` | integer | |
| `BreakMinutes2` | integer | |
| `OrderNumber` | string | |
| `RecurrenceId` | integer | |
| `OnHoldType` | string | |
| `OnHoldNote` | string | |
| `OnHoldCode` | string | |
| `OnHoldChargePer` | integer | |
| `OnHoldPayMinutes` | integer | |
| `OnHoldDateTime` | string | |
| `RosterItemId` | integer | |
| `APP_IP` | string | |
| `APP_StartTime` | string | Datetime |
| `APP_FinishTime` | string | Datetime |
| `APP_LastLongtitude` | string | |
| `APP_LastLatitude` | string | |
| `HasExported` | integer | 0/1 |
| `ExportInvoiceNumber` | string | |
| `DEXCaseId` | integer | |
| `DEXServiceTypeId` | integer | |
| `DEXSessionId` | integer | |
| `LastModified` | string | Datetime |
| `LastModifiedBy` | string | Email |
| `CreatedTime` | string | Datetime |
| `CreatedBy` | string | Numeric string, for example `"1460"` |
| `Status` | string | |
| `Area3Desc` | string | |
| `cArea3Desc` | string | |
| `Notes` | array | Always present. Empty unless `includeNotes=TRUE`; objects of `{ TimeSheetId, NoteId, CategoryId, Note, NoteType, Timestamp }` |
# Users
Source: https://support.visualcare.com.au/api-reference/users
User account records
### GET /Users
Returns all user accounts in your Visualcare organisation.
**Query parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `UserId` | integer | |
| `Username` | string | Email format |
| `FirstName` | string | |
| `LastName` | string | |
| `Email` | string | Email format |
| `Area` | string | |
| `SecurityGroup` | integer | |
| `_CreateTime` | string | Datetime |
| `StopLogin` | integer | 0/1 |
# Availability
Source: https://support.visualcare.com.au/api-reference/workers/availability
Retrieve worker availability records
### GET /availability
**Parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `Id` | integer | |
| `CarerId` | integer | |
| `Fortnight` | integer | |
| `Day` | string | for example `"TUE"`, `"WED"` |
| `EntireDay` | integer | 0/1 |
| `TimeFrom` | string | Time |
| `TimeTo` | string | Time |
# Worker compliance
Source: https://support.visualcare.com.au/api-reference/workers/compliance
Retrieve, create, and update worker compliance items
Any API POST/PUT request won't trigger a workflow.
### GET /compliance
Retrieves all worker compliance items.
**Parameters:** None. Returns every compliance item for every worker in a single unpaginated response, including deleted items (`Status` = `"D"`).
**Response:**
```json theme={null}
[
{
"FirstName": "Josh",
"LastName": "Foster",
"CarerId": 1512,
"Area": "SA",
"Area2": "",
"Phone1": "0400000000",
"Phone2": "",
"Email1": "worker@example.com",
"LinkId": 23,
"ComplianceId": 2,
"Required": 0,
"StartDate": "2020-07-10",
"AlertDate": "2021-06-10",
"ExpiryDate": "2021-07-10",
"Note": "non-mandatory",
"FormId": -1,
"Competent": 1,
"Completed": 1,
"Historic": 0,
"Status": "",
"_CreateUser": "jack@visualcare.com.au",
"_CreateTime": "2020-06-12",
"Description": "CPR",
"ExpiryDays": 365,
"WarningDays": 335,
"Mandatory": 0,
"NoStartDate": 0,
"NoExpiryDate": 0,
"vis_sw_mob": 1,
"ExternalId": "",
"AltId": "",
"Role": "Support Worker"
}
]
```
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `FirstName` | string | |
| `LastName` | string | |
| `CarerId` | integer | |
| `Area` | string | |
| `Area2` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `Email1` | string | |
| `LinkId` | integer | |
| `ComplianceId` | integer | |
| `Required` | integer | 0/1 |
| `StartDate` | string | Date |
| `AlertDate` | string | Date |
| `ExpiryDate` | string | Date |
| `Note` | string | |
| `FormId` | integer | -1 if none |
| `Competent` | integer | 0/1 |
| `Completed` | integer | 0/1 |
| `Historic` | integer | 0/1 |
| `Status` | string | |
| `_CreateUser` | string | Email |
| `_CreateTime` | string | Date |
| `Description` | string | |
| `ExpiryDays` | integer | |
| `WarningDays` | integer | |
| `Mandatory` | integer | 0/1 |
| `NoStartDate` | integer | 0/1 |
| `NoExpiryDate` | integer | 0/1 |
| `vis_sw_mob` | integer | 0/1 |
| `ExternalId` | string | |
| `AltId` | string | |
| `Role` | string | |
***
### POST /worker-compliance
Adds compliance items to a worker.
**Required fields:** `CarerId`, `ComplianceId`
**Auto-generated:** `LinkId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"CarerId": 1303,
"ComplianceId": 82,
"Required": "TRUE",
"StartDate": "1991-06-12",
"AlertDate": "0000-00-00",
"ExpiryDate": "1998-06-14",
"Note": "This is mandatory",
"Competent": "TRUE",
"Completed": "TRUE",
"Historic": "FALSE"
}
```
| Field | Required | Type | Description |
| - | - | - | - |
| `CarerId` | **Yes** | integer | Worker ID |
| `ComplianceId` | **Yes** | integer | Compliance item template ID |
| `Required` | No | string | `"TRUE"` / `"FALSE"` |
| `StartDate` | No | string | Format: `YYYY-MM-DD`. Use `"0000-00-00"` for no date |
| `AlertDate` | No | string | Format: `YYYY-MM-DD`. Use `"0000-00-00"` for no date |
| `ExpiryDate` | No | string | Format: `YYYY-MM-DD` |
| `Note` | No | string | |
| `Competent` | No | string | `"TRUE"` / `"FALSE"` |
| `Completed` | No | string | `"TRUE"` / `"FALSE"` |
| `Historic` | No | string | `"TRUE"` / `"FALSE"` |
***
### PUT /worker-compliance
Updates a worker's compliance item.
**Required fields:** `LinkId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"LinkId": 28004,
"Note": "Mid-range game"
}
```
# Worker documents
Source: https://support.visualcare.com.au/api-reference/workers/documents
Retrieve, upload, and update worker document records
Any API POST/PUT request won't trigger a workflow.
### GET /documents-workers
Retrieves all worker documents (metadata only, no file content or download).
**Parameters:** None. Returns all worker documents in a single unpaginated response.
**Response:**
```json theme={null}
[
{
"DocId": 1705,
"CarerId": 4472,
"DocumentName": "MyCareConnect_User Guide Mob April 2020.pdf",
"Note": "",
"Protected": 0,
"VisibleCarerMobile": 0,
"VisibleClientMobile": 0,
"CreatedBy": "user@example.com",
"CreatedAt": "2020-04-20 10:15:32"
}
]
```
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `DocId` | integer | |
| `CarerId` | integer | |
| `DocumentName` | string | Original filename |
| `Note` | string | |
| `Protected` | integer | 0/1 |
| `VisibleCarerMobile` | integer | 0/1 |
| `VisibleClientMobile` | integer | 0/1 |
| `CreatedBy` | string | Email |
| `CreatedAt` | string | Datetime |
This endpoint returns metadata only. File content is not included and there is no endpoint to download a file by `DocId`. `CategoryId` and file size are not returned.
***
### POST /worker-doc
Uploads a document to a worker's profile.
**Required fields:** `file`, `CarerId`
**Conditionally required:** `CategoryId` (when your organisation mandates a category on upload)
**Content-Type:** `multipart/form-data`
**Curl example:**
```shell theme={null}
curl "https://publicapi.visualcare.com.au/worker-doc" \
-H "User: user-uuid" \
-H "Key: key" \
-H "Secret: secret" \
-F "file=@/path/to/file.pdf" \
-F "CarerId=1303" \
-F "CategoryId=2" \
-F "VisibleCarer=TRUE" \
-F "VisibleClient=FALSE" \
-F "Protect=TRUE"
```
**Form fields:**
| Field | Required | Type | Description |
| - | - | - | - |
| `file` | **Yes** | file | The document to upload |
| `CarerId` | **Yes** | integer | Worker ID to attach the document to |
| `CategoryId` | Conditional | integer | Document category (from `/category-documents`) |
| `VisibleCarer` | No | string | `"TRUE"` / `"FALSE"` - visible to the worker on mobile |
| `VisibleClient` | No | string | `"TRUE"` / `"FALSE"` - visible to the client on mobile |
| `Protect` | No | string | `"TRUE"` / `"FALSE"` - mark the document as protected |
***
### PUT /worker-doc
Updates metadata on an existing worker document.
**Required fields:** `LinkId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"LinkId": 11110,
"VisibleCarer": "TRUE",
"VisibleClient": "FALSE"
}
```
# Worker information
Source: https://support.visualcare.com.au/api-reference/workers/information
Retrieve, create, and update worker records
Any API POST/PUT request won't trigger a workflow.
### GET /workers
Retrieves all workers. By default, this excludes non-current and deleted workers.
**Example:** `GET /workers?includeSkills=TRUE`
**Parameters:**
| Parameter | Default | Description |
| - | - | - |
| `carerId` | - | Filter by worker's carer ID. Parameter names are case-sensitive: `CarerId` is silently ignored |
| `includeSkills` | FALSE | If `TRUE`, adds a `Skills` array of `{ SkillId, Note }` objects to each worker |
| `includeNonCurrent` | FALSE | If `TRUE`, includes non-current workers |
| `includeDeleted` | FALSE | If `TRUE`, includes deleted workers |
**Response:**
```json theme={null}
[
{
"CarerId": 781,
"CarerCode": "SMIJ01",
"FirstName": "Jane",
"LastName": "Smith",
"PreferredName": "Jane",
"Address1": "10 Example Street",
"Address2": "",
"Suburb": "Adelaide",
"State": "SA",
"PostCode": "5000",
"Longitude": "138.6007456",
"Latitude": "-34.9284989",
"Email": "worker@example.com",
"Phone1": "0400000000",
"Phone2": "",
"DateOfBirth": "1990-01-01",
"StartDate": "2022-01-01",
"EndDate": "2023-12-31",
"AccountingCode": "AC12345",
"WorkerNumber": "WN56789",
"Description": "Reliable worker",
"Sex": "Male",
"Ethnicity": "Caucasian",
"Marital": "Single",
"Smoker": 1,
"PetFriendly": 0,
"WorkWithChildren": 0,
"Languages": "English",
"Area": "Basketball",
"Division": "215",
"CaseManager": "admin@example.com",
"BudgetHours": 2,
"Rating": -1,
"WorkerType": "Casual",
"Role": "2",
"AwardCode": "MA000100",
"AwardSector": "Casual - Home Care Employees",
"PayPoint": 3,
"PayrateLevel": 4,
"InIsolation": 0,
"IsolationStartDate": "2023-01-01",
"IsolationEndDate": "2023-02-01",
"CovidVaccine1": 0,
"CovidVaccine2": 0,
"DriversLicense": "Yes - truck",
"DriversLicenseNo": "ABC123",
"VehicleInsurancePolicy": "POL000001",
"VehicleInsuranceType": "Comprehensive",
"VehicleRegistration": "ABC123",
"WebEnabled": 1,
"CarerStatus": "Casual",
"ResignReason": "Career change",
"NDISClearance": 0,
"ScreenCheckAppNo": "APP00001",
"ScreenCheckNo": "CHK00001",
"Current": 1,
"Status": "Active",
"CreatedBy": "admin@example.com",
"CreatedTime": "2022-10-06 11:06:20",
"LastModifiedTime": "2024-08-14 13:36:39",
"RoleDescription": "Nurse",
"AwardDesc": "Social, Community, Home Care and Disability Services Industry Award",
"PreferedWorker": [],
"NonPreferedWorker": [],
"Groups": "",
"PTHoursMon": 0,
"PTHoursStartMon": ""
}
]
```
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `CarerId` | integer | |
| `CarerCode` | string | |
| `FirstName` | string | |
| `LastName` | string | |
| `PreferredName` | string | |
| `Address1` | string | |
| `Address2` | string | |
| `Suburb` | string | |
| `State` | string | |
| `PostCode` | string | |
| `Longitude` | string | |
| `Latitude` | string | |
| `Email` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `DateOfBirth` | string | Date |
| `StartDate` | string | Date |
| `EndDate` | string | Date |
| `AccountingCode` | string | |
| `WorkerNumber` | string | |
| `Description` | string | |
| `Sex` | string | |
| `Ethnicity` | string | |
| `Marital` | string | |
| `Smoker` | integer | 0/1 |
| `PetFriendly` | integer | 0/1 |
| `WorkWithChildren` | integer | 0/1 |
| `Languages` | string | |
| `Area` | string | |
| `Division` | string | |
| `CaseManager` | string | Email |
| `BudgetHours` | integer | |
| `Rating` | integer | |
| `WorkerType` | string | for example `"Casual"` |
| `Role` | string | |
| `AwardCode` | string | |
| `AwardSector` | string | |
| `PayPoint` | integer | |
| `PayrateLevel` | integer | |
| `InIsolation` | integer | 0/1 |
| `IsolationStartDate` | string | Date |
| `IsolationEndDate` | string | Date |
| `CovidVaccine1` | integer | 0/1 |
| `CovidVaccine2` | integer | 0/1 |
| `DriversLicense` | string | |
| `DriversLicenseNo` | string | |
| `VehicleInsurancePolicy` | string | |
| `VehicleInsuranceType` | string | |
| `VehicleRegistration` | string | |
| `WebEnabled` | integer | 0/1 |
| `CarerStatus` | string | |
| `ResignReason` | string | |
| `NDISClearance` | integer | 0/1 |
| `ScreenCheckAppNo` | string | |
| `ScreenCheckNo` | string | |
| `Current` | integer | 0/1 |
| `Status` | string | `""` for active records, `"D"` for deleted |
| `CreatedBy` | string | Email |
| `CreatedTime` | string | Datetime |
| `LastModifiedTime` | string | Datetime |
| `RoleDescription` | string/null | |
| `AwardDesc` | string | |
| `PreferedWorker` | array | |
| `NonPreferedWorker` | array | |
| `Groups` | string | |
| `PTHoursMon` through `PTHoursSun` | integer | Part-time hours per weekday |
| `PTHoursStartMon` through `PTHoursStartSun` | string | Part-time start time per weekday |
| `Skills` | array | Only when `includeSkills=TRUE`. Objects of `{ SkillId, Note }` |
***
### POST /worker
Creates a new worker record.
**Required fields:** `FirstName`, `LastName`
**Auto-generated:** `CarerId`
**Side effects:** Creates availability by default and compliance items based on org settings.
**Fields that CANNOT be set:** `CarerId`, `CarerCode`, `WebIdHash`, `WebPassword`, `WebLastLogin`, `WebPhoneType`, `WebGPSLong`, `WebGPSLat`, `WebGPSDate`, `WebAvailability`, `WebPushToken`, `Status`, `_LastAppUpdateSeenTime`, `_LastAppUpdateVersion`, `_LastModTime`, `_LastModUser`, `_CreateTime`, `_CreateUser`, `_RecordLocked`, `LinkingDBId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
[
{
"FirstName": "Michael",
"LastName": "Jordan"
}
]
```
The POST body is wrapped in an array, unlike the PUT body which is a plain object.
***
### PUT /worker
Updates an existing worker record.
**Required fields:** `CarerId` (plus at least one field to update, otherwise returns an error)
**Fields that CANNOT be edited:** `CarerId`, `CarerCode`, `WebIdHash`, `WebPassword`, `WebLastLogin`, `WebPhoneType`, `WebGPSLong`, `WebGPSLat`, `WebGPSDate`, `WebAvailability`, `WebPushToken`, `_LastAppUpdateSeenTime`, `_LastAppUpdateVersion`, `_LastModTime`, `_LastModUser`, `_CreateTime`, `_CreateUser`, `_RecordLocked`, `LinkingDBId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"CarerId": 1303,
"LastName": "Jeffery"
}
```
# Leave
Source: https://support.visualcare.com.au/api-reference/workers/leave
Retrieve worker leave records
### GET /Leave
**Parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `LeaveId` | integer | |
| `CarerId` | integer | |
| `TimeFrom` | string | Datetime |
| `TimeTo` | string | Datetime |
| `EntireDay` | integer | 0/1 |
| `Type` | string | for example `"NOPAY"` |
| `Note` | string | |
| `Remark` | string | |
| `Timestamp` | string | Datetime |
| `Status` | string | for example `"APPROVED"` |
| `StatusTime` | string | Datetime |
| `StatusBy` | string | |
| `_CreateUser` | string | Email |
| `_CreateTime` | string | Date |
# Roles
Source: https://support.visualcare.com.au/api-reference/workers/roles
Retrieve available worker roles
### GET /worker-roles
**Parameters:** None
**Response fields:**
| Field | Type |
| - | - |
| `RoleId` | integer |
| `Role` | string |
| `Status` | string |
| `SAHProfessionalType` | string |
# Shift lookup
Source: https://support.visualcare.com.au/api-reference/workers/shifts
Retrieve the next or previous shift for a worker
## Next shift
### GET /nextshift
Retrieves the next shift for a specified worker from a given date and time.
All three parameters are mandatory and case-sensitive (`CarerId`, `Date` and `Time` are rejected). A missing or malformed parameter returns HTTP 200 with an error object such as `{"status":"error","message":"Error: carerId is required"}`.
**Example:** `GET /nextshift?carerId=1096&date=2025-01-01&time=12:00`
**Parameters:**
| Parameter | Required | Description |
| - | - | - |
| `carerId` | **Yes** | Integer. Worker ID |
| `date` | **Yes** | Format: `YYYY-MM-DD` |
| `time` | **Yes** | Format: `HH:MM`, zero-padded (for example `09:05`). Seconds are rejected |
**Response:** a single shift object, not an array.
```json theme={null}
{
"CarerId": 1096,
"DateOfService": "2025-01-03",
"StartTime": "07:00:00",
"FinishTime": "08:00:00",
"IsSleepover": "false"
}
```
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `CarerId` | integer | |
| `DateOfService` | string | Date |
| `StartTime` | string | Time (HH:MM:SS) |
| `FinishTime` | string | Time (HH:MM:SS) |
| `IsSleepover` | string | `"true"` / `"false"` (string, not boolean) |
***
## Previous shift
### GET /prevshift
Retrieves the previous shift for a specified worker from a given date and time.
All three parameters are mandatory and case-sensitive (`CarerId`, `Date` and `Time` are rejected). A missing or malformed parameter returns HTTP 200 with an error object such as `{"status":"error","message":"Error: carerId is required"}`.
**Example:** `GET /prevshift?carerId=1096&date=2025-01-01&time=12:00`
**Parameters:**
| Parameter | Required | Description |
| - | - | - |
| `carerId` | **Yes** | Integer. Worker ID |
| `date` | **Yes** | Format: `YYYY-MM-DD` |
| `time` | **Yes** | Format: `HH:MM`, zero-padded (for example `09:05`). Seconds are rejected |
**Response:** a single shift object, not an array.
```json theme={null}
{
"CarerId": 1096,
"DateOfService": "2025-01-01",
"StartTime": "07:00:00",
"FinishTime": "08:00:00",
"IsSleepover": "false"
}
```
**Response fields:** Same as [Next shift](#next-shift).
# Skills
Source: https://support.visualcare.com.au/api-reference/workers/skills
Look up available skills and manage worker skill assignments
## Skills lookup
### GET /skills
**Query parameters:** None
**Response fields:**
| Field | Type |
| - | - |
| `SkillId` | integer |
| `SkillCode` | string |
| `Description` | string |
| `Status` | string |
***
## Worker skills
### POST /worker-skill
Adds a skill to a worker.
**Required fields:** `CarerId`, `SkillId`
**Auto-generated:** `LinkId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"CarerId": 1303,
"SkillId": 52,
"Note": "handling"
}
```
### PUT /worker-skill
Updates a worker's skill record.
**Required fields:** `LinkId`
**Content-Type:** `application/json`
**Request body:**
```json theme={null}
{
"LinkId": 11110,
"Note": "Driving Layup"
}
```
# Training
Source: https://support.visualcare.com.au/api-reference/workers/training
Look up training item definitions and retrieve worker training records
## Training items lookup
### GET /Training-items
**Query parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `TrainingId` | integer | |
| `TrainingCode` | string | |
| `Description` | string | |
| `TemplateId` | string | Numeric string, for example `"98"` |
| `Status` | string | Numeric string, for example `"1"` |
***
## Worker training records
### GET /Training
**Parameters:** None
**Response fields:**
| Field | Type | Notes |
| - | - | - |
| `FirstName` | string | |
| `LastName` | string | |
| `CarerId` | integer | |
| `Area` | string | |
| `Area2` | string | |
| `Phone1` | string | |
| `Phone2` | string | |
| `Email1` | string | |
| `LinkId` | integer | |
| `TrainingCode` | string | |
| `Level` | string | for example `"Trained"` |
| `TrainingDate` | string | Date |
| `ReviewDate` | string | Date |
| `ExpiryDate` | string | Date |
| `Note` | string | |
| `Competent` | integer | 0/1 |
| `FormId` | string | Numeric string, `"-1"` when not set |
| `DocId` | integer | |
| `Status` | string | |
| `TrainingId` | integer | |
| `Description` | string | |
| `TemplateId` | string | Numeric string |
| `Role` | string/null | |
# Apps and portals
Source: https://support.visualcare.com.au/apps/index
vWorker, vOnboard, vGo, vAboutMe, vBroker, and vAssessment
# Apps and portals
Learn about the Visualcare app ecosystem, including apps for workers, clients, families, and brokers.
vOnboard and vGo for workers
vAboutMe for clients and their families
vBroker and vAssessment
# vAboutMe
Source: https://support.visualcare.com.au/apps/vaboutme
Set up and use the vAboutMe mobile app to give clients visibility of their services, funding, and support workers
vAboutMe is a mobile app that gives clients and their families convenient access to their services, support workers, NDIS funding (not SAH), and documents. Clients can view their roster, rate sessions, send feedback, request new services, track their budget, and communicate directly with your office, all from their phone.
### What clients can do with vAboutMe
* View rostered services, times, and assigned support workers
* See photos and backgrounds of assigned support workers
* Rate support workers on individual shifts
* Send feedback (compliments, complaints, and suggestions) directly to the office
* Access important documents
* Communicate with vCore users via messaging
* Request changes or new services
* Receive reminders for upcoming shifts and appointments
* View funding levels and budget breakdowns for NDIS only
* View and sign off on quotes
* Send expenses and receipts for processing
## Setting up vAboutMe
### Enabling client access in vCore
To give clients access to the vAboutMe app, enable them within their client profile on vCore. For detailed instructions, see [vAboutMe app access](/client-management/vaboutme-app-access).
### App installation
The client needs one of the following operating systems installed on their device:
| Platform | Minimum version |
| - | - |
| Android | 10 or above |
| iOS | iOS 11 or above |
Download vAboutMe from the App Store (for iPhone) or Google Play (for Android). Search for "vAboutMe" and select **Install**.
### Logging in
Open vAboutMe by tapping the icon on the phone home screen. Once logged in, the app stays logged in.
## Home page
The home page displays an overview of the client's upcoming services and quick-access features.
## Menu
The menu gives clients access to all available features. The options visible here depend on your vAboutMe settings in vCore.
### Home
This button returns to the home page.
### My roster
Clients can view their upcoming shifts and scroll to select different days.
**New shift notifications:** When a new shift is created for a client, they receive a push notification on their phone. Tapping the notification shows the shift details.
When a client taps on a rostered shift, they have three options: **View Shift Note**, **View Worker Notes**, and **Request Change**. These options depend on the vAboutMe mobile app settings in vCore.
When a service has been completed, clients can give feedback by tapping **Rate this shift**. This allows them to give a star rating and add comments, which are submitted to the office.
Clients can view shift notes and worker notes once a shift has been completed. This feature is controlled in vCore under **Settings** → **Mobile App** → **vAboutMe** via the **Show worker notes** and **Show shift notes** options.
### My documents
Clients can view any documents that have been uploaded to their profile and set as visible to the client.
### My service summary
This shows clients their service summary for the past week. It's based on completed or confirmed shifts and displays the total dollar amount charged for each service, if financial information is set to show.
### My expenses
Clients can add expenses and view the list of expenses added by workers.
### My quotes
Here clients can view any quotes that have been marked as visible to them. They can click to view the full quote and then approve and sign it.
### My forms
Clients can view any forms that have been created in vCore. These forms can be filled in and signed from the app.
### Support workers
If preferred workers are set up in the client profile, they appear here. The support worker profile includes their language, skills, compliance, and training.
### My profile
Clients can view their profile including their profile picture, email address, contact number, address, and billing address.
### Call provider
Clients can call the office number set up in general settings directly from the app.
### Logout
To log out of the vAboutMe app, select the **Logout** button at the bottom of the menu tab.
## Budget
Clients can tap on their budget to view a breakdown of their budget versus spend.
You can hide financial information from the vAboutMe app in vCore under **Settings** → **Mobile App** → **vAboutMe** → **Show Finance information**.
## Options menu
Select the options menu to access private messages, group messages, feedback, weather display preferences, and dark mode.
### Feedback
Clients can send a thank you or compliment, complaint, or suggestion/feedback to the office. Select from the tick box, fill in the necessary information with any comments, and tap **Send Feedback**.
## Requesting new services
Clients can request a new service directly from the vAboutMe home page by tapping **Request new service**.
Choose the start and finish time for the shift.
Select the service type required. Use the **Note for booking** window to enter any details about the shift.
If the client wants this to be a recurring shift, toggle **Recurring shift** on.
Tap **Submit** to send the shift request to the office. The shift appears in the client roster, and the office needs to assign a worker or cancel/edit the shift.
## vAboutMe settings in vCore
vAboutMe settings are managed in vCore under **Settings** → **Mobile App** → **vAboutMe**. Settings changed here apply to all vAboutMe users. You can also individually adjust settings in the client profile, or in a contact profile linked to a client and enabled for vAboutMe.
| Setting | Description |
| - | - |
| **Show Finance information** | Show or hide a client's financial information within the app |
| **Allow add shift directly** | Allows a client to add a shift via the app, which feeds through to the client roster and unallocated shifts page |
| **Show worker notes** | Allows clients to view notes submitted by workers during shifts |
| **Show shift notes** | Allows clients to view public shift notes added by office users when rostering |
### Show/hide features
You can toggle the following features on or off for clients:
**Show Features**
* Request New Service
* View Budget Details
* Access My Roster
* Access My Documents
* Access My Service Summary
* Access My Expenses
* Add/Edit My Expenses
* Access My Quotes
* Access My Forms
* Access My Leave Requests
* Access Support Workers
* Access My Profile
* Access Call Provider
* Access Messaging
* Access Feedback
* Ability To Sign
**Show Sections**
* Show Worker's Compliance
* Show Worker's Skill
* Show Worker's Training
**Show Functions**
* Ability to Rate Worker
### Roster display settings
You can customise how many days of future and past shifts appear on the home and roster pages by entering the number of days in the relevant fields.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Enabling vAboutMe access in client profiles
Setting up a new client in vCore
The mobile app for office users managing shifts on the go
The worker onboarding portal
# vAssessment
Source: https://support.visualcare.com.au/apps/vassessment
Set up and use the vAssessment portal for workers to conduct client assessments, manage rosters, and create quotes
vAssessment is a web-based portal that allows workers to access client information, conduct assessments, manage rosters, create templates, and generate quotes. Workers log in with their Visualcare credentials and can view and edit client details, with changes flowing directly back to vCore.
## Setting up vAssessment access
A web username login is required for the worker to access the vAssessment portal. This is set up on the worker profile in vCore.
Open the worker profile in vCore. The worker's email address can be used as the web username. Ensure **Web Enabled** is ticked. These login details are the same as those used for the vWorker mobile app.
The vAssessment portal is accessed at [assessment.visualcare.com.au](https://assessment.visualcare.com.au).
## Signing in
Workers sign into the vAssessment portal using:
| Field | Details |
| - | - |
| **Provider name** | Provided to the worker, or included in the "Send login details" email |
| **Username** | The web username or worker email address set up in vCore |
| **Password** | On first login, the worker is prompted to create a password. If they forget their password, it can be reset on the worker profile in vCore |
## Home page
The home page displays a list of the worker's clients.
Use the **Search for Clients** field to find a specific client.
Under the **Manage** drop-down, you can select from the following options:
* **Client Details** - view and edit client information
* **Roster** - view and manage the client's roster
* **Templates** - access assessment templates
* **Quote** - create and manage quotes
* **HCP Quote** - create and manage Home Care Package quotes
## Navigation
Once you're in one of the sections listed above, you can switch between the other sections for the same client using the tabs at the top of the screen.
## Client details
Under the **Client Details** tab, you can view and edit client information. When you save this information, it's sent to the Visualcare client profile in vCore.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
The worker onboarding portal
The broker portal for managing subcontracted shifts
Setting up a new worker in vCore
The mobile app for office users managing shifts on the go
# vBroker
Source: https://support.visualcare.com.au/apps/vbroker
Set up and use the vBroker portal to manage subcontracted shifts and broker workers
vBroker is a web-based portal that allows external brokers (subcontracted service providers) to manage shifts assigned to them by your organisation. Brokers can view assigned shifts, allocate their own workers, complete shifts, log incidents, and communicate with your office, all without needing direct access to vCore.
## Setting up vBroker
### Creating the broker profile in vCore
Before a broker can access the portal, you need to set up their worker profile in vCore.
Set up the worker/broker profile with the following required fields:
* First and last name
* Tick **Web Enabled** and add a username
* Save the profile and send login details to the worker/provider
The first time they log in, they'll be prompted to create a password.
In the worker profile, go to the **Finance** tab and set the worker type to **Broker**.
### Portal settings in vCore
vBroker settings are managed in vCore under **Settings** → **Portals** → **vBroker**.
The **Broker Alert** setting enables email notifications to be sent to one or more email addresses for the following events:
* If **Unable to Fill** is selected on a shift in vBroker, an email notification is sent
* If an incident has been lodged for any client through the portal, an email notification is sent (ensure the "Email case manager/office when workers submit an incident form" notification is also set up under **Settings** → **Mobile App** → **Email**)
To add multiple email addresses, use a semicolon (;) to separate each email address and click **Save**.
If no email is set up in the Broker Alert field, email alerts go to the case manager assigned in the client profile in vCore. If there is no case manager assigned, alerts are sent to the company email set up in **Settings** → **Company Info**.
## Logging in to vBroker
Brokers access the portal at [broker.visualcare.com.au](https://broker.visualcare.com.au).
To log in, brokers need:
| Field | Details |
| - | - |
| **Provider** | The same company name used for vWorker or vOnboard |
| **Username** | The username set up in their vCore worker profile (for example, dale.april) |
| **Password** | Left blank on first login, which prompts the broker to create a password |
On first login, the broker enters without a password and the next screen prompts them to set up a new password.
## Home page
When the broker logs in, they see all shifts that have been assigned to them. The date range filter allows them to view shifts within a specific period.
The home page provides the following actions for each shift:
This is where the broker selects the worker who will attend the shift. A list of their worker profiles appears. Highlight the worker and select **Assign Worker**.
The broker can assign multiple shifts at once by selecting the shifts from the left-hand side and clicking **Bulk Assign**.
Once the service has passed, the broker clicks **Complete Shift** and adds completion notes. This confirms the service and flows through to the vCore database. Completing shifts from vBroker confirms services in timesheets. Any completion notes or incidents flow to vCore under the relevant App Notes KPIs and save to the client profile.
The broker can view relevant client details including any alerts under the **View** button. This includes client contact information such as address, date of birth, phone, case managers, and any details in the alert fields with the green mobile icon.
If an incident occurred during the shift, the broker clicks **Add** and fills out the incident form. Once the form is complete, they can click **View** to review it.
If the broker cannot fill the shift, clicking this button sends an email alert to the email address set up in vCore.
This status means the shift is no longer needed. The shift has been cancelled or put on leave in vCore, so the broker does not need to cover it.
## Workers tab
Brokers manage their own worker profiles within the vBroker portal. Select **Worker** at the top of the screen and click **Add Worker**.
Enter a first and last name to set up the new worker profile. Once the worker is set up, double-click the worker's name in the table to open their complete profile, which can be filled in at any time. You can also upload documents relevant to the worker under the **Documents** tab.
## Messaging
Brokers can send instant messages to vCore through the message icon in the top right-hand corner.
## Notifications
The email set up in vCore under **Settings** → **Portals** → **vBroker** receives email alerts when:
* A shift has not been assigned within 24 hours of the shift start time (emailed every hour)
* A shift is marked as **Unassigned** within 24 hours of the shift and is included in the hourly unassigned email alert
* An incident has been lodged for any client through the portal (ensure the notification is set up correctly under **Settings** → **Mobile App**)
If no email is set up in the vBroker settings, email alerts go to the case manager assigned in the client profile in vCore. If there is no case manager assigned to the client profile, alerts are sent to the company email set up in **Settings** → **Company Info**.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
The worker onboarding portal
The assessment portal for workers conducting client assessments
The mobile app for office users managing shifts on the go
Setting up a new worker in vCore
# vGo
Source: https://support.visualcare.com.au/apps/vgo
Use the vGo mobile app to manage shifts, clients, and rosters while away from vCore
vGo is a mobile app designed for office users who need to manage shifts, clients, and rosters while away from their computer. It gives coordinators and managers on-the-go access to key vCore functions, including viewing and editing shifts, managing client information, communicating with workers and clients, and reviewing incidents.
### What you can do with vGo
* View, create, edit, and delete rostered shifts
* Check shift status (not started, started, or completed)
* Mark a client shift as on leave
* Change or unassign workers on shifts
* Add or edit roster notes and roster categories
* View basic client profile information including contacts
* Add a new client, create agreements, and set up rosters
* View and edit shifts in client, worker, and location rosters
* View worker contact details and rosters
* Access unallocated shifts and assign workers
* Review incident forms submitted by workers, and mark incidents as read or closed
* Communicate with workers (on vWorker) or clients (on vAboutMe) using private or group messages
* Set permissions from vCore for certain user groups
## Setting up vGo
Download vGo from the App Store (for iPhone) or Google Play (for Android).
Open vGo by tapping the icon on your phone. Log in using your office username and password, the same details you use to log into vCore.
## Home page
When you log in, the home page displays the weather forecast for your location, all shifts for the day, and the menu and refresh buttons.
## Menu
The menu in the top left-hand corner gives you access to additional features beyond the home page.
## Clients
Tap **Clients** from the menu to access the list of clients. Use the search bar at the top of the page to quickly find a specific client. Only current clients appear in vGo.
### Adding a client
To add a new client, go to the client list from the menu and tap the icon in the top right-hand corner. Fill in all the required details and tap **Create**.
### Viewing a client
Select a client to view their details. In the bottom section of the page, you can access **Profile**, **Contacts**, and **Roster**.
Within the client profile, you can tap phone numbers to call the client, tap the email to start writing an email, and tap the address to open the pinpoint location in maps. Each of these opens the relevant app on your phone.
## Rosters
To edit a client roster, tap on the client and select **View shift details**. Here you can change the date, time, service, and worker on the shift. You can also delete the shift and see the status indicating whether the shift has been started or completed.
The worker list shows all workers regardless of availability. Any changes to a shift assigned to a worker send a notification to their vWorker app.
### Adding a new client roster
To add a new client roster:
Go to the client list from the menu, tap the client profile, then select the **Roster** tab.
Tap the three dots in the top right-hand corner and select **Rosters**.
Tap the **+** icon in the top right-hand corner to add a new roster. Once you confirm, the new roster is created for the client.
## Agreements
You can add new client agreements directly from vGo.
Go to the client list from the menu, tap the client profile, then select the **Roster** tab. Tap the three dots in the top right-hand corner and select **Agreements**.
Tap the **+** icon to add a new agreement. Enter the agreement details, add services, and tap **Create**.
## Leave
To add a client cancellation, select **Mark this shift on leave**. Here you can add the leave type, leave code, cancellation charge percentage, any pay hours, and notes.
If any charge or pay is required for the cancelled or leave shift, you need to select a leave code. No code means there is no timesheet line item for this shift.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
The client-facing app for rosters, budgets, and communication
The worker onboarding portal
The broker portal for managing subcontracted shifts
The assessment portal for workers conducting client assessments
# vOnboard
Source: https://support.visualcare.com.au/apps/vonboard
Set up and use the vOnboard portal to onboard new workers into Visualcare
vOnboard is a web-based portal that allows new workers to enter their personal details, upload documents, and complete onboarding tasks before they start work. Rather than collecting paperwork manually, you send workers a login link and they fill in everything themselves, with the data flowing straight into vCore.
## Setting up vOnboard
Before a worker can access the vOnboard portal, you need to set up their profile in vCore.
The following fields are required:
* First and last name
* Email
* Tick **Web Enabled** and add a username
* Tick **vOnboard Portal**
Save the worker profile and send the login details to your worker. The first time they log in, they'll be prompted to create a password.
To receive email notifications when new workers update their profile, assign a case manager to the worker in vCore.
### Portal settings in vCore
You can customise the vOnboard portal from **Settings** → **Portals** → **Onboarding Portal** in vCore.
The following options are available:
| Setting | Description |
| - | - |
| **Hide "TFN Declaration" link under Documents tab** | Tick to hide the TFN Declaration document from the portal, or untick to show it |
| **Hide "Super Standard Choice Form" link under Documents tab** | Tick to hide the Super Standard Choice Form from the portal, or untick to show it |
| **Upload Training Document** | Turn on or off the option for workers to upload training documents from the portal |
Once you've made changes, click **Save**.
## Logging in to vOnboard
Workers access the portal at [onboard.visualcare.com.au](https://onboard.visualcare.com.au).
To log in, workers need:
| Field | Details |
| - | - |
| **Provider** | The same company name used for vWorker |
| **Username** | The username set up in their vCore worker profile (for example, donna.summers) |
| **Password** | Left blank on first login, which prompts the worker to create a password |
## Entering details
Once logged in, workers can start entering their personal information. If they don't have time to complete everything in one session, they can save their progress and come back later. If they try to close the page without saving, the portal automatically prompts them to save.
**Moving between pages:** Click on the tabs to move through the different sections.
**Free text fields:** Click in the text box and type your information.
**Tick boxes:** Click in the box to add a tick (for example, "Do you smoke?").
**Drop-down lists:** Click the drop-down arrow to access lists (for example, the training list).
**Date fields:** Click on the date box, select the month, year, and day. The box closes automatically when you select the day.
## Uploading documents
Workers can upload and remove documents as training items from the **Training** tab in the portal.
This feature is controlled by the **Upload Training Document** tick box in vCore under **Settings** → **Portals**. By default, the feature is disabled.
## Mandatory fields
To require responses before a worker submits their onboarding (for example, car insurance details), review the mandatory field settings under **Settings** → **Minimum Data Set** → **Workers**. Fields marked as mandatory there must be completed in the portal before submission.
## Adding forms to the portal
To make a form available to workers in the vOnboard portal:
1. Navigate to **Maintenance** → **Templates**
2. Click **Edit** on the template and adjust the required settings
3. Tick the onboarding portal option
4. Save
Workers need to log out of the portal and log back in to see new forms after the setting is updated.
## After submission
Once a worker submits their vOnboard portal, all completed information flows directly into their Visualcare worker profile for review and approval. The case manager assigned to the worker in vCore is automatically notified by email.
The information workers complete in the portal includes:
* Personal and contact details
* Certificates for training and qualifications
* Skills selection and confirmation
* Compliance items
* Availability
* A final declaration review and sign-off
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Enabling and managing worker portal and app access
Setting up a new worker in vCore
The broker portal for managing subcontracted shifts
The assessment portal for workers conducting client assessments
# vWorker: Access for workers
Source: https://support.visualcare.com.au/apps/vworker-access
Step-by-step guide to setting up and sending vWorker app login details to workers
Before workers can use the vWorker app to clock in and out of shifts, they need login credentials. You can send login details individually or in bulk from vCore.
## What you'll need
* Workers set up in vCore with an email address, username and **Web enabled** ticked on their profile
* Workers with the vWorker app downloaded on their phone
## Sending login details in bulk
Go to **Operations** → **Email Worker Login**.
Workers highlighted in pink cannot be sent their login details. This happens when:
* There is no email on their worker profile
* There is no username on their worker profile
* They are not **Web enabled** on their worker profile
Update these details on the worker profile before trying again.
Use the tick box at the top left to select all workers, or tick individual workers who need their logins sent.
Click the **Email Worker Login** button. A confirmation message appears, highlighting any workers who are missing an email address, username or are not web enabled. Click **Confirm** to send the email to the remaining eligible workers.
If a worker logs out of the vWorker app, they will not receive shift notifications. Workers need to stay logged in to get notifications about upcoming shifts.
If a worker's phone is lost or stolen, they need to alert the office immediately so their access can be disconnected from vCore.
## Preventing screenshots in the app
You can stop workers from taking screenshots within the vWorker app:
1. Go to **Settings** → **Mobile App** → **General**
2. Find the **Prevent User taking Screenshot** setting
3. Set it to **Yes** to block screenshots, or **No** to allow them
4. Click **Save**
If this setting is set to **No** and a worker takes a screenshot, Visualcare sends a notification email to the address listed in **Settings** → **Company Info** → **Email**.
## Client health information in the app
Client health information entered in vCore flows through to the vWorker app. To update a client's health details, go to the client's profile in vCore, open the **Details** tab and enter the relevant information. Workers see this information under the client profile section in vWorker.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
How workers log in to the vWorker app for the first time
How workers start and complete shifts through the app
Overview of all features available in the vWorker app menu
# vWorker: Clocking in and out
Source: https://support.visualcare.com.au/apps/vworker-clocking-in-and-out
How the vWorker app handles shift start, completion, and offline mode for your workers
The vWorker app lets workers clock in and out of shifts from their mobile device. When a shift is completed through the app, the timesheet is automatically confirmed in vCore. This page covers how the shift lifecycle works so you know what to expect from your workers and how to configure the experience.
## Worker home page
When workers open the vWorker app, the home page shows:
* Weather forecast for their location
* List of shifts scheduled for the day
* Distance between shifts
* Access to the menu, refresh button and fortnightly roster
Workers can tap the calendar icon at the bottom right of the home page to switch to a fortnightly roster view.
## Shift details
Workers tap on a shift to view full details including client information, times and available actions.
### Goals
Workers view client goals within the shift. Tapping a goal opens it so the worker adds a note or uploads an image, taken with the phone camera or chosen from the gallery.
### Map
Tapping the client address under the shift details opens directions to the address in Google Maps.
### Checklist
If there is a checklist for the client shift, the checklist and all its items appear on the shift home page.
The worker taps an item, taps **Completed** to add a tick, enters any notes if needed, then saves. This information flows to the office for review in vCore.
## Starting a shift
When the worker taps **Start Shift**, the app records the time and location. If your organisation uses start forms, the worker completes the form before continuing with the shift.
## Completing a shift
When the shift is finished, the worker taps **Complete Shift**.
The app prompts the worker to enter details about the shift, including any changes to the shift, travel notes and completion notes.
If you've configured a completion form, the worker fills it in at this point. Completion forms can be linked to client divisions so different client types get different forms.
Link completion forms to client divisions in **Maintenance** → **Divisions** in vCore. Select the form template from the **Template** drop-down and click **Save**. In vWorker, the specified completion form opens when the worker completes the shift.
If no division-level form is set, the system uses the completion form configured in **Maintenance** → **Templates** (if any). If no completion form is set up at all, the worker can complete the shift without filling in a form.
Workers have the option to discard the completion form and fill it in later under **Menu** → **Forms** in vWorker. A dialog appears if the completion form is not submitted within 12 hours.
Workers can add notes after the shift has been completed by going back into the shift and clicking **Add Notes**. Notes can be added until midnight on the day of the shift.
## Kilometres on location shifts
Location shifts are rostered to a site rather than an individual client. Workers can record kilometres against a specific client at that location during the shift by going to **Profile** from the menu, finding the client in the list, and tapping **Add KM**.
**Correcting kilometres applied to the wrong place:**
If kilometres were accidentally recorded against the location instead of the client, fix them in vCore:
1. Go to **Timesheets** → **Timesheets - Location**
2. Select the **Clients** or **Workers** tab
3. Scroll to the **Timesheets** section
4. Find the entry and edit the **KMs** column
5. Click **Save Changes**
## Enabling adhoc shifts
Adhoc shifts let workers create unscheduled shifts in the app. To enable this:
1. Open the worker's profile in vCore and go to the **Finance** tab
2. Under **Worker Type**, select **Contractor** or **Service Provider**
3. Go to **Settings** → **Mobile App** and select the relevant adhoc shift option
4. Click **Save**
The worker needs to log out of vWorker and log back in for the change to take effect.
If the worker can't see a client in the client select list when adding an adhoc shift, the shift's service (**Master Service Code**) isn't on that client's agreement, or the client's **Status** isn't set to **Current**. See [Cannot add a client to a location roster shift](/troubleshooting/rostering-issues#issue-cannot-add-a-client-to-a-location-roster-shift) for the fix.
## Offline mode
Workers can use vWorker in offline mode when they have no internet access. In offline mode, workers can:
* Review client details (internet access is needed to update this information before going offline)
* Read client detail notes and shift alert notes
* Start a shift
* Complete a shift and add completion notes
* Complete checklists
Once back online, the worker taps the **V logo** at the top of the page (with a yellow exclamation mark) and selects **Upload all data**. This uploads any shift completion details and changes made while offline.
Most vWorker features are not available in offline mode. Only the features listed above work without an internet connection.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Download and log in to the vWorker app
How workers add notes, photos and view client information during shifts
Manually confirm timesheets when workers haven't used the app
Overview of all features available in the vWorker app menu
How workers view and manage location roster shifts in the app
# vWorker: Location roster shifts
Source: https://support.visualcare.com.au/apps/vworker-location-roster-shifts
How workers view and manage location roster shifts in the vWorker app
Location roster shifts are rostered to a site, such as a group program or a Supported Independent Living (SIL) house, rather than to an individual client. This page covers how workers view and manage these shifts in the vWorker app.
## Viewing location shift details
To view the details of a location shift, the worker taps the shift.
## Adding notes and incidents
To add a note against the location, the worker taps the **More** button within the shift.
To enter notes or lodge an incident against a specific client attending the location, the worker taps the **Client** tab and selects the client's name.
Clients linked to the location appear in vWorker even when they are not assigned to a shift in the location roster, for example a client living in a SIL house.
## Recording kilometres on a location shift
Workers record kilometres against either a specific client at the location or the location itself. After starting the location shift:
* **Against a client:** tap **Profile** to show the list of clients rostered at the location, then tap **Add KM** for the relevant client
* **Against the location:** add the kilometres directly on the location profile
The choice affects how the entry appears in vCore under **Timesheets** → **Data Export**:
| Applied to | Client column shows | Worker column shows |
| - | - | - |
| Client profile | The client's name | The location profile name |
| Location profile | The location profile name | The worker assigned to the location roster |
If a worker applies kilometres to the location when they meant a specific client, correct the entry in vCore under **Timesheets** → **Timesheets - Location**. See [Kilometres on location shifts](/apps/vworker-clocking-in-and-out#kilometres-on-location-shifts) for the steps.
## Seeing other workers on the shift
If enabled by the office, workers see the other workers assigned to the same location shift.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
How workers start and complete shifts through the app
View location roster timesheets in vCore
Overview of all features available in the vWorker app menu
# vWorker: Logging in
Source: https://support.visualcare.com.au/apps/vworker-logging-in
Step-by-step guide for workers to download, log in and configure the vWorker app
This guide covers how workers download the vWorker app, log in with their credentials and configure the app settings they need.
## System requirements
| Platform | Minimum version |
| - | - |
| Android | 10 or above |
| iOS | iOS 11 or above |
## Instructions
Download **vWorker** from the **App Store** (for iPhone) or **Google Play** (for Android).
Open vWorker by tapping the app icon. Enter the login details that were emailed to the worker.
Once logged in, the worker needs to stay logged in to receive shift notifications. Logging out of the app stops all notifications.
When the app opens for the first time, select **Allow** when asked for notification and location permissions. These permissions can be changed later in the phone's settings under **Notifications** → **vWorker**.
Some organisations require location services to be turned on at all times. Workers should check with their organisation's policy and procedures.
vWorker supports both dark and light mode. To change the display mode, go to the phone's **Display and Brightness** settings. The display mode can also be set to switch automatically based on daylight hours or a custom schedule.
For security and privacy, workers should have a password or screen lock on their phone. If a worker's phone is lost or stolen, they need to alert the office immediately so their access can be disconnected.
## Switching between companies
Workers who work for more than one organisation can switch between company accounts in vWorker without logging out.
The worker needs to have logged in to each company individually at least once before switching between them.
Tap **Menu** → **Switch Company**.
Tap the **pencil** icon, enter the name of the other company, then toggle **Add company directly** on.
Enter the username and password for the other company account, then tap **Send**.
If the worker doesn't know their password for the other company, they'll need to contact that organisation's office to have it reset.
## vWorker mobile App video
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Set up and send vWorker login details to workers from vCore
How workers start and complete shifts through the app
Overview of all features available in the vWorker app menu
# vWorker: Menu overview
Source: https://support.visualcare.com.au/apps/vworker-menu
Overview of all features available in the vWorker app menu
The vWorker app menu gives workers access to features beyond their daily shift list, including documents, leave requests, timesheets, incidents, forms, availability and their ID card.
To open the menu, tap the menu icon on the vWorker home page.
## Home
Takes you back to the list of shifts for today.
## Documents
Lists the documents and policies that have been uploaded for the worker's viewing.
## Leave requests
Workers can enter leave requests for approval by the office and view any pending requests. To submit a new leave request, tap the **+** button at the bottom right of the page. Choose to enter as a date range or time range.
Select the type of leave, add any notes or reasons and upload an image if needed (for example, a medical certificate for sick leave). Tap **Done** to send the request to the office for approval or decline.
## Timesheets
Workers can generate a list of completed shifts for a selected period, along with total hours and pay. These can be shared by email or another format.
Tap **Select period** to choose the date range, then tap **Share** and choose from the phone's sharing options (email, text or other apps) to export the generated CSV file.
## Incidents
Workers can view and manage incidents by tapping **Incidents** from the menu. Tap **Select period** to filter incidents by date range.
To edit and complete an incident, tap **Open** on the incident in the list, then select **Edit** to complete the form.
The office does not receive notification of the incident until it has been marked as completed. Once completed, the incident is no longer visible in the vWorker app.
## Forms
Under the **Forms** tab, workers can view and edit all incomplete client forms created by the office in vCore or by workers in the vWorker app.
Workers can't start a new form from the **Forms** tab. To add a form, open a shift, tap **More** → **Form Templates**, tap **Add**, select a template, name the form, and complete it. See [How to use vWorker](/getting-started/using-vworker). A template only appears in vWorker if **Visible to worker** is ticked in **Maintenance** → **Templates**. See [Form templates](/operations/form-templates).
## Availability
Workers can update their availability from the menu. Tap **Availability**, then select the day to edit.
Update availability as needed. Workers can mark themselves as available all day or only for specific time ranges. To add multiple available times in one day, tap **Add Available Time** on any day.
An icon appears while the availability is updating. Workers should stay on the screen until it disappears.
Some organisations only allow workers to update availability when there are no shifts assigned within a set timeframe. Workers should check with their employer for specific rules.
## ID card
Tap **ID Card** to display the worker's ID badge on screen, wherever it's needed.
## Messages
Workers can send and receive messages from the **Messages** section of the menu. **Group Messages** lets workers message the office or team, while **Private Messages** are direct one-to-one messages to the office. Workers can attach photos or files to messages. New messages appear as notifications on the vWorker home screen.
## Shift invitations
If the office has offered a worker a shift through roster invitations, the invitation appears in the **Shift Invitations** section. Workers tap the invitation to view the shift details, then choose to accept or decline and add any comments. Accepted shifts appear on the worker's roster.
## Training, qualifications, and compliance
Workers can view their training records and qualification expiry dates under this section. Items that are nearing expiry show notification indicators, and expired items are highlighted in pink.
This section is view-only in vWorker. Workers can't upload new training documents (for example, a new certificate) from the app. Uploads are done from the **Training** tab in the vOnboard portal, and only when the **Upload Training Document** setting is enabled in vCore under **Settings** → **Portals**. See [Uploading documents](/apps/vonboard#uploading-documents).
## My account
Workers can upload or change their profile picture from **My Account**. If a worker is set up across more than one organisation in Visualcare, they can also switch between companies from this screen.
Workers can't delete or close their own account from the vWorker app. Accounts are tied to the worker profile in vCore and are managed by the organisation. See [Offboarding a worker](/worker-management/offboarding) to revoke a worker's app access.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
How workers start and complete shifts through the app
Add notes, photos and view client information during shifts
Download and log in to the vWorker app
Set up and send vWorker login details to workers
# vWorker: Progress notes
Source: https://support.visualcare.com.au/apps/vworker-progress-notes
How workers add notes, photos, view client information and manage shift documentation in the vWorker app
During a shift, workers can add progress notes, view client information, manage expenses, complete checklists and access documents through the vWorker app. All notes and records flow through to vCore for the office to review.
## Adding notes and photos
Workers can add progress notes during a shift by selecting **Add Note / Photo** from the **More** menu within the shift. These notes provide a formal record of the shift and are time-stamped, date-stamped and name-stamped. They flow through to the electronic client file in vCore.
Photos can be added where applicable, for example to document wound care or a client performing an activity.
Workers can add notes after the shift has been completed by going back into the shift and clicking **Add Notes**. Notes can be added until midnight on the day of the shift.
Workers can also access past shifts through the **Timesheets** section in the vWorker app. Tap on a completed shift to open the client profile and add notes or photos from there.
## Viewing client notes
Workers can view notes relating to the client by tapping **Notes** at the bottom of the shift screen. These notes contain specific details about the shift or the client.
## Viewing shift history
Tap **History** from the **More** menu to review historical notes about the client.
## Additional shift features
Workers can access these additional features from the **More** menu within a shift:
| Feature | Description |
| - | - |
| **Add Note / Photo** | Add timestamped progress notes and photos to the client's electronic file |
| **History** | View historical notes and records for the client |
| **Documents** | Access documents uploaded to the client's profile |
| **Expenses** | Add expense items related to the client service, including receipts |
| **Forms** | Create and complete forms using templates set up by the office |
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
How workers start and complete shifts through the app
Overview of all features available in the vWorker app menu
How workers view and manage location roster shifts in the app
# Best Practice Webinars
Source: https://support.visualcare.com.au/best-practice-webinars
## What are the best practice webinars?
Our best practice webinars are monthly sessions designed to help you get more value from Visualcare. Each session focuses on a different topic, chosen based on customer feedback and usage trends, so the content stays relevant to the challenges and questions we're hearing most from customers like you.
## Who are they for?
These sessions are open to all Visualcare customers, whether you're new to the platform or a long-time user looking to sharpen your skills. Topics are selected to be broadly useful, but we recommend checking the upcoming topic before registering to see if it's a good fit for your role.
## When do we run them?
Webinars are held on the last Friday of each month.
Topic details are sent out ahead of each session, so keep an eye on your inbox for the latest information.
## How to register
Click here to secure your spot at our next best practice session.
Once registered, you'll receive a confirmation email with the session details and a calendar invite.
# Care plans and service agreements
Source: https://support.visualcare.com.au/client-management/care-plans-and-service-agreements
Track care management time and activities for Support at Home participants in Visualcare
Under Support at Home (SAH), care management is tracked separately from other services. The government caps care management fees at 10% of the participant's total ongoing budget. This article covers how care management works in Visualcare and what your team needs to know.
## Care management overview
* Care management fees are capped at 10% of the participant's ongoing quarterly budget (excluding short-term supports)
* The Care Management Pool (CMP) is quarantined for care coordination activities
* Care Partners deliver and record care management activities
* Tracking is available at both the individual participant and organisation level
## Recording care management time
Use the **Add Time** feature to log care management activities against a participant. Any notes added through this feature also appear under the **Notes** tab in the participant's profile.
Care management logging is currently participant-specific to meet compliance and claiming requirements. A centralised view is available for oversight, but bulk entry across multiple participants simultaneously is not supported at this time.
## Things to consider
* Start guiding your Care Partners on new processes for tracking time and taking notes during care management activities
* Care management claims are submitted separately, detailing the activity hours and applicable rates
* Visualcare facilitates logging, claiming, and tracking against the pooled care management amount at both participant and organisation levels
## Frequently asked questions
Individual care management activity logging is the recommended approach for now. Recurring scheduling for care management is being explored for future releases.
Care management details are included in monthly participant statements based on government requirements.
The current priority is functionality within vCore. Future enhancements for mobile app capture are being considered.
The 10% is calculated on the participant's ongoing quarterly budget, excluding short-term supports. A separate care management component applies to short-term pathways. Refer to government guidance for full details.
Yes. Any notes added using the **Add Time** feature also appear under the **Notes** tab in the participant's profile.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage Support at Home agreements
Manage budgets, statements, and financial exports
Create and manage notes on client profiles
# Checklists
Source: https://support.visualcare.com.au/client-management/checklists
Create client checklists that flow through to vWorker shifts for workers to complete
Client checklists are task lists added to shifts when rostering. They flow through to the vWorker mobile app for workers to complete during their shift.
## Creating a new checklist
Navigate to **Client Profile** → **Checklist** tab.
Click **New Checklist**. Enter the checklist name and first item name.
Click **Add Additional Item** for each extra item you need on the checklist.
Once all items are added, click **Create Checklist**.
Use the **Add** and **Edit** buttons after creating the checklist to make further adjustments.
## Adding a checklist to a shift
When rostering a shift for the client, select the relevant checklist from the drop-down menu.
For Location Rosters, roster the shift first, then click **Edit** on the client's roster item to add the checklist. This differs from the standard client roster flow where you select the checklist during rostering.
## Completing a checklist in vWorker
If a checklist has been added to a shift, it appears on the shift home screen in the vWorker app.
To mark items as complete, the worker opens the checklist, ticks **Completed** for each item, and clicks **Save**.
Completing the checklist is not mandatory for the worker to finish their shift. Workers can complete the shift in vWorker without ticking off all checklist items. Use the checklist note report (below) to track whether items were completed.
## Checklist note report
Run a checklist note report to see all completed checklists and any notes workers have added.
In the client profile, go to the **Checklist** tab and click **Checklist Note Report**.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage notes and follow-up tasks on client profiles
Set up the client profile that holds checklists
# CHSP agreements
Source: https://support.visualcare.com.au/client-management/chsp-agreements
Configure Commonwealth Home Support Programme agreements with DEX case and activity information for claiming
CHSP agreements include specific fields that feed into rostering and DEX export for claiming. This article covers the additional configuration needed when setting up a CHSP client agreement.
For the basics of creating any agreement, see [Creating agreements for rostering](/client-management/creating-agreements-for-rostering).
## Setting up a CHSP agreement
Ensure the **Agreement Type** is set to **CHSP**, then click **Save**.
### Client contribution payer
Under **Client Contribution Payer**, indicate where the client contribution for each service exports to. The options are:
| Option | What it does |
| - | - |
| **Not Exporting Client Contribution** | Excludes the client contribution amount from any export |
| **Export Client Contribution to Payer** | Exports the client contribution to the **Payer** selected within the agreement |
| **Export Client Contribution to Client Payer** | Exports the client contribution to the **Payer** selected within the client profile |
| **Export Client Contribution to Client Accounting Code** | Exports the client contribution to the client's **Accounting Code** on their profile |
## Adding CHSP services
Add services in the bottom section of the agreement screen. Click **Add Services**, find the CHSP services, tick them, and click **Add Selected Services**.
If a service is not listed, add it in **Maintenance** → **Services**.
Once services are added, update the CHSP-specific columns for each service line:
* **Client Contribution**
* **CHSP Payment Type**
* **CHSP Deduction Code**
* **DEX Case**
* **DEX Activity**
If these columns are not visible, open the **Column Chooser**, search for them, and drag them into the grid layout.
### CHSP payment type
The payment type links to the **Client Contribution** column. For each service line, click within the **CHSP Payment Type** column and choose either **UNIT** or **SHIFT** from the drop-down.
### DEX case and activity
To enable CHSP claiming, assign a **DEX Case** and **DEX Activity** to each service line in the agreement (or alternatively when rostering).
Click within the **DEX Case** and **DEX Activity** columns and select the correct values from the drop-downs.
If nothing appears in the drop-down, the DEX Case may not be set on the client profile. Ensure the client is correctly configured for CHSP funding under **Client Profile** → **CHSP/HACC** tab. See [CHSP and HACC configuration](/client-management/chsp-hacc-configuration) for details.
## Next steps
Once the CHSP agreement is set up, start rostering CHSP services:
* For **client shifts**, see the client roster CHSP and DEX rostering guide
* For **group activity shifts**, see the location roster CHSP and DEX rostering guide
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up the client profile for CHSP or HACC funding
General guide to creating client agreements
# CHSP and HACC configuration
Source: https://support.visualcare.com.au/client-management/chsp-hacc-configuration
Set up client profiles for CHSP, HACC, and SCP funding with DEX export configuration
The **CHSP/HACC** tab on the client profile contains fields needed to correctly configure a client for CHSP or HACC services in vCore. This includes DEX setup, case management, and carer details.
Select a client and navigate to **Client Profile** → **CHSP/HACC** tab.
## CHSP setup
For a CHSP client, several fields need correct information to enable funding claims via DEX.
First, ensure the client profile **Funding Type** drop-down is set to **CHSP**.
Under the **CHSP/HACC** tab, in the CHSP and DEX sections:
1. Tick **Is a CHSP client**
2. Tick **Is a DEX client**
3. Ensure **CHSP** is selected under DEX
### DEX configuration
In the DEX section, update the relevant drop-down fields, tick boxes, and text fields. Click **Save** when done.
Incomplete or incorrect information (for example, client details that don't match your organisation's DEX portal) may result in an error on export or the claim being excluded from the file.
### DEX cases
Add the client's DEX case under the **DEX Cases** section by clicking **Add New Case**.
In the pop-up window, select the **Outlet Activity**, set start and end dates if needed, and click **Add**.
If no outlet activity is available in the drop-down, your database may not be set up for DEX export. Contact [support@visualcare.com.au](mailto:support@visualcare.com.au) for assistance.
### Next steps for CHSP
After configuring the CHSP/HACC tab, create the client agreement. See [CHSP agreements](/client-management/chsp-agreements) for details. CHSP data export is found under **Timesheets** → **Data Export** in vCore.
## HACC and SCP setup
For HACC or SCP services to export successfully from vCore, complete these prerequisites:
* The **HACC Agency ID** is set up under **Settings** → **Company Info** (or under **Maintenance** → **Areas** if you have multiple IDs)
* The applicable service type and category are applied to HACC and SCP services in **Maintenance** → **Services**
* In the client profile, select **HACC** from the **Funding Type** drop-down
### DEX for HACC
Open the **CHSP/HACC** tab and select the **HACC** option in the DEX section. Visualcare generates the client's SLK code automatically.
Update all relevant HACC fields and click **Save**.
### Carer setup
If the client has a carer, set them up as a contact under the **Client Profile** → **Contacts** tab.
From the **CHSP/HACC** tab, once the contact is selected and the profile is saved, click the icon beside **Carer** to edit and complete relevant HACC fields within the contact profile. You also have access to the contact profile by clicking the contact name under the **Contacts** tab or by navigating to **Maintenance** → **Contacts**.
Items marked with a red asterisk may trigger an error on export if not completed correctly. Note that HACC fields differ slightly for VIC and WA HACC clients.
### SCP configuration
Tick the **Support for Carers Program** box if the client is eligible for SCP funding.
If the client has funding for both SCP and CHSP, keep **CHSP** selected. You do not need to switch it to **HACC**. The relevant HACC SCP questions appear alongside the CHSP fields in the DEX section.
### Next steps for HACC and SCP
After configuring the CHSP/HACC tab, create the client agreement. See [Creating agreements for rostering](/client-management/creating-agreements-for-rostering) for details. HACC and SCP data export is found under **Timesheets** → **Data Export** in vCore.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure CHSP-specific agreement settings
Set up the client profile before configuring funding
# Client expenses
Source: https://support.visualcare.com.au/client-management/client-expenses
Record, manage, and export client expenses including reimbursements and HCP charges in Visualcare
The **Expenses** tab on the client profile lets you record expenses that are charged to the client or reimbursed to a worker. Expenses flow through to data export for invoicing.
## Adding an expense
Open the client profile and navigate to the **Expenses** tab.
Click to add a new expense, fill in the relevant details, and click **Save**.
## Managing expenses
Once an expense is entered:
* Use **Edit** to make changes
* Use **Upload** to attach relevant invoices or receipts
Only the latest uploaded file is saved per expense.
## Expense categories
Expense categories are managed under **Maintenance** → **Categories**.
Categories appear in the drop-down when entering a new expense.
## Charging and reimbursing
| Action | How to do it |
| - | - |
| **Charge the client** | Tick the **Reimbursement** tick box, select the agreement the item was purchased under, the service, and the charge code set up in your accounting software |
| **Reimburse a worker** | Tick the **Reimbursement** tick box, select the worker and the code set up in your accounting software for reimbursements |
| **Charge to HCP package** | Select the HCP agreement from the drop-down. The expense is deducted from the package funds |
| **Charge client outside HCP** | Tick the **HCP** tick box to charge the client directly (not from the HCP package funds) |
## Expenses from vWorker
Workers can submit expenses through the vWorker mobile app. These appear on the client's **Expenses** tab in Visualcare, where you can edit them to mark them as chargeable or payable before exporting.
## Exporting expenses
To export expenses, navigate to **Timesheets** → **Data Export** and open the **Expenses** tab.
Select the expenses you want to export, then choose the appropriate export action:
* Click **Export Expenses** to export client charges as an invoice
* Click **Export Reimbursements** to export worker reimbursements
Make sure each expense has the correct charge or reimbursement settings before exporting. Client charges need an agreement, service, and charge code selected. Worker reimbursements need the worker and reimbursement code selected.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage HCP and SAH budgets and financial exports
Set up agreements that expenses link to
# Client compliance configuration
Source: https://support.visualcare.com.au/client-management/compliance-configuration
Set up compliance items, link them to funding types, and configure compliance tracking for client profiles in Visualcare
Client compliance items are configured in the Maintenance area and then appear on individual client profiles. This article covers how to create compliance items, link them to funding types, and understand how compliance tracking works.
## Creating compliance items
Navigate to **Maintenance** → **Clients** → **Client Compliance**.
Click **Add Compliance Item** to create a new item. Enter the following details:
| Field | Description |
| - | - |
| **Description** | The name of the compliance item |
| **Expiry Days** | Number of days before the item expires |
| **Warning Days** | Number of days before expiry to trigger a warning |
| **Mandatory** | Whether this compliance item is required |
Click **Save** when finished. To edit an existing item, click on it, make changes, and click **Save**.
## Linking compliance items to funding types
You link compliance items to specific funding types so that only relevant items appear on client profiles. There are several ways to make this connection:
* **Link directly to a funding type** - the compliance item only appears for clients with that funding type
* **Add by funding type** - bulk-add the compliance item to all existing clients with a specific funding type
* **Add to all clients** - add the compliance item regardless of funding type
If compliance items are not linked to any funding types, all compliance items are automatically added to new client profiles when they're created.
## Compliance status tracking
Compliance items on client profiles track:
* **Expiry dates** - when the compliance item is due for renewal
* **Warning dates** - when a warning is triggered before expiry (based on the warning days set during configuration)
* **Mandatory status** - whether the item is required for the client to remain compliant
Compliance items with expiry and warning dates generate alerts as the expiry approaches. Mandatory items that are overdue flag the client as non-compliant. Compliance status is visible across client lists and reports for organisational oversight.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
View and update compliance on individual client profiles
Configure compliance items, templates, and funding types in Maintenance
# Creating a client profile
Source: https://support.visualcare.com.au/client-management/creating-a-client-profile
How to add a new client, navigate the client list, and configure core profile information in Visualcare
The client profile is the central record for each person receiving services through your organisation. It holds personal details, funding configuration, addresses, contacts, and links to agreements, rosters, compliance, and more.
## Finding and navigating the client list
Open the client list from the top menu: **Clients** → **Client Profile**.
The list shows all clients in your database. You have several ways to customise and search this view.
### Customising columns
Select the **Column Chooser** to add or remove columns from the list.
Drag fields from the column chooser into the header area to add them. Rearrange columns by dragging them to a new position. To remove a column, drag it back into the column chooser.
### Searching for a client
Use the search bar in the top right corner to search across the current data set. Enter a name or other search term and matching records are highlighted.
You also have inline search fields just below the column headings. Enter your criteria in any of these fields to filter the list.
### Filtering and grouping
Filter a column by selecting the filter icon on the right of the column header. Choose the values you want to display and click **OK**.
Group the list by dragging a column header to the grouping area at the top left of the page.
### Exporting to Excel
Export the current data set to Excel by clicking the **Excel** icon.
## Adding a new client
To create a new client, click **Add Client** and enter the required details.
**Date of Birth** is optional, but Visualcare uses it to check for duplicate client records - enter it where known.
If the client's profile needs to be visible only to selected users, use the **Restricted Profile** checkbox - see [User access control](/getting-started/user-access-control).
To bulk-add required worker compliance items to the new client, apply a compliance template - see [Required compliance items](/client-management/required-compliance-items).
## Client profile overview
Once a client is created, their profile contains tabs and summary information at the top of the screen, with additional tabs and detailed subsections below.
To add or edit information, click in the field to enter detail (or select from a drop-down where needed) and click **Save**. The page prompts with a confirmation if you try to leave without saving.
### Customisable fields
Several fields on the profile are customisable for your organisation:
| Field | Where to configure |
| - | - |
| **Areas** | **Maintenance** → **Areas** |
| **Divisions** | **Maintenance** → **Divisions** |
| **Groups** | **Maintenance** → **Groups** |
| **Payers** | **Maintenance** → **Payers** |
## Details tab
The **Details** tab contains multiple expandable sub-categories. Click on a label to open, view, or edit the fields, and click again to minimise.
### Address
Enter the client's home address here. If the client has a key code or gate code, enter it in the **Key Code** field. Use **Search Address** to auto-populate the full address, or **Search Suburb or Postcode** to fill the **Suburb**, **State**, and **Postcode** fields.
### General details
Contains fields including age, languages, LGBTIQ+, culturally and linguistically diverse (CALD) status, Aboriginal and Torres Strait Islander status, and identification numbers linked to different funding sources.
### Comments
Add any additional comments to include on the client profile.
### Financial and legal status
Record financial guardianship or legal information, as well as any applicable **Legal Orders**.
### Service status
Select **Current** from the **Status** drop-down if the client is active, or choose an alternative status where needed.
Selecting any status other than **Current** removes the client from some searchable lists throughout the system.
This section also includes service start, end, and review dates. If the client no longer needs services, two actions are available:
* **Delete shifts from date** - removes shifts from the client roster after a selected date, with the option of marking rosters as completed
* **Remove from chat groups** - removes the client from all message groups within the vAboutMe mobile app
### Referral
Record referring agency details here.
### Work health and safety
Select any occupational health and safety (OH\&S) issues related to the client or their living arrangements.
### Billing details
Enter billing preferences and contact information.
### Health
Record health-related information including vaccine status, weight, height, disabilities, medical conditions, mobility, and medication details.
### Alerts
* **Alert Note** - add profile notes about the client. Tick **Popup in profile** to display these when the profile opens.
* **Roster Note** - add roster-specific notes. Tick **Popup in roster** to display these when the roster opens.
### Client profile (vWorker)
Add general information that workers need to know about this client. Notes entered here appear in the vWorker app for the worker to view before their shift.
### Access to residency notes (vWorker)
Instructions on how to access the client's residence. These notes appear in the vWorker app before the worker's shift.
### Identified risks (vWorker)
Highlight any risks relating to the client or their property. These notes appear in the vWorker app before the worker's shift.
### Living arrangements (vWorker)
Relevant information about the client's living arrangements, visible to workers in the vWorker app.
### Shift alert (vWorker)
Important information that pops up when a worker opens the client shift in the vWorker mobile app. Use this for critical details the worker needs immediately.
### vAboutMe
Customise vAboutMe features for the selected client by ticking or unticking access to each feature.
## Addresses tab
The **Addresses** tab stores additional client addresses (separate from the home address in the Details tab). These addresses flow through to [Transport Runs](/scheduling/transport-runs) as alternate pick-up or drop-off destinations. Note that Transport Runs are only used for CHSP claiming.
To add an address, navigate to **Client Profile** → **Addresses** tab and click **Add Address**.
Complete the address details, add any notes, and click **Save Address**.
Once added, the address appears in the list. Double-click an address line to edit it, or click **Delete** to remove it.
To update the client's home, postal, or billing addresses, go to the **Details** tab instead.
## Contacts tab
The **Contacts** tab stores people associated with the client, such as family members, carers, or other contacts.
Click **Add new contact** to create a new contact or select from existing contacts.
Enter the contact details and click **Create**.
Once a contact has been added, double-click the entry to edit their details.
## Enabling vAboutMe access
To give a client access to the vAboutMe mobile app, complete these fields in the client profile and click **Save**:
* **Email** - the client's email address
* **Web Username** - the client's email address is recommended (avoid spaces)
* **Web Enabled** - tick this box
* **vAboutMe Enabled** - tick this box
Click **Send Login Details** to email the client instructions on how to log in to the app.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up agreements to enable rostering for a client
Configure compliance items for client profiles
Set up client access to the vAboutMe mobile app
Import multiple client, worker, or expense records from a CSV file
# Creating agreements for rostering
Source: https://support.visualcare.com.au/client-management/creating-agreements-for-rostering
How to create client agreements, add services, and set up rosters in Visualcare
Agreements define the services, funding type, and billing details for a client. Every client needs at least one agreement before you start rostering their shifts. This article covers how to create a new agreement, add services to it, and link it to a roster.
## Creating a new agreement
Navigate to the **Agreement** tab at the top of the client profile and click **New Agreement**.
Enter the agreement details in the form that opens.
### Agreement fields
| Field | Description |
| - | - |
| **Agreement Code** | System-generated and not editable |
| **Client** | Auto-populates if the agreement is created from within the client profile |
| **Agreement Type** | Select the type of agreement, for example Private, HCP, CHSP, or NDIS |
| **NDIS Activity Type** | Appears when you select NDIS as the agreement type. These activity types apply to Location Roster shifts only - see [NDIS activity types](/client-management/ndis-agreements#ndis-activity-types) for the available options |
| **Charge Rate / NDIS Region** | Select the NDIS charge rate for remote or very remote areas (if applicable) |
| **Reference** | Use this to label the agreement if the client has multiple agreements, for example HCP, Private, CHSP, or NDIS |
| **Payer** | If the client is not the payer, select the payer here. Create new payers in **Maintenance** → **Payers** |
| **Area** | Optionally define the agreement by area if your organisation works in multiple areas |
| **Budget Period** | Select the budget period, for example daily, weekly, or monthly |
| **Budget Hours** | Enter the budget hours for the selected period |
| **Start Date** | Agreement start date (required) |
| **End Date** | Agreement end date (required) |
| **Alert Date** | Set a date to notify you when the end date is approaching |
| **Separate payer for KMs** | If a different payer covers kilometre charges, select them here |
| **Override KM charge code** | Tick this to charge a different kilometre rate from your default settings |
| **Use agreement pay rates and charge rates instead of service rates** | Override the standard service rates with custom rates for this agreement |
## Adding services to an agreement
Click **Add Services** and select services from the list. Use the filtering options to find specific service groups.
Tick the services you need and click **Add selected services**.
Once services are added, click **Save**.
## Deleting a service from an agreement
Click **Delete** next to a service to remove it.
Services that are active on a client roster cannot be deleted from the agreement.
## Creating a roster from an agreement
Create a roster directly from the agreement tab by clicking the **New Roster** icon.
## GST on agreements
If you need to add GST to specific services for a client, do this at the agreement level. This is typically used when most services are GST-free but a particular service for this client needs GST.
Tick the **GST** field for the relevant service and update the charge rate to include GST. Click **Save** when done.
## Agreement budgets
Four fields on an agreement drive budget calculations: **Start Date**, **End Date**, **Budget Period**, and **Budget**.
**Budget Period** determines whether the budget is per-period or total:
| Scenario | Meaning |
| - | - |
| Budget Period selected (weekly, monthly, quarterly, and so on) | The budget is per-period. The system multiplies the budget by the number of periods between the start and end dates |
| Budget Period left blank | The budget is the total for the full agreement span |
For example, with a **Budget Period** of weekly, a **Budget** of 2,000 dollars, and an agreement covering 52 weeks, the total budget is 104,000 dollars (2,000 × 52).
### Monitoring budget utilisation
To check whether an agreement is tracking over or under budget, go to **Client** → **Agreements**:
1. Tick **Show Actual and Forecast Balance** at the top of the screen
2. Open the **Column Chooser** and add the columns you need:
| Column | Purpose |
| - | - |
| **Budget \$** | The budget amount and the budget period used |
| **Total Budget \$** | Total budget for the whole agreement span |
| **Rostered \$** | Total value of rostered services for the agreement |
| **Forecast Balance \$** | Total budget minus rostered |
| **Actual \$** | Confirmed timesheets allocated to the agreement |
| **Actual Balance \$** | Total budget minus actual |
These columns give fast visibility of utilisation, overspend risk, and remaining capacity. Colours at the bottom of the page indicate when dates or budgets have been exceeded.
## Cloning, transferring, and closing agreements
### Cloning an agreement
To create a copy of an existing agreement with all its service codes, open the agreement and click **Clone**, then click **Clone** again in the confirmation popup. The new agreement is created with all the same service codes as the original.
### Transferring roster items to a new agreement
When a client moves to a new agreement (for example, at the start of a new funding period), use the Transfer function to move their roster items across.
Create a new agreement or clone the existing one for the new period.
From the new agreement, click **Transfer**.
Select the **From Date** - this is the date from which roster items move to the new agreement.
The old agreement appears on the left and the new agreement on the right. The system automatically matches service codes where it can. Manually match any unmatched service codes.
Click **Apply** to complete the transfer.
### Closing an agreement
To close an agreement, set the **End Date** and tick **Is Closed**, then click **Save**.
If Visualcare won't let you update the End Date, a roster item is blocking the change. Use the Transfer function to move the blocking roster item to another agreement, or manually delete or update it before closing.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
NDIS-specific agreement configuration
Set up agreements for CHSP-funded clients
Configure Support at Home agreements
Set up the client profile before creating agreements
# CRM overview
Source: https://support.visualcare.com.au/client-management/crm-overview
Manage leads, website enquiries, and the client onboarding pipeline in Visualcare
The CRM (Customer Relationship Management) module manages leads for both clients and workers, and captures website enquiries. Leads let you manage the client onboarding process separately from the client profile. When a lead converts, their information transfers to a new client profile automatically.
## Website enquiries
An enquiry form built to match your company website feeds data into the vCore **Website Enquiries** area for reporting and visibility.
### Viewing enquiries
Navigate to **Operations** → **CRM** → **Website Enquiries** to see all enquiries in the database.
### Customising the list
Use the **Column Chooser** to add or remove columns. Drag fields from the chooser into the header area, rearrange by dragging, or remove by dragging back.
### Searching for enquiries
Search in the top right corner by entering criteria such as a name. The search highlights matching records across the data set.
### Filtering and grouping
Filter a column by selecting the filter icon on the right. Choose the values to display and click **OK**.
Group the data by dragging a column header to the grouping area at the top left.
### Exporting to Excel
Export enquiry data to Excel by clicking the **Excel** icon.
### Managing individual enquiries
**Viewing the form** - click **View** to review the enquiry details in the original form format.
**Deleting an enquiry** - click **Delete** to remove an enquiry. A confirmation window appears to prevent accidental deletion.
### Adding an enquiry to leads
Push enquiry data into the leads pipeline. Data from the form is mapped automatically where the field types match (for example, drop-down to drop-down). Fields need to be linked by the Visualcare team when the form is built, and options in the form must match those in the database.
## Lead profile missing sections
If the **General Details** and **Health** sections are missing from a lead's profile, the **Type** field on the lead is blank. Open the lead, set the **Type** to **Client**, click **Save**, and refresh the page - the missing sections then appear.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Generate service quotes for leads and clients
Create a full client profile after converting a lead
Import multiple client, worker, or expense records from a CSV file
# Document storage
Source: https://support.visualcare.com.au/client-management/document-storage
Upload, categorise, and manage documents on client profiles in Visualcare
The **Documents** tab on the client profile stores files attached to the client record. Documents are organised by category and have visibility controls for the vAboutMe and vWorker mobile apps.
## Uploading a document
Open the client profile and navigate to the **Documents** tab.
Click **Upload File** and locate the file, or drag and drop the file into the indicated area.
Select a **Category** and click **Upload**.
Uploads have an 8MB maximum per file. Compress or split larger files, upload the file from a local copy rather than from a cloud location like OneDrive or Google Drive, and avoid filenames containing the text `system(`, which fails validation. See [Document upload fails](/troubleshooting/general#document-upload-fails) for more detail.
## Managing documents
Once uploaded, the document appears in the client documents list with these options:
| Action | Description |
| - | - |
| **Manage** | Add or change the document category. Document categories are configured in **Maintenance** → **Documents** |
| **Visibility** | Under **Manage**, control whether the document is visible to the client in vAboutMe or to workers in vWorker during a shift with this client |
| **Lock/Unlock** | Under **Manage**, lock a document to prevent changes or accidental deletion |
| **Download** | Download a copy of the file to your downloads folder |
| **Delete** | Remove the file (only available if you have the permissions and the file is not locked) |
## Making a document visible to all clients in vAboutMe
To share a document with all clients through the vAboutMe app, upload it through **Maintenance** rather than through an individual client profile.
Navigate to **Maintenance** → **Documents** and upload the file.
Click **Manage** on the uploaded file.
Under **Visibility to Client**, change the setting to **Visible**.
Click **Save**. The document now appears in the vAboutMe app for all clients.
Documents uploaded through a client profile are only visible to that individual client. Use **Maintenance** → **Documents** when you want a document available to all clients organisation-wide.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage notes and follow-up tasks on client profiles
Set up the client profile that holds documents
# DVA agreements
Source: https://support.visualcare.com.au/client-management/dva-agreements
Create and manage Department of Veterans' Affairs agreements in Visualcare, including DVA Plan ID, Frequency, and CSV export
DVA (Department of Veterans' Affairs) agreements follow the same creation process as other agreement types. See [Creating agreements for rostering](/client-management/creating-agreements-for-rostering) for full details on creating agreements, adding services, and managing rosters. This article covers the DVA-specific fields and export process.
For the basics of creating any agreement, see [Creating agreements for rostering](/client-management/creating-agreements-for-rostering).
## Setting up a DVA agreement
Set the **Agreement Type** to **DVA** when creating or editing a client agreement, then click **Save**.
### DVA-specific fields
| Field | Where to find it | Description |
| - | - | - |
| **DVA Plan ID** | Agreement header | The DVA plan identifier for this client. Enter the plan ID provided by DVA |
| **Frequency** | Service line items (column) | Controls the billing frequency for each service line. If this column is not visible, open the **Column Chooser** and drag **Frequency** into the grid |
The **Frequency** column appears against each service line item within the agreement, not in the agreement header. Use the **Column Chooser** if you cannot see it.
## Exporting to DVA
The **Export to DVA** function produces a CSV file for submitting claims to DVA.
Navigate to **Data Export** and select **Export to DVA**.
Select the date range for the export period and click **Export**. The system generates a CSV file containing the claim data.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
General guide to creating client agreements
NDIS-specific agreement setup and pricing updates
CHSP agreement setup with DEX case and activity fields
# Goals
Source: https://support.visualcare.com.au/client-management/goals
Set and track client goals linked to service categories and funding in Visualcare
Client goals link to service categories in Visualcare, allowing you to track progress against budgets and service delivery. When a timesheet linked to a client goal is confirmed, the progress bar under **Budget vs Actual** updates automatically.
## Viewing goals
Open the client profile and navigate to the **Goals** tab.
Each goal shows:
* The linked service category
* Budget versus actual progress (the blue bar indicates confirmed time against the goal)
* A **Goal Achieved** slider that you update manually by double-clicking the record and moving the slider
## Adding a new goal
Click the **New Goal** icon to create a goal.
## Editing a goal
Enter the goal details and click **Save**. You edit goals at any time by opening the record.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Generate NDIS reports that reference goal progress
Set up the client profile that holds goals
# Client management
Source: https://support.visualcare.com.au/client-management/index
Manage client profiles, care plans, agreements, compliance, and financials
# Client management
Everything you need to manage your clients in Visualcare, from creating profiles through to funding agreements and compliance tracking.
Create and manage client records
Care plans, goals, and medication management
Set up NDIS, SAH, CHSP, and DVA agreements
Track and manage client compliance requirements
# Managing client compliance
Source: https://support.visualcare.com.au/client-management/managing-client-compliance
View, edit, and track compliance items on individual client profiles in Visualcare
Once compliance items are configured in Maintenance, they appear on individual client profiles for day-to-day management. This article covers how to view and update compliance on a client's profile.
## Viewing compliance items
Open the client profile and navigate to the **Compliance** tab. All compliance items assigned to the client are listed here, linked by the client's funding type.
## Editing a compliance item
Click the **Edit** button on any compliance item to update its details, including dates, status, and any attached documentation.
Update the relevant fields and save your changes.
## Compliance status indicators
Compliance items show their current status based on expiry and warning dates:
* Items approaching expiry display a warning based on the configured warning days
* Overdue mandatory items flag the client as non-compliant
* Completed items show a green status
Use the client list column chooser to add compliance columns for a quick overview of compliance status across all clients.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up compliance items and link to funding types
Configure compliance items and templates
Set up a new client profile
# Medication management
Source: https://support.visualcare.com.au/client-management/medication-management
Create medication templates on a client profile so workers are prompted to complete medication tasks during their shift in the vWorker app
The **Medications** tab on the client profile lets you create medication templates that workers see during their shift in the vWorker mobile app. Workers are prompted to complete medication tasks as part of their shift under **Complete Shift**.
## Adding a medication template
Open the client profile and navigate to the **Medications** tab.
Click **Add New Template**.
Enter the following:
| Field | Description |
| - | - |
| **Name** | The medication name |
| **Time** | The time the medication is due |
| **Start Date** | The date from which the template is active |
| **Dosage** | The dosage instructions |
Make sure the scheduled time falls within the worker's shift window. If the medication time is outside the shift, the worker won't see the prompt in vWorker.
Click **Save**. The template is now active and will appear to workers under **Complete Shift** in the vWorker app during shifts with this client.
## Reviewing completed medication notes
Medication tasks completed by workers are recorded as notes. To review them:
1. Go to **Reports** → **Notes Report**.
2. Select the medication note type from the drop-down list on the left-hand side.
3. Sort, filter, or export the results to Excel.
See [Notes report](/reporting/notes-report) for details.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up the client profile that holds medication records
Create shift checklists that include medication tasks
Report on completed medication notes
# Messaging
Source: https://support.visualcare.com.au/client-management/messaging
Send and manage private and group messages between office staff and workers through Visualcare
The messaging module in Visualcare connects office staff with workers through the vWorker mobile app. Workers receive push notifications on their phone when a new message is sent. Office staff see an unread message count next to the message icon in vCore.
Click the message icon to open the messaging module.
## Private messages
Click the **Private** tab to view private conversations. The number of unread messages for each person is highlighted in red.
### Marking messages as read
When a new message appears, click **Mark as read** to clear the unread indicator. This clears the red number for all office users.
Click on the person, then click **Mark as read** in the top right corner.
### Viewing read receipts
Click the information icon (**i**) to see who has read each message and when.
The **Seen time** shows when the message was marked as read, and **Seen by** shows who read it.
## Group messages
Click the **Group** tab to view group conversations. Unread message counts appear next to each group name.
### Creating a new group
Click the **Create new Group Chat** icon.
Choose participants by clicking **Choose**, enter a group name, and click **Create**.
### Managing a group
To edit the list of users in a group, click **Manage group**.
From here you add or remove participants from the group.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage notes including those from the vWorker app
Configure client profiles including vAboutMe messaging access
# NDIS agreements
Source: https://support.visualcare.com.au/client-management/ndis-agreements
How to apply a new NDIS Support Catalogue price update to your services and agreement charge rates in Visualcare
NDIS agreements use the same creation process as other agreement types. See [Creating agreements for rostering](/client-management/creating-agreements-for-rostering) for full details on creating agreements, adding services, and managing rosters. This article covers the NDIS-specific agreement settings and the process of updating service rates when a new NDIS Support Catalogue is released.
## NDIS activity types
When selecting NDIS as the agreement type, the **NDIS Activity Type** drop-down appears with these options:
* **Group** - the system divides charge rates by the number of clients rostered on the day when creating an invoice
* **Ratio** - charges are based on the agreement settings regardless of client count. A **Ratio** column appears in the Services table (for example, 1.2 means one worker to two clients, and the charge rate is divided by two for location roster services)
* **Set ratio when rostering** - allows you to add or edit the ratio within the location roster
NDIS activity types apply to Location Roster shifts only.
## Updating NDIS pricing
When the NDIS releases a price update, you need to apply the new rates to your services and then update the charge rates on your agreements.
Navigate to **Maintenance** → **Services** and click **NDIS Support Catalogue**.
Select the relevant NDIS Price Update from the list.
Select the service codes you want to update and click **Update Rates**.
Go back to **Maintenance** → **Services** and click **Update Charge Rates**.
Select the current service or all services, set the **From Date**, and click **Update**.
Run this process each time the NDIS releases a new price guide to keep your rates current.
### When is the updated catalogue available?
The updated NDIS Support Catalogue is loaded into Visualcare once the NDIS publishes the new pricing arrangements. You can check the [NDIS pricing arrangements page](https://www.ndis.gov.au/providers/pricing-arrangements) for the latest release date. Once the catalogue is available in Visualcare, you can update your services and agreement rates at your convenience using the steps above.
## Identifying clients affected by service code updates
When NDIS service codes are updated or replaced, identify which clients are actively rostered against the affected codes before updating their agreements:
1. Go to **Timesheets** → **Data Export**
2. Set your date range to cover the last few months of active rostering (for example, 1 April to 30 June)
3. If the **Service** column isn't showing, add it with the **Column Chooser**
4. Filter by the specific NDIS service codes being updated or replaced
This gives you a list of all clients with shifts rostered against those codes - the clients whose agreements need updating.
Data Export shows which codes are actually in use, so you don't spend time updating agreements for services that aren't being actively rostered.
### Updating agreements for the new codes
The recommended process uses agreement cloning so you keep a historical record:
1. **Add the new NDIS services** - set up the new service codes in the system, effective from the date the pricing changes
2. **Clone the old agreement** - duplicate the client's current agreement with the old codes. This becomes your archive version
3. **Update the active agreement** - add the new NDIS service codes
4. **Transfer legacy service codes** - transition rosters and allocations from the old codes to the new codes. The cloned agreement retains the old codes for your records
5. **Close the old agreement** - formally close the cloned agreement so nothing is accidentally rostered against outdated codes
Make sure your new NDIS service codes are set up and correct before making any bulk agreement changes.
See [Cloning, transferring, and closing agreements](/client-management/creating-agreements-for-rostering#cloning-transferring-and-closing-agreements) for the mechanics of each step.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
General guide to creating client agreements
Generate NDIS reports and track goal progress
# NDIS tab and statements
Source: https://support.visualcare.com.au/client-management/ndis-tab-and-statements
Generate NDIS funding reports and track goal progress from the client profile
The NDIS tab on the client profile provides NDIS-specific reports and tracks the progress of client goals against their funding.
## Accessing the NDIS tab
Select a client and navigate to **Client Profile** → **NDIS** tab.
## Generating reports
Two reports are available from this tab:
* **Statement of Participant's Support** - a summary of services provided to the participant
* **Funding Breakdown Report** - a detailed breakdown of funding usage across active NDIS agreements
### Creating a report period
1. Click **New Period**
2. Enter a start and end date
3. Click **Create**
The system generates the reports and calculates the funding amount using all active NDIS agreements for the client during the selected period.
Select either report from the list to save or print.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create and manage NDIS agreements
Set and track client goals linked to service categories
# Notes and tasks
Source: https://support.visualcare.com.au/client-management/notes-and-tasks
Create, manage, and follow up on client notes and tasks from the client profile and app notes area
Notes in Visualcare capture information from the roster, mobile app, and direct entries on the client profile. When a note is assigned to an office user, it becomes a task for follow-up.
## Where notes come from
Notes are created in several ways:
* From the **vWorker** mobile app
* From within the client **Notes** tab
* From within the roster area
Need to add the same note to several clients? Use **Add Bulk Note** in the notes report. See [Adding a note to multiple clients](/reporting/notes-report#adding-a-note-to-multiple-clients).
As soon as a note is created, it flows through to the client's **Notes** tab where office staff decide how to handle it.
## Managing a note
If a note needs follow-up, open it and set the parameters:
| Field | Description |
| - | - |
| **Priority** | Low, Medium, High, or Urgent |
| **Category** | The type of note (categories are configured in **Maintenance** → **Note Category**) |
| **Note** | The text content. Notes are editable with a full edit history retained. Deleting needs a specific permission - see below |
| **Assign To** | Select the person to assign the note to (this creates a task for that user) |
| **Link to worker** | Copies the note to the worker's profile notes tab |
| **Remind Date** | Set a reminder date for follow-up |
| **Requires Follow Up** | Auto-ticks when the note is assigned to someone |
| **Mark note as completed** | Tick this when the note has been actioned |
### Deleting a note
Deleting notes is controlled by the **Ability to delete note** permission in [User Group Security](/getting-started/user-group-security), under the **Clients** section.
If your user group has the permission, open the **Column Chooser** on the notes table, drag in the **Delete** column, and use it to delete the note. If not, ask someone in the Administration user group to delete the note or enable the permission.
## App notes
Notes created in the vWorker app are pushed to the **App Notes** area of vCore, where office users manage them. The **App Notes** KPI tile on the Home Dashboard shows the number of unread notes needing action. The count increases when new notes arrive and decreases once notes are marked as read.
Access App Notes from the Home Dashboard KPI tile or from **Operations** → **App Notes**.
### Filtering and searching
Use the filters at the top of the screen to search for specific notes:
| Filter | Description |
| - | - |
| **Show All Read Status** | Show all notes, unread only, or read only |
| **Date Fields** | Display notes created between selected dates |
| **Mark All As Read** | Bulk-change all displayed notes to read status |
| **Mark Selected As Read** | Change selected notes to read status |
Customise the page further using the column chooser, search button, column grouping, or column filters.
### Marking notes as read
If no action is needed, click **Mark As Read**. The note is timestamped, the user name is recorded, and the KPI tile count decreases.
### Actioning a note
For notes needing action, mark as read then use the **Edit** button to manage the response.
To update only the **Category** and **Priority**, select them and save.
To create a task, select a user from the **Assigned To** list.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Record detailed progress notes for clients
Create shift checklists for workers
Upload and manage documents on the client profile
# Offboarding a client
Source: https://support.visualcare.com.au/client-management/offboarding-generic
How to close agreements and offboard a client from Visualcare when they no longer need services
When a client stops receiving services, you offboard them by closing their agreements in Visualcare. This prevents further rostering against those agreements and keeps your active client list clean.
## Closing an agreement
Go to **Clients** → **Agreements** and open the agreement you want to close.
Enter the **End Date** for the agreement. This is the last date services are being provided under this agreement.
Tick the **Is Closed** checkbox and click **Save**.
This prevents anyone from rostering shifts against the agreement after the end date.
If you're unable to update the end date, a roster item linked to the agreement is likely blocking the change. The earliest shift sits beyond the end date you're trying to set. Transfer or delete the blocking roster item first, then set the end date.
## Transferring roster items to a new agreement
If a client is moving to a new agreement rather than leaving entirely, transfer their future shifts before closing the old agreement.
Set up the new agreement for the client. If the services are the same, use the **Clone** function on the existing agreement to copy all service codes across.
On the agreement page, click **Transfer**.
Select a **from date** for the transfer. In the left drop-down, choose the old agreement (the one being closed). In the right drop-down, choose the new agreement.
Visualcare attempts to automatically match service codes between the two agreements. Any codes that don't match need to be selected manually.
Once all service codes are matched, click **Apply**. This moves all upcoming shifts from the old agreement to the new one.
Set the **End Date**, tick **Is Closed**, and click **Save** on the old agreement.
## Cloning an agreement
To create a new agreement based on an existing one:
1. Open the current agreement
2. Click **Clone**
3. In the pop-up window, click **Clone** again
This creates a new agreement with all the same service codes. Use this when a client receives a new funding plan with the same services.
Complete all outstanding timesheets and exports for the closing agreement before you close it. Once closed, you can still view the agreement data but it's easier to process everything while the agreement is active.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up a new client profile in Visualcare
SAH-specific offboarding steps
Create and manage client service agreements
# Offboarding a client (Support at Home)
Source: https://support.visualcare.com.au/client-management/offboarding-sah
Close agreements, finalise financial statements, and complete the offboarding process for Support at Home clients
When a Support at Home (SAH) or Home Care Package (HCP) client leaves your service, there are additional steps beyond the standard offboarding process. You need to finalise financial statements, mark the package as ended, and close the agreement before the client is fully offboarded.
For the standard agreement closure and transfer process, see [Offboarding a client](/client-management/offboarding-generic). This article covers the SAH and HCP-specific steps.
## Instructions
Before closing anything, confirm that all shifts for the client have been confirmed on timesheets and exported to your accounting software. Check both the **Timesheets** area and the **Data Export** page to make sure nothing is outstanding.
Once the agreement is closed, processing outstanding timesheets and exports becomes more difficult. Complete all financial processing while the agreement is still active.
Open the client's profile and go to the **HCP** tab. Review the final statement period and make sure all charges and subsidies are reconciled.
If a final statement period is open, close it once all line items are accounted for. This is your last opportunity to make sure the financial record is complete.
If your organisation provides monthly statements to participants, generate the final statement before proceeding. This gives the client a complete record of their package spending up to the date of exit.
On the **HCP** tab, tick the **HCP Ended** checkbox and click **Save**. This prevents new HCP periods from being created for this client.
Once the HCP Ended flag is set, no new HCP periods can be created for this client. Only set this flag when you're certain services have concluded.
Follow the standard agreement closure process:
1. Go to **Clients** → **Agreements** and open the client's SAH or HCP agreement
2. Enter the **End Date** (the last date services were provided)
3. Tick the **Is Closed** checkbox
4. Click **Save**
See [Offboarding a client](/client-management/offboarding-generic) for the full steps, including how to transfer roster items if the client is moving to a new provider or agreement.
Keep the client profile accessible after offboarding. SAH and HCP records need to be retained for audit purposes under the Aged Care Quality Standards. Closing agreements and marking HCP as ended is sufficient to remove the client from active lists without losing any data.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
General client offboarding process, including agreement transfers and cloning
Manage HCP and SAH budgets, statements, and financial exports
Create and manage client service agreements
# Client preferences
Source: https://support.visualcare.com.au/client-management/preferences
Set preferred and non-preferred workers for a client based on personal, skills, and training criteria
The **Preferences** tab on the client profile lets you define which workers are best suited to a client based on personal preferences, skills, and training. These preferences flow through to the rostering area to help match the right worker to each shift.
## Setting up preferences
Open the client profile and navigate to the **Preferences** tab.
On the left side, select personal, skills, and training preferences using the tick boxes. These filters help narrow down suitable workers.
## Adding preferred workers
In the **Preferred Workers** section, click **Add Preferred Workers**. The list is filtered by the preferences you've selected. Choose the workers you want and click **Add Selected Workers**.
You also have the option to add non-preferred workers to flag workers who are not suitable for this client. In the **Non-Preferred Workers** section, click **Add Workers**, select the workers, and click **Add Selected Workers**.
Non-preferred workers can still be rostered on the client roster. Adding a worker to the non-preferred list flags them as unsuitable for the client but does not block them from being assigned to shifts.
Compliance templates (configured in **Maintenance** → **Clients** → **Client Compliance Template**) let you bulk-add required worker compliance items to this preferences tab. See [Required compliance items](/client-management/required-compliance-items) for details.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up compliance templates that feed into preferences
Set up the client profile that holds preferences
# Progress notes
Source: https://support.visualcare.com.au/client-management/progress-notes
View and manage shift-level progress notes recorded by workers through the vWorker app
Progress notes are detailed records of service delivery created by workers during or after a shift in the vWorker app. Each note is time-stamped, date-stamped, and name-stamped, providing a formal record of what happened during the shift. Once submitted, progress notes flow through to the client's profile in vCore for office staff to review.
## Where to find progress notes
Navigate to **Clients** → select the client → **Notes** tab. Progress notes appear alongside general notes in this tab, but are linked to a specific shift and worker.
Notes submitted from the vWorker app also appear in the **App Notes** area (**Operations** → **App Notes**), where office staff can triage and action them. The **App Notes** KPI tile on the Home Dashboard shows the count of unread notes.
## What a progress note contains
Each progress note includes:
| Detail | Description |
| - | - |
| **Date and time** | When the note was created |
| **Worker name** | The worker who submitted the note |
| **Shift link** | The roster shift the note relates to |
| **Note text** | The worker's written record of the service delivered |
| **Photos** | Any images the worker attached, for example wound care documentation or activity photos |
| **Category** | The note type, based on categories configured in **Maintenance** → **Note Category** |
| **Priority** | Low, Medium, High, or Urgent |
## Filtering and searching
Use the filters at the top of the **Notes** tab to locate specific progress notes:
* **Date range** to narrow results to a specific period
* **Category** to filter by note type
* **Worker** to show notes from a particular worker
You can also use the **Column Chooser** to add or remove columns, and the search bar to find notes containing specific text.
## Editing and deleting notes
Notes are editable, and Visualcare retains a full edit history so you can see what changed and when.
Deleting a note is controlled by the **Ability to delete note** permission in [User Group Security](/getting-started/user-group-security), under the **Clients** section. If your user group has this permission, open the **Column Chooser** on the notes table, drag in the **Delete** column, and use it to remove the note.
## Why progress notes matter
Progress notes serve several purposes beyond day-to-day record keeping:
* **Audit readiness** - NDIS and aged care auditors review progress notes to verify that services were delivered as planned
* **Clinical handover** - office staff and incoming workers can review recent notes to understand the client's current needs
* **Incident context** - if an incident occurs, progress notes from surrounding shifts provide a timeline of events
* **Family and carer communication** - notes give coordinators the detail they need when updating families or carers on service delivery
Encourage workers to add progress notes during the shift while details are fresh. Notes can be added until midnight on the day of the shift.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create and manage general notes and tasks on the client profile
How workers add notes and photos during a shift in the vWorker app
Create shift checklists for workers
Upload and manage documents on the client profile
# Quotes
Source: https://support.visualcare.com.au/client-management/quotes
Create, manage, and convert service quotes for clients and leads in Visualcare
Quotes let you generate an estimate of costs for client services. Once created, the quote information is extracted into a customisable Word template that you send to the client as a formal quote or as part of a service agreement. Converting a quote automates the creation of the client agreement, services, roster templates, and budgets.
## Creating a quote
Navigate to **Operations** → **Quotes** → **Quotes** and click **Add New Quote**.
Three options are available:
* Create a quote for an **existing client**
* Create a quote for a **new client** (no existing profile)
* Create a quote for a **lead** (scroll past clients to see leads)
Select the client, lead, or click **Create New Client**. For existing clients and leads, client information populates automatically. For new clients, enter the details manually.
Enter the quote details including start and end date, then click **Save Quote**.
## Adding services to a quote
Click **+ Add Service** to add a service line item.
Select the **Service** from the drop-down and enter details including any recurring shifts.
For clients needing services on public holidays, click **Add Public Holiday as a Line Item** and select the public holiday service. Tick **Exclude Public Holidays** to remove public holiday shifts from the calculation for that line item.
The **Total Including Schedule** calculates the estimated cost for each service line. You also have a **Budget** field available for each line.
Continue adding service lines until the quote is complete, then click **Save Quote**.
## Finalising a quote
Once the quote is complete, send it for client approval using one of these methods:
* **Email** it to the client
* **Download** the quote and send it manually
* Make it visible on the **vAboutMe** mobile app by ticking **Visible to client** (for existing clients)
## Converting a quote
Once approved, click **Convert Quote** to action it.
For leads or new client quotes, converting creates a new client profile automatically.
You also have the option to create an agreement and roster template during conversion.
When converting a quote, unselect **Use Agreement CHARGE RATES** unless you want the agreement's custom charge rates to override your standard service rates.
## Other quote options
After completing a quote, you also have the ability to:
* **Delete** the quote
* **Clone** the quote (useful for creating similar quotes for other clients)
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage leads and the client onboarding pipeline
SAH-specific quoting functionality
Set up agreements after converting a quote
# Quotes (Support at Home)
Source: https://support.visualcare.com.au/client-management/quotes-sah
Create, manage, and convert Support at Home quotes for participants in Visualcare
The SAH quoting tool lets you build a detailed service quote for a participant, monitor their funding against planned services, and convert the quote directly into a client profile, agreement, and roster templates. Access it from **Operations** → **Quotes** → **Support at Home Quotes**.
## Creating a new quote
Click **Add New Support at Home Quote** to open the quote form.
### Client information
Choose how to link the quote to a client:
| Option | When to use |
| - | - |
| **New client** | The participant does not yet have a profile in Visualcare |
| **Existing client** | The participant already has a profile - search by name or ID |
| **Lead profile** | The participant has a lead record that has not yet been converted |
Set the **Quote Status** (for example, Draft or Sent) and the **Quote Duration** to define the period the quote covers.
### Classification and contributions
Select the participant's **Classification Level** (1 to 8). This determines the ongoing quarterly budget available.
Set the contribution percentages for each service category:
| Category | Description |
| - | - |
| **Everyday Living** | Personal care, domestic assistance, and similar services |
| **Independence** | Services that support independence and participation |
| **Clinical Support** | Nursing and clinical services - no participant contribution |
Contribution rates vary based on the participant's financial status and whether they are grandfathered under former Home Care Package rules.
### Funding information
Enter the available funding amounts for each applicable stream:
* **Unspent Funds** - any unspent balance carried over from a previous period
* **End of Life** - funding for participants with three months or less to live (A\$25,000)
* **Restorative Care** - short-term restorative funding (up to A\$6,000 for 16 weeks)
* **AT** - Assistive Technology funding
* **HM** - Home Modifications funding
Add any applicable **Supplements** for participants with special funding entitlements.
## Adding services
Click **Add Service** in the services section of the quote. Select the service code from the list.
Enter the number of hours and the frequency (for example, weekly or fortnightly). Select the days of the week the service is delivered and the repeat pattern.
Choose how public holiday shifts are managed for this service:
* **Exclude** - the service does not run on public holidays
* **Add as separate line item** - a separate line is added at the public holiday rate
For one-off purchases (for example, a wheelchair or piece of equipment), tick the **Expense** checkbox and provide a description. Expense items are treated differently from service hours in the budget calculation.
## Monitoring the budget
The quote displays the total funding available against the total cost of planned services. Review this as you add services to make sure the plan stays within the participant's budget.
## Cloning a quote
To base a new quote on an existing one, use **Clone Quote**. This copies all services and settings into a new quote that you can then modify. Useful when a participant's needs are similar across funding periods or when creating variations for comparison.
## Downloading a quote
Click **Download Quote** to export the quote to a Word document. The Word export uses Word Tags configured under **Maintenance** → **Word Tags**. Make sure your Word Tags are set up before downloading.
## Converting a quote
When a quote is approved and ready to action, click **Convert Quote**. This automatically creates:
* A **Client Profile** (if the quote was for a new client or lead)
* An **Agreement** linked to the participant with the relevant funding type and dates
* **Roster Templates** based on the services and schedule in the quote
Review the generated records after conversion to confirm all details are correct before rostering begins.
Budget information from the Services Australia API feeds into the client profile under the **SAH** tab → **Funding**. Keep this up to date to ensure the quote reflects the participant's actual available funding.
## Running into issues?
See [SAH claiming errors](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
General guide to creating and managing quotes
Set up Support at Home agreements
Manage Assistive Technology and Home Modifications funding
Submit claims to Services Australia
# Required compliance items
Source: https://support.visualcare.com.au/client-management/required-compliance-items
Configure client compliance items, templates, client types, and funding types in Maintenance
The **Maintenance** → **Clients** area lets you configure compliance items, compliance templates, client types, funding types, and disability categories. These settings control what appears on client profiles throughout vCore.
## Client compliance
The compliance items list defines what compliance is tracked across client profiles. Items added here appear on the [Client Profile → Compliance](/client-management/managing-client-compliance) tab.
Click **Add Compliance Item** and enter the details. Edit existing items by clicking on them in the list.
### Linking to funding types
There are several ways to connect compliance items with client profiles:
* Link the compliance item directly to a funding type
* Add the compliance item to clients by their funding type
* Add the compliance item to all clients regardless of funding type
If compliance items are not linked to any funding types, all items are automatically added to new client profiles on creation.
## Client compliance templates
Compliance templates let you add multiple **required worker compliances** to the [Client Profile → Preferences](/client-management/preferences) tab in one action. This controls which worker compliance items are checked when rostering workers for the client.
### Setting up a compliance template
1. Click **Add Compliance Template**, enter the **Template Name**, and click **Save**
2. Add worker compliance items by clicking **Add Compliance Item**, selecting items from the drop-down, and clicking **Save**
3. Assign clients to the template by clicking **Add Clients**, ticking the clients, and clicking **Save**
The **Add Clients** list only shows clients who don't already have this template. The **Remove Clients** list only shows clients who already have it.
## Client types
Use client types as an additional filtering layer for client lists. Add types by clicking **Add Type**, entering the detail, and clicking **Add**.
Once created, select the client type in **Client Profile** → **Details** → **Service Status** → **Client Type**.
## Funding types
Funding types are available for selection on the client profile, as the **Agreement Type** in client agreements, and as the **Service Type** in services.
Add types by clicking **Add Type**, entering the detail, and clicking **Add**.
Some funding types use Visualcare standard names to enable specific system functionality. These include: **NDIS**, **Home Care Package**, **CHSP**, **HACC**, and **DVA**.
## Disability categories
Customise the drop-down list of client disabilities that appears on the client profile. Add new disabilities by clicking **Add Disability**, entering the detail, and clicking **Add**.
Once added, the disability is available in **Client Profile** → **Details** → **Health** → **Primary Disability** and **Secondary Disability**.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up compliance items and link to funding types
Track compliance on individual client profiles
Set preferred and non-preferred workers for a client
# SAH payment adjustments
Source: https://support.visualcare.com.au/client-management/sah-adjustments
How to handle underclaims and overclaims for Support at Home payments in Visualcare
When a Support at Home (SAH) claim has been submitted for the wrong amount, the correction process depends on whether you underclaimed or overclaimed, and how far through the payment workflow the claim has progressed.
## Standard SAH payment workflow
Understanding where you are in the workflow determines which steps to take.
**VC Export** → **PRODA Upload Invoice** → **PRODA Claim Submitted** → **PRODA Payment CSV** → **VC Reconcile Claim** → **API Balance Updated**
## Underclaims
An underclaim occurs when the original claim was for less than it should have been.
To correct an underclaim, add the difference as a new expense line item in Visualcare. No PRODA amendment is needed. The client's available funds are used when the updated claim is made.
## Overclaims
An overclaim occurs when the original claim was for more than it should have been. Corrections require a PRODA amendment. The steps differ depending on where you are in the workflow.
### Before VC reconciliation
| Stage the error is caught | Steps |
| - | - |
| **Before PRODA upload** | Delete the uploaded invoices in PRODA, amend the claim in Visualcare, then reclaim or amend the claim CSV |
| **After PRODA claim submitted** | Amend the overclaim amount directly in PRODA |
| **After payment CSV received** | Amend the claim in PRODA, then amend the payment CSV and re-reconcile in Visualcare |
### After VC reconciliation
If the claim has already been reconciled in Visualcare, contact Visualcare support to assist with the correction.
Amend the overclaimed amount in PRODA and download the updated payment CSV.
Send the updated payment CSV to Visualcare support along with the current invoice and statement status for the affected client.
Visualcare support performs a data rollback. The steps vary depending on current status:
| Status | Rollback approach |
| - | - |
| Not Invoiced / Draft | Rollback without invoice impact |
| Not Invoiced / Sent | Rollback without invoice impact |
| Invoiced / Draft | Invoice adjusted as part of rollback |
| Invoiced / Sent | Invoice adjusted as part of rollback |
Re-reconcile the claim using the corrected payment CSV.
Recreate any invoices and statements that were affected by the rollback.
## Known limitations
Keep manual records for all adjustments. Adjustments are not recorded natively in Visualcare, so your own records form the audit trail.
* **Statements** don't support negative adjustment lines. Attach a manual note to the statement where an adjustment applies.
* There are no standalone adjustment invoices in Visualcare. Create these manually in your accounting software where needed.
* Adjustment history is not stored in Visualcare, making manual recordkeeping essential for compliance and audit purposes.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Manage SAH budgets, statements, and financial exports
Set up and manage Support at Home agreements
Generate invoices and submit claims for SAH clients
Record and manage expenses on a client profile
# Support at Home agreements
Source: https://support.visualcare.com.au/client-management/sah-agreements
Understand how Support at Home agreements differ from HCP, covering funding structure, budget types, participant contributions, and bulk agreement creation
Support at Home (SAH) agreements replace Home Care Package (HCP) agreements for aged care clients. This article covers SAH agreement setup and key differences between the two funding models.
## Overview
The Support at Home Program is the Australian Government's funding model that replaced:
* **Home Care Packages (HCP)** - transitioned 1 November 2025
* **Short-Term Restorative Care (STRC)** - transitioned 1 November 2025
* **Commonwealth Home Support Programme (CHSP)** - transitioning in 2027
## Key differences between HCP and SAH
| Aspect | HCP | SAH |
| - | - | - |
| **Claiming** | Monthly bulk submission | Claim anytime (weekly or monthly) |
| **Invoicing** | Single invoice per participant | Split invoices (government and participant) |
| **Reconciliation** | Not needed | Needed from Services Australia |
| **Service codes** | HCP service codes | Government SAH service list |
| **Budgets** | Package levels | Quarterly budgets with classifications |
| **Care management** | Bundled in fees | Tracked separately (10% of ongoing budget) |
## SAH funding structure
### Budget types
| Funding type | Description |
| - | - |
| **Quarterly Budget** | Government funding released every three months |
| **Classifications (1 to 8)** | Levels of ongoing funding (higher means more support) |
| **Unspent Funds** | Up to A\$1,000 or 10% rolls over each quarter |
| **HCP Unspent Funds** | Old HCP balances carried into SAH |
| **Supplements** | Extra funding for special needs |
### Short-term pathways
| Pathway | Duration | Funding | Purpose |
| - | - | - | - |
| **Restorative Care** | Up to 16 weeks | A\$6,000 | Help participants regain function |
| **End-of-Life** | 12 weeks | A\$25,000 | For people with three months or less to live |
| **AT-HM Scheme** | Varies | Varies | Equipment and home modifications |
### Care management
* 10% of the ongoing budget is automatically allocated to care management
* The Care Management Pool (CMP) is quarantined for care coordination activities
* Care Partners deliver and record care management activities
## SAH service types
| Code | Service type | Description | Attachments needed |
| - | - | - | - |
| **AT** | Assistive Technology | Equipment and devices | Yes (receipts or invoices) |
| **CM** | Care Management | Care coordination | No |
| **EL** | Everyday Living | Personal care, domestic help | No |
| **HM** | Home Modifications | Ramps, rails, modifications | Yes (receipts or invoices) |
| **RC** | Respite Care | Short-term relief care | No |
| **ON** | Home Support Ongoing | Regular ongoing services | No |
## Participant contributions
Contributions depend on the type of service and the participant's financial situation:
* **Clinical Supports** (for example, nursing) - no contribution required
* **Independence** (for example, personal care) - 5% to 50% contribution depending on financial status
* **Everyday living** (for example, domestic assistance) - 17.5% to 80% contribution depending on financial status
## Agreement management tips
Extending an agreement end date is possible, but consider:
* If services need to be removed, creating a new agreement is cleaner so the old one cannot be rostered
* Agreement and service budgets may be affected
* Recurring services in rosters need to be extended manually or through the Roster Template Wizard
If a shift includes both Everyday Living and Independence services, you have two options after mapping services:
* Split the shift into two segments within one roster entry
* Create two separate shifts
Split shifts with no gap between them do not trigger the broken shift allowance. For a genuine break, use the standard break method in the roster.
Participants receiving HCP on or before 12 September 2024 have protected contribution rules. All participants move to SAH claiming through Visualcare. Transitional rules apply for grandfathered participants - refer to government guidance for details.
There is no change to how external expenses are processed under SAH. Continue to add the item as an **Expense** in the participant profile, mark it as a **Charge**, and link it to the relevant agreement and service item. If using an import file, make sure all required details are included.
## Bulk creating agreements and adding services
If you need to set up SAH agreements for multiple clients at once, use the bulk agreement and service tools.
Go to the client profile list. Use the column chooser to add any filters you need, then tick the clients you want to create agreements for. Click **Bulk Create Agreement**.
Select **Support at Home** as the Agreement Type. Set the Start Date and End Date, then add a reference to help identify the batch - for example, "AT" for Assistive Technology or "HM" for Home Modifications. Click **Create**.
Navigate to the client agreement list. Filter by Agreement Type and the reference you used in the previous step to locate the agreements you just created.
Tick the agreements you want to update, then click **Bulk Edit**. Click the down arrow and select **Add Services**. Filter for the service type you need, select the relevant services, and click **Add Selected Services**. Click **Confirm** to save.
Using a consistent reference (for example, "AT" or "HM") makes it easy to filter and locate bulk-created agreements in the agreement list.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage budgets, statements, and financial exports for SAH clients
Track care management time and activities
General guide to creating client agreements
# SAH Assistive Technology and Home Modifications
Source: https://support.visualcare.com.au/client-management/sah-at-hm
How to configure, record, and claim Assistive Technology and Home Modifications expenses for Support at Home participants in Visualcare
Assistive Technology (AT) and Home Modifications (HM) are funded separately under Support at Home (SAH). Unlike standard services, AT-HM items are added through the **Expense** tab on the client profile rather than rostered as shifts. You need separate Visualcare agreements for AT and HM to keep claims and budgets distinct.
## What counts as AT-HM
AT-HM covers:
* **Assistive Technology:** mobility aids, communication devices, adaptive equipment, and similar items
* **Home Modifications:** physical changes to the participant's home such as handrails, ramps, grab rails, and accessibility modifications
AT-HM services are identified by service codes SERV-0061 through to SERV-0068. The AT-HM expense fields only appear in the expense form when one of these services is selected.
## Setup
### Step 1: Create expense categories
Before adding AT-HM expenses, set up dedicated expense categories. This is not mandatory but if these categories are assigned, the "Is Charge" tick box is automatically selected.
1. Go to **Maintenance** → **Categories** → **Expense Categories**
2. Create categories for each tier you use:
* Assistive Technology Low
* Assistive Technology Medium
* Assistive Technology High
* Home Modifications Low
* Home Modifications Medium
* Home Modifications High
3. Each category automatically ticks **Charge to Client** when selected on an expense
### Step 2: Create AT-HM agreements
AT and HM funding are managed as separate budgets. Create a dedicated agreement for each.
1. Open the client profile → **Agreements** → **New Agreement**
2. Set the agreement type to **Support at Home**
3. Add the relevant AT-HM service line items (SERV-0061 to SERV-0068)
4. Use "AT" or "HM" in the reference field to distinguish the agreements
5. Leave charge rates at A\$0. The actual amount is entered when creating the expense
Separate agreements for AT and HM are strongly recommended. This keeps claims, budgets, and reporting clean and avoids mismatched funding types at the claiming stage.
## Adding an AT-HM expense
Go to the client profile and select the **Expense** tab. Click **New Expense**.
Fill in the following fields:
| Field | What to enter |
| - | - |
| **Date** | The date the item was purchased or service delivered. This must fall within the SAH agreement dates |
| **Invoice number** | The invoice number from the supplier |
| **Amount** | The cost of the item |
| **Quantity** | Usually 1, unless claiming multiple identical items |
Choose the relevant AT or HM expense category you created in maintenance. Selecting this category automatically ticks **Charge to Client**.
Select the relevant AT or HM agreement, then choose the specific service item (for example, SERV-0064 for Assistive Technology Medium).
Select the expense type and the applicable item codes as required by Services Australia.
If the item is prescribed, select the relevant **Health Professional Type**. If the item is loaned rather than purchased, tick the **Loaned** option.
Click **Save**. The expense is now linked to the agreement and ready for claiming.
## Wraparound services
If your organisation charges administration costs associated with an AT or HM item (for example, sourcing, coordination, or handling), these are recorded as a wraparound service rather than a mark-up on the expense itself.
1. Click **New Expense** on the client profile
2. Select **Wraparound** as the expense item type
3. Choose the applicable wraparound item code
4. Link the wraparound entry to the parent AT or HM expense
Under SAH, administration costs for AT-HM are claimed through the "Administration" wraparound service. The approach used under Home Care Packages (HCP), where mark-ups were added directly to expense items, no longer applies under SAH. Any mark-up applied must comply with government regulations.
## Frequently asked questions
The AT-HM specific fields only appear when you select a service code between SERV-0061 and SERV-0068. Check that you've selected the correct service on the expense, and that the agreement includes AT-HM service line items.
AT-HM services need to be in your organisation's service database before they show in client agreements. Add them individually via **Maintenance** → **Services**, or use the bulk import CSV to load multiple services at once.
Leave the charge rate at A\$0 on the service. The actual amount is entered directly when you create the expense, not on the service record itself.
If the AT-HM fields and new expense layout aren't showing, click **Try the new look** at the top of the Add Expense window. Also check that the **Care Recipient ID** is entered on the client's HCP tab. This is required for the new expense view to function.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up and manage Support at Home agreements for AT and HM funding
Record and manage expenses on a client profile, including bulk import
Understand how AT-HM expenses flow through to SAH claiming and invoicing
Manage SAH budgets and financial exports
# SAH bulk import AT-HM expenses
Source: https://support.visualcare.com.au/client-management/sah-bulk-import-expenses
Upload Assistive Technology and Home Modifications expenses in bulk using a CSV template
The AT-HM Bulk Upload feature lets you import multiple Assistive Technology and Home Modifications expense items into Visualcare at once using a CSV file. This is useful when you're exporting invoice data from an accounting system or converting scanned invoices rather than entering items one by one.
When imported, items appear on the client's **Expenses** tab and in the **Ready to Claim** section of the SAH claiming screen. If any fields contain missing or incorrect data, Visualcare flags them during claim review but doesn't block the upload.
## What you'll need
* AT-HM agreements set up for the client (see [SAH assistive technology and home modifications](/client-management/sah-at-hm))
* AT-HM services in your database (SERV-0061 to SERV-0068)
* Expense categories configured in your database (see [SAH assistive technology and home modifications](/client-management/sah-at-hm))
## Uploading AT-HM expenses
Go to **Operations** → **Import CSV**.
Choose **Expenses** from the import type drop-down.
Click **Download Example CSV with ATHM** to download the AT-HM template file. This gives you the correct column structure including the AT-HM-specific fields.
Open the file and enter your expense data. See [CSV field reference](#csv-field-reference) below for a description of each field.
Save the file as **CSV (Comma delimited)** format when you're done. Other CSV formats cause import errors.
Back in Visualcare, click **Select file**, choose your saved CSV, then click **Upload**.
On the mapping screen, check that the **Columns in Database** match the corresponding columns from your file. If you used the Visualcare template without renaming columns, the mapping fills in automatically.
Scroll down and click **Preview Import** to see a sample of the records about to be created.
Review the preview data, then click **Process Import** to create the expense records.
The success summary shows how many records were processed. Click **Back to Import** when you're done.
## CSV field reference
| Field | Description | Entry |
| - | - | - |
| AT-HM Parent Expense ID | For wraparound services linked to an AT-HM item already in Visualcare. Use the expense ID shown in Visualcare. Leave blank for new standalone items. | Expense ID |
| AT-HM Parent Item Id | For wraparound services uploaded in the same CSV as their parent item. Assign a unique ID in your spreadsheet and use the same ID in the parent item's row. | User-defined ID |
| AT-HM Item/Wraparound | Whether this row is an AT-HM item or a wraparound service | "Item" or "Wraparound" (case-sensitive) |
| Category | Expense category from your Visualcare database | For example, "Equipment" |
| Date | Date of service or delivery | DD/MM/YYYY |
| InvoiceNumber | Supplier invoice number | Text |
| Supplier | Supplier name | Text |
| Description | Item description | Text |
| Units | Quantity of items | Number |
| Amount | Total cost of the item | Number |
| Note | Internal note attached to the expense record. Not included in the claim. | Text |
| IsCharge | Whether to charge this expense against client funding | TRUE or FALSE |
| ClientCode | Visualcare client code | Client ID |
| Agreement | Visualcare agreement code | Agreement code |
| ServiceCode | Visualcare service code linked to the SAH AT-HM service | Service code |
| AT-HM Item Code | Item code from the relevant government schedule. Items use Table D codes. Wraparound services use Table F codes. | Item code |
| AT-HM Is Prescribed | Whether a health professional prescribed the item | TRUE or FALSE |
| AT-HM Prescribed By | Health professional type code from Table E | Code |
| AT-HM Prescribed By Other | Prescribing professional description if the professional type is not in the standard Table E list | Text |
| AT-HM Is First Payment | Whether this is the first payment for this item | TRUE or FALSE |
| AT-HM Is Loaned | Whether the item is loaned to the participant rather than purchased | TRUE or FALSE |
| Home Support Item Code | For SAH service codes that need additional classification information | Code |
| IsReimburse | For worker reimbursement using the existing expense process | TRUE or FALSE |
| CarerCode | Worker code. For reimbursements only. | Worker code |
| PayCode | Pay code. For reimbursements only. | Pay code |
The following fields are not applicable for AT-HM uploads. Leave them blank: **Cost**, **MarkupUse**, **MarkupBy**, **MarkupDesc**, **MarkupChargeCode**, **ChargeCode**.
## Tips for filling in the template
**Items vs wraparounds**
Use "Item" for AT-HM purchases and "Wraparound" for associated services such as delivery or installation. The value is case-sensitive.
**Linking wraparounds to parent items**
If the parent AT-HM item is already in Visualcare, enter its expense ID in the **AT-HM Parent Expense ID** column. If you're uploading the parent item in the same CSV, leave **AT-HM Parent Expense ID** blank and use **AT-HM Parent Item Id** instead - assign any unique identifier in your spreadsheet and use the same value in both the parent item row and the wraparound row.
**Mark-up fields**
Leave all mark-up fields blank. Under Support at Home, administration costs are claimed as wraparound services rather than mark-ups.
**Save format**
Always save as **CSV (Comma delimited)**. Other variants such as CSV UTF-8 or CSV (Macintosh) can cause column mapping or import errors.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up AT-HM agreements, categories, and services before bulk importing
Configure Support at Home agreements for your clients
Add and manage expense records on a client profile
Submit AT-HM and service claims through the SAH claiming screen
# Tracking SAH care management time
Source: https://support.visualcare.com.au/client-management/sah-care-management
How to set up care partners and record care management time for Support at Home clients in Visualcare
Support at Home (SAH) requires care management time to be tracked separately from service delivery. In Visualcare, care management time is recorded via client notes and converted into timesheets for claiming.
## What you'll need
* Care management and restorative care management services set up in **Maintenance** → **Services** with service type "Support at Home"
* Workers who provide care management designated as care partners on their worker profiles
* A SAH agreement on the client profile with a Care Management service line added
## Setup
### Step 1: Confirm care management services exist
Go to **Maintenance** → **Services** and confirm that both of the following exist with service type set to "Support at Home" and the SAH Service is linked:
* Care Management
* Restorative Care Management
If either is missing, create it before continuing.
### Step 2: Designate care partners
For each worker who provides care management:
1. Open the **Worker Profile** and go to the **Details** tab
2. Scroll to the **Support at Home** section
3. Tick **Care Partner** and/or **Restorative Care Partner** as applicable
4. Click **Save**
### Step 3: Add the Care Management service to the client's SAH agreement
Open the client's SAH agreement and confirm the **Care Management** service is included as a service line. If it's missing, add it before recording any care management time.
## Recording care management time
Go to the client profile and select the **Notes** tab. Click **New Note/Task**.
Enter the note content, link it to a worker if needed, and choose the appropriate note category.
Enter the date of the care management activity. This date must fall within the client's SAH agreement dates.
Tick **Add Care Management time** to expand the time entry fields.
Fill in the following fields:
| Field | What to enter |
| - | - |
| **Care Partner** | Select the worker who performed care management |
| **Service** | Select the care management service (for example, Care Management or Restorative Care Management) |
| **Activity Type** | Select the activity type from the drop-down |
| **Start time** | Enter the start time of the activity |
| **Duration** | Enter duration in minutes |
Click **Save**. Visualcare creates a timesheet entry in the background.
The generated timesheet requires manual confirmation before it can be claimed. Go to **All Timesheets** → **Rosters**, select the relevant entry, and send it to timesheets.
The timesheet is not automatically confirmed. If you don't complete this step, the care management time won't appear in your claim export.
## Frequently asked questions
Time is recorded exactly as you enter it. Rounding to 15-minute increments happens at claim time, not at the point of entry.
If the care partner uses vWorker, the shift may appear in their app. They don't need to take any action on it. The timesheet is managed from the back office.
This is expected behaviour. Go to **All Timesheets** → **Rosters**, locate the care management timesheet, select it, and send it to timesheets to confirm it.
Editing an existing care management note is not currently supported. Create a new note with the corrected care management time instead.
Check that the **Care Recipient ID** is entered on the client's **HCP** tab. A missing Care Recipient ID can cause display issues with care management notes.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up and manage Support at Home agreements
Manage SAH budgets, statements, and financial exports
Record notes and tasks on client profiles
Configure service agreements to enable rostering
# SAH participant profile
Source: https://support.visualcare.com.au/client-management/sah-client-profile
Understanding the Support at Home tab on a client profile, including API connection status, funding details, and classification information
The **Support at Home** tab on a client profile shows the connection to the Services Australia API, the participant's funding classification, and a real-time view of their SAH budget balances. Most of this information is read from Services Australia directly - you don't enter it manually.
## Accessing the SAH tab
Open the client profile, then select the **Support at Home** tab from the navigation tabs at the top of the profile.
## How to link a Participant to the API on the SAH tab
1. Click on "+Link Participant"
2. Enter the Care recipient ID
3. Click check Participant
4. Visualcare will check the name and DOB and advise if you have any discrepancies from VC profile to the information coming through the API. Click cancel if you wish to correct the name and DOB and link again. If you do not wish to correct details, click "Confirm"
5. If all Credentials map correctly, you will get a successful modal, click "Confirm"
Approved Funding will display and a successful connection status will be displayed
Link the participant to the API before rostering or adding any expenses. Services entered beforehand won't flow through to claiming
Until the participant is linked, the dashboard sits on 'loading dashboard' with nothing to show
## What's on the SAH tab
### API connection status
The top-left area shows whether the client profile is connected to the Services Australia API. A connected profile pulls funding and classification data directly from the Aged Care Portal. If the connection is not active, budget data won't update automatically.
### Participant information
| Field | Description |
| - | - |
| **Care Recipient ID** | The participant's unique identifier in Services Australia systems. Required for API connection and claiming |
| **Classification level** | The participant's SAH classification (one of 10 ongoing levels, or a transitional HCP level) |
| **Contributions** | Whether the participant is subject to contributing an amount as a percentage towards services |
| **Supplements** | Any supplements the participant receives, for example dementia supplement or oxygen supplement |
### Funding table
The funding table shows the participant's current budget allocations. Each row represents a funding type.
| Column | Description |
| - | - |
| **Funding type** | The category of funding - Ongoing Quarterly, Assistive Technology, Home Modifications, End of Life, Restorative Care, or HCP Unspent Funds |
| **Start date / End date** | The dates this budget allocation is active |
| **Total budget** | The full amount allocated for this funding period |
| **Available budget** | The remaining unspent balance |
| **Last updated** | The timestamp of the most recent refresh from Services Australia |
To refresh the budget data, open the SAH tab. The system pulls the latest figures from the API at this point.
Budget figures reflect the last time the data was pulled from Services Australia. Refresh the tab regularly when working with participants who have high expenditure or are approaching their budget limit.
### Agreements and funding types
Use this section to link each SAH agreement to its corresponding funding type. This is what tells Visualcare which budget a claim draws from when you submit services for a participant.
## Frequently asked questions
A Registered Supporter is a contact type specific to SAH. To add one:
1. Go to **Maintenance** → **Contact Type** and create a contact type named "Registered Supporter (SAH)" if it doesn't already exist
2. Open the client profile → **Contacts** tab
3. Add a new contact or edit an existing one
4. Select the "Registered Supporter (SAH)" contact type
The Registered Supporter then appears on the participant's contacts list.
Provider Held Funds are not managed within Visualcare. These are handled outside the system in line with government guidance. Refer to the Services Australia provider documentation for the current requirements.
Until the classification level field is updated to reflect the new SAH levels, use the customisable drop-down fields on the client profile to record classification information. These fields - **Client Type**, **Area**, **Division**, **Agreement Area**, and **Groups** - can be configured in **Maintenance** to hold the values your organisation needs.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up a new client profile from scratch
Create and manage SAH agreements and link them to funding types
Manage SAH budgets
Submit claims and reconcile payments with Services Australia
# SAH expenses
Source: https://support.visualcare.com.au/client-management/sah-expenses
How to configure, record, and claim Home Support Items - expenses claimed at the per-item level - for Support at Home participants in Visualcare
Not every SAH claim comes from a rostered shift. There are a few different reasons a service ends up on the **Expense** tab instead:
* **AT-HM (SERV-0061 to SERV-0068)** - always claimed as an expense, never rostered. See [SAH assistive technology and home modifications](/client-management/sah-at-hm).
* **Home Support Items (SERV-0006, SERV-0015, SERV-0017, SERV-0026, SERV-0047)** - always claimed as an expense at the per-item level. Covered in this article.
* **Standard Home Support services delivered as usual** - most services (personal care, domestic assistance, direct transport, nursing visits, and so on) are rostered and claimed through shifts as normal. These aren't entered as expenses.
* **Standard Home Support services entered as an expense instead of rostered** - any Home Support service can be added as an expense rather than rostered, where that fits your workflow better.
* **Services delivered by a third party** - where a service such as Occupational Therapy, Physiotherapy, or another allied health service is delivered by an external provider rather than your own workers, there's no shift to roster. These are entered as an expense against the relevant service, using the third party's invoice as the source record.
Whether a service is rostered or entered as an expense doesn't change how it's claimed to Services Australia - both flow through to the same SAH claiming screen. The distinction matters for how the item is recorded and, for AT-HM and Home Support Items, which additional fields apply.
### Editing and cloning limitations
The existing Expense function has limited support for SAH expenses that use the additional reporting fields - AT-HM and Home Support Items. You're unable to **Clone** or **Edit** these expenses once they're saved.
If it's left uncorrected, the incorrect expense will still appear in the Data Export as **Ready to Claim** - it's included in the listed record count in **SAH claiming > create a claim** - but no data will display for it, and it can't be selected within the claim.
If a SAH expense with additional reporting fields has been entered incorrectly, you can't correct it in place. Delete the expense and re-add the item with the correct details.
# SAH Home Support Items
## What counts as a Home Support Item
Five Home Support services are claimed at the per-item level:
| Service | Service code |
| - | - |
| Expenses to maintain personal affairs | SERV-0015 |
| Nursing care consumables | SERV-0026 |
| Nutrition supports | SERV-0047 |
| Indirect transport | SERV-0017 |
| Expenses for home maintenance and repairs | SERV-0006 |
The Home Support Item fields only appear on the expense form when one of these five services is selected. This is the same mechanism used for AT-HM (SERV-0061 to SERV-0068), but with a simpler set of fields - there is no Function, Wraparound, Prescribed Item, or Purchase Method Type field for Home Support Items.
Every other Home Support service (personal care, domestic assistance, direct transport, nursing care visits, and so on) continues to be claimed through rostered shifts as usual. Only the five services above use the Expense tab.
### Item Description list per service
Each service has its own pre-defined list of item descriptions. Select **Other** to enter a free-text description when the item you're recording isn't in the list.
| Item description | Item ID | Unit type |
| - | - | - |
| Telephone bill | HSITM-001 | Bill |
| Internet bill | HSITM-002 | Bill |
| Other | SERV-0015-OTH | Bill, Item |
| Item description | Item ID | Unit type |
| - | - | - |
| Continence aids | HSITM-004 | Item |
| Prescribed skin emollients | HSITM-005 | Item |
| Oxygen consumables | HSITM-006 | Item |
| Other | SERV-0026-OTH | Item |
| Item description | Item ID | Unit type |
| - | - | - |
| Prescribed supplementary dietary products | HSITM-008 | Item |
| Prescribed dietary aids | HSITM-009 | Item |
| Other | SERV-0047-OTH | Item |
| Item description | Item ID | Unit type |
| - | - | - |
| Taxi service | HSITM-011 | Voucher |
| Rideshare | HSITM-012 | Voucher |
| Other | SERV-0017-OTH | Voucher, Item |
| Item description | Item ID | Unit type |
| - | - | - |
| Other | SERV-0006-OTH | Item |
| This service has no pre-defined items - every claim is entered as **Other** with a free-text description. | | |
## Adding a Home Support Item expense
Go to the client profile and select the **Expense** tab. Click **New Expense.**
Choose the relevant Home Support Item service (SERV-0006, SERV-0015, SERV-0017, SERV-0026, or SERV-0047). Selecting one of these services displays the Home Support Item additional fields on the form.
Select the item description from the list for that service. If the item you're recording isn't listed, select **Other** and enter a free-text description in the **Other Item Description** field.
Fill in **Quantity** and **Price per unit**. Set **Unit Type** to match the value shown against the item in the tables above (for example, "Bill" for a telephone bill, "Voucher" for a taxi service).
Use **Upload** to attach the invoice or receipt. This isn't mandatory for Home Support Items, but is recommended to support the claim.
Select the relevant SAH agreement and confirm the item is marked as a **Charge**, then click **Save**.
There's no change to how these expenses link to agreements. As with all SAH expenses, add the item as an Expense, mark it as a Charge, and link it to the relevant agreement and service item.
## Bulk importing Home Support Items
Home Support Items can also be uploaded in bulk via CSV using the **Home Support Item Code** field. See [SAH bulk import AT-HM expenses](/client-management/sah-bulk-import-expenses) for the full import workflow - the same CSV import screen handles both AT-HM and Home Support Item uploads, using the Home Support Item Code field instead of the AT-HM-specific fields
## Frequently asked questions
These fields only appear when you select one of the five Home Support Item service codes: SERV-0006, SERV-0015, SERV-0017, SERV-0026, or SERV-0047. Check that the correct service is selected on the expense.
The Home Support Item is missing an Item Description Code, a Unit Type, or a free-text Item Description (required when the code ends in -OTH). Check all three fields are filled in before submitting the claim.
The Unit Type field should be blank for all Home Support services claimed as rostered shifts. It's only required for AT-HM and Home Support Items, and must match the unit type mapped to the selected item description.
Select **Other** and enter a free-text description. This applies to all five Home Support Item services, including SERV-0006, which only has an Other option.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up AT-HM agreements and claim AT-HM expenses
Bulk upload Home Support Items and AT-HM expenses using a CSV template
Record and manage expenses on a client profile
Understand how expenses flow through to SAH claiming and invoicing
# SAH gap payments
Source: https://support.visualcare.com.au/client-management/sah-gap-payments
How Visualcare identifies and manages payment gaps in Support at Home claims
When Services Australia doesn't pay the full amount of a submitted Support at Home (SAH) claim, Visualcare identifies the shortfall and helps you determine whether an invoice is needed and who to bill.
## What is a gap payment?
A gap payment is the difference between what you claimed and what Services Australia paid. This can occur when a service line is partially paid or not paid at all. Visualcare surfaces these gaps during the reconciliation process so you don't have to identify them manually.
## Gap payment workflow
Open the submitted claim in Visualcare and upload the reconciliation file from Services Australia.
If gaps or non-payments are identified, a **Gap Analysis** screen appears. This lists each service line that has a gap, showing the claimed amount, the paid amount, and the difference.
Export to CSV if you need a copy for your records or to share with your finance team. Click **Confirm** to proceed.
Claims with gap components update to **Partially Paid** or **Not Paid** status. This distinguishes them from fully paid claims in your claim list.
**Partially Paid** refers to items that have been paid with a combination of Gap, Government and/or Participant Portion.
**Not Paid** refers to items that have not been paid and the full claim amount forms the Gap.
When you generate invoices for a partially paid claim, Visualcare creates up to three separate invoices:
| Invoice prefix | Invoice type | Filter by |
| - | - | - |
| **INVG** | Government | Invoice Type: Government |
| **INV** | Client Contribution | Invoice Type: Participant |
| **GAP** | Gap payment | Invoice Type: Gap |
Use the **Invoice Type** filter to view each type separately.
Statements for the period show a breakdown of all three components: Government component, Client contribution, and Gap component.
Click on the **GAP** invoice to select who will be billed for the gap amount.
* Use the drop-down to select from contacts already in your accounting software
* Or enter a payer using the free text field if the contact doesn't exist yet
Government invoices use the **Agreement Payer** or the **Client Profile Payer** by default. Client invoices use the client's **Accounting Code**.
Export the Gap Analysis to CSV before confirming if you want a record of the original gap detail. Once you confirm, you won't be able to access the pre-confirmation view again.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Manage SAH budgets, statements, and financial exports
Generate invoices and submit claims for SAH clients
Handle underclaims and overclaims for SAH payments
Set up and manage Support at Home agreements
# SAH meal services
Source: https://support.visualcare.com.au/client-management/sah-meals
How to record meal delivery and meal preparation services for Support at Home clients in Visualcare
Support at Home (SAH) covers two types of meal services, each recorded differently in Visualcare. Both fall under the Everyday Living funding classification.
## Service codes
| Service code | Service type | How to record |
| - | - | - |
| **SERV-0007** | Meal delivery | Expense on the client profile |
| **SERV-0008** | Meal preparation | Roster as a normal shift |
## Recording meal delivery (SERV-0007)
Meal delivery is recorded using the expense function on the client profile. Enter each meal for the date the service was delivered.
For bulk meal entry, use the **Expense Bulk Import CSV** to upload multiple records at once.
If your organisation delivers meals in high volumes, the bulk import CSV saves significant data entry time. See [Client expenses](/client-management/client-expenses) for instructions on using the bulk import.
## Recording meal preparation (SERV-0008)
Meal preparation is rostered and recorded as a standard shift. No special configuration is needed beyond using the SERV-0008 service code.
## What's out of scope for SAH meal services
SAH does not cover:
* The cost of ingredients (billed directly to the participant by the meal provider)
* Takeaway or delivered food from restaurants or food delivery services
* Meals provided to other household members
Only meals provided to the SAH participant are claimable. Do not include costs for other members of the household.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Record and manage expenses on a client profile, including bulk import
Set up and manage Support at Home agreements
Configure service agreements to enable rostering
Manage SAH budgets, statements, and financial exports
# SAH monthly statements
Source: https://support.visualcare.com.au/client-management/sah-monthly-statements
How to generate, review, and send monthly participant statements for Support at Home in Visualcare
Monthly statements give SAH participants a summary of the services they received, their budget usage, and care management activity for a given month. Statements are generated in Visualcare and delivered to participants by email, post, or both.
Statements do not submit or reconcile claims and do not generate invoices. Always generate statements after completing claims and reconciliation for the month - statements generated before reconciliation may show estimated or incomplete figures.
## Recommended workflow
Follow this order each month for accurate statements:
1. Complete all claims for the month
2. Reconcile submitted claims against the Services Australia payment statement
3. Refresh participant budgets by opening each participant's **Support at Home** tab
4. Generate the monthly statement batch
5. Export invoices
6. Begin claiming for future months
## Generating statements
Once a claim has reconciled, you'll need to refresh the budget information pulled from the API so it's reflected correctly on the participant's SAH tab and on the dashboards. There are two ways to do this:
1. Open each participant profile and load the SAH tab
2. Email [support@visualcare.com.au](mailto:support@visualcare.com.au) and request a Budget Refresh for all Support at Home participants
Go to **Timesheets** → **SAH Claiming** → **Statements**.
The dashboard shows a banner for each month indicating how many participants need statements:
| Banner colour | Meaning |
| - | - |
| **Blue** | Current month - statements can be created but not sent yet |
| **Amber** | Previous month - statements overdue |
| **Red** | Two months ago - urgent |
| **Green tick** | All up to date |
Click **Create**. Select the participants to include - use **Select All** or tick individual participants. Apply filters by communication preference or search by name if needed. Click **Create Statements**.
Statement generation runs in the background. Refresh the page to check progress.
Once generated, each statement shows one of two statuses:
* **Draft** - generated successfully and ready for review
* **Failed** - generation failed, see the failure reasons below
### Why statements fail
| Reason | What to do |
| - | - |
| Participant not connected to Aged Care Portal | Connect the participant via the Support at Home tab |
| No active budget | Verify the participant has an active SAH budget period |
| Missing or invalid email address | Update the email address on the client profile |
| Missing or incomplete postal address | Update the postal address on the client profile |
## Reviewing and sending statements
Filter the statement list by **Status = Draft** to focus on statements ready for review.
Click a participant row to open the detail pane. Review the budget summary, expenditure breakdown, and contact details. If data has changed since generation, use the **Recreate** option for individual statements.
To remove a participant from the batch, use the **Delete** option on their row. To remove the entire batch, click **Delete Statement** (available for draft batches only).
Click **Send Statements**. The system emails statements to participants with an email preference, and packages PDFs into a ZIP file for participants who need a posted copy.
Statements for the current month remain in draft - you can only send statements for previous months.
After sending, click **Download Zip** to download the ZIP file containing PDFs for postal delivery. Print and mail these promptly.
## Understanding what's in a statement
A participant-friendly guide that walks through each page of the Support at Home monthly statement - the financial summary, ongoing budget, and service details. Download it to share with participants and their representatives.
### Overview page
* Provider logo and contact details
* Participant name and MAC (My Aged Care) number
* Statement period
* Expenditure summary graphs by funding source
### Budget summary
| Item | Source |
| - | - |
| **Total ongoing quarterly budget** | Participant's quarterly allocation |
| **Unused funds from previous quarter** | Carried forward balance |
| **Current month expenditure** | Drawn from the payment file for the period |
| **Remaining balance** | Pulled from the Services Australia API at the time of statement generation |
The "Remaining Balance" reflects the API data at the moment the statement was generated, not the current live balance. Refresh the SAH tab before generating statements to get the most recent figure.
### Expenditure outside this period
This figure is the difference between:
**Total Quarterly Budget** minus **Remaining Balance** minus **Current Month Expenditure**
It represents spending that occurred in the quarter but outside the current statement period (for example, claims from earlier in the quarter).
### Pending charges
Items shown as pending are either:
* Not yet claimed, or
* Included in a claim that has not yet been reconciled
These figures are estimates until reconciliation is complete.
### Detail pages
Each service category gets its own section showing a breakdown of individual services with:
* Service date
* Service description
* Rate type (hourly, daily, or item)
* Units and unit cost
* Government contribution amount
* Client contribution amount
### Other funding pages
Assistive Technology, Home Modifications, Restorative Care, and End of Life budgets each appear as separate pages with the same structure as the Ongoing Quarterly section.
## Contact preference and delivery
Visualcare determines how to deliver a statement using the following priority order:
1. **Billing Preference** set in the client profile under **Details** → **Billing Details** (Email, Print, or Both)
2. **Address Contact Preference** set under **Details** → **Address** (Email or Post)
3. **System default** - email if an email address exists, otherwise post
If a participant is not receiving statements as expected, check these fields in the order above. Update the email address or postal address on the client profile if either is incorrect.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Manage SAH budgets and monthly participant statements
Submit claims and reconcile payments with Services Australia
View API connection status and refresh participant budget data
Handle claim adjustments that appear on participant statements
# SAH transport and travel
Source: https://support.visualcare.com.au/client-management/sah-transport-travel
How to record and claim transport under Support at Home, including direct transport, indirect transport, and services that include transport
Transport under Support at Home (SAH) falls under the **Independence** funding classification and is subject to the same client contribution percentages as other Independence services. How you record transport in Visualcare depends on which of the three transport scenarios applies.
## Transport scenarios at a glance
| Scenario | How to handle in Visualcare |
| - | - |
| Worker travels from home to the first client | Service price includes transport cost. No separate kilometres recorded |
| Worker travels between client shifts | Service price includes transport cost. No separate kilometres recorded |
| Worker travels to support the client during the shift | Service price includes transport cost. No separate kilometres recorded |
| Transport only: worker drives the participant (car and driver) | Record as Direct Transport (SERV-0016) |
| Cabcharge, taxi, or rideshare used by the participant | Record as Indirect Transport, actual cost, no mark-up |
## Direct transport (SERV-0016)
Direct transport is the supply of a car and driver to transport a participant. The billable unit is one trip (one way).
**Example:** A worker picks up a participant and drives them to a hospital appointment. That's one trip. Driving the participant home afterwards is a second trip, claimed separately.
### How to record direct transport
Create a shift using service code **SERV-0016** at the actual start and finish times for the trip.
When creating the shift, tick the **Fixed Fee** option. This sets the charge to a fixed amount for the trip rather than calculating it by duration, and pays the worker for the time spent.
Confirm the shift as you would any other. The trip is then available for claiming.
Create your SERV-0016 services with descriptions that include a kilometre range, for example "Direct Transport Low 1-10km" or "Direct Transport High 50km+". This makes it easier to select the right price band when rostering.
Direct Transport should not be used when applying Split shifts as the fixed fee will not be an option.
## Indirect transport
Indirect transport covers costs where the participant uses a taxi, rideshare, or Cabcharge voucher. The actual cost is deducted from the participant's budget. No mark-up applies.
### How to record indirect transport
Indirect transport is recorded as a client expense rather than a roster shift.
Go to the client profile and select the **Expense** tab. Click **New Expense** and select **Try the New Look** if you haven't already switched to the updated expense view.
Choose the applicable item ID for the transport type:
| Item ID | Use for |
| - | - |
| **HSITM-011** | Taxi or rideshare |
| **HSITM-012** | Cabcharge |
| **HSITM-0017-OTH** | Other transport costs |
Enter the exact amount from the taxi or rideshare receipt. Do not add a mark-up.
Save the expense. It is now ready for SAH claiming.
### Bulk uploading indirect transport
If you have a high volume of taxi or rideshare costs, use the bulk import rather than entering each expense individually.
1. Go to **Operations** → **Import CSV** → **Expense**
2. Prepare your CSV file with the required columns: Client ID, Agreement Code, Service, Date, Amount, and Item ID
3. Upload the file
See [Client expenses](/client-management/client-expenses) for the full bulk import instructions and CSV template.
## Services that include transport
For most service delivery, transport costs are built into the price of the service rather than claimed separately. This applies when a worker travels to and from a client, between clients, or during the shift as part of delivering care.
**How pricing works:** Set different prices for different delivery circumstances - for example, weekday vs weekend rates, or different prices for services that involve longer travel distances.
**Worker kilometre logging:** Workers log their kilometres on vWorker for payroll purposes. This is separate from client charging and does not create a separate charge item on the participant's account.
**Rostering:** Roster these services as normal. There is no additional transport line on the shift.
Under SAH, service prices are expected to include all delivery costs: labour, transport, administration, and consumables. Set your prices to reflect the true cost of delivering the service, including typical travel, before capped pricing takes effect.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up and manage Support at Home agreements
Record and manage expenses, including bulk import for indirect transport
Create and configure roster shifts including fixed fee settings
Understand how transport items flow through to SAH claiming
# SAH unspent funds
Source: https://support.visualcare.com.au/client-management/sah-unspent-funds
How Visualcare identifies, reconciles, and reports on Commonwealth Unspent and Government Held funds for Support at Home clients
Visualcare tracks two types of unspent funds for Support at Home (SAH) clients separately: Provider Held (Commonwealth Unspent) and Government Held (Home Care Account). These appear in reconciliation, statements, and budget summaries.
## Funding codes
When reconciling a SAH claim, a **Funding** column shows which funding bucket each service draws from. The codes used are:
| Code | Funding type |
| - | - |
| **ON** | Ongoing |
| **AT** | Assistive Technology |
| **HM** | Home Modifications |
| **CU** | Commonwealth Unspent |
| **HC** | Home Care Account |
| **EL** | End of Life |
| **RC** | Restorative Care |
| **CM** | Care Management |
## How unspent funds work in Visualcare
### During reconciliation
When you reconcile a SAH claim, the **Funding** column in the reconciliation view identifies which funding bucket each service line draws from. Click on any line item to open a side panel showing a detailed breakdown of the funding used.
### On statements
The Support at Home monthly statement includes a summary-level breakdown of any unspent funds drawn during the period. This shows the government component, any Commonwealth Unspent drawdown, and the Home Care Account usage. Participants and their representatives get a clear view of how their available funds were applied across funding buckets.
### Ongoing budget surplus
If a client's Ongoing funding is fully used and Commonwealth Unspent funds are available to cover additional services, the surplus appears in the **Ongoing Budget** summary section.
### Assistive Technology and Home Modifications using unspent funds
If an Assistive Technology (AT) or Home Modifications (HM) item is purchased using Commonwealth Unspent funds, this appears in the **HCP Unspent Funds** budget summary. Any amounts also drawn from Commonwealth Unspent funds for Ongoing services are reflected here.
## Limitations
The following limitations apply to the current version of unspent funds reporting in Visualcare.
* Commonwealth Unspent funds usage appears in statement summary sections only. It doesn't show at the individual line item level within a statement.
* Commonwealth Unspent funds usage doesn't display on Organisation-level or Client-level SAH dashboards.
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Manage SAH budgets, statements, and financial exports
Set up and manage Support at Home agreements
Generate invoices and submit claims for SAH clients
Handle underclaims and overclaims for SAH payments
Monitor participant and organisation-level SAH budgets
# vAboutMe app access
Source: https://support.visualcare.com.au/client-management/vaboutme-app-access
Set up client access to the vAboutMe mobile app, including vCore configuration and device setup
The vAboutMe app gives clients visibility of their services, documents, and messaging. This article covers how to enable access in vCore and set up the app on a client's device.
## Enabling access in vCore
To give a client access to vAboutMe, update their client profile in vCore with the following fields, then click **Save**:
| Field | What to enter |
| - | - |
| **Email** | The client's email address |
| **Web Username** | The client's email address is recommended. An alternative username is acceptable (avoid spaces) |
| **Web Enabled** | Tick this box |
| **vAboutMe Enabled** | Tick this box |
Click **Send Login Details** to email the client instructions on how to log in.
Contacts can also be given vAboutMe access. Enable the same fields on the contact's record to give a family member, carer, or other contact access to the app.
You customise which vAboutMe features are available to each client under the **Details** → **vAboutMe** section on their profile. Tick or untick features to switch them on or off.
## App setup
### System requirements
The client's device needs one of the following:
* **Android**: version 10 or above
* **iOS**: version 11 or above
### Installing the app
Download vAboutMe from the App Store (iPhone) or Google Play (Android). Search for **vAboutMe** and select **Install**.
### Logging in
Open vAboutMe by selecting the icon on the device home screen. Once logged in, the app stays logged in.
## Running into issues?
See [Client management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure the client profile fields needed for vAboutMe access
Send messages to clients through the messaging module
# Audit report
Source: https://support.visualcare.com.au/compliance/audit-report
Track data changes across Visualcare with the audit report, showing who changed what and when
The audit report in vCore tracks data changes across your Visualcare environment. Use it to see what data has been changed, who made the change, and when it happened. This is useful for internal governance, investigating discrepancies, and maintaining accountability across your team.
This is the data change audit report, not a compliance audit. For compliance-related reports, see [Client audit reports](/compliance/client-audit-reports) and [Worker audit reports](/compliance/worker-audit-reports).
## Running an audit report
To generate an audit report, navigate to **Reports** → **Audit Report**.
1. Select the **module** you want to audit from the drop-down menu (for example, Clients, Workers, Rostering, Timesheets)
2. Set the **date range** for the period you want to review
3. Click **Search** to generate the report
The results display all data changes for the selected module and period, including the user who made each change and the timestamp.
Use the audit report to investigate unexpected changes to client agreements, worker pay rates, or rostering data. Narrowing the date range and module helps you find specific changes faster.
## Running into issues?
See [Compliance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Compliance and service reports for your client base
Compliance and training reports for your workforce
Set up compliance items for clients and workers
# Client audit reports
Source: https://support.visualcare.com.au/compliance/client-audit-reports
Run compliance, review, and service reports across your client base to support audit preparation
Visualcare includes several client-focused reports that help you track compliance status, review dates, and service activity across your client base. These reports are found under **Reports** → **Client Reports** in vCore.
## Available compliance-related reports
### Client compliance
Lists all client compliance items across your organisation. You can filter by **Alert Date** or **Expire Date** to identify items that are approaching expiry or have already lapsed.
Run this report regularly to catch compliance items before they expire. Filtering by alert date gives you a forward-looking view of what's coming up.
### Client review dates
Report on client review dates for specific timeframes. Use this to track when clients are due for their next review and plan accordingly.
### Client agreement and services
Report on client agreements and services for a specified timeframe. Filter by client, agreement type, area, or division to narrow the results.
### Client last service/timesheet
Shows the last service that was scheduled for each client and the last confirmed shift (timesheet). This is useful for identifying clients who haven't received services recently and may need follow-up.
### Client communication
Report on the last communication with clients. Filter by funding type and area to focus on specific client groups.
The following reports are also available under **Reports** → **Client Reports** but are less directly related to compliance and audit:
* **Client Birthdays** - report on client birthdays in the coming month or all months
* **Client HCP** - select the month and report on all clients' Home Care Package statements for that period
* **Client Contacts** - list of clients and their contacts
* **Client Distribution** - shows how many clients are taking what services in which suburb
* **Client Worker Preference** - search for specific clients or all, and filter by preferred, non-preferred, or all
* **Client Documents** - search all client documents
## Running into issues?
See [Compliance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage compliance items at the organisational level
Compliance and training reports for your workforce
Track data changes across Visualcare
Manage compliance on individual client profiles
# Compliance and audit preparation
Source: https://support.visualcare.com.au/compliance/index
Audit views, compliance registers, and reports for workers and clients
# Compliance and audit preparation
Prepare for audits and track compliance across your organisation.
Audit reports and compliance registers for workers
Audit reports and required compliance for clients
Generate audit reports
Manage policies and procedures
# Policies and procedures
Source: https://support.visualcare.com.au/compliance/policies-and-procedures
Store and manage your organisation's policies and procedures in Visualcare
Visualcare provides a centralised location for storing your organisation's policies and procedures. Having these documents in one place ensures staff can access the latest versions and supports audit readiness across NDIS, aged care, and other regulatory frameworks.
## Accessing policies and procedures
Navigate to **Maintenance** → **Policies and Procedures** to view and manage your organisation's policy documents.
## Adding a policy
To add a new policy or procedure document:
1. Click **Add** on the Policies and Procedures page
2. Enter a title and select a category for the document
3. Upload the file (PDF and Word documents are supported)
4. Click **Save**
## Organising by category
Policies can be grouped into categories to make them easier to find. Common categories include:
* Work Health and Safety
* Clinical governance
* Human Resources
* Privacy and confidentiality
* Quality and safeguarding
* Financial management
Categories are managed from within the Policies and Procedures area. Use categories that align with your organisation's quality management framework so auditors can locate documents quickly.
## Worker access through vWorker
Policies stored in Visualcare can be made available to workers through the vWorker app. Workers access these under the **Documents** section in the app, giving them on-the-go access to the policies they need during service delivery.
Make sure critical policies like incident reporting, manual handling, and infection control are accessible through the vWorker app so workers can reference them in the field.
## Version control
When a policy is updated, upload the new version to replace the existing document. Keep a record of version changes, for example by including a version number and date in the document title or within the document itself.
Visualcare stores the current uploaded version of each policy. If your organisation needs to retain previous versions for audit purposes, consider keeping an offline archive of superseded documents.
## Audit readiness
Having policies stored in Visualcare means auditors can verify that:
* Your organisation has the required policies in place
* Staff have access to current versions
* Policies are categorised and organised in a way that supports your quality framework
This is particularly relevant for NDIS Practice Standards audits and Aged Care Quality Standards reviews, where auditors check that policies are documented, accessible, and up to date.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage compliance items at the organisational level
Track data changes across Visualcare
Upload and manage documents on the client profile
# Required compliance overview
Source: https://support.visualcare.com.au/compliance/required-compliance-overview
How to set up and manage required compliance items for clients and workers across your organisation
Visualcare lets you define compliance items that your clients and workers need to meet. These items are configured centrally in **Maintenance** and then flow through to individual profiles, giving you a single place to manage compliance requirements across your organisation.
This page covers how to set up compliance items and templates at the organisational level. For managing compliance on individual profiles, see [Client compliance](/client-management/managing-client-compliance) and [Worker compliance](/worker-management/managing-worker-compliance).
## Client compliance items
Client compliance items are the requirements you track against each client profile. You configure the master list in **Maintenance** → **Clients** → **Client Compliance**, and individual items are then added to the [client profile compliance tab](/client-management/managing-client-compliance).
To add a new compliance item, click **Add Compliance Item** and enter the necessary details. You can edit any compliance item after it's been added to the list.
### Linking compliance items to funding types
There are several options for linking compliance items to client profiles:
* **Link to a funding type** - the compliance item is tied directly to a specific funding type
* **Add to clients by funding type** - the compliance item is added to all clients with a particular funding type
* **Add to all clients** - the compliance item is added to every client regardless of their funding type
If client compliance items are not linked to any funding type, all compliance items are automatically added to new client profiles when they are created.
## Client compliance templates
Client compliance templates let you add multiple **required worker compliances** to the [client profile preferences tab](/client-management/preferences) in one go. This is useful when a client has specific requirements about which worker compliance items their support workers need to hold.
Go to **Maintenance** → **Clients** → **Client Compliance Template**. Click **Add Compliance Template**, enter the **Template Name**, and click **Save**.
Click **Add Compliance Item**, select the items from the drop-down list, and click **Save**.
Click **Add Clients**, tick the clients you want to add this template to, and click **Save**.
The client list only displays clients who don't already have this compliance template assigned.
To remove a compliance template from clients, click **Remove Clients**. The list only displays clients who currently have the template assigned.
## Worker compliance items
Worker compliance items are the requirements you track against each worker profile. You configure the master list in **Maintenance** → **Workers** → **Worker Compliance**, and individual items are then managed on the [worker profile compliance tab](/worker-management/managing-worker-compliance).
To add a compliance item, click **Add Compliance Item**, enter the details below, and click **Save**.
| Field | Description |
| - | - |
| **Description** | The name of the compliance item |
| **Expiry Days** | How many days from the start date until the item expires. For example, set this to 365 for annual renewal |
| **Warning Days** | How many days from the start date until the alert date. For example, set this to 335 for a 30-day warning before annual renewal expiry |
| **Mandatory** | Tick this if the compliance item is mandatory for all workers |
| **No Expiry Date** | Tick this if the compliance item does not expire |
| **Visible to Workers** | Tick this to make the compliance item visible to workers in vWorker |
| **No Start Date** | Tick this if the compliance item does not have a start date |
### Linking compliance items to roles and types
You can link worker compliance items to a **Worker Role** or **Worker Type**. When you do this, workers assigned to that role or type automatically have the linked compliance items added when their profile is created and the role or type is selected.
Alternatively, when creating a new compliance item, you can add it to all workers, or add it by role or type using the applicable button.
Linking compliance items to worker roles is a good way to ensure new starters automatically get the right compliance requirements based on their position.
## Running into issues?
See [Compliance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage compliance items on individual client profiles
Manage compliance items on individual worker profiles
Run compliance reports across your client base
Run compliance reports across your workforce
# Worker audit reports
Source: https://support.visualcare.com.au/compliance/worker-audit-reports
Run compliance, training, and skills reports across your workforce to support audit preparation
Visualcare includes several worker-focused reports that help you track compliance status, training, skills, and availability across your workforce. These reports are found under **Reports** → **Worker Reports** in vCore.
## Available compliance-related reports
### Worker compliance
Lists all worker compliance items across your organisation. You can filter by **Alert Date** or **Expire Date** to identify items that are approaching expiry or have already lapsed.
Run this report regularly to stay ahead of expiring compliance items. Filtering by alert date gives you a forward-looking view of what needs attention before it lapses.
### Worker training
Lists all worker training items across your organisation. You can filter by **Alert Date** or **Expire Date** to track training that is due for renewal.
### Worker skills
Lists all worker skills across your organisation. You can filter by **Worker** or **Skill** by dragging the column header to the top of the screen to group the results.
### Worker availability
Report on worker availability across your organisation. Filter by area and division to focus on specific teams or locations.
### Worker utilisation
Report on how many hours each worker would like to work (set under the **Finance** tab as "budget hours per day"). Select the timeframe and see a comparison of budget hours, rostered hours, and completed hours.
The following reports are also available under **Reports** → **Worker Reports** but are less directly related to compliance and audit:
* **Worker Birthday** - report on birthdays in the coming month
* **Worker Equipment** - report on all equipment items assigned to workers
* **Worker Documents** - search all worker documents
## Running into issues?
See [Compliance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage compliance items at the organisational level
Compliance and service reports for your client base
Track data changes across Visualcare
Manage compliance on individual worker profiles
# Worker compliance registers
Source: https://support.visualcare.com.au/compliance/worker-compliance-registers
Set up, manage, and track worker and client compliance items in Visualcare
Compliance registers in Visualcare track mandatory items like qualifications, clearances, and certifications for your workers and clients. Items flow automatically from your organisation's compliance configuration in Maintenance, and the home dashboard KPIs flag anything that's expired or approaching its alert date.
## Worker compliance
### Viewing worker compliance
Open a worker's profile and go to the **Compliance** tab. Compliance items that apply to the worker appear here, with start dates, alert dates, and expiry dates.
If you edit the start date on a compliance item, the alert and expiry dates flow through automatically. These dates can be overwritten if needed. Items marked as required are mandatory and need to be completed.
### Linking compliance items to roles
You can link compliance items to specific worker roles so that only workers assigned to those roles see the relevant items.
Go to **Maintenance** → **Worker** → **Worker Roles** and click **Add Role** to create the roles your organisation uses.
Open each worker's profile and select the appropriate role.
Go to **Maintenance** → **Worker** → **Worker Compliance**. Select a compliance item and click **Role Link**. Choose the roles that need this item. You can select multiple roles.
After linking, choose how to distribute the item:
* **Add to workers by role** adds the item to all workers with the selected roles
* **Add to all workers** adds the item to every worker regardless of role
### Linking compliance items to worker types
Similar to role linking, you can link compliance items to worker types. Select a compliance item, click **Worker Type Link**, and choose which worker types need the item. Then use **Add to workers by type** to distribute it.
### Compliance and rostering
When you use the **Worker Select** button on the roster to choose a worker for a shift, Visualcare highlights workers who are compliant. By default, only workers with no expired items are shown. To include workers with expired items, select the **Expired** filter.
### Forms compliance
Completed forms can be linked to compliance items. You can view linked forms under the **Compliance** tab on the worker's profile. Click **View** to open the form or **Unlink** to remove the association.
## Dashboard compliance KPIs
The home dashboard includes **Worker Compliance** and **Client Compliance** KPI tiles that show the number of expired compliance items across your organisation.
Click a KPI tile to see the detail and filter by items that have reached their alert date or are already expired.
Check the compliance KPI tiles regularly to stay on top of expiring items. Addressing items before they expire avoids gaps that could affect rostering or audit readiness.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage compliance items at the organisational level
Compliance and training reports for your workforce
Day-to-day management of individual worker compliance
Audit reports and required compliance for clients
# Billing to accounting software
Source: https://support.visualcare.com.au/finance/billing-to-accounting-software
Step-by-step guide to exporting invoices from Visualcare to Xero, MYOB, and other accounting platforms
Visualcare integrates with your accounting software to export invoice data for client billing. The system matches accounting codes from client profiles, payer profiles, and services in Visualcare to the corresponding contacts and inventory items in your accounting platform.
## What you'll need
* Confirmed timesheets for the period you want to export
* Accounting codes set up on your client profiles, payer profiles, and services
* Your accounting software integration configured in **Settings** → **Data Export**
## Instructions
Navigate to **Timesheets** → **Data Export**.
Configure the date range for the period you want to export and click **Reload**. All confirmed shifts for that period display at the bottom of the screen.
Tick the box next to each timesheet you want to include, or use **Select All** to include everything. Then click **Export Invoices** and select your accounting software (for example, **Export to Xero**).
If you invoice weekly but run payroll fortnightly, set a specific date range rather than using the default payroll period.
A pop-up displays the export summary, showing any timesheets with errors. You can continue with the export or resolve the errors first (see the common errors section below).
Click **Process Export** to proceed. This opens a new page for the export status.
On the export status page, click **Start Import**. Visualcare matches the accounting codes to your accounting software and exports the data. A success message confirms when the export completes, along with the generated invoice numbers.
If errors appear on this page, they typically indicate something is not set up correctly in your accounting software. Check the common errors section below.
## Exporting expenses to invoice clients
Expenses marked as chargeable to the client are exported separately from timesheets.
On the Data Export page, click **Expenses** at the top. All expenses in the selected date range appear.
Select the expenses you want to export, then click **Export Expenses** → **Export to Xero** (or your accounting software).
Click **Process Export** on the export summary pop-up. This opens the export status page. Click **Start Import** to send the expenses to your accounting software.
## How invoice matching works
Visualcare determines where to send each invoice using this logic:
1. **Agreement payer** - if the client agreement has a payer listed, the invoice exports to that payer's accounting code contact
2. **Client profile payer** - if the agreement payer is blank, the system uses the payer listed on the client profile
3. **Client accounting code** - if neither payer is set, the invoice goes to the contact matching the client's accounting code
For services, the accounting code on the service matches to the inventory item in your accounting software.
## Configuring data export settings
Navigate to **Settings** → **Data Export** to configure your integration.
### Accounting software connections
The **Accounting Software** section contains the API connections and integration details for each supported platform. For specific setup guides:
* Xero - see [Integrations](/integrations)
* MYOB - see [Integrations](/integrations)
* Employment Hero - see [Integrations](/integrations)
* KeyPay - see [Integrations](/integrations)
### Invoice descriptions and references
Set up invoice description and reference fields in **Settings** → **Data Export** → **Accounting Software**. Visualcare uses tags to pull details from the database into the fields that appear on your accounting software invoices.
Tags pull data from Visualcare into the invoice description and reference fields. Enter them in the tag configuration fields above.
| Tag | What it inserts |
| - | - |
| `[workerName]` | Worker's full name |
| `[workerPreferredName]` | Worker's preferred name |
| `[clientName]` | Client's name |
| `[date]` | Service date |
| `[serviceDescription]` | Service name or description |
| `[agreementReference]` | Agreement reference field value |
| `[kmcode]` | KM accounting code from the agreement override |
| `[ratio]` | Support ratio (for location roster shifts with ratio configured) |
| `[billingName]` | Billing name from the client or payer profile |
The invoice description for client contributions is hard-coded as "Client Contribution" and does not support tags. Tracking category values (such as agreement references) must match exactly between Visualcare and your accounting software.
### GST and KM settings
For Xero, MYOB API, Sage Intacct, and Reckon One API, configure GST income codes and KM descriptions in the dedicated section.
### Provider travel label
Update the label that flows into accounting software invoices for NDIS Provider Travel.
### Xero-specific settings
The Xero section lets you configure settings specific to Xero export:
* **KM Pay Type** - select **pay item** or **reimbursement** to match how your KM pay codes are set up in Xero
* **Xero Invoice Tracking** - enable tracking when exporting invoices. Enter the **Tracking Category** name in the **Xero Category Name** field and select the Visualcare field to match. The category options in Xero need to match the options for the selected Visualcare field. For example, if your **Xero Category Name** is "Location" with options "North" and "South", the Visualcare field (for example, Area) needs to have the same "North" and "South" options.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Export timesheet data to your payroll software
Export and manage kilometre data for billing and reimbursement
# Billing to CHSP
Source: https://support.visualcare.com.au/finance/billing-to-chsp
How to set up and submit Commonwealth Home Support Programme claims using DEX data in Visualcare
Visualcare supports claiming for the Commonwealth Home Support Programme (CHSP) through the Data Exchange (DEX) framework. To claim CHSP funding for a client shift, the **DEX Case** and **DEX Activity** need to be attached to each shift. These details flow into the claim file that you upload to the DEX portal.
## How CHSP claiming works
CHSP claiming uses DEX cases and activities to categorise services. The process follows this flow:
1. Set up the client's CHSP agreement with DEX cases and activities
2. Roster shifts with the correct DEX details attached
3. Confirm timesheets
4. Export the claim data from **Timesheets** → **Data Export**
5. Upload the exported file to the DEX portal
## DEX case and activity on shifts
When you add or edit a shift in the **Client Roster**, the **DEX Case** and **DEX Activity** fields appear on the right-hand side after you select a service. These pre-populate based on the agreement setup.
If the agreement service doesn't have a DEX case or activity assigned, or if the item needs updating, select the correct values from the drop-down menus.
Link the DEX case and activity directly to the service on the client agreement. This way, they pre-populate automatically on every shift, reducing manual entry and errors.
## DEX meal and transport quantities
The **DEX Meal / Transport Quantity** field lets you include additional claims for meals and transport alongside a service shift.
The related **DEX Case** and **DEX Activity** need to be selected for the meal or transport item to flow into the DEX claim file. In some scenarios, this means creating an additional shift for the claim - for example, where there is a personal care component as well as a meal or transport claim.
### Meals
For a meal claim on a client shift, select the applicable **DEX Activity** and enter the number of meals in the **Quantity** field. For example, a quantity of two means two meals are claimed.
### Transport
To claim transport on a client shift, select the appropriate **DEX Activity** and enter the number of transport trips in the **Quantity** field. For example, a quantity of one means one trip is claimed.
## DEX reporting
Visualcare provides several reports to help you review and manage your CHSP/DEX data:
| Report | What it shows |
| - | - |
| **Service Summary Report** | Summarised list of DEX service types and cases by date range |
| **Client DEX Sessions** | All DEX sessions listed by date range |
| **DEX Rostered Shifts** | Support worker services, pay rates, and client contributions |
Access these reports from **Reporting** in vCore.
## Exporting CHSP claims
CHSP claims are exported from **Timesheets** → **Data Export** in vCore. Select the confirmed shifts for the relevant period and use the export function to generate the claim file for upload to the DEX portal.
Before you export CHSP claims, make sure these items are configured:
* **Client CHSP/DEX setup** - the client profile needs CHSP details configured under the **CHSP and HACC** tab
* **Client agreement** - the agreement needs to be set up as a CHSP agreement type with DEX cases and activities assigned to services
* **Group activities** - if the client receives CHSP services in a group setting, these are set up through the location roster with CHSP/DEX rostering
* **Home modification expenses** - if home modification expenses need to be included in the CHSP claim, add these in **Timesheets** after the shift has been confirmed
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Submit Support at Home claims to Services Australia
Export invoices to your accounting platform
# Billing to HACC
Source: https://support.visualcare.com.au/finance/billing-to-hacc
How to set up and submit Home and Community Care and Support for Carers Programme claims in Visualcare
Visualcare supports claiming for Home and Community Care (HACC) and the Support for Carers Programme (SCP) through the Data Exchange (DEX) framework. This article covers the client profile setup needed for HACC and SCP claims, including DEX configuration and carer details.
## What you'll need
Before setting up a HACC client for claiming, make sure:
* The **HACC Agency ID** is set up under **Settings** → **Company Info**, or under **Maintenance** → **Areas** if your organisation has multiple IDs
* The applicable service type and category are applied to HACC and SCP services in **Maintenance** → **Services**
## Setting up a HACC client
Open the client's profile and select **HACC** from the **Funding Type** drop-down.
Navigate to **Client Profile** → **CHSP/HACC** tab.
In the DEX section, select the **HACC** option. Visualcare automatically generates the client's SLK code.
Update all relevant HACC fields and click **Save**.
If the client has a carer, set them up as a contact under **Client Profile** → **Contacts** tab.
From the **CHSP/HACC** tab, once the contact is selected and the profile saved, click the icon beside **Carer** to edit and complete the relevant HACC fields within the contact profile. You can also access the contact profile by clicking the contact name under the **Contacts** tab, or by navigating to **Maintenance** → **Contacts**.
Fields marked with a red asterisk may trigger an error on export if not completed correctly. HACC fields differ slightly for VIC and WA clients.
## Support for Carers Programme (SCP)
If the client is eligible for SCP funding, tick the **Support for Carers Program** box on the **CHSP/HACC** tab.
If the client has funding for both SCP and CHSP, keep **CHSP** selected as the funding type. You don't need to switch it to HACC. The relevant HACC SCP questions appear alongside CHSP fields in the DEX section.
## Exporting HACC and SCP claims
Once the client profile is set up and shifts have been confirmed on timesheets, export the claim data from **Timesheets** → **Data Export**.
## Next steps
After setting up the HACC or SCP fields on the client profile, create the client's agreement. See [Creating agreements for rostering](/client-management/creating-agreements-for-rostering) for the full process.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Submit Commonwealth Home Support Programme claims via DEX
Set up CHSP agreements for rostering and claiming
# Billing to Support at Home
Source: https://support.visualcare.com.au/finance/billing-to-sah
Step-by-step guide to creating, submitting, and reconciling Support at Home claims in Visualcare
Visualcare's Support at Home (SAH) claiming system lets you create, manage, and submit claims to Services Australia for reimbursement of services delivered to SAH participants. Once claims are reconciled, you export invoice data to your accounting software for financial processing.
Only users in the "Administration" user group have access to SAH claiming by default. To grant access to other users, go to **Settings** → **User Group Permissions** → **Invoicing & Claiming**.
## How SAH claiming differs from HCP
| HCP claiming | SAH claiming |
| - | - |
| Monthly bulk submission | Claim at any time (weekly or monthly) |
| Single invoice per participant | Split invoices (government and participant) |
| No reconciliation needed | Reconciliation from Services Australia is needed |
| Simple CSV export | Detailed CSV with conditional fields |
| No attachment requirements | Assistive Technology (AT) and Home Modifications (HM) need receipt attachments |
* Services Australia API connection completed [Services Australia integration for Support at Home](/integrations/sah-api)
* Services Australia API connection completed. This must be completed prior to adding services or expenses. [SAH participant profile](/client-management/sah-client-profile)
* Confirm each SAH service has the correct code applied in Maintenance > Services
* Do not use a \$0 charge rate for Support at Home services. Services with a \$0 rate will not appear on the claims page
* Any item with a blank "Claim Item Ref" will not be visible on the SAH claiming screen. It is possible services were added in the roster or expenses prior to linking the participant to the API. Please contact [support@visualcare.com.au](mailto:support@visualcare.com.au) for assistance.
A one-page checklist to run before submitting a Support at Home claim, covering participant setup and the Data Export and expense report checks, so nothing is rejected on PRODA.
## Instructions
Support workers deliver SAH services and record them as regular timesheets and expenses in Visualcare. The system automatically identifies SAH-eligible services.
Make sure timesheets and expenses use the correct SAH service linked to the relevant SAH service. HCP codes don't work for SAH claiming.
Navigate to **Timesheets** → **SAH Claiming** and click **Create Claim**.
Select which services to include:
* Tick the checkbox next to individual items
* Use **Select All** to include all items matching your current filters
* Apply filters to narrow down by participant, date range, item type, or service
Choose your action:
* Click **Save as draft** to review the claim later
* Click **Create claim** to proceed directly to submission
When a participant is receiving services through an **ongoing** classification and the **Restorative Care** classification at the same time, the provider will need to manually enter "RC" into column H "Funding Source" of the claim file.
**CSV export (manual)**
1. Click **Export CSV** to download the file
2. Log into the Services Australia Provider Digital Access (PRODA) portal
3. Upload the CSV and any required attachments
4. Submit through the portal
Please see article here for common error on PRODA when uploading a claim file [SAH troubleshooting](/troubleshooting/sah-claiming-errors)
**If approved:** you receive a reconciliation file showing the approved amounts, broken down into the government-funded amount and the participant contribution amount.
**If rejected:** you receive rejection reasons per service. Common reasons include invalid funding source codes, service dates outside the funding period, or exceeded budgets. Fix the errors and resubmit.
Navigate to the submitted claim and click **Upload Reconciliation**. Upload the CSV file from Services Australia.
The system validates the file and shows a review:
* **Success** - all items match. Click **Confirm** to apply
* **Warning** - some items would be removed. Review the impacted items, then confirm or cancel
* **Error** - no items match. Verify you uploaded the correct file
Once claims are reconciled, create invoices:
1. From the invoices tab, click **Create Invoice**
2. Select Date range - Select All - Create Invoice
3. Three invoice types are possible:
* **Government invoice** (marked with a "-G" suffix) - billed to Services Australia for the approved government funding
* **Participant invoice** (no suffix) - billed to the participant for their contribution, if applicable'
* **Gap invoice** (marked with GAP suffix) - billed to a nominated payer
Visualcare determines who to bill based on your configuration. The government invoice is billed to the payer set on the client's SAH agreement (the Agreement Payer), or the payer on the client profile if no agreement payer is set. The participant invoice is billed to the accounting code set on the client profile.
Once a claim has reconciled, you'll need to refresh the budget information pulled from the API so it's reflected correctly on the participant's SAH tab and on the dashboards. There are two ways to do this:
1. Open each participant profile and load the SAH tab
2. Email [support@visualcare.com.au](mailto:support@visualcare.com.au) and request a Budget Refresh for all Support at Home participants
This MUST be completed before monthly statements are generated.
## Payment information
After a claim is reconciled, each claimed item shows a Payment Information panel with:
| Field | Description |
| - | - |
| **Claimed Amount** | Total amount you submitted |
| **Paid Amount** | Amount received from Services Australia |
| **Variance/GAP** | Difference between claimed and paid (with percentage) |
| **Reconciliation Notes** | Notes about any payment discrepancies |
## Exporting invoices to accounting software
After generating invoices, export them to your accounting software. Visualcare supports direct API integrations with Xero, MYOB AccountRight, MYOB Advanced, QuickBooks Online, and Microsoft Dynamics 365. CSV export formats are available for Xero, MYOB, MYOB Advanced, Attache, TechOne, and Magiq.
### Invoice statuses
| Status | Description |
| - | - |
| **Draft** | Invoice created but not yet exported |
| **Downloaded** | CSV export has been downloaded |
| **Exported/Sent** | Sent to accounting system via API |
### Setting up for SAH invoicing
Before exporting SAH invoices, prepare your accounting software and Visualcare configuration:
**Accounting software:**
* Add Services Australia as a customer or contact for government invoices
* Add SAH service items with the appropriate codes
* Set up tracking categories for SAH-specific reporting (if using Xero)
**Visualcare:**
* Assign an accounting code to each payer that matches your accounting software
* Assign an accounting code to each SAH service
* Configure your accounting software connection in **Settings** → **Data Export**
| Setting | Description |
| - | - |
| **Xero Use GST** | Tick to have Visualcare apply its own GST codes rather than pulling them from the Xero inventory item |
| **GST Code** | Code for GST-applicable items |
| **GST-Free Code** | Code for GST-free items |
| **Invoice Days** | Days until payment due |
| **Tracking Categories** | Map Area, Division, or Client Type to Xero tracking |
| Setting | Description |
| - | - |
| **Company File** | Your MYOB company file |
| **Invoice Delivery Status** | Default delivery status |
| **Payment Terms** | Default payment terms |
| Field | Description |
| - | - |
| Invoice Number | Unique invoice identifier |
| Invoice Date | Date the invoice was created |
| Due Date | Payment due date (configurable per organisation) |
| Participant Name | Name of the care recipient |
| Service Description | Description of the service provided |
| Service Code | Accounting code for the service item |
| Quantity | Number of units delivered |
| Unit Amount | Price per unit |
| Total Amount | Line item total |
| Payer | Accounting code for the payer or funder |
| GST/Tax Code | Applicable tax type (GST or GST-Free) |
| Tracking Categories | Area, Division, or Client Type (for Xero) |
| Error | Cause | Solution |
| - | - | - |
| Missing Payer (Accounting Code) | No payer accounting code assigned to the invoice line | Assign a payer with an accounting code to the participant's agreement |
| Missing Service Accounting Code | Service doesn't have an accounting code configured | Configure an accounting code in the service setup |
| Invoice not found | Attempting to export a deleted or invalid invoice | Refresh the invoice list and try again |
| Invoice has been \[status] | Invoice already exported or in a non-exportable state | Only draft or downloaded invoices are re-exportable |
| No invoice refs to export | No invoices selected for export | Select at least one invoice before exporting |
### Reconciling with accounting software
After exporting invoices:
1. Import the CSV file into your accounting software (for CSV exports) or review the automatically created invoices (for API integrations)
2. Review imported invoices for accuracy
3. Process payments as they come in
4. Reconcile payments in your accounting software
## Claim statuses
| Status | Label shown | Description | Available actions |
| - | - | - | - |
| **Draft** | Draft | Claim is being prepared | Add or remove items, submit, delete, preview CSV |
| **Submitted** | Submitted | Sent via API, awaiting processing | View details, upload reconciliation |
| **CSV** | Submitted | Exported as CSV for manual upload | Upload reconciliation, amend (return to draft) |
| **Claimed** | Claimed | Services Australia has approved the claim | Create invoice, export details |
| **Partially Closed** | Processing | Some items invoiced, others remain | Create invoice, export details |
| **Rejected** | Rejected | Services Australia rejected the claim | Edit the claim, resubmit |
| **Closed** | Closed | All items have been invoiced | View only (historical record) |
## SAH service types and attachment requirements
| Code | Service type | Description | Attachments needed |
| - | - | - | - |
| **AT** | Assistive Technology | Equipment and devices | Yes (receipts and invoices) |
| **CM** | Care Management | Care coordination | No |
| **EL** | Everyday Living | Personal care, domestic help | No |
| **HM** | Home Modifications | Ramps, rails, modifications | Yes (receipts and invoices) |
| **RC** | Respite Care | Short-term relief care | No |
| **ON** | Home Support Ongoing | Regular ongoing services | No |
## Best practices
* **Claim regularly** - submit weekly or monthly to avoid late submission issues
* **Check for blockers** - always review red blocker errors before submitting
* **Attach receipts** - make sure AT and HM services have receipts uploaded before claiming
* **Back up claim CSVs** - save your original claim CSV before reconciliation
* **Late submissions** - services older than 30 days need a late submission reason code
## Typical claiming timeline
| Stage | Typical duration |
| - | - |
| Draft to submit | 5 to 15 minutes |
| Submit to response | 24 to 48 hours |
| Reconciliation to invoice | 5 to 10 minutes |
| **Total** | Two to three business days |
## Lodging a late claim
Support at Home claims must be finalised within 60 days of the relevant deadline. Claims submitted from day 61 onwards are considered **late** and must go through Services Australia's delegate approval process — payment isn't guaranteed.
The late submission code must be added manually to columns **V** and **W** of the claim CSV Visualcare generates, before uploading to ACPP.
### Standard deadlines
| Claim type | Deadline |
| - | - |
| Ongoing services (quarterly) | 60 days after end of quarter |
| Restorative Care / End-of-Life Pathway | 60 days after end of episode |
| AT-HM scheme | 60 days after end of allocation period |
| Care management account | 60 days after end of financial year (29 Aug) |
| Participant exit | 60 days after exit date |
**Quarterly deadlines:** 30 May (Jan–Mar) · 29 Aug (Apr–Jun) · 29 Nov (Jul–Sep) · 1 Mar (Oct–Dec)
**Transitional arrangement:** services delivered 1 Nov–31 Dec 2025 have until 31 March 2026 to submit without late-claim documentation. Standard 60-day rule applies from Q1 2026 onwards.
### Late submission codes and evidence
| Code | Reason | Evidence (examples) |
| - | - | - |
| `SHORT_STAFFED` | Staff shortages/recruitment | Resignation letter, recruitment records, new-hire offer/contract |
| `HEALTH_CONDITION` | Staff illness | Medical certificate, approved sick leave, stat. declaration |
| `STAFF_TRAINING` | Training/capacity building | Certificate, registration, leave approval for training |
| `LEAVE` | Annual/personal leave | Leave approval or roster/timesheet record |
| `CULTURAL_LEAVE` | Cultural leave (e.g. NAIDOC) | Brief explanation (free text) |
| `IT_ISSUE` | System outage/maintenance | Screenshots, outage notice, IT ticket |
| `CYBER_SECURITY` | Breach/cyber incident | Incident report, breach notification, OAIC report |
| `DATA_ISSUE` | Database/data warehouse issues | Screenshots, incident report, error logs |
| `LATE_THIRD_PARTY` | Late third-party invoicing | Invoice/receipt with date |
| `NATURAL_DISASTER` | Disaster, border restriction, outbreak, death | Gov notice, BOM warning, media coverage |
| `FIRST_NATIONS_PEOPLE` | First Nations extenuating circumstances | Brief explanation (free text) |
| `ADMINISTRATIVE_ERROR` | Commonwealth error | Evidence of incorrect payment/advice |
| `COMPLEX_HOME_MODIFICATION` | Build interrupted by death/health decline | Exit/death notice + proof build underway |
| `DECEASED_CARE_RECIPIENT` | Deceased participant | Death certificate, Centrelink/BDM notice |
| `OTHER` | Anything else | Brief explanation + supporting evidence |
Providers must retain evidence and may be subject to program assurance review.
### How to lodge
1. Select the code that best matches the cause (reference others in evidence if more than one applies)
2. Gather the required evidence
3. Submit via ACPP or B2G software — select code, attach evidence; claim is flagged for delegate review
4. Unsure which code applies? Call Services Australia: **1800 195 206** (Mon–Fri, business hours)
5. Standard claims process within 7 days; late claims take longer due to delegate review
### Participant exits
If a participant has exited, you have 60 days from the exit date to finalise outstanding claims/care events. Anything outside that window also requires a late submission code and evidence.
## Frequently asked questions
ISO codes published by the Department of Health are classification codes used for policy and eligibility guidance. Visualcare uses Services Australia's technical claiming codes, which are the only codes accepted for SAH claim submissions.
The SAH portal doesn't accept negative amounts on claims. Contact Services Australia directly to resolve duplicate claims on an ad-hoc basis.
Yes. Data export invoicing includes co-contributions. Visualcare uses the participant contribution category values to generate separate government and participant invoices.
The system automatically calculates the split based on the reconciliation data from Services Australia. Government and participant portions are tracked separately and exported as separate invoices.
No. The **Upload Reconciliation** workflow only applies to claims created on Visualcare's SAH Claiming screen. Visualcare matches the reconciliation file against the items in the original claim, so a claim submitted outside Visualcare has nothing to match against. To bring externally submitted claims into Visualcare, contact [support@visualcare.com.au](mailto:support@visualcare.com.au).
Yes. You can submit bulk claims for multiple participants over a selected timeframe, or submit claims for individual participants and service items.
Mismatched information results in an error or rejected claim. These issues are flagged at the time of submission. Make sure participant details are accurate and up to date before submitting.
Funding availability is checked against the date of the service, not the date it's claimed or the date funding is later approved. If the participant didn't have enough available balance on the service date, only part of the amount is paid and the item shows as partially paid.
This comes up most often with AT or HM funding approved after the item was purchased. That approval only covers the earlier item if the funding period is backdated to include the date of the original service - otherwise the item remains partially paid, even though funding now exists.
Items that have been partially paid or not paid, appear on a participant's monthly statement, showing the Gap amount. To claim the remaining amount or to reclaim the entire amount, enter a new expense item for the shortfall.
***Confirm funding is actually available for that date first, or the new item will be rejected for the same reason.***
## Running into issues?
See [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Export invoices to Xero, MYOB, and other accounting platforms
Submit Commonwealth Home Support Programme claims
# Claiming and invoicing overview
Source: https://support.visualcare.com.au/finance/claiming-invoicing-overview
How billing, claiming, and invoicing work in Visualcare across NDIS, CHSP, SAH, and HCP funding types
Visualcare connects your service delivery to your accounting and claiming systems. Once timesheets are confirmed, you export them as invoices (to bill clients or payers) or as payroll data (to pay workers). The export process varies depending on the funding type and your accounting software.
## Setting up for invoicing
Before you can export invoices, client profiles and services need to be linked to their matching records in your accounting software. This mapping tells Visualcare where to send each invoice and which inventory item to bill against.
### Client setup
Each client profile needs an **Accounting Code** that maps to a contact in your accounting software (for example, a Xero contact).
1. Open the client's profile and go to the **Finance** tab.
2. Click the **Accounting Code** drop-down and select the matching contact.
3. If the client doesn't appear in the list, create the contact in your accounting software, then resync so it appears in the drop-down and can be selected.
To set up a payer for a client:
1. Go to **Maintenance** → **Payers** and create the payer record.
2. Assign an **Accounting Code** to the payer so invoices route to the correct contact in your accounting software.
3. Open the client's profile and assign the payer under their funding agreement or profile settings.
If a client has both plan-managed and agency-managed services, create separate agreements for each funding type. Set the payer on the agency-managed agreement only and leave the plan-managed agreement's payer blank.
### Service setup
Each service also needs an **Accounting Code** linking it to an inventory item in your accounting software.
1. Go to **Maintenance** → **Services**.
2. Select the service you want to configure.
3. Click the **Accounting Code** drop-down and select the matching inventory item from your accounting software.
Visualcare's charge rate overrides the price listed on the inventory item in your accounting software. The price on the inventory item is not used for billing. Visualcare's charge rate is what gets sent.
## How data export works
All billing and payroll exports start from the **Timesheets** tab in vCore. The **Data Export** page is your central hub for sending confirmed timesheet data to your accounting software, the National Disability Insurance Scheme (NDIS) portal, or other claiming systems.
### Payer lookup order
When you export invoices, Visualcare determines who to bill using this order:
1. **Agreement payer** - the payer listed on the client's agreement
2. **Client profile payer** - the payer set in the client's profile
3. **Client accounting code** - the accounting code on the client's profile
If none of these are set, the export summary shows an error for that timesheet entry.
Set up payers at the agreement level for the most accurate billing. This gives you the flexibility to have different payers for different service agreements under the same client.
### Getting to data export
Navigate to **Timesheets** → **Data Export**.
The dates default to the current payroll period. To export invoicing on a different cycle (for example, weekly invoicing with fortnightly payroll), set a specific date range at the top of the screen and click **Reload**. All confirmed shifts for that period display at the bottom.
### Selecting and exporting timesheets
Select the items you want to export using the tick boxes on the left. Then click the relevant export button:
* **Export Invoices** - sends invoice data to your accounting software or downloads a CSV
* **Export Timesheets** - sends payroll data to your accounting software
* **Export KMs** - an option under the **Export Timesheets** drop-down that exports kilometre reimbursements for payroll (after timesheets have been approved). There is no separate KM export for invoicing - transport kilometres charged to the client are automatically added to the client's invoice in the standard invoice export
* **Export to NDIS** - exports a CSV for NDIS claiming
Both the invoice and timesheet export buttons display an **Export Summary** that highlights any errors and explains why specific items won't export. You can filter to show only failures or only successful items, and download the failures as a CSV to correct missing codes.
Resolve all errors before processing the export. Missing accounting codes, payer details, or service configurations are the most common causes of export failures.
After a successful invoice export, invoices appear as drafts in your accounting software's draft section. Visualcare auto-populates the **Description**, **Quantity** (from hours worked), **Price** (from the charge rate), and **Reference** fields. Review the drafts before approving them in your accounting software.
### How payroll export matching works
When you export timesheets for payroll, Visualcare matches the **Accounting Code** on the worker's profile to the employee or supplier contact in your accounting software. The worker's **Pay Level** (set in their Finance section) determines which pay item to export against based on the service's pay level configuration.
Pay rates entered in Visualcare are not exported. The pay rate configured on the pay item or pay template in your accounting software is the rate that gets paid. Visualcare only sends the hours and the pay item code.
## Export types at a glance
| Export type | What it does | Where to find it |
| - | - | - |
| Invoice export | Bills clients or payers for services delivered | **Timesheets** → **Data Export** → **Export Invoices** |
| Payroll export | Sends pay data to your accounting or payroll software | **Timesheets** → **Data Export** → **Export Timesheets** |
| Expense invoicing | Bills clients for expenses marked as chargeable | **Timesheets** → **Data Export** → **Expenses** tab |
| Expense reimbursement | Reimburses workers for out-of-pocket expenses | **Timesheets** → **Data Export** → **Expenses** tab |
| KM export | Exports kilometre reimbursements for payroll. Transport KM charges are included automatically in the standard invoice export | **Timesheets** → **Data Export** → **Export Timesheets** → **Export KMs** |
| NDIS claiming | Exports claim data for the NDIS portal | **Timesheets** → **Data Export** → **Export to NDIS** |
| CHSP/DEX claiming | Generates claim data for the Data Exchange (DEX) portal | **Timesheets** → **Data Export** |
| SAH claiming | Generates claim data for the ACPP portal for Support at Home | **Timesheets** → **SAH Claiming** |
| HCP statements | Generates Home Care Package statements and claim files | **Timesheets** → **Data Export - HCP** |
## Expenses
Expenses are recorded on the client profile under the **Expenses** tab and flow through to data export. See [Client expenses](/client-management/client-expenses) for how to record and manage them, and [Bulk import expenses for SAH](/client-management/sah-bulk-import-expenses) if you're loading SAH participant expenses in bulk.
Expenses fall into two categories during export:
* **Charge to client** - expenses marked with **Is Charge** are exported as invoices to the client or payer
* **Reimburse to worker** - expenses marked with **Is Reimbursement** are exported through the payroll export process
Both types are accessed from the **Expenses** tab at the top of the Data Export page. For SAH participants, chargeable expenses are claimed through the [SAH claiming](/finance/billing-to-sah) workflow rather than the standard invoice export.
## Submitting claims to Services Australia (SAH)
Support at Home (SAH) claim files are generated through Visualcare's SAH claiming screen, not through the standard **Data Export** page. This is a separate workflow because SAH requires reconciliation, split invoices (government and participant portions), and, monthly statements.
1. Go to **Timesheets** → **SAH Claiming**.
2. Confirm each participant's Services Australia API connection is set up.
3. Follow the steps in [Billing to Support at Home](/finance/billing-to-sah) to create, submit, and reconcile the claim.
SAH claiming requires the Services Australia API integration. See [Services Australia integration for Support at Home](/integrations/sah-api) to complete the connection before your first claim.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Step-by-step guide to exporting invoices and payroll to Xero, MYOB, and other accounting platforms
Export timesheet data to your payroll software
Export and manage kilometre data for billing and reimbursement
Create, submit, and reconcile SAH claims with Services Australia
Record client expenses and prepare them for invoicing or reimbursement
# Exporting payroll data
Source: https://support.visualcare.com.au/finance/exporting-payroll-data
Step-by-step guide to exporting timesheet data from Visualcare to your payroll software
Visualcare exports payroll data by matching the accounting code on each worker's profile to the employee or supplier contact in your payroll software. The worker's pay level (set in their **Finance** section) determines which pay item is exported based on the service they provided.
Pay rates entered in Visualcare are not exported to your payroll software. The pay rate or pay template configured in your payroll software (for example, Xero) is the rate that gets paid. Visualcare's role is to match the worker, service level, and hours to the correct pay item.
## What you'll need
* Confirmed timesheets for the period you want to export
* Worker profiles with accounting codes matching employee or supplier contacts in your payroll software
* Pay levels set in each worker's **Finance** section
* Your payroll software integration configured in **Settings** → **Data Export**
## Setting up payroll export
Before running your first payroll export, you need to configure pay levels, assign them to workers, and map each worker to their corresponding record in your payroll software.
### Configure pay levels
Pay levels are set up once and then assigned to workers. By default, the labels are generic (R1, R2, and so on). Adding descriptive labels makes it easier to identify the right level when assigning to workers.
1. Go to **Settings** → **Settings** → **Finance** → **Pay Levels**.
2. Click **Edit** next to a pay level.
3. Enter a descriptive label, for example "CAS Level 1 - Pay Point 3".
4. Save the changes.
Pay level labels are descriptive only. They don't affect calculations - they're there to help you identify the right level when setting up workers.
### Assign pay levels to workers
Each worker needs a pay level assigned in their profile before their timesheets can export correctly. There are two ways to set a worker's pay level:
**From the Finance tab:**
1. Open the worker's profile and go to the **Finance** tab.
2. Click **Update Pay Levels and Rates**.
3. Select the appropriate pay level for the worker.
4. Choose a **From Date** for when the pay level takes effect.
5. Click **Update**.
**Using the Update Pay Level button:**
1. Open the worker's profile and go to the **Finance** tab.
2. Click **Update Pay Level**.
3. Select the pay level from the drop-down.
4. Choose the effective date.
5. Click **Save**.
### Map workers to your payroll software
Each worker profile also needs an **Accounting Code** linking it to the matching employee or supplier in your payroll software.
1. In the worker's **Finance** tab, click the **Accounting Code** drop-down.
2. Select **Employees** if the worker is paid as an employee in your payroll software, or **Suppliers** if they're a contractor.
3. If the worker doesn't appear in the list, click **Sync Code from Xero** to import them.
## Exporting timesheets for payroll
Navigate to **Timesheets** → **Data Export**.
Configure the date range for the payroll period and click **Reload**.
Select the timesheets you want to export by ticking individual items or selecting all. Then click **Export Timesheets** → **Export to Xero** (or your payroll software).
The export summary pop-up shows any errors for the data you're exporting. Click **Process Export** to proceed to the export status page.
Click **Start Import** to send the data from Visualcare to your payroll software. If errors appear on this page, they typically indicate a setup issue in the payroll software.
## Exporting kilometres for payroll
After you've exported timesheets, approved them, and started a pay run in your payroll software, you can export kilometre data. On the same data export page, click **Export Timesheets** and select the **Export KMs** option.
The KM export follows the same process as the timesheet export. For help setting up kilometres, see [Kilometres sync](/finance/kilometres-sync).
## Exporting expense reimbursements
To reimburse workers for out-of-pocket expenses:
On the Data Export page, click **Expenses** at the top. All expenses in the selected date range appear.
Select the expenses you want to reimburse, then click **Export Reimbursement** → **Export to Xero** (or your payroll software).
Click **Process Export** on the summary pop-up, then **Start Import** on the export status page.
## How payroll matching works
Visualcare matches payroll data using this logic:
| Visualcare field | Payroll software field |
| - | - |
| Worker accounting code | Employee or supplier contact |
| Worker pay level | Pay item or pay template |
| Service pay level | Pay rate level for that service |
When a worker provides a service, their pay level is matched to the service's pay level to determine which pay item to export. The actual dollar rate comes from the pay item configuration in your payroll software, not from Visualcare.
If a worker provides services at different pay levels, set up service-level pay rate overrides in their **Engagement Details**. See [Engagement details](/worker-management/engagement-details) for more details.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Export invoices to your accounting software
Configure award details and pay rate overrides on a worker profile
Export and manage kilometre data for billing and reimbursement
# Finance
Source: https://support.visualcare.com.au/finance/index
Billing, payroll preparation, and data sync with accounting and payroll software
# Finance
Manage billing, payroll exports, and data synchronisation with your accounting and payroll software.
Invoice to NDIS, SAH, CHSP, HACC, and accounting software
Export payroll data and manage pay rules
Sync contacts, pay items, and inventory items with your accounting software
# Kilometres sync
Source: https://support.visualcare.com.au/finance/kilometres-sync
How Visualcare captures, calculates, and exports kilometre data for client billing and worker reimbursement
Visualcare captures two types of kilometre data: kilometres for client transport (charged to the client and reimbursed to the worker) and kilometres between visits (paid to the worker but not charged to the client). Both types flow into the data export process for billing and payroll.
## Types of kilometres
### KMs for transport
Transport kilometres are recorded by the worker through the mobile app or manually entered in the timesheets area. The column header in timesheets is **KM**. These kilometres are:
* **Charged to the client** as part of the invoice export
* **Reimbursed to the worker** as part of the payroll export
You can override the kilometres entered by the worker from the mobile app if needed. Remember to click **Save** after making changes.
### KMs between visits
Kilometres between visits are automatically calculated based on the client's address and the time between shifts. These settings are configured in the **Settings** → **Finance** → **Kilometre** section. These kilometres are:
* **Paid to the worker** as a reimbursement
* **Not charged to the client**
In timesheets, the **KM No Charge** column shows these values after you click the **Calc KM** button at the bottom of the screen.
To prevent the **KM No Charge** column from reverting when you next click **Calc KM**, tick the **Lock KM No Charge** checkbox for that row after making your override. Remember to click **Save**.
## Exporting kilometres
### KMs on invoices (charge to client)
There is no separate KM export for invoicing. Transport kilometres charged to the client are automatically added to the client's invoice as part of the standard invoice export - when you run **Export Invoices** on the Data Export page, the KM amounts are included on the invoice.
### KM export for payroll (reimburse to worker)
After you've exported timesheets, approved them, and started a pay run in your payroll software, export kilometres from the same Data Export page by clicking **Export Timesheets** → **Export KMs**. The process follows the same steps as the standard timesheet export.
The **KM Pay Type** in your Xero settings (**Settings** → **Data Export** → **Xero**) needs to match how your KM pay codes are set up in Xero. Select **pay item** if the codes are Ordinary Time Earnings, or **reimbursement** if they're reimbursements.
## How Calculate KM works
When you click **Calc KM**, Visualcare uses the Google Maps API to find the quickest route between two addresses. The first time a pair of addresses is calculated, the distance is saved in the database and reused for all future lookups between those same addresses. This means subsequent calculations are instant and don't call the Google Maps API again.
The **KM** option in client agreements does not currently enforce limits or trigger alerts. It is a placeholder field and does not affect KM calculations or export behaviour.
## KM charge rate showing as \$0 on timesheets
If the KM charge rate on a timesheet saves as zero even though the rate in **Settings** is greater than zero, this is caused by the KM charge rate storage setting. When the setting is configured to **Export use KM charge rate above**, the timesheet stores a zero rate by design. The export always uses the rate from Settings regardless of the value stored on the timesheet.
If you want to see the KM charge rate on the timesheet for reporting purposes, change the setting to store the rate directly on the timesheet. Either way, the exported amount uses the correct rate from Settings.
## Configuring KM between visits settings
Before using **Calc KM**, set up the kilometres between visits options in **Settings** → **Finance** → **Kilometre** section:
| Setting | Description |
| - | - |
| **Max KM Warning** | Flags any KM amount greater than this value for review. Applies to kilometres travelled during a shift, not between shifts |
| **Max minutes between shifts** | If the time between two shifts exceeds this amount, the distance and time between those shifts is not calculated |
| **Pay Code (KM Between, No Charge)** | Select the pay code from your accounting software to use for KM between visits |
| **KM Between Charge/Pay** | Controls whether KM between visits is charged to the client and/or paid to the worker. Options: **Charge and Pay**, **Charge but No Pay**, **No Charge but Pay**, **No Charge No Pay** |
Once configured, navigate to **Worker Timesheets** or **All Timesheets** and click **Calc KM**. Google Maps calculates the distance between consecutive shifts. The first shift of the day is skipped. Click **Save Changes** to apply. The KM between values are then included in the next data export.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Step-by-step guide to exporting timesheet data to your payroll software
Export invoices to your accounting platform
Configure award details and pay rate overrides on a worker profile
Overview of all billing and export options in Visualcare
# NDIS kilometres and transport
Source: https://support.visualcare.com.au/finance/ndis-kilometres-and-transport
How kilometres map to NDIS funding categories, where to configure charge codes, and how they flow through to invoicing
This article explains how kilometres work for NDIS clients - how they're recorded, how they map to NDIS funding categories, and how they flow through to invoicing. For the generic mechanics of recording and exporting kilometres, see [Kilometres sync](/finance/kilometres-sync).
NDIS kilometre codes are tightly regulated. Each kilometre type maps to a specific funding category in a participant's plan, and plan managers reject invoices that use the wrong code. Understanding the distinction between activity-based transport and provider travel - and how Visualcare handles each - is essential for setting up NDIS clients correctly.
## Terminology: NDIS vs Visualcare
The NDIS uses different language to what you see inside Visualcare:
| Visualcare label | NDIS label | What it means |
| - | - | - |
| KM | Activity-based transport | The worker transports the participant during a shift, for example driving them to the shops or a medical appointment |
| KM No Charge (between shifts) | Provider travel (non-labour cost) | The worker drives between one client shift and the next |
| Travel time | Provider travel (labour cost) | The time the worker spends driving between shifts |
The split between labour and non-labour cost exists because the NDIS distinguishes time (a labour cost, paid at the worker's applicable rate) from distance (a non-labour cost, billed as a separate line item).
These terms cause confusion when clients raise queries using NDIS terminology. If you hear "provider travel non-labour cost isn't working", they're talking about kilometres between shifts.
## NDIS kilometre codes
NDIS kilometre codes follow a strict format. The middle three digits of a support item number indicate what type of service the kilometre relates to:
* **590** - activity-based transport (kilometres during a shift)
* **799** - provider travel (kilometres between shifts)
Provider travel has far more codes than activity-based transport because it spans every support category. Activity-based transport codes are fewer and simpler - typically two or three common ones.
When a worker drives a participant during a shift, the kilometre claim needs to match the service being delivered. For example, if the shift is coded to community access (04 prefix with 0125 group code), the kilometre code must be the activity-based transport equivalent for that same category. A plan manager rejects the invoice if the codes don't align.
Not all service types allow activity-based transport. For example, self-care shifts cannot claim kilometres during a shift. If a worker drives a participant during a self-care shift, either change the service code or handle the adjustment in your accounting software.
## How kilometres appear in timesheets
Kilometres are only added to a shift once it's a confirmed timesheet - there is no way to set a kilometre budget at the roster stage.
Timesheets have three kilometre columns:
| Column | Meaning | How it's filled |
| - | - | - |
| **KM** | Kilometres during a shift (activity-based transport) | Entered by the support worker in the app when clocking off, or adjusted by office staff |
| **KM no charge between shifts** | Kilometres between shifts (provider travel, non-labour) | Usually calculated by the office using the **Calc KM** button |
| **KM travel time** | Time between shifts (provider travel, labour) | Calculated via the same **Calc KM** process |
**Calc KM** looks at the addresses in each client's profile and uses Google Maps to calculate the distance and driving time between consecutive shifts for the same worker on the same day. It skips the first shift of the day, shifts where the client address is blank, and gaps that exceed the threshold set in settings.
Most providers have office staff calculate between-shift kilometres rather than allowing workers to enter them through the app.
Travel time caps at 30 or 60 minutes per shift based on the participant's Modified Monash Model (MMM) level, in line with [NDIS travel claiming rules](https://www.ndis.gov.au/news/10827-travel-claiming-rules-gap-fees-and-other-costs).
## Configuring charge codes
### Global KM charge code (activity-based transport)
The global charge code for kilometres during a shift is set in **Settings** → **Finance** → **Kilometre**, under **Charge Code**. This maps to an inventory item in your accounting software and applies to all clients unless overridden.
### Agreement-level override
If a specific client's activity-based transport needs a different code, open the client's agreement and enable **Override KM Charge Code**. The code set there takes precedence over the global setting for that client.
### Provider travel code (kilometres between shifts)
The code for kilometres between shifts is set at the service level, not globally. Go to **Maintenance** → **Services**, open the relevant service, and select the appropriate NDIS KM code from the **NDIS KM** dropdown. This is how Visualcare knows which provider travel code to use for each service.
For example, a community access service on a weekday daytime maps to a provider travel code starting with `04_799`, while a different service maps to a different variant. The code must correspond to the same support category as the service itself.
## How it flows to invoicing
When you export timesheets to Xero, kilometres become separate line items on the invoice with distinct descriptions. A plan manager receiving the invoice sees:
* The shift itself
* Activity-based transport (kilometres during the shift)
* Provider travel non-labour cost (kilometres between shifts)
* Provider travel labour cost (travel time), if applicable
The description text for each line item is configured in **Settings** → **Data Export** → **Xero Invoice Description**. You customise what appears for KM charge, provider travel, and travel time separately.
After exporting, open the invoice in the invoices view to confirm the kilometre line items appear separately with the correct codes and descriptions.
## Charge and pay settings
Under **Settings** → **Finance** → **Kilometre**, configure whether kilometres between shifts are:
* Charge and pay
* Charge but no pay
* No charge but pay
* No charge and no pay
This is set during implementation based on your preference. The SCHADS Award requires travel time between shifts to be paid as time worked - the setting supports either approach.
For travel time pay, if the **Pay Code Travel Time** field is left blank, Visualcare adds travel time hours into the same pay item as the service being provided. A worker doing Sunday shifts then gets Sunday-rate pay for their travel time automatically, rather than a flat travel rate regardless of the day.
Leaving the travel time pay code blank is usually the correct approach for NDIS providers, as travel pay then inherits the correct penalty rate for the day.
## Location roster shifts
Location shifts work differently because the worker is rostered to a location, not to individual clients. There is no automatic link between the worker timesheet and each client shift.
If a worker enters kilometres at the end of their shift without attributing them to specific clients, those kilometres won't appear on any client timesheet and can't be invoiced.
To correctly attribute kilometres on a location shift, the worker uses the vWorker app:
1. During the shift, tap **Profile**
2. Select the specific client they transported
3. Enter the kilometres for that client
This adds the kilometres to the relevant client shift and totals them on the worker timesheet automatically. If a worker took multiple clients on different trips, they enter kilometres for each client separately and the app totals them.
This is a significant process change for providers coming from a simpler setup, and it gets missed often - especially in day programs. If a worker enters one total at clock-off without attributing it to clients, the kilometres appear on the worker timesheet but not on any client timesheet. The worker is paid but nothing is charged, which adds up quickly. Support workers used to entering one total at clock-off need specific training on the location roster workflow.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How Visualcare captures, calculates, and exports kilometre data
How workers view and manage location roster shifts in the app
Applying NDIS Support Catalogue price updates
Export invoices to your accounting platform
# SLES billing
Source: https://support.visualcare.com.au/finance/sles-billing
How to configure School Leavers Employment Supports (SLES) billing in Visualcare using location rostering
Visualcare supports School Leavers Employment Supports (SLES) billing through location rostering. SLES participants are managed as clients in Visualcare for NDIS claiming purposes, with weekly charges applied either before or after the days worked for both individuals and groups.
## Setting up SLES billing
SLES billing uses the location rostering model in Visualcare. To set up SLES:
1. Create client profiles for each SLES participant
2. Set up a location roster for the SLES site
3. Configure the NDIS agreement with the appropriate SLES support items
4. Roster participants to the location
The system supports tiered weekly billing for groups of participants at a location.
## Worker payments for SLES
For paying SLES workers, it's recommended to manage timesheets in your payroll software (such as Xero) rather than in Visualcare. This avoids the complexity of rostering the same person as both a client and a worker.
If your payroll software doesn't accommodate SLES worker timesheets, participants need to be set up as both clients and workers in Visualcare and rostered on the location.
Using the payroll software approach keeps the Visualcare configuration simpler and avoids duplicate profiles. Only set up participants as both clients and workers if your payroll system doesn't support the SLES workflow.
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Overview of all billing and export options in Visualcare
Configure NDIS agreements and support items
# Column chooser
Source: https://support.visualcare.com.au/getting-started/column-chooser
Customise which columns appear in table views across Visualcare
Most table views in Visualcare let you add, remove, and rearrange columns using the column chooser. This gives you control over what data is visible without changing the underlying records.
The column chooser is available on tables throughout vCore, including incidents, notes, timesheets, compliance registers, client and worker lists, and roster views.
## Using the column chooser
### Adding columns
1. Click the **Column Chooser** button above the table (it may appear as a grid or drag icon depending on the view)
2. A panel opens showing all available columns that aren't currently displayed
3. Drag a column from the panel into the table header row at the position you want it
The column appears immediately and the table updates with the new data.
### Removing columns
Drag a column header out of the table and back into the column chooser panel. The column is removed from the view but the data is still available to add back at any time.
### Rearranging columns
Drag column headers left or right within the table to change their order. Drop the header at the position you want.
## Column persistence
Your column chooser settings are saved per user account. When you customise a table view, your changes persist the next time you return to that page. Other users aren't affected by your changes.
Set up your preferred columns once for each table you use regularly. The time investment pays off across every session.
## Common column chooser scenarios
The column chooser is referenced across many areas of Visualcare. Here are some of the most common uses:
| Scenario | Where | Column to add |
| - | - | - |
| Delete a note | **Client Profile** → **Notes** tab | **Delete** column (requires the "Ability to delete note" permission) |
| View incident IDs | **Operations** → **Incidents** | **Incident ID** column |
| See compliance expiry dates | **Worker** or **Client Compliance** tab | **Expiry Date**, **Alert Date** columns |
| Track SIRS reporting status | **Operations** → **Incidents** → **SIRS** | Response dates, assigned user, and reporting status columns |
| Review shift details in timesheets | **Timesheets** | Worker-specific or service-specific columns |
## Filtering and grouping
Alongside the column chooser, most tables support:
* **Column filters** to narrow results within a specific column (click the filter icon on a column header)
* **Search** to find records by keyword across all visible columns
* **Column grouping** to group rows by a column value (drag a column header to the grouping area above the table)
These tools work together with the column chooser to give you a tailored view of your data.
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common access problems.
## Related articles
Header icons, KPI tiles, and product feedback on the home page
Quick access panels, shift map, and daily summary
Manage client notes and tasks, including the Delete column
# Connecting Visualcare with your Accounting Software
Source: https://support.visualcare.com.au/getting-started/connecting-accounting-software
Authorise Xero and sync contacts, employees, and pay items into Visualcare
Watch the video walkthrough, then follow the steps below.
1. Click the **Settings** icon in the top right corner of Visualcare.
2. Select **Settings** from the dropdown menu.
3. Navigate to **Data Export**.
1. Click the **Authorize Xero** button at the top left.
2. If prompted, enter your Xero username and password on the login page.
3. Click **Continue with one organization** to select the Xero organisation to connect.
4. After authorisation, you'll be returned to Visualcare's Data Export settings.
* Click **Show Connected Org Details** to confirm the Xero organisation you're connected to.
* To disconnect and reconnect later, click **Clear Xero Token**, which will revert the page back to showing the **Authorize Xero** button.
1. Scroll to the bottom of the **Data Export** page.
2. Locate the **Xero Sync** section.
3. Click all the **Sync** buttons to bring data from Xero into Visualcare, including:
* Contacts
* Inventory Items
* Employees
* Pay Items
* Tax Rates
Once synced, your data from Xero is ready to use in Visualcare. Refer to the follow-up guides for [payroll setup](/getting-started/setting-up-services-for-payroll) and [invoice setup](/getting-started/invoicing-requirements-client-profiles).
# How to Create a Client Agreement
Source: https://support.visualcare.com.au/getting-started/create-a-client-agreement
Create a client agreement in Visualcare, including funding management, NDIS activity type, and approved services
Watch the video walkthrough, then follow the steps below.
1. Go to your client's profile.
2. Select the **Agreements** tab.
1. Click **New Agreement**.
2. Select **Create** to start the agreement.
1. Choose the **Agreement Type**.
2. Enter the budget details if they are available.
3. Add the **Agreement Start Date**.
4. Set an **Alert Date** (optional).
5. Click **Save** to keep your changes.
* If the client receives only one-on-one services, leave this set to **Direct 1:1**.
* If the client receives any ratioed services, change it to **Set Ratio When Rostering**.
Choose how the client's services are funded:
* Agency Managed
* Plan Managed
* Self-Managed
If the client uses more than one funding type, you must create a separate agreement for each funding management type.
1. Click **Add Services** in the bottom-left corner.
2. Use the filters to find the services included in the client's approved plan.
3. Select all relevant services.
4. Click **Add Services** to include them in the agreement.
Your Visualcare agreement is now created. You can begin rostering services for the client.
# How to Create a Client Profile
Source: https://support.visualcare.com.au/getting-started/create-a-client-profile
Set up a new client profile in Visualcare, from basic details through to compliance and preferences
Watch the video walkthrough, then follow the steps below.
Go to the **Clients** section and open the **Profile** tab. This displays your full list of clients in Visualcare.
In the top-left corner, click **Add Client**. Enter the client's first and last name, then click **Create** to open their new profile.
In the top section of the profile, fill in key information such as:
* Funding type
* Case manager
* Any other basic client details
Click **Save** after entering or updating information.
Scroll to the bottom section and add further details under **Details**:
* Client home address
* Any other relevant personal information
Click **Save** whenever you make changes.
On the right-hand side of the profile under the details tab, enter any information that should be visible to support workers during their shifts with this client. Click **Save** after adding details.
Navigate to the **Documents** tab. Upload relevant files such as:
* Care plans
* Assessments
* Support information
Go to the **Compliance** tab and add any compliance items this client requires - such as a service agreement.
You can add items by selecting:
* **Add Single Compliance**, or
* **Add Compliance by Funding Type**
To complete each item, click **Edit** and enter:
* Start and end dates
* Alerts
* Uploaded evidence or documentation
Open the **Preferences** tab and enter:
* **Preferred workers** - workers the client likes to work with
* **Non-preferred workers** - workers the client should not be rostered with
You can also specify required worker compliances, which help filter suitable workers when rostering.
# How to Create a Client Roster
Source: https://support.visualcare.com.au/getting-started/create-a-client-roster
Build and manage a client roster in Visualcare, including repeating shifts, worker selection, and shift cancellations
Watch the video walkthrough, then follow the steps below.
* Go to the client's **Roster** tab.
* If the client has never had a roster created, go to **Agreements** → **New Roster**.
* If a roster already exists, go to **Rosters**, then double-click the roster to open it.
1. Navigate to the day you want to roster.
2. Double-click on the day to create a new shift.
3. Enter the shift details:
* Select the **Service**.
* Add the **Start** and **Finish** time.
* Choose the **Worker**.
If you're unsure which worker to assign, leave the shift as **No Carer Assigned**, or click **Worker Select**.
The **Worker Select** tool helps you find the best worker for the shift using filters such as:
* Gender
* Role
* Availability
* Distance from client
* Required compliance items
Once you've found a suitable worker, click **Select**.
* Add any important **Shift Notes** for the worker.
* On the right, toggle **Shift Repeats** ON if the service is ongoing.
You can set repeats:
* Daily
* Weekly (e.g., repeat every 2 weeks for a fortnightly roster)
* Monthly
If selecting multiple days of the week, click **Create Individual Series** to generate separate repeating series.
Set how long the shift should repeat by:
* Number of repetitions, or
* An end date
Click **Done** to add the shift(s) to the roster.
Single-left-click a shift to edit it:
* **Edit Appointment** → edit only that shift
* **Edit Series** → edit all shifts in the series
Right-click for more options:
* Edit series from here forward
* Delete series from here forward
* Delete a single shift
* Mark shift as on leave
* Mark series as on leave
* Show history
* Duplicate shift
1. Right-click the shift and choose **Mark This Shift as On Leave**.
2. Select the **Leave Type** (e.g., Cancelled Shift).
3. Choose the **Leave Code**:
* Use the service code if charging the client
* Choose **No Code** if not charging
4. Enter the percentage to charge (e.g., 100% or 50%).
5. Set **Pay Hours**:
* Leave as normal if paying the worker
* Set to 0 if the worker is not being paid
Click **Save**. The shift will turn the designated cancelled colour.
At the top of the roster you'll find additional tools:
* **Budget** - Displays budget details from the client's agreement
* **Add Client Leave** - Block the client out for a period of time
* **Deleted Shifts** - Reinstate previously deleted shifts
* **Delete Roster** - Remove a roster
If the client is no longer receiving services, mark the roster as **Completed** instead of deleting it.
# How to Create a Worker Profile
Source: https://support.visualcare.com.au/getting-started/create-a-worker-profile
Set up a new support worker in Visualcare, including login details, availability, skills, and compliance
Watch the video walkthrough, then follow the steps below.
Go to the **Workers** tab in Visualcare. This will display your full list of support workers.
Click **Add Worker** in the top-left corner of the screen.
In the top section of the worker profile:
* Enter the worker's email address
* Enter their web username
* Tick **Web Enabled** to give them access to the vWorker app
* Click **Save**
After saving, click **Send Login**. This will email the worker instructions on how to log into the Visualcare app.
Scroll to the **Details** section at the bottom of the profile. Enter the worker's home address and click **Save**.
Go to the **Availability** tab. Add their ongoing two-week availability by selecting:
* **Available All Day**,
* **Unavailable All Day**, or
* Entering specific time ranges
Open the **Training & Qualifications** tab. To add an item:
* Click **New Item**
* Select the relevant training/qualification
* Enter any required details
* Click **Save**
In the **Skills** tab:
* Click **New Skill** to add one skill, or
* Click **Add Multiple Skills** to add several at once
These skills assist with worker filtering during rostering.
Go to the **Compliance** tab. Add the worker's compliance items by selecting:
* Individual compliance items
* Role type compliance
* Worker type compliance
Enter required details such as start and expiry date, then click **Save**.
Your worker profile is now complete. Once saved, the worker will have access to the app (if web-enabled) and be fully set up for rostering and compliance tracking.
# Creating users
Source: https://support.visualcare.com.au/getting-started/creating-users
How to create, edit, and manage user accounts in Visualcare
The Users page is where you add new vCore users, edit existing accounts, assign user groups, and manage passwords.
To open the Users page, click the **cog** icon in the top menu bar and select **Users**.
## Adding a new user
Click **Add User** on the Users page.
Fill in the required fields, including name, email address, and username.
Click **Create** to save the new user account. The user receives their login credentials by email.
Adding a new user may affect your billing. Each active user account is included in your Visualcare subscription count.
## Editing a user
Select the user from the list on the left. Their details appear on the bottom right of the screen. Update the fields you need to change and click **Save**.
## Assigning a user group
User groups control what each person can see and do in Visualcare. To assign a user to a group:
1. Select the user from the list
2. Choose the required group from the **User Groups** dropdown
3. Click **Save**
The user needs to log out and back in for the group change to take effect.
For information on creating and configuring user groups, see [User group security](/getting-started/user-group-security).
## Resetting a user's password
There are several ways to reset a password:
* **Self-service**: a user can update their own password on the Users page by entering their current password, a new password, confirming it, and clicking **Save**
* **Admin reset**: select the user and click **Send password reset link**. The link is sent to the email address in the **Username** field and is valid for 20 minutes
* **Helpdesk reset**: if no administrator can access vCore, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au)
The password reset link is sent to the email address in the **Username** field. If the user's **Email** field contains a different address and the username email is not monitored, contact the helpdesk instead.
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common login and permission problems.
## Related articles
Create user groups and configure permission levels
Disable or suspend user accounts
Get back into an account with an administrator password reset
Restrict record visibility to specific user groups
# Dashboard layout
Source: https://support.visualcare.com.au/getting-started/dashboard-layout
Quick access panels, shift map, and daily summary on the vCore home page
The vCore home page includes quick access panels that give you a snapshot of the day's activity without navigating into individual sections. This article covers what each panel shows and how to use them.
For an overview of the header icons and KPI tiles, see [Dashboard overview](/getting-started/dashboard-overview).
## Quick access panels
The home page provides these quick access panels:
| Panel | What it shows |
| - | - |
| **Search** | Search directly for a worker, client, or client roster from the home page |
| **Shift map** | A map of today's shift locations |
| **Tasks** | Tasks assigned to you or your team that need follow-up |
| **Unallocated shifts** | Shifts for today that don't have a worker assigned yet |
| **Running shifts** | Shifts currently in progress |
| **Shift information** | A summary of the day's shifts |
## Shift map
The shift map shows the location of today's shifts on a map. Each shift appears as a coloured pin:
* Pins are colour-coded by shift status: not started, completed, or not finished
* Hover over a pin to see the shift details, including the client, worker, and shift time
* Use the map to quickly identify shifts that haven't started or workers who are running behind
The shift map is especially useful for coordinators managing field workers across a region. Check it during the day to monitor shift progress.
## Search
The search panel on the home page lets you jump directly to a worker, client, or client roster without navigating through the menu. Start typing a name and select from the results.
## Tasks and unallocated shifts
The **Tasks** panel shows outstanding tasks assigned to you or your team. Click a task to open it and take action.
The **Unallocated shifts** panel shows shifts that still need a worker. This helps schedulers identify gaps in today's roster that need attention.
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common login and access problems.
## Related articles
Header icons, KPI tiles, and product feedback
Customise which columns appear in table views
Find and assign shifts that don't have a worker
# Dashboard overview
Source: https://support.visualcare.com.au/getting-started/dashboard-overview
Understand the vCore home page, including header icons, KPI tiles, and quick access panels
The vCore home page is your starting point each time you log in. It provides KPI tiles for at-a-glance monitoring, quick access panels for common tasks, and header icons that give you shortcuts to messages, new incidents, and performance indicators from anywhere in the system.
Your organisation's name is displayed in the top-left corner. Clicking it from any page returns you to the home page and refreshes the data.
## Header icons
The top-right corner of the header contains several icons that are available on every page in vCore:
| Icon | What it does |
| - | - |
| **Information** (i) | Opens the Visualcare Support Centre landing page, where you can search or browse the guides for help with system functionality |
| **KPI dial** | Opens the key performance indicators panel from anywhere in vCore, not just the home page |
| **Exclamation mark** (!) | Shows new incidents. Click to see incidents that have been submitted and not yet actioned |
| **Speech bubble** | Alerts you to new messages from workers (sent via the vWorker app) or clients (sent via the vAboutMe app). Click to open and reply to messages |
## KPI tiles
The home page displays KPI tiles that summarise activity across your organisation. Each tile shows a count that updates as new data comes in. Click a tile to drill into the detail.
Key KPI tiles include:
| Tile | What it shows |
| - | - |
| **Incidents** | Unread incident submissions. See [Incident tile on home page](/incidents/incident-tile-on-home-page) |
| **App Notes** | Unread notes submitted from the vWorker app. The count decreases as notes are marked as read |
| **Worker Compliance** | Number of expired worker compliance items |
| **Client Compliance** | Number of expired client compliance items |
Check the KPI tiles at the start of each day to stay on top of new incidents, unread notes, and expiring compliance items.
## Quick access panels
Below the KPI tiles, the home page includes several quick access panels:
* **Search** for workers, clients, or client rosters directly from the home page
* **Shift map** showing today's shift locations on a map, colour-coded by status (not started, completed, not finished). Hover over a pin to see shift details
* **Tasks** assigned to you or your team
* **Unallocated shifts** that still need a worker assigned
* **Running shifts** currently in progress
* **Shift information** summary for the day
See [Dashboard layout](/getting-started/dashboard-layout) for more detail on these panels.
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common login and access problems.
## Related articles
Quick access panels, shift map, and daily shift summary
Customise which columns appear in table views
How to log in to Visualcare
# How to Export Invoices
Source: https://support.visualcare.com.au/getting-started/export-invoices
Export invoicing data from Visualcare to your accounting software as draft invoices
Watch the video walkthrough, then follow the steps below.
Go to the **Timesheets** tab, then select **Data Export**.
Choose the date range you want to export invoicing data for. You can manually adjust the dates as required.
Click **Reload** to display all shifts within the selected date range.
Tick the shifts you want to export for invoicing.
Click **Export Invoices**, then select the accounting software you are exporting to (for example, Xero).
Click **Process Export**. On the next screen, select **Start Import**.
The data will be sent to your accounting software as draft invoices. A reference will be displayed showing the invoice numbers the data was sent to.
In Xero, navigate to **Draft Invoices** under **Sales** → **Invoices** to view the exported invoices.
Visualcare automatically populates:
* The **Description** field
* **Quantity** based on hours worked
* **Price** based on the charge rate
* The **Reference** field with relevant Visualcare data
Your invoices are now ready for review and approval in your accounting software.
# How to Export Timesheets
Source: https://support.visualcare.com.au/getting-started/export-timesheets
Export timesheet data from Visualcare to your payroll software as draft timesheets
Watch the video walkthrough, then follow the steps below.
Go to the **Timesheets** tab and select **Data Export**.
In the top-left corner, choose the date range you want to export for. You can adjust these fields to match the required pay period.
Click **Reload** to load all timesheet data for the selected pay period in the table below.
Use the checkbox to select all timesheets, or manually select specific entries. Click **Export Timesheets**.
A list of available payroll software will be displayed. Select Xero (or your connected payroll system).
The export summary page will highlight any errors, such as:
* Missing payroll codes
* Missing worker accounting codes
Resolve any errors before continuing.
Click **Process Export**, then on the final screen select **Start Import**.
The data will be sent to your payroll software as draft timesheets. In Xero, navigate to **Payroll** → **Timesheets** to review the exported entries.
# Getting support
Source: https://support.visualcare.com.au/getting-started/getting-support
How to reach us, raise a ticket that gets resolved faster, and what to expect.
Before lodging a support ticket, please search the Support Centre Documentation, then try our AI powered search. If neither of these methods answer your question, go ahead and lodge a ticket.
# How to raise a support ticket
The fastest way to reach us is email. Send your request to [**support@visualcare.com.au**](mailto:support@visualcare.com.au) and our intake consultant will pick it up and assign it throughout the day.
## Start your subject line with the priority status
In the email, start your subject line with the priority status in square brackets, so we can triage it the moment it lands.
```text theme={null}
[Priority Status] Short description
```
Refer to the guide below to select the priority that best reflects the impact of your issue. Once received, our Support team will also triage your ticket and confirm whether the correct priority has been applied, adjusting it if necessary.
**Don't over flag.** Reserve **\[Urgent]** for genuinely business-critical issues, so our fastest response stays free for those that need it
## How to choose your priority
Put one of these in square brackets at the start of your subject line. Not sure? Leave it out, we will confirm the priority when it arrives and adjust if needed.
| Priority | Use it when |
| :- | :- |
| **Urgent** | Business-critical and cannot wait. A delay would impact client services, compliance or payroll, and there is no workaround. |
| **High** | The system works but there is significant disruption and no stable workaround. |
| **Medium** | Moderate to low disruption, or an issue with a stable workaround available. |
| **Low** | Low time-sensitivity, such as general questions. |
## Do
**Include enough detail for us to reproduce it.** The more you give us up front, the faster we can help, with less back and forth. Where you can, include:
* **Who is affected**: a client, a worker, a user or a user group, and whether it is one person or many. Add names or references where you can.
* **What is happening**: a clear description of the problem and what you were trying to do.
* **The steps** you took leading up to the issue.
* **Any error messages**: the exact wording, or a screenshot.
* **What you have already tried** to fix it.
* **When it happened**: the date and time. This matters for technical issues.
* **Screenshots, screen recordings and the active URL** of the page you are on.
Also:
* **Tell us the priority status** so we can triage.
* **Keep it to one issue** per ticket.
* **Reply on the same thread** to add information or check progress.
## Don't
* **Don't just forward an email chain.** Raise a clear, self-contained request with the details above. A forwarded thread on its own is not enough for us to act on.
* **Don't bundle several issues** into one email. Send them separately. Bundled issues move at the pace of the slowest, and parts get missed. Send them separately
* **Don't raise a new ticket** for something already reported. Reply on the existing thread.
* **Don't cc your CSM** or other staff unless it is genuinely business-critical. If you cc your CSM on everything, their inbox fills up with routine requests, so the one that truly matters, where you actually need them to step in, can get missed. Keep it for the business-critical ones.
**Important note:** If your ticket does not include the required information outlined above, our Tier 1 team will contact you to request further details before the investigation can begin. Forwarded email chains, incomplete descriptions or missing supporting information can delay the process, as our team cannot effectively assess or investigate the issue without the right context. Providing complete information from the outset helps us respond and progress your request as quickly as possible.
## What happens after you raise a ticket
Your request is logged and reviewed by our intake consultant.
It is assigned to the right person to investigate.
We keep in touch by email as we work on it.
If you have more to add, reply on the same thread so everything stays together.
## Our support hours
| Channel | Hours |
| :- | :- |
| **Email support** | Monday to Friday, 8:30am to 5pm (AEST) |
| **Phone support** | Monday to Friday, 9am to 4pm (AEST) · 1300 267 568 |
| **Weekends** | Urgent business issues only, monitored Saturday and Sunday 8:30am to 5pm (AEST) |
***
**Quick reference**
* Need support? Email [**support@visualcare.com.au**](mailto:support@visualcare.com.au) with `[Priority Status]` in the subject.
* One issue per ticket. Reply on the same thread to chase or add, do not raise a new one.
* Don't just forward an email chain, raise a clear, self-contained request.
* Do not cc your CSM unless it is business-critical.
* Genuinely urgent? Call **1300 267 568**.
# Getting started
Source: https://support.visualcare.com.au/getting-started/index
Set up your Visualcare account, create users, and learn the basics
# Getting started
Get up and running with Visualcare. This section covers logging in, managing users, navigating the dashboard, and quick start guides for the most common tasks.
Log in, reset your password, and troubleshoot access issues
Create users, set permissions, and manage access
Learn your way around the Visualcare dashboard
Video walkthroughs of the most common tasks, from client profiles to payroll exports
# Invoicing Requirements for Client Profiles
Source: https://support.visualcare.com.au/getting-started/invoicing-requirements-client-profiles
Set up client accounting codes and payers so invoices export to the right contact in your accounting software
Watch the video walkthrough, then follow the steps below.
1. Navigate to **Clients** → **Profile**.
2. You'll see a list of all clients in your database.
3. Select the client you want to set up invoicing for.
1. On the client profile, locate the **Accounting Code** field.
2. The accounting code is a mapping code that links Visualcare data to Xero (or your accounting system).
3. It determines which contact in Xero invoices will be sent to.
1. Click the **Accounting Code** dropdown.
2. If the client is not listed in Xero:
* Click **Send Contact to Xero**.
* This will create a contact in Xero using the data from Visualcare.
3. After this, the **Accounting Code** field will populate with the client's name, confirming they are now in Xero.
The **Payer** represents the entity responsible for paying invoices on behalf of the participant (e.g., a plan manager or NDIS for agency-managed clients).
To create a payer:
1. Navigate to **Maintenance** → **Payers**.
2. Create a new payer (e.g., Plan Manager or NDIS).
3. Assign an **Accounting Code** that maps to the corresponding Xero contact.
4. Back on the client profile, select the payer from the dropdown.
When exporting invoices, the system will reference the payer's accounting code to send invoices to the correct Xero contact. Some providers prefer leaving the payer blank and using the client's accounting code directly - this allows invoices to be addressed to the client but still send to the plan manager email within Xero.
1. Create two separate agreements for the client:
* **Plan-managed services** - payer can be left blank (system defaults to the client accounting code).
* **Agency-managed services** - payer must be set as NDIS.
2. Link the agency-managed agreement to the NDIS payer, which in turn links to the NDIS accounting code.
3. This ensures invoices are sent to the correct payer for each type of service.
# Invoicing Requirements for Services
Source: https://support.visualcare.com.au/getting-started/invoicing-requirements-services
Map Visualcare services to Xero inventory items so invoicing exports correctly
Watch the video walkthrough, then follow the steps below.
1. Go to the **Maintenance** tab → **Services**.
2. You will see a global list of all services in the database.
3. Select the service you want to configure.
* On the service profile, locate the **Accounting Code** field.
* The accounting code acts as a mapping code, linking Visualcare data to Xero.
* For services, this maps the service to a Xero **Inventory Item**.
1. Click the **Accounting Code** dropdown.
2. Select the corresponding inventory item from your Xero file.
3. Typically, the service code in Visualcare will match the item code in Xero.
* Visualcare exports the charge rate to Xero for invoicing.
* This means the charge rate in Visualcare will override the price listed in the Xero inventory item.
# Logging in
Source: https://support.visualcare.com.au/getting-started/logging-in
How to log in to Visualcare using standard credentials or Single Sign-On
Visualcare is a web application accessed through your browser. There are two ways to log in: standard login with a username and password, or Single Sign-On (SSO) through Microsoft.
The login URL is [https://app.visualcare.com.au](https://app.visualcare.com.au). This is the correct address for all providers.
If `app.visualcare.com.au` returns a **403 Forbidden** error, the URL is not broken. Visualcare blocks connections from IP addresses outside Australia, and a 403 is how that block appears in your browser. Connect to an Australian VPN, then reload. See [Access denied (403)](/troubleshooting/access-denied) for the full fix.
## Standard login
1. Open your browser and go to [app.visualcare.com.au](https://app.visualcare.com.au)
2. Enter your **username** and **password**
You're taken to the vCore home page after signing in.
## SSO login
If your organisation uses Microsoft Single Sign-On:
1. Open your browser and go to [app.visualcare.com.au](https://app.visualcare.com.au)
2. Click the **SSO Login** option
3. Sign in with your Microsoft credentials
SSO needs to be enabled for your organisation before this option works. If you're unsure whether SSO is set up, check with your administrator.
## First-time login
When your administrator creates your account, you receive an email with a link to set your password:
1. Open the email and follow the **set password** link
2. Choose a password and save it
3. Return to [app.visualcare.com.au](https://app.visualcare.com.au) and log in with your username and new password
If the link has expired or you didn't receive the email, your administrator can resend it from your user account.
## Session timeout
vCore sessions automatically expire after 24 hours of continuous login. When this happens, you're returned to the login page and need to sign in again.
## Browser and network requirements
Visualcare works in modern browsers with cookies enabled, including Chrome, Microsoft Edge, Firefox, and Safari.
Visualcare is only reachable from Australian IP addresses. If you're connecting from overseas, connect to an Australian VPN before opening the login page, or you'll see a 403 Forbidden response - see [Access denied (403)](/troubleshooting/access-denied).
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for fixes to common login problems, including SSO loops and 403 errors.
## Related articles
Get back into your account with an administrator password reset
Configure permissions for user groups
Restrict record visibility to specific user groups
Resolve login errors, permission issues, and access problems
# Payroll Requirements for Data Export
Source: https://support.visualcare.com.au/getting-started/payroll-requirements-data-export
Configure pay levels, worker pay rates, and Xero accounting codes before exporting payroll
Watch the video walkthrough, then follow the steps below.
Pay levels are labels used to help you identify each worker's pay classification. They do not affect calculations - they are purely descriptive.
1. Go to **Settings**
2. Select **Settings** again
3. Scroll to the **Finance** section
4. Scroll to the bottom of the page and locate **Pay Levels**
You will see pay levels labeled generically as R1, R2, R3, and so on (up to 48 levels).
**Add descriptive labels**
1. Click **Edit** on a pay level
2. Enter a meaningful label such as:
* CAS Level 1 - Pay Point 3
* CAS Level 2 - Pay Point 1
3. Click **Save**
This makes it much easier later when assigning pay levels to workers.
1. Go to **Workers** → **Profile**
2. Open a worker's profile
3. Navigate to the **Finance** tab
**Set the pay rate level**
1. Click **Update Pay Levels and Rates**
2. Select the correct pay level using the descriptive labels you created
3. Choose a **From Date** (must be before today)
4. Click **Update**
This updates all future rates for that worker from the chosen date onward.
The **Accounting Code** connects Visualcare workers to Xero for payroll export. Anywhere you see Accounting Code in Visualcare, think of it as a mapping code to Xero.
1. In the worker's **Finance** tab, scroll to the bottom
2. Open the **Accounting Code** dropdown
3. Select the correct Xero record:
* **Employees** → mapped to Xero Employees
* **Suppliers** → mapped to Xero Contractors (Contacts)
4. Choose the matching Xero name
5. Click **Save**
If a worker was created in Xero but is not appearing in the **Accounting Code** dropdown:
1. Click **Sync Code from Xero**
2. Visualcare will import any newly created employees or suppliers
3. Re-open the **Accounting Code** dropdown - the worker should now appear
# Resetting your password
Source: https://support.visualcare.com.au/getting-started/resetting-password
How to get back into Visualcare with an administrator password reset
If you've forgotten your password, an administrator at your organisation can send you a password reset link. There is no reset password button on the login page — the reset link from your administrator is the only way to reset a password.
## Administrator password reset
If a user has forgotten their password or is locked out, an administrator resets it for them:
1. Go to **Users** in vCore
2. Find and select the user account
3. Use the **Reset Password** option to send the user a password reset link
The user receives the link by email and follows it to set a new password.
The password reset link is valid for **20 minutes**. If it expires before the user sets a new password, the administrator can send a new one. If the email doesn't arrive within a few minutes, check the spam or junk folder.
## SSO users
If your organisation uses Microsoft Single Sign-On (SSO), password resets are handled through your Microsoft account, not Visualcare. Your Microsoft credentials are what Visualcare uses to authenticate you when SSO is active.
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for fixes to common login and access problems.
## Related articles
How to log in to Visualcare
Configure permissions for user groups
Restrict record visibility to specific user groups
Resolve login errors, permission issues, and access problems
# Setting Up Services for Payroll
Source: https://support.visualcare.com.au/getting-started/setting-up-services-for-payroll
Assign payroll codes to services for each pay level so payroll exports process correctly
Watch the video walkthrough, then follow the steps below.
1. Navigate to **Maintenance** in the main menu.
2. Click **Services**.
3. At the bottom of the page, you'll see a list of all services your organisation provides.
1. Click on any service in the bottom table.
2. The details for that service will populate in the top section.
3. You'll also see the pay level labels you configured earlier in **Settings** → **Finance** → **Pay Levels**.
Visualcare exports payroll to Xero by matching two things:
* The worker's **Pay Rate Level**
* The **Payroll Code** assigned to that service for that level
For example, if a worker set to Casual Level 1, Pay Point 3 is rostered to Weekday Daytime, three hours of work will be exported to the payroll code you've set for that level (e.g., Ordinary Hours).
Visualcare exports **hours**, not pay rates. Pay rates remain managed directly in Xero.
To ensure payroll exports successfully:
1. For every service, review the list of pay levels shown.
2. Make sure each pay level your organisation uses has a payroll code selected.
3. The payroll code must match the corresponding **Pay Item** set up in Xero.
If a worker is rostered at a pay level that does not have a payroll code set for that service, you will see the error:
> "No Service Payroll Code"
To fix this:
1. Return to **Maintenance** → **Services**.
2. Select the service.
3. Add the missing payroll code for the relevant pay level.
4. Save your changes.
Once the payroll code is entered, the export will process correctly.
# Single sign-on (SSO) setup
Source: https://support.visualcare.com.au/getting-started/sso-setup
Set up single sign-on for Visualcare using Microsoft Azure Active Directory
This guide walks you through setting up single sign-on (SSO) for your Visualcare vCore environment using Microsoft Azure Active Directory (Azure AD). Once configured, your team can sign in to Visualcare using their existing Microsoft credentials.
SSO is only available in vCore.
## What you'll need
* A Microsoft Azure account with an active subscription
* Permission to manage applications in Azure AD (Application Administrator, Application Developer, or Cloud Application Administrator role)
* The Microsoft "Set up a tenant" quickstart completed
## Instructions
1. Sign in to the Azure portal
2. If you have access to multiple tenants, use the **Directories + subscriptions** filter in the top menu to switch to the correct tenant
3. Search for and select **Azure Active Directory**
4. Under **Manage**, select **App registrations**, then select **New registration**
5. Enter a display name for your application (your users may see this name when signing in)
6. Set the sign-in audience - usually "Accounts in this organisational directory only"
7. Leave **Redirect URI** blank for now
8. Click **Register**
The Azure portal displays the app registration's **Overview** pane. Note the **Application (client) ID** - you'll need this later.
New app registrations are hidden to users by default. When you're ready for users to see the app on their My Apps page, go to **Azure Active Directory** → **Enterprise applications**, select the app, then on the **Properties** page toggle "Visible to users?" to **Yes**.
Use the following URL as the redirect URI:
```text theme={null}
https://app.visualcare.com.au/inc/export/microsoft/index.php
```
1. In the Azure portal, in **App registrations**, select your application
2. Under **Manage**, select **Authentication**
3. Under **Platform configurations**, select **Add a platform**
4. Select **Web**
5. In the **Redirect URIs** text box, enter: `https://app.visualcare.com.au/inc/export/microsoft/index.php`
6. Click **Configure**
1. In **App registrations**, select your application
2. Select **Certificates & secrets**, then **Client secrets**, then **New client secret**
3. Add a description for the secret
4. Select an expiration (maximum two years)
5. Click **Add**
6. Copy the secret value immediately
The secret value is only displayed once. If you navigate away from this page, you won't be able to view the secret again and will need to create a new one.
Provide the following three values to your Visualcare contact:
1. **Application (client) ID** - found on the **Overview** tab
2. **Directory (tenant) ID** - found on the **Overview** tab
3. **Secret Value** - copied in the previous step
Do not share these credentials with anyone other than Visualcare.
Once Visualcare has configured SSO on your environment:
1. Each user needs to log in at least once using their normal Visualcare credentials before SSO is enabled for their account
2. In vCore, go to the **Users** page
3. Select a user from the list
4. Tick the **Enable SSO** box
5. Click **Save**
6. Repeat for each user who should use SSO
## Signing in with SSO
Once SSO is enabled for a user, the standard login page no longer works for that user. Instead, use the SSO login page:
```text theme={null}
https://app.visualcare.com.au/login-ms-sso.php
```
Bookmark the SSO login URL for easy access. Users with SSO enabled are prompted to sign in with their Microsoft credentials.
## Running into issues?
See [Login troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up user accounts in Visualcare
Configure permissions and access levels
# Suspending and deleting users
Source: https://support.visualcare.com.au/getting-started/suspending-deleting-users
How to disable or suspend user accounts in Visualcare
When a user no longer needs access to Visualcare, you can either disable their account (temporary) or suspend it (permanent). Both options are managed from the **Users** page under the **cog** icon in the top menu bar.
## Disabling a user
Disabling prevents a user from logging in while keeping their account in the user list. Use this for temporary situations like leave or a role change.
1. Select the user from the list on the left
2. Tick the **Prevent user login** checkbox
3. Click **Save**
This stops the user from logging in to vCore, vGo, and vAssessment.
To reinstate the user, untick the checkbox and save.
Disabled users remain in the user list and continue to be included in the billing cycle. If you want to stop billing for a user, you need to suspend them instead.
## Suspending a user
Suspending removes the user from the user list entirely. Use this when someone has permanently left your organisation.
1. Select the user from the list on the left
2. Click **Suspend**
3. In the confirmation popup, click **Suspend** again to confirm
Administration users cannot reinstate a suspended user. If a suspended user needs to be reinstated, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Which method to use
| Situation | Method | Reversible |
| - | - | - |
| User is on leave or temporarily reassigned | **Disable** (Prevent user login) | Yes, untick and save |
| User has left the organisation permanently | **Suspend** | No, contact helpdesk to reinstate |
| You want to stop billing for the user | **Suspend** | No, contact helpdesk to reinstate |
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common login and permission problems.
## Related articles
Add new user accounts and assign groups
Configure permissions for user groups
Get back into an account with an administrator password reset
# Troubleshooting login issues
Source: https://support.visualcare.com.au/getting-started/troubleshooting-login-issues
Common login problems and how to resolve them in Visualcare, including session timeouts, SSO issues, and random logouts
This page covers the most common login and session issues you might encounter in Visualcare.
## Random logouts when switching applications
Users sometimes report being logged out unexpectedly when switching between browser tabs or applications. Common causes include:
| Cause | Details |
| - | - |
| **Session expiry** | Visualcare sessions expire after a period of inactivity. If you never explicitly log out, the session eventually times out in the background |
| **Same-account kickout (historical)** | Older versions of Visualcare would log out a user if the same account signed in from another device. This feature has been disabled, but if you still experience it, contact support |
To reduce unexpected logouts, log out explicitly at the end of each session rather than closing the browser tab. This prevents stale session tokens from causing issues on your next login.
## SSO (Single Sign-On) login loop
If you use Microsoft SSO and get stuck in a login loop:
An administrator opens the user's profile in **User Group Security** settings and disables SSO for that user.
The user signs in with their standard username and password.
Once the user has signed in successfully, the administrator re-enables SSO for the user.
## Incorrect username or password
If you cannot log in with your credentials:
* Check for extra spaces in the username field, especially on mobile
* Ask your administrator to reset your password
## Account locked or suspended
If your account has been suspended, you will not be able to log in. Contact your organisation's Visualcare administrator to check your account status. See [Suspending and deleting users](/getting-started/suspending-deleting-users) for how administrators manage this.
There is also a **prevent login** checkbox on each user account. If this has been ticked, the user cannot log in until your organisation's Visualcare account administrator unticks it on the user's account.
## Related articles
How to log in to Visualcare
How to reset your Visualcare password
Configure user group permissions
# User access control
Source: https://support.visualcare.com.au/getting-started/user-access-control
Restrict the visibility of client profiles and incidents to specific user groups
User Access Control (UAC) lets you limit the visibility of restricted client profiles to specific user groups within your organisation. Where [User group security](/getting-started/user-group-security) controls what areas and functions a user group can access, UAC works client by client - marking a client profile as restricted so only authorised groups see it.
Users in the **Administration** group always have full access to all clients, including restricted ones.
## Restricting a client profile
1. Go to the **Client Profile**
2. Tick the **Restricted Profile** checkbox
This hides the client from all user groups except Administration.
Only Administration users can configure access to restricted clients.
1. Navigate to **Settings** → **User Access Control**
2. Select the desired **User Group** from the left panel
3. On the right panel, tick the clients that should be accessible to that group. To select all clients, toggle **Select All Clients** to **Yes**
4. Click **Save**
The selected group now has access to the clients marked as accessible. Users still do not see any client marked as restricted unless access is explicitly granted.
## Visibility of restricted clients across the system
Restricted clients behave differently across modules. In some areas they are excluded entirely from lists and searches; in others they appear partially, shown as "Restricted Client" rather than by name. If a user cannot find a client that others can see, check whether the client is restricted and whether the user's group has been granted access.
## User Access Control on incidents
The **User Access Control** option on the incident form lets you restrict an incident to specific user groups - making the incident sensitive so only authorised users, for example the Administration group, view it.
### The option isn't visible
If a user does not see the **User Access Control** option when creating or editing an incident, their user group has the **User Groups** permission set to **Hide**. The UAC dropdown on incidents is directly tied to the **User Groups** option under the **Settings** section within User Group Security.
To enable it:
1. Log in to Visualcare with an admin account
2. Click the **Settings** icon (top right) → **User Group Security**
3. Select the relevant user group from the list, for example Care Coordinator
4. Scroll to the **Settings** section within the permissions panel
5. Set the **User Groups** permission:
| Setting | Effect |
| - | - |
| **Show** | The group views and uses the User Access Control option |
| **Edit** | The group views, uses, and manages User Group settings |
| **Hide** | The User Access Control option is removed entirely |
6. Click **Save**
Users in the updated group need to log out and log back in for the change to take effect.
### Using it
Once the permission is enabled, the **User Access Control** field on incidents shows the available user groups. Mark an incident as sensitive by assigning it to a specific user group - visibility of that incident is then restricted to members of that group only.
UAC also affects task visibility: if a user cannot view the client profile associated with a task, UAC restrictions on the client are the likely cause. See [General troubleshooting](/troubleshooting/general#unable-to-see-other-users-tasks).
## Running into issues?
See [Login and access troubleshooting](/troubleshooting/login-and-access) for common errors and fixes.
## Related articles
Configuring permissions for user groups in Visualcare
Restricting incident visibility and configuring incident behaviour
# User group security
Source: https://support.visualcare.com.au/getting-started/user-group-security
Control what different types of users can see and do in Visualcare by creating user groups and setting permission levels
User group security lets you restrict access to different parts of Visualcare based on the type of user. You create user groups, set the permission levels for each group, then assign users to the appropriate group.
## Opening user group security
Navigate to the **cog** icon in the top menu bar and select **User Group Security**.
## Creating a user group
Click **Add User Group**, enter a name for the group (for example, "Scheduler", "Finance Officer", or "Read Only"), and click **Save**.
The new group appears in the left-hand panel.
## Setting permissions
Click the group name in the left-hand panel.
Click the category label to expand the section and see the individual permissions.
For each permission, select the level that suits the group. The main options are:
| Level | What it allows |
| - | - |
| **Show** | The feature is visible in the menu and interface |
| **Hide** | The feature is hidden from users in this group |
| **Read Only** | Users can view data but not change it |
| **Edit** | Users can view and modify data |
Click **Save** to apply the permission changes.
## Assigning users to a group
Once your groups and permissions are set up, assign each user to a group in their user profile. See [Creating users](/getting-started/creating-users) for details on editing a user's assigned group.
## Note editing permissions
Note editing for the **Administration** user group is set to **No** by default across all user groups. This is intentional and applies to task notes as well.
Changing the note editing permission for the Administration group is a back-end change. Contact the Visualcare support team to update this setting.
## Troubleshooting permission issues
If a user reports that a page or feature is not loading correctly (for example, the Location Roster showing "Loading Carer..." indefinitely), the cause is usually insufficient permissions in their user group. The drop-down cannot load worker data if the group lacks the required access.
If a user selects from a popup while a drop-down is still loading due to a permissions issue, it can create duplicate shifts. Fix the user group permissions before the user retries the action.
To resolve permission-related loading issues:
1. Open **User Group Security** and select the affected user's group
2. Check that the relevant permissions (for example, worker data, rostering) are set to **Show** or **Edit**
3. Save the changes and ask the user to refresh and try again
## Running into issues?
See [Troubleshooting login issues](/getting-started/troubleshooting-login-issues) for session and access problems.
## Related articles
Set up new user accounts and assign groups
Overview of access control in Visualcare
# How to use Timesheets
Source: https://support.visualcare.com.au/getting-started/using-timesheets
Review, edit, and confirm timesheets in Visualcare, including variations and the different timesheet views
Watch the video walkthrough, then follow the steps below.
1. Go to **Timesheets**
2. Select **All Timesheets**
* **Rosters** = shifts scheduled for a worker but not yet confirmed. This includes:
* Shifts workers have not clocked in/out for
* Cancelled shifts
* **Timesheets** = shifts that have been confirmed, either automatically through the vWorker app or manually.
If a worker forgets to clock in or out:
1. Select the rostered shift
2. Click **Send to Timesheets**
This manually confirms the shift.
Within the timesheet area, you can view data sent from the vWorker app and make adjustments.
You can edit:
* Start and finish times (using the clock tool)
* Kilometers travelled
* KM calculations using the **CAHC KM** button, which:
* Calculates distance between clients
* Adds travel time
You can also view:
* Variations submitted by workers
* Worker comments explaining any extension or reduction of time
* App start/finish times
* GPS coordinates of clock-in/clock-out
* Worker-submitted notes (via the **View** button)
**Approving variations**
Variations are not applied automatically. To approve one:
1. Tick **Variance Approve**
2. Save the timesheet
Navigate to the **Variance** tab to:
* View all shifts with variations
* Approve multiple variations in bulk
**Per worker**
1. Go to **Timesheets** → **Timesheets**
2. Select a worker on the right
3. Click **Edit** to view all their timesheets
**Location-based timesheets**
1. Go to **Timesheets** → **Timesheet Locations**
2. View:
* Client timesheets
* Worker timesheets
These are specifically for clients using location-based rosters.
Regular reviewing helps:
* Reduce workload at payroll/claim time
* Ensure all shifts are complete and accurate
* Avoid delays in billing or payroll
Any shift that is not confirmed cannot be exported for:
* Billing
* Payroll
Make sure all outstanding items are confirmed before running exports.
# How to use vWorker
Source: https://support.visualcare.com.au/getting-started/using-vworker
A support worker's guide to the vWorker mobile app - shifts, notes, incidents, forms, and the app menu
Watch the video walkthrough, then follow the steps below.
1. Open the vWorker app.
2. Enter your **Company Name**, **Web Username**, and **Password**.
3. Tap **Login** to open your home page.
* Your home page displays the current weather and your shifts for today.
* Tap the pink **calendar** icon (bottom right) to view shifts for the next fortnight, then tap again to return to today's shifts.
* Use the **reload** icon (top right) to refresh the page.
* Use the **menu** icon (top left) to open the app menu.
Between shifts, you'll see calculated travel distance and time. Tap the link to open directions in your phone's maps app. Use your phone's back arrow to return to vWorker.
1. Tap any shift to open its details.
2. Review any pop-up notes, then tap **Close**.
3. Tap the client address to open directions in your maps app.
At the bottom of the shift page, you'll see icons for additional actions.
**Shift (Home)** - Brings you back to the main shift screen.
**Incident** - Submit incident reports at any time.
1. Select the incident level.
2. Edit the date/time if needed.
3. Add a summary and tap **Create**.
4. Complete the full form. You may save and finish later.
**Notes** - View detailed shift notes, including the initial pop-up note.
**Client** - Access client profile information such as:
* Risks
* Access notes
* Living arrangements
**More**
* Add notes
* Take photos or upload from your gallery
* View recent note history
* View client documents
* Add expenses
* Complete client forms
**Expense Entry** - Add purchases made during a shift by entering a description, amount, and photo of the receipt.
**Form Templates** - Tap **Add**, select a template, name the form, and complete it. Forms can be edited anytime until they're finalised. A form is finalised when an office user marks its status as completed in vCore. Once completed, the form becomes read-only. See [Managing forms](/operations/managing-forms).
**Start shift**
* Tap **START SHIFT**.
**Complete shift**
1. Tap **COMPLETE SHIFT**.
2. Enter kilometres travelled and a short description.
3. Complete the **Notes About Tasks** field - this is mandatory.
4. Use the toggle to record any shift variations (staying longer, leaving early, unusual events).
5. Capture the client signature if required.
6. Tap **FINISH JOB** to send the completed shift to the office.
If your organisation requires a Shift Note Form, it will pop up automatically after tapping **Finish Job**. You can continue adding notes or photos later in the day if needed.
**Documents** - View your personal documents, training manuals, and policies and procedures. Documents are read-only.
**Leave Requests** - Submit or review leave/unavailability requests.
* Tap the pink **+** to create a new request.
* Enter dates/times and add notes.
* Pending requests can be deleted.
**Timesheets** - View previous completed shifts for a selected date range and share them if required.
**Incidents** - Edit and complete any incidents not yet finished.
* Select a date range
* Tap the incident
* Tap **Edit** to update the form
**ID Card** - Use this as identification when arriving at a shift.
**Shift Invitations** - If offered a shift, tap the invitation to accept or decline, and add comments. Accepted shifts will appear on your roster.
**Messages**
* **Group Messages**: Message the office or your team.
* **Private Messages**: Send a direct message to the office.
You can also attach photos or files. New messages appear as notifications.
**Training, Qualifications & Compliance** - View your training records and any expiry dates. Items nearing expiry show notification indicators, and expired items appear in pink.
**My Account**
* Upload or change your profile picture
* Switch between multiple companies using vWorker
You can't delete or close your account from the vWorker app. Your account is tied to your worker profile and is managed by your organisation. Contact your office to request account removal. Administrators can follow [Offboarding a worker](/worker-management/offboarding) to revoke app access.
**Log Out** - Found at the bottom of the menu.
# Creating an incident
Source: https://support.visualcare.com.au/incidents/creating-an-incident
How to create and submit an incident record for a client in vCore
Incidents in Visualcare track events or issues that occur during service delivery. They're created either through the vWorker mobile app by support workers in the field, or directly in vCore by office staff.
## How incidents are created
There are two ways an incident gets into Visualcare:
* **From vWorker** - Support workers submit an incident form through the vWorker mobile app. The incident is automatically saved to the client's profile and triggers a notification for office staff
* **From vCore** - Office staff create an incident directly in vCore against a client's profile
## Viewing incidents on a client profile
To view incidents for a specific client, navigate to **Clients** → **Profile** and open the **Incidents** tab.
All incidents linked to that client appear here, whether they were submitted from vWorker or created in vCore.
## Viewing all incidents
For a centralised view across all clients, navigate to **Operations** → **Incidents**. This page gives you access to three tabs:
* **Incidents** - All incident records across your organisation
* **Incidents Register** - A register view for tracking and reporting
* **SIRS** - Serious Incident Response Scheme incidents
Use the **Operations** → **Incidents** view when you need to review incidents across multiple clients, rather than navigating to each client profile individually.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Review and update incident details after submission
Monitor unread incidents from the vCore home page
Create and manage Serious Incident Response Scheme records
Configure the categories used to classify incidents
# Editing incidents
Source: https://support.visualcare.com.au/incidents/editing-incidents
How to review and update incident details after they've been submitted
Once an incident has been submitted (either from vWorker or directly in vCore), you can open it to review the details, add investigation notes, and record comments, actions, or outcomes.
## Instructions
Navigate to the client's profile via **Clients** → **Profile**, then open the **Incidents** tab. Find the incident you want to review and click **Edit**.
The incident opens in a two-part layout:
* **Step 1 (left side)** - The original incident form as submitted. This contains the details recorded by the person who raised the incident
* **Step 2 (right side)** - The investigation and response section, where office staff add their review notes
On the right side of the form, fill in the investigation details. Use the comment field to record any comments, actions taken, or outcomes from your review.
Click **Save** to update the incident record with your investigation notes.
Review incidents promptly after they're submitted. The incident notification on the home page shows unread incidents so you can stay on top of new submissions.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How incidents are created and where to find them
Monitor unread incidents from the vCore home page
Trigger automated emails and tasks from events in Visualcare
Create and manage Serious Incident Response Scheme records
# Incident categories
Source: https://support.visualcare.com.au/incidents/incident-categories
Configure the categories used to classify incident records in Visualcare
Incident categories let you classify each incident by type, for example injury, medication error, behavioural incident, or property damage. Categorising incidents helps you filter records, generate meaningful reports, and identify trends across your organisation.
## How categories are used
When creating or editing an incident, you select a category from a dropdown. This category is stored on the incident record and appears in the incidents list, the incidents register, and any exports.
Categories also feed into reporting. If you're tracking incident types over time or preparing for an audit, consistent categorisation makes it straightforward to pull the data you need.
## Configuring categories
To manage incident categories, navigate to **Maintenance** → **Incident Categories**.
### Adding a category
1. Click **Add**
2. Enter the category name
3. Click **Save**
The new category is immediately available in the incident form dropdown.
### Editing a category
1. Find the category in the list and click **Edit**
2. Update the name
3. Click **Save**
Renaming a category updates it on all existing incidents that use it. Choose category names carefully before they're widely used.
### Removing a category
Categories that are linked to existing incidents can't be deleted. If you no longer want a category to appear in the dropdown, deactivate it instead. Deactivated categories remain on historical records but don't appear as options for new incidents.
## Choosing your categories
Set up categories that match how your organisation classifies incidents. Common examples include:
* Injury
* Medication error
* Behavioural incident
* Property damage
* Near miss
* Abuse or neglect
* Unauthorised restrictive practice
Keep your category list focused. Too many categories makes it harder for staff to choose the right one, and too few makes reporting less useful. Review your categories periodically and merge or retire any that aren't being used.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How incidents are created and where to find them
Trigger automated emails and tasks from events in Visualcare
Control incident visibility and form behaviour
# Incident settings
Source: https://support.visualcare.com.au/incidents/incident-settings-configuration
Control who can view incidents and whether the incident form appears in the vWorker app
Use incident settings to control who can view incidents and how incident forms appear in the vWorker app.
## Restricting incident visibility
By default, all users with access to the incidents area can view all incidents. You can restrict visibility so that only the assigned user and collaborators on an incident can see it.
To enable this restriction:
1. Navigate to **Settings** → **User Group Security** → **Operations**
2. Find the setting **Tasks visible only to assigned user or user listed as collaborator**
3. Set it to **Yes**
Once enabled, only the user assigned to the incident and any collaborators listed on it can view that record.
To assign a user and add collaborators when creating or editing an incident, go to **Step 2** of the incident form and complete the relevant fields.
To restrict an individual incident to a specific user group instead (a "sensitive" incident), use the **User Access Control** option on the incident form. See [User access control](/getting-started/user-access-control) for how to enable and use it.
## Disabling the incident form on vWorker
If you want to prevent workers from completing incident forms through the vWorker app, you can untick the **Is Incident Form** flag on the relevant form template.
Navigate to **Maintenance** → **Templates**. Drag the **Is Incident Form** column from the column chooser into the table, then filter that column to **YES** to see all templates marked as incident forms.
Click **Edit** on the form you want to disable.
Untick **Is Incident Form** and click **Save**.
After this change, workers can still create incidents (they are recorded in Visualcare), but they won't have a form to fill in through the app.
Incident functionality cannot be completely removed from the vWorker app. This setting only removes the associated form.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure the categories used to classify incidents
Trigger automated emails and tasks from events in Visualcare
# Incident tile on home page
Source: https://support.visualcare.com.au/incidents/incident-tile-on-home-page
How the incidents KPI tile and notification indicator work on the vCore home page
The vCore home page includes an **Incidents** KPI tile that shows all unread incidents at a glance. This helps office staff identify and respond to new incidents quickly without navigating to individual client profiles.
## How it works
When a support worker submits an incident form through the vWorker mobile app, two things happen:
1. The incident is saved to the relevant client and worker profiles
2. A pop-up notification is generated for office staff in vCore
The notification appears as a red number above the exclamation mark icon in the top-right corner of the vCore header.
## Accessing incident details
To view more information about an incident, click either:
* The **Incidents** KPI tile on the home page
* The exclamation mark notification icon in the header
Both options take you to the incident details where you can review and investigate the submission.
Check the Incidents KPI tile at the start of each day to make sure no new incidents have gone unreviewed.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How incidents are created and where to find them
Review and update incident details after submission
Create and manage Serious Incident Response Scheme records
# Incident management
Source: https://support.visualcare.com.au/incidents/index
Record, manage, and report on incidents including SIRS
# Incident management
Record and manage incidents in Visualcare, including Serious Incident Response Scheme (SIRS) reporting.
Create and edit incident records
Manage SIRS incidents and the SIRS register
Configure incident categories and settings
# SIRS incidents
Source: https://support.visualcare.com.au/incidents/sirs-incidents
Create and manage Serious Incident Response Scheme incidents in Visualcare
The Serious Incident Response Scheme (SIRS) is a requirement under the NDIS Quality and Safeguards Commission. NDIS providers must report certain types of serious incidents, including abuse, neglect, unauthorised restrictive practices, serious injury, and death. Visualcare supports SIRS reporting by letting you flag incidents as SIRS records, which adds the fields and tracking needed to meet your reporting obligations.
## What counts as a SIRS incident
For the current definitions of reportable incidents and your reporting obligations, refer to the [Serious Incident Response Scheme (SIRS) page on the Aged Care Quality and Safety Commission website](https://www.agedcarequality.gov.au/providers/serious-incident-response-scheme). When an incident is reportable under SIRS, record it as a SIRS incident in Visualcare so it can be tracked separately and reported within the required timeframes.
## Where to find SIRS incidents
SIRS incidents are accessible from two places:
* **Operations** → **Incidents** → **SIRS** tab for a centralised view of all SIRS incidents across your organisation
* The **Incidents** tab on the individual client's profile, where SIRS incidents appear alongside other incident records
Use the **SIRS** tab under **Operations** when you need to review all SIRS incidents in one place, for example during an audit or when preparing a report for the NDIS Commission.
## Creating a SIRS incident
SIRS incidents follow the same creation process as standard incidents. When creating or editing an incident, flag it as a SIRS incident to add the additional reporting fields. See [Creating an incident](/incidents/creating-an-incident) for the full creation process.
Once flagged as SIRS, the incident appears in the **SIRS** tab and any assigned users receive a notification.
## Restricting visibility
SIRS incidents often involve sensitive information. You can restrict an individual SIRS incident to a specific user group using the **User Access Control** option on the incident form. This makes the incident visible only to members of the selected group, for example the Administration group.
See [User access control](/getting-started/user-access-control) for how to enable and use this feature.
If you're reporting a SIRS incident to the NDIS Commission, keep in mind the reporting timeframes: notify the Commission within 24 hours for the most serious incidents and provide a full report within five business days. Use the [SIRS register](/incidents/sirs-register) to track your reporting status.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Track and report on all SIRS incidents in one place
How incidents are created and where to find them
Review and update incident details after submission
Control incident visibility and form behaviour
# SIRS register
Source: https://support.visualcare.com.au/incidents/sirs-register
View and manage the Serious Incident Response Scheme register in Visualcare
The SIRS register gives you a centralised view of all Serious Incident Response Scheme incidents across your organisation. Use it to track incident status, monitor response timelines, and prepare reports for the NDIS Quality and Safeguards Commission.
## Accessing the register
Navigate to **Operations** → **Incidents** and select the **SIRS** tab. The register displays all SIRS incidents in a table, with key details visible at a glance.
You can also view SIRS incidents from individual client profiles under the **Incidents** tab, but the register under **Operations** is the best place for organisation-wide tracking.
## Customising the view
### Column chooser
Use the **Column Chooser** to add or remove columns from the register. Drag columns into or out of the table to tailor the view to your needs. Common columns to add include response dates, assigned users, and reporting status.
### Filtering and searching
Filter the register to find specific records:
* **Date range** to narrow results to a specific period
* **Status** to view open, in-progress, or closed incidents
* **Category** to filter by incident type
* **Assigned user** to see incidents assigned to a particular person
Use the **Search** function to find incidents by keyword across all visible columns.
Set up your preferred columns and filters once, and they persist for your user account. This saves time when you return to the register regularly.
## Tracking reporting obligations
The register helps you stay on top of NDIS Commission reporting deadlines. Review the register regularly to identify:
* SIRS incidents that haven't been reported yet
* Incidents approaching their reporting deadline
* Open investigations that need follow-up
NDIS providers must notify the NDIS Commission within 24 hours for the most serious reportable incidents and provide a detailed report within five business days. Check the register daily to avoid missing a deadline.
## Exporting the register
To download the register for external reporting or record-keeping, use the export function on the register page. The export includes all currently visible columns and respects any active filters.
## Running into issues?
See [Incidents troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
What SIRS is and how to create SIRS incidents
How incidents are created and where to find them
Configure the categories used to classify incidents
# CHSP / DEX Stage 3: updating your organisation data
Source: https://support.visualcare.com.au/industry-updates/chsp-stage-3/chsp-dex-stage-3-org-data
# **Summary**
Stage 3 adds new service types and reference data in the Data Exchange (DEX). For reporting to line up with these, your organisation data in Visualcare needs to match the latest DEX reference data. You can update this yourself using the CHSP/DEX Org Data tool.
For an overview of Stage 3 and the key dates, see [CHSP / DEX Stage 3: what is changing and what you need to do](/industry-updates/chsp-stage-3/chsp-dex-stage-3-what-to-do)
**Before you start**
* This applies to CHSP databases.
* Do this once the updated OrganisationData.xml is available from the Data Exchange, around go-live on 11 August 2026. Step 1 covers how to download it.
* July data has a blanket extension to 30 August 2026 (see the overview article), so there is time to complete this after go-live.
## **Step 1: Download the OrganisationData.xml from the Data Exchange**
You need to be a Data Exchange Organisation Administrator to do this.
1. Log in to the Data Exchange portal.
2. From the home page, under My Organisation, select Reference data.
3. Under Organisation activity and outlet data, select Download Organisation data and save the OrganisationData.xml file.
The file must be the standard DEX OrganisationData.xml in .xml format. Download a fresh copy whenever your organisation data or the DEX reference data changes, so Visualcare has the current version.
## **Step 2: Upload and preview in Visualcare**
1. Go to Settings > Integrations and select the CHSP/DEX Org Data tile.
2. Select Choose file and select your OrganisationData.xml.
3. Select Preview.
Visualcare compares the file against your current organisation data and shows a summary of what will change. Nothing is applied at this stage.
The summary lists, for each table (Outlets, Service categories, Service types, Specification requirements):
* Inserted: new items that will be added to your organisation data.
* Updated: existing items that will be updated with new information from the file.
* Already matches: existing items that already match the file exactly, so nothing changes.
* Kept from existing data: items in your current data that are not in the file. These are kept, not removed.
The upload never removes your existing data. Anything not included in the file is retained.
## **Step 3: Review and apply**
Check the summary to confirm the changes look as expected. When you are satisfied, select Apply update to apply the changes to your organisation data.
## **After updating**
Your organisation data now includes the latest DEX service types and reference data. You can then set up DEX Reporting on your services. See [CHSP / DEX Stage 3: setting up reporting on your services](/industry-updates/chsp-stage-3/chsp-dex-stage-3-reporting)
# CHSP / DEX Stage 3: setting up reporting on your services
Source: https://support.visualcare.com.au/industry-updates/chsp-stage-3/chsp-dex-stage-3-reporting
# **Summary**
This article covers how to set up DEX Stage 3 reporting on your CHSP services. For an overview of what Stage 3 is and the key dates, see [CHSP / DEX Stage 3: what is changing and what you need to do](/industry-updates/chsp-stage-3/chsp-dex-stage-3-what-to-do)
## **Before you start**
* This applies only to services that have a CHSP service type.
* You will set DEX Reporting details on your CHSP services, create service variations where your delivery varies, and check your Worker Types.
* Set this up before 11 August 2026 so delivery from 1 July is captured correctly.
## **How Stage 3 fields work in Visualcare**
The new fields are handled in two ways:
* Set once on the service, under Maintenance > Services using DEX Reporting. These are session location, overnight support, meals provided, texture modified, meals cooked offsite, and the meal type counts.
* Worked out automatically when you export to DEX, with no setup required. Subcontractor and volunteer involvement are determined from the assigned worker's Worker Type.
The DEX Reporting details are not shown on the roster. When rostering, staff simply select the service that matches what was delivered, and the reporting detail follows from the service.
## **Step 1: Set the DEX Reporting details on a service**
1. Go to Maintenance > Services and open a CHSP service.
2. Select the DEX Reporting button. This appears only for services with a CHSP service type.
3. Complete the fields that apply to the service. Not all fields apply to every service, so complete only those relevant to the service's DEX activity:
* Session Location (Home or Community): Meal delivery, Flexible respite, Individual social support.
* Overnight support (Yes/No): Flexible respite. Set this to Yes for an overnight respite service.
* Meals provided (Yes/No): respite services.
* Texture modified items (Yes/No): Meal delivery and respite where meals are provided.
* Meals cooked offsite (Yes/No): Meal delivery.
* Meal type counts (Main, Light, Dessert, Beverage, Snack): Meal delivery and respite where meals are provided. Enter the number of each meal type this service provides.
4. Select Save.
Session Location is blank by default so you actively choose it. Yes/No fields default to No and meal counts default to 0.
## **Step 2: Create service variations for different combinations**
Because these details are set on the service, one service represents one combination. Where your delivery varies, create a separate service for each combination and select the matching one when rostering.
Include the combination in the service description so rostering staff can pick the right one by name. For example, a Meal delivery service could be split into:
* Meal delivery - Main only
* Meal delivery - Main & Dessert
* Meal delivery - Main, Dessert & Beverage
The same applies to location and overnight. Because both are set on the service, create a separate service for each combination you deliver. For example:
* Flexible respite - Home
* Flexible respite - Home, Overnight
* Flexible respite - Community
For a variation to be available to select for a client, it needs to be on that client's agreement. Add the applicable variations to the client agreement, either individually or in bulk.
If a participant's delivery differs on a given day, for example they usually have main only but choose dessert that day, select the matching service on that day's roster shift. If the shift has already moved to a timesheet, change the service on the timesheet.
You cannot edit Stage 3 values directly on a shift or timesheet. The values follow the service, so selecting a different service is how you change them.
## **Step 3: Check your Worker Types**
Subcontractor and volunteer involvement are worked out automatically from the assigned worker's Worker Type at export. You do not set them on the service or the shift.
Set the Worker Type in the worker profile, under the Finance tab, in the Worker Type field.
* For subcontracted delivery to report as subcontractor, the worker's type must be Broker, Supplier, or Contractor. If a subcontracted worker is set to another type, for example Service Provider or Independent Support Worker, the session will report as not subcontracted.
* For volunteers, set the Worker Type to Volunteer.
* If no worker is assigned to a shift, both subcontractor and volunteer report as No.
On location rosters with more than one worker assigned to a session:
* Subcontractor reports as Yes if any assigned worker is a Broker, Supplier, or Contractor.
* Volunteer reports as Yes if more than half of the assigned workers are volunteers.
## **How changes to a service apply**
When you change and save a DEX Reporting field on a service, the change applies to all shifts and timesheets that use that service, past, present, and future, and is included in your next DEX export. Visualcare shows a confirmation before you save.
Because of this, do not repurpose an existing service to represent a different combination. Create a new service variation instead, so existing records keep their correct values.
# CHSP / DEX Stage 3: what is changing and what you need to do
Source: https://support.visualcare.com.au/industry-updates/chsp-stage-3/chsp-dex-stage-3-what-to-do
## Summary
From 11 August 2026, the Department of Health, Disability and Ageing is adding new reporting fields to the Data Exchange (DEX) for CHSP, known as the Stage 3 changes.
The new fields capture more detail about how a service was delivered, for example where a session took place, whether a volunteer or subcontractor was involved, and the types of meals provided. They do not change your funding, your existing outputs (meals, trips, hours), or your performance assessment.
Two companion articles cover the setup steps:
* Setting up DEX Stage 3 reporting on your CHSP services [CHSP / DEX Stage 3: setting up reporting on your services](/industry-updates/chsp-stage-3/chsp-dex-stage-3-reporting)
* Updating your DEX organisation data [CHSP / DEX Stage 3: updating your organisation data](/industry-updates/chsp-stage-3/chsp-dex-stage-3-org-data)
## **What is changing**
Stage 3 introduces additional session-level fields in DEX. They apply to specific service types, not all of them:
* Whether the session was delivered by a subcontractor, and whether a volunteer was involved in direct service delivery. These apply across most service types.
* For Meal delivery and respite services: whether meals were provided, whether any items were texture modified, whether meals were cooked offsite, and a breakdown of meal types (main, light, dessert, beverage, snack).
* For Meal delivery, Flexible respite, and Individual social support: whether the session took place in a home or community setting.
* For Flexible respite: whether the session included overnight support.
Some optional Transport fields (trip distance, trip travel time, and engagement time) are part of Stage 3 but are not mandatory for 2026-27. Visualcare is not capturing these in this release.
## **Key dates**
* The new fields apply to service delivery from 1 July 2026.
* The fields go live in DEX on 11 August 2026, and are mandatory from that date. There is no optional period, and a session record will not save without them.
* July data is normally due on 14 August. Because Stage 3 goes live on 11 August, the department has granted all CHSP providers a blanket extension to upload July data until 30 August 2026.
Because the fields apply to delivery from 1 July but DEX cannot accept them until 11 August, you need to capture the new information for July and early August delivery and report it once DEX is live. Setting up your services now handles this. If you need more time beyond 30 August because of system setup, you can request a further extension through your funding arrangement manager.
## **What this means in Visualcare**
Visualcare handles the new fields in two ways:
* Some are set once on the service, under Maintenance > Services using the DEX Reporting option. These are the session location, overnight, and meal details listed above.
* Subcontractor and volunteer involvement are worked out automatically when you export to DEX, based on the assigned worker's Worker Type. No setup is required for these.
Because the meal and location details are set on the service, the recommended approach is to create service variations for the different combinations you deliver, then select the right one on the roster or timesheet. The setup article explains this in full.
## **What you need to do**
1. Before 11 August 2026, set up the DEX Reporting details on your CHSP services so your delivery from 1 July is captured correctly. See [CHSP / DEX Stage 3: setting up reporting on your services](/industry-updates/chsp-stage-3/chsp-dex-stage-3-reporting)
2. Check your Worker Types are set correctly, so subcontractor and volunteer involvement is reported accurately. See [CHSP / DEX Stage 3: setting up reporting on your services](/industry-updates/chsp-stage-3/chsp-dex-stage-3-reporting)
3. Update your DEX organisation data once the updated file is available. See [CHSP / DEX Stage 3: updating your organisation data](/industry-updates/chsp-stage-3/chsp-dex-stage-3-org-data)
4. From 11 August, continue exporting to DEX as normal. The new fields are included automatically based on your service setup and shift details.
## **More information**
The department's guidance sets out the full detail of the Stage 3 fields and how they apply to each service type:
* CHSP reforms overview: [Commonwealth Home Support Program (CHSP) reforms](https://www.health.gov.au/our-work/chsp/reforms)
* CHSP Guide to Data Exchange (DEX) Stage 3 Changes: [CHSP Guide to Data Exchange (DEX) Stage 3 Changes](https://www.health.gov.au/resources/publications/chsp-guide-to-data-exchange-dex-stage-3-changes?language=en)
# SAH Personal Care contribution changes
Source: https://support.visualcare.com.au/industry-updates/sah-personal-care-changes
## Summary
From 1 October 2026, personal care under Support at Home (SAH) becomes fully funded by the Australian Government. Participants no longer pay a contribution towards their personal care services.
This is a government change to how personal care is classified. It does not change how you claim, invoice or generate statements in Visualcare. The participant and government amounts on your claims, invoices and statements come from Services Australia, so they update automatically.
The one place to be aware of is SAH quotes, where Visualcare estimates the participant contribution. This is being updated so personal care calculates with no contribution from 1 October 2026.
## What is changing
The government is moving personal care from the Independence contribution category to Clinical supports. Clinical supports attract no participant contribution, so personal care becomes fully funded.
This applies to the personal care services:
* Assistance with self-care and activities of daily living
* Assistance with the self-administration of medication
* Continence management (non-clinical)
No other service categories are changing.
## Key dates
* The change applies to personal care delivered from 1 October 2026.
* The update goes live in Visualcare on or around 1 October 2026. From that point, SAH quotes calculate personal care with no participant contribution.
## What this means in Visualcare
**SAH quotes**
This is the only place Visualcare calculates an estimated participant contribution. From go-live, personal care service lines calculate with no participant contribution, and the government funds the full amount. This flows through to the service agreement generated from the quote.
There is no date-based logic. From go-live, personal care calculates at 0% in all quotes, regardless of the service dates, and whether the quote is new or an existing one you reopen.
**Client profile and dashboards**
Contribution rates come directly from the Services Australia API and update automatically. There is nothing to reconfigure.
**Claiming**
The participant and government amounts come from the government payment file. This comes from Services Australia, so nothing changes in the claim flow.
**Invoices and statements**
These are generated from the claim reconciliation data, so they reflect the correct split automatically.
## What you need to do
For most of Visualcare, nothing. Claiming, invoicing, statements and dashboards all follow the data from Services Australia and update on their own.
For SAH quotes:
1. New quotes for personal care from 1 October 2026 show no participant contribution automatically once the update is live.
2. Because there is no date-based logic, any quote you create or reopen after go-live also shows personal care at 0%, including quotes for services before 1 October. If you need a quote to reflect the pre-1-October contribution for personal care, edit the government and participant portion amounts, and any affected totals, for those service lines in the Word document after you download it from the quote.
3. Best practice is not to quote across the change. Quote up to 30 September and from 1 October separately.
Reopening an existing quote after the change and saving it, recalculates it. If you have quotes issued before 1 October that you want to keep as they were, avoid re-saving them, or adjust the downloaded Word document as described above.
## More information
* [Support at Home program manual - Department of Health, Disability and Ageing (participant contributions and service list chapters)](https://www.health.gov.au/resources/publications/support-at-home-program-manual-a-guide-for-registered-providers?language=en)
* [Personal care contribution change - Department of Health, Disability and Ageing](https://www.health.gov.au/support-at-home/personal-care-contributions?language=en)
# Employment Hero integration
Source: https://support.visualcare.com.au/integrations/employment-hero
How to connect Visualcare to Employment Hero for syncing worker data, compliance items, and leave
Visualcare integrates with Employment Hero HR to sync worker data, compliance certificates, and leave. Once connected, data syncs from Employment Hero to Visualcare once per day at approximately 2am ACST.
This is separate from the [KeyPay integration](/integrations/keypay) used for timesheet and kilometre exports.
Some steps need the Visualcare team to enter credentials on the back end, so you share certain details securely during the process.
## What you'll need
* An active Employment Hero account with admin access
* Workers already created in both Visualcare and Employment Hero
* Admin access to Visualcare
## What syncs once connected
### Compliance and leave
* **Compliance (certificates):** Active and Approved certificates in Employment Hero sync to worker compliance items in Visualcare daily
* **Leave:** leave sync is not enabled by default. If you need leave from Employment Hero to flow into Visualcare, let your Implementation Consultant know and the team enables it for you
### Worker data
The following fields sync from Employment Hero to Visualcare daily:
| Visualcare field | Employment Hero field |
| - | - |
| First Name | First Name |
| Last Name | Last Name |
| Sex | Gender |
| DOB | DOB |
| Phone 1 | Personal Mobile |
| Phone 2 | Home Phone |
| Start Date | Start Date |
| End Date | Termination Date |
| Marital | Marital |
| Accounting Code | External Id |
| Preferred Name | Known As |
| Case Manager | Primary Manager |
Visualcare matches workers by comparing the **Company Email** in Employment Hero with the **Email** on the worker profile in Visualcare. Make sure these match for each worker you want to sync. Case Manager only syncs if the Primary Manager's email in Employment Hero matches a user's username in Visualcare.
## Part 1: Create an application in Employment Hero
Create an API application in Employment Hero's Developer Portal so Visualcare can read your worker and compliance data.
1. Log into Employment Hero
2. Click your **profile icon** in the top-right corner
3. Select **Developer Portal** from the dropdown menu
1. On the **API** page, click **+ Add Application**
2. Fill in the application details:
* **Application Name:** Visualcare (or any name of your choice)
* **Redirect URI:** `https://app.visualcare.com.au/inc/export/employmenthero/index.php`
Scroll down to the scope selection area. You need to enable **Read** access for each of the following:
* **Certifications** (Read)
* **Employees** (Read)
* **Employees certifications** (Read)
* **Leave requests** (Read)
* **Organisations** (Read, under the **User** section)
Only select Read access for each scope. Do not enable Update, Create, or Delete permissions. Visualcare only needs to read your data.
1. Click **Continue to Review**
2. Confirm the application name, redirect URI, and all 12 scopes look correct
3. Click **Create Application**
There is no way to change the scopes after the application is created. If you need to adjust them later, delete the application and create a new one.
4. You are shown a **Client ID** and **Client Secret**. Copy both immediately.
The Client ID and Client Secret are only displayed once. If you navigate away without copying them, you need to delete the application and start again.
## Part 2: Authorise the connection
Send your credentials to the Visualcare team and complete the authorisation to generate your access tokens.
Send the **Client ID** and **Client Secret** to your Visualcare Implementation Consultant. We recommend sending these securely, for example:
* A password-protected document with the password sent separately
* A one-time secret sharing service
Keep these credentials secure. They provide access to your Employment Hero data. Do not share them in plain text over email.
The Visualcare team enters these into your database. Once confirmed, you move on to the next step.
Once the Visualcare team confirms your Client ID and Secret have been entered, complete the following while logged into Visualcare:
1. Open a new browser tab and navigate to: `https://app.visualcare.com.au/inc/export/employmenthero/auth.php`
2. If prompted with a **Single Sign On Authorisation** screen, click **Authorised** next to your organisation
3. On the **Authorize with EmploymentHero** screen, review the permissions and click **Allow**
4. The page displays three values: **Access Token**, **Refresh Token**, and **Code**
5. Copy all three values and send them to the Visualcare team using the same secure method as the previous step
The Visualcare team enters these tokens to finalise the connection. Once complete, your Employment Hero data begins syncing to Visualcare daily at approximately 2am ACST.
## Part 3: Match compliance items in Visualcare
For certificates to sync correctly, each Employment Hero certificate needs to be linked to a corresponding worker compliance item in Visualcare. Visualcare matches Employment Hero's ID to the **External Id** field on the compliance item. This is a one-time setup you do yourself.
1. In Visualcare, go to **Maintenance** → **Workers** → **Worker Compliance**
2. Click **Sync EH Certificate**
3. Select a compliance item from the table at the bottom of the screen
4. Select the matching **External ID** from the dropdown at the top of the screen
5. Click **Save**
6. Repeat steps 3 to 5 for each certificate you want to sync
The compliance item in Visualcare needs to exist before you map it. If your compliance items are not set up yet, ask your Implementation Consultant to help you create them first.
Only certificates with a status of **Active** or **Approved** in Employment Hero sync across to Visualcare. Compliance items are refreshed daily. Any compliance item created by `api@visualcare.com.au` is removed and replaced with the latest data from Employment Hero. Start dates and expiry dates are added to Visualcare if they are present in Employment Hero.
A log file is sent with the daily results of the update so you can review what was synced.
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Set up and manage compliance items for workers
Connect Visualcare to Xero for invoice and payroll export
Connect Visualcare to KeyPay for payroll export
# Integrations
Source: https://support.visualcare.com.au/integrations/index
Connect Visualcare with Xero, MYOB, KeyPay, Employment Hero, QuickBooks, and more
# Integrations
Connect Visualcare with your accounting, payroll, and other business software.
Integrations are authorised from **Settings** → **Data Export**, where you connect your chosen platform and then sync your data - including contacts, employees, pay items, and inventory items. Once connected, you configure your services and workers with the relevant accounting codes so that exported data maps correctly to your external system.
See the individual integration pages below for step-by-step connection instructions specific to each platform.
Connect and sync with Xero
Connect and sync with MYOB
Connect and sync with KeyPay
Connect and sync with Employment Hero
# KeyPay integration
Source: https://support.visualcare.com.au/integrations/keypay
How to connect Visualcare to KeyPay for payroll export, sync employees and pay items, and export timesheets
Visualcare integrates with KeyPay to export worker payroll information for a selected period on demand. Once connected, you sync employees and pay items between the two systems and export timesheets directly from vCore.
## Linking vCore to KeyPay
Click the settings cog and go to **Settings** → **Data Export**.
Select **XERO2 / KeyPay** in the drop-down for **Timesheet Export**.
Click **KeyPay Connection**, enter your **API Key** in the pop-up, and click **Connect**.
The KeyPay API key is found in your KeyPay software.
Once connected, under **Settings** → **Data Export**, scroll to the **KeyPay** section and click **Sync Employees**, **Sync KeyPay Pay Items**, **Sync Tax Rates**, and **Sync Expense Categories**. This brings across your data from KeyPay.
Under **Settings** → **Data Export** → **KEYPAY**, additional customisation settings are available for the KeyPay integration.
This section only appears once the KeyPay connection has been established.
## Setting up worker accounting codes
Before your first export, you need to link each Visualcare worker to their matching employee record in KeyPay.
Go to **Workers** → **Profile** and open a worker's record.
Click the **Finance** tab, scroll to the bottom, and find the **Accounting Code** field. Click the drop-down. This lists all employees synced from KeyPay. Select the matching employee name and click **Save**.
Complete this for every active worker before running your first export.
Any worker without an accounting code set returns an "invalid worker accounting code" error at export time. If you see this error, click the hyperlink on the error message. It takes you directly to that worker's profile to fix it.
This mapping is permanent and doesn't need to be redone each pay run. You only need to update it if an employee record changes in KeyPay in a way that breaks the link.
## Configuring work types and allowances
### Set allowance codes for services with special conditions
Some services, such as sleepover shifts, need to be tagged with a KeyPay work type so the correct award conditions apply on export.
Go to **Settings** → **Data Export**, scroll to the KeyPay section, and click the blue arrow next to **KeyPay Work Types**. Locate the relevant work type and copy its **External ID**.
Go to **Maintenance** → **Services**, open the relevant service, paste the External ID into the **Allowance Code** field, and click **Save**.
This is a one-time setup per service. Check which of your services have special award conditions. For most providers this applies to sleepover shifts.
### Set the kilometre pay code
If your workers are paid for kilometres travelled, you need to set a pay code so kilometre data exports correctly.
Go to **Settings** → **Finance**.
Find the **Kilometre** section and paste the External ID for the kilometre allowance work type from KeyPay into the **Pay Code (KM)** field.
To find the kilometre allowance External ID, go to **Data Export** → **KeyPay Work Types** and search for "kilometre".
If your organisation pays workers for kilometres between shifts (provider travel), set the pay code for that as well.
| Setting | Options | What it means |
| - | - | - |
| KM between shifts | No charge but pay / Charge and pay / No charge no pay | Whether to bill the participant and/or pay the worker for kilometres between shifts |
| Travel time | Leave blank (most common) | Travel time is treated as regular time worked with the applicable pay rate for the day and time |
Kilometres export as a separate step to timesheets. After exporting timesheets, go back and run **Export KM to KeyPay** as a second export. This step is easy to miss.
## Timesheet approval preference
On the **Data Export** page, there's a setting for whether timesheets arrive in KeyPay as **draft** or **auto-approved**.
Starting with **draft** is the safer option. Once you've confirmed the data looks correct across a few pay runs, you can switch to auto-approve if you prefer. This setting only affects how timesheets land in KeyPay. It doesn't trigger a pay run automatically.
## Location tagging (optional)
KeyPay locations let you tag payroll data by participant or area, which helps with cost tracking in your payroll reports. This is optional. Only configure it if you want cost tracking by location.
When exporting timesheets, Visualcare tags each shift with a location value pulled from a field on the roster. The available mapping options are:
| Visualcare field | Use when |
| - | - |
| Agreement Area / Location Area | Timesheets are tracked by area listed in the agreement area or location area |
| Agreement Reference 1 | Reference 1 on client agreements is used for cost tracking |
| Client Area Reference 1 / Location Area Reference 1 | The text in the agreement or location area field needs to differ from what appears in KeyPay |
| Roster Category Reference 1 | Shifts are tagged by roster category |
| Service Reference 1 | Shifts are tagged by service reference 1 |
The text in the Visualcare field must exactly match the corresponding location name in KeyPay. For example, if the KeyPay location is called "North Coast", the value in the mapped Visualcare field also needs to be "North Coast". If these don't match, the location won't flow through on export.
To set up location tagging:
1. Go to **Settings** → **Data Export**
2. Scroll to the **KeyPay** section and find the **KeyPay Locations** drop-down
3. Select the Visualcare field that best matches how your locations are structured in KeyPay
## Sync items
The table below shows which worker-related fields in vCore flow into matched fields in KeyPay. Items highlighted in pink are mandatory.
## Export to KeyPay
Once setup is complete and timesheets have been confirmed, you're ready to export data into KeyPay:
Go to **Timesheets** → **Data Export**.
Select the period to export and click **Reload**.
Apply any required column filters and tick to select all items.
Go to **Export timesheets** and select **Export to KeyPay**.
A summary window opens and highlights any items that won't export successfully. Select **Process Export** to send payroll data to KeyPay.
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Connect Visualcare to Xero for invoice and payroll export
How to export timesheets and payroll data from Visualcare
Configure award details and pay rate overrides on a worker profile
# Supported integrations
Source: https://support.visualcare.com.au/integrations/matrix
Overview of all accounting, payroll, and third-party integrations supported by Visualcare
Visualcare integrates with a range of accounting, payroll, HR, and government systems. Integrations work in one of two ways: a direct **API connection**, or a **file-based export** (CSV or MIF) that you download from Visualcare and upload into your finance software. This page is a summary of what's supported.
## API integrations
The following systems connect to Visualcare via a direct API connection:
| Integration | Type | Details |
| - | - | - |
| **Elmo** | HR / Payroll | API integration |
| **Employment Hero** | HR / Payroll | [Employment Hero integration](/integrations/employment-hero) |
| **KeyPay** | Payroll | [KeyPay integration](/integrations/keypay) |
| **MessageMedia** | SMS | [MessageMedia integration](/integrations/messagemedia) |
| **MicroKeeper** | Payroll | API integration |
| **MYOB** (AccountRight and Advanced) | Accounting / Payroll | [MYOB integration](/integrations/myob) |
| **Pay Cat** | Payroll / Award interpretation | [Pay Cat integration](/integrations/paycat) / [Pay Cat Connect](/integrations/paycat-connect) |
| **QuickBooks** | Payroll (via the KeyPay API) | [QuickBooks integration](/integrations/quickbooks) |
| **Reckon** (Reckon One) | Accounting | API integration |
| **Roubler** | HR / Payroll | API integration |
| **Xero** | Accounting / Payroll | [Xero integration](/integrations/xero) |
### Government funding API
Visualcare connects to the Services Australia Aged Care API to receive Support at Home (SAH) participant funding information:
| Integration | Type |
| - | - |
| **Aged Care API** (Support at Home) | Funding |
The Aged Care API is used for funding information only. NDIS claims are submitted by uploading a CSV claim file to the NDIS portal. See [File-based exports](#file-based-exports-csv-and-mif) below.
API integrations may be limited by software version and which fields are available for export. Exact feature coverage (for example, whether kilometres, travel time, expenses, or allowances are included in an export) varies by integration. Contact [Visualcare support](https://helpdesk.visualcare.com.au) to confirm what's covered for your setup.
## File-based exports (CSV and MIF)
The following systems are supported through export files that you download from Visualcare and upload into your finance software:
| Integration | File type | Used for |
| - | - | - |
| **ADP** (Payline and Payforce) | CSV | Payroll |
| **Attache** (T6) | CSV | Invoicing and payroll |
| **ConnX** | CSV | Payroll |
| **DVA VHC claim file** | CSV | Claims upload |
| **Emplive** | CSV | Payroll |
| **Micropay** (Sage) | MIF | Payroll |
| **Microsoft Dynamics** (Dynamics 365 F\&O and Business Central) | CSV | Invoicing |
| **NDIS claim file** | CSV | Claims upload to the NDIS portal |
| **QuickBooks** | CSV | Invoicing and payroll |
| **Sage Intacct** | CSV | Invoicing |
| **TechOne** | CSV | Invoicing and payroll |
Xero, MYOB, and Reckon also support file-based exports in addition to their API integrations.
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Connect Visualcare to Xero for invoice and payroll export
Connect Visualcare to KeyPay for payroll export
Sync worker data and compliance from Employment Hero
Send SMS notifications to clients via MessageMedia
# MessageMedia integration
Source: https://support.visualcare.com.au/integrations/messagemedia
How to set up and send SMS notifications to clients using MessageMedia in Visualcare
Visualcare integrates with MessageMedia (previously known as Wholesale SMS) to send SMS notifications to clients about upcoming shifts. Once configured, you compile shift messages for a selected date range and send them in bulk.
## Set up
Before using the SMS feature, the integration needs to be activated for your database and your MessageMedia credentials entered.
If you already have an account with MessageMedia, you're ready to connect. Otherwise, create an account at [MessageMedia](https://messagemedia.com/au/).
Update the API key and API secret (password) in **Settings** → **Rostering** → **SMS**.
Make sure clients have a valid SMS phone number with the correct area code in the SMS field on their client profile.
The **Operations** → **SMS** option is only available if SMS has been activated for your database and credentials have been provided.
## Sending SMS notifications
Go to **Operations** → **SMS**.
Select the dates for the system to compile the messages, then click **Run**.
A list of all valid clients and shifts displays with a prefilled message. You select messages individually or all at once.
When ready, click **Send All SMS's**.
Once you click **OK** on the confirmation prompt, the operation cannot be cancelled.
The status column displays a Send ID from MessageMedia when sent successfully. A failed message displays if the send was unsuccessful.
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Full list of integrations supported by Visualcare
Connect Visualcare to Xero for invoice and payroll export
# MYOB integration
Source: https://support.visualcare.com.au/integrations/myob
Connect Visualcare to MYOB AccountRight or Advanced for invoice and payroll export
Visualcare integrates with MYOB AccountRight and MYOB Advanced via API to export client invoices and worker timesheet data. Once connected, you sync your MYOB data into Visualcare, map payers, clients, workers, and services to the corresponding MYOB records, and export on demand from the Data Export area.
## Linking Visualcare to MYOB
To export any client invoice or worker timesheet data, the API connection must be established between vCore and MYOB.
Go to **Settings** → **Data Export** → **Accounting Software**.
To connect to MYOB to invoice clients, select **MYOB** from the **Invoice Export** drop-down and click **Save**. To connect to MYOB to export worker timesheets for payroll, select **MYOB** from the **Timesheet Export** drop-down and click **Save**.
Click **Authorise MYOB** to connect to your MYOB file. If you're already logged in to MYOB, select the MYOB business file to connect and click **Allow Access**. If you're not logged in, you'll be prompted to log in first, then select your business file and click **Allow Access**.
Once connected, you'll see the option to **Disconnect MYOB Connection**. If you have multiple files linked to your MYOB user account, they're displayed in the **MYOB company** drop-down.
## Syncing MYOB data
After the MYOB connection has been established, items must be synced from MYOB into vCore. Under **Settings** → **Data Export**, in the **MYOB API** section, click each of the sync buttons. These pull the relevant lists of MYOB data into drop-downs throughout vCore to initialise the integration.
If you don't wish to export via API to MYOB, you can select **MYOB AccountRight** or **Advanced** from the **Accounting Software** menu instead. The setup below is the same, except the fields are free text rather than drop-downs.
## Setting up for export
### Payers
Payers are intended to be used when a third party (for example, a plan manager) pays the invoice on behalf of the participant. Payers can be set up and linked to a client profile or client agreement so invoices export to the desired MYOB Customer Card.
Create payers under **Maintenance** → **Payers**.
Once created, select an **Accounting Code** for the payer from the drop-down in the **Contact** section. This drop-down is populated with Customer Cards from MYOB. Click **Save**.
If the MYOB card is not listed, ensure it's set up in MYOB and click **Sync code from MYOB**. If it still doesn't appear, the MYOB connection may need to be re-established.
Depending on your setup, you may not use payers at all — instead exporting invoices to the participant's own Customer Card and linking the client using the **Accounting Code** on the client profile.
### Clients
Once payer profiles are created, you can set up client profiles for export. There are three places the system looks to determine where invoices for a client should export:
1. **Agreement Payer**
2. **Client Profile Payer**
3. **Client Profile Accounting Code**
If the Agreement Payer (1) is blank, vCore looks at the Client Profile Payer (2). If both are blank, vCore exports the invoice to the Client Profile Accounting Code (3). This allows different MYOB Customer Cards to be used for the same client depending on the agreement.
Example: a participant may be both plan managed and self managed. Link the plan managed agreement to a payer profile (the plan manager), and leave the self managed agreement blank so those invoices export directly to the client's own Customer Card.
### Workers
First ensure the worker has the correct Payrate Level, set in **Worker Profile** → **Finance** → **Worker Details** → **Update Pay Level and Rates**.
For MYOB Supplier Cards (contractors), the Payrate Level must be set to 0 to export correctly. For MYOB Employee Cards, select the applicable Payrate Level.
At the bottom of the page, select the worker **Accounting Code**. This lists all MYOB Employee Cards and Supplier Cards. Select the correct card and click **Save**. This tells vCore which MYOB employee or supplier to send the worker's timesheets to.
If the employee name is not listed, click **Sync code from MYOB** to bring across any new information since the last sync.
### Services — charge
Charge amounts for a service are set in **Maintenance** → **Services**. You must select an **Accounting Code** for each service — the accounting code is the MYOB Job Item you have created. If the item you require is not listed, ensure it exists in MYOB and click **Sync MYOB Invoice Items and Job** back in settings. Click **Save**.
The Visualcare charge rate is sent with the export and overrides the Job Item charge rate in MYOB.
### Services — pay
For worker payroll exports, vCore matches **Service + Worker Payrate Level** to a **Payroll Category**. Payroll Categories must be selected for each service and payrate level you provide.
Go to **Maintenance** → **Services**, select a service, and choose the **Payroll Category** (MYOB's equivalent of a pay item) from the drop-down for each pay level. If the Payroll Category you require is not listed, ensure it's set up in MYOB and click **Sync MYOB Payroll Categories**.
The pay rate amount is not sent to MYOB for employees — only the Payroll Category is exported. For suppliers, the pay amount is exported.
## Exporting data
### Invoices
Navigate to **Timesheets** → **Data Export** and select the invoice export option. Choose the date range and any filters, then click **Export**. Visualcare sends the invoice data to MYOB via the API connection.
### Payroll
Navigate to **Timesheets** → **Data Export** and select the timesheet export option. Choose the pay period and click **Export**. Timesheet data is sent to MYOB for payroll processing.
## Running into issues?
Integration error fixes live under Troubleshooting. See [MYOB export troubleshooting](/troubleshooting/myob-export-errors) for common MYOB export errors and fixes, or [Integration troubleshooting](/troubleshooting/integration-issues) for other integration issues.
## Related articles
Connect Visualcare to Xero for invoice and payroll export
Overview of accounting software export options
Full list of integrations supported by Visualcare
# Pay Cat integration
Source: https://support.visualcare.com.au/integrations/paycat
How to connect Visualcare to Pay Cat for automated award interpretation and payroll export
This page covers the legacy KeyPay-API integration. If you're setting up Pay Cat Connect (the newer integration with automated award interpretation and award-aware rostering), see [Pay Cat Connect](/integrations/paycat-connect).
Pay Cat connects to Visualcare through the KeyPay API, giving you automated SCHADS Award interpretation for rostering and payroll. Once connected, you sync employees and pay items from Pay Cat into vCore, then export completed timesheets directly at the end of each pay run.
Because Pay Cat uses the KeyPay connection, payroll setup follows the [KeyPay integration](/integrations/keypay) guide. Use that guide for the payroll setup — the steps below cover the Pay Cat side, starting with how to find your API key in Pay Cat.
## Linking vCore to Pay Cat
Log into Pay Cat, go to **Account Settings** → **My Account**, and locate the **API Key** field. Click **Copy**.
In vCore, click the **Settings** icon in the top right, then go to **Settings** → **Data Export**.
Click **KeyPay Connection**. In the pop-up that appears, paste the API key you copied from Pay Cat and click **Connect**.
A success message confirms the connection, and your Pay Cat company file name appears on the page.
To verify the connection, refresh the page and click **KeyPay Connection** again. You should see your company name and a connected status. If the field is blank, the API key wasn't copied correctly. Try copying it from Pay Cat again.
## Syncing data from Pay Cat
Once connected, pull your Pay Cat data into Visualcare from **Settings** → **Data Export**. Scroll to the KeyPay section and click each of the following:
* **Sync Employees**
* **Sync KeyPay Pay Items**
* **Sync Tax Rates**
* **Sync Expense Categories**
This brings across employee records, pay items, and other data from Pay Cat so they're available for mapping in Visualcare.
### Set the accounting code on each worker profile
Before your first export, you need to link each Visualcare worker to their matching employee record in Pay Cat.
Go to **Workers** → **Profile** and open a worker's record.
Click the **Finance** tab, scroll to the bottom, and find the **Accounting Code** field. Click the drop-down. This lists all employees synced from Pay Cat. Select the matching employee name and click **Save**.
Complete this for every active worker before running your first export.
Any worker without an accounting code set returns an "invalid worker accounting code" error at export time. If you see this error, click the hyperlink on the error message. It takes you directly to that worker's profile to fix it.
This mapping is permanent and doesn't need to be redone each pay run. You only need to update it if an employee record changes in Pay Cat in a way that breaks the link.
## Configuring work types and allowances
### Set allowance codes for services with special conditions
Some services, such as sleepover shifts, need to be tagged with a Pay Cat work type so the correct award conditions apply on export.
Go to **Settings** → **Data Export**, scroll to the KeyPay section, and click the blue arrow next to **KeyPay Work Types**. Locate the relevant work type and copy its **External ID**.
Go to **Maintenance** → **Services**, open the relevant service, paste the External ID into the **Allowance Code** field, and click **Save**.
This is a one-time setup per service. Check which of your services have special award conditions - for most providers this applies to sleepover shifts.
### Set the kilometre pay code
If your workers are paid for kilometres travelled, you need to set a pay code so kilometre data exports correctly.
Go to **Settings** → **Finance**.
Find the **Kilometres** section and paste the External ID for the kilometre allowance work type from Pay Cat into the **Pay Code** field.
To find the kilometre allowance External ID, go to **Data Export** → **KeyPay Work Types** and search for "kilometre".
If your organisation pays workers for kilometres between shifts (provider travel), set the pay code for that as well.
| Setting | Options | What it means |
| - | - | - |
| KM between shifts | No charge but pay / Charge and pay / No charge no pay | Whether to bill the participant and/or pay the worker for kilometres between shifts |
| Travel time | Leave blank (most common) | Travel time is treated as regular time worked with the applicable pay rate for the day and time |
Kilometres export as a separate step to timesheets. After exporting timesheets, go back and run **Export KM to KeyPay** as a second export. This step is easy to miss.
## Setting the timesheet approval preference
On the **Data Export** page, there's a setting for whether timesheets arrive in Pay Cat as **draft** or **auto-approved**.
Starting with **draft** is the safer option. Once you've confirmed the data looks correct across a few pay runs, you can switch to auto-approve if you prefer. This setting only affects how timesheets land in Pay Cat. It doesn't trigger a pay run automatically.
## Exporting timesheets to Pay Cat
Go to **Timesheets** → **Data Export**.
Select the pay period to export and click **Reload**.
Apply any required column filters, then tick to select all items.
Go to **Export timesheets** and select **Export to KeyPay**.
A summary window opens and highlights any items that won't export successfully. Review these, then click **Process Export** to send the payroll data to Pay Cat.
## Location tagging (optional)
Pay Cat locations let you tag payroll data by participant or area, which helps with cost tracking in your payroll reports. This is optional. Only configure it if you want cost tracking by location.
When exporting timesheets, Visualcare tags each shift with a location value pulled from a field on the roster. The available mapping options are:
| Visualcare field | Use when |
| - | - |
| Agreement Area / Location Area | Timesheets are tracked by area listed in the agreement area or location area |
| Agreement Reference 1 | Reference 1 on client agreements is used for cost tracking |
| Client Area Reference 1 / Location Area Reference 1 | The text in the agreement or location area field needs to differ from what appears in Pay Cat |
| Roster Category Reference 1 | Shifts are tagged by roster category |
| Service Reference 1 | Shifts are tagged by service reference 1 |
The text in the Visualcare field must exactly match the corresponding location name in Pay Cat. For example, if the Pay Cat location is called "North Coast", the value in the mapped Visualcare field also needs to be "North Coast". If these don't match, the location won't flow through on export.
To set up location tagging:
1. Go to **Settings** → **Data Export**
2. Scroll to the **KeyPay** section and find the **KeyPay Locations** drop-down
3. Select the Visualcare field that best matches how your locations are structured in Pay Cat
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
The newer Pay Cat integration with automated award interpretation
Sync worker data and compliance from Employment Hero
Export timesheet data to your payroll software
# Pay Cat Connect
Source: https://support.visualcare.com.au/integrations/paycat-connect
Set up Pay Cat Connect for automated SCHADS Award interpretation, award-aware rostering, and payroll export
Visualcare integrates with Pay Cat Connect to bring automated SCHADS (Social, Community, Home Care and Disability Services) Award interpretation into your rostering and payroll workflows. This removes the need for manual award calculations and helps you stay compliant while controlling costs.
The integration delivers two features:
| Feature | What it does |
| - | - |
| Award-Aware Rostering (AAR) | Displays real-time SCHADS award cost implications when allocating shifts on the client roster, so rostering staff can make informed decisions before finalising schedules |
| Timesheet Interpretation | Interprets completed timesheets against the SCHADS Award and exports costed payroll data to Xero or MYOB |
If you're using the legacy KeyPay-API integration, see [Pay Cat integration](/integrations/paycat) for that setup. Pay Cat Connect is a separate product with different configuration.
### Current scope
* **Supported award:** SCHADS Award only
* **Supported payroll systems:** Xero and MYOB (API and manual export)
* **Award-Aware Rostering** is available on the client roster only - location roster support is planned
* **One award sector per worker** - multi-sector support is planned for a future release
## Award-Aware Rostering
Award-Aware Rostering gives rostering staff live visibility of the SCHADS award cost implications for each shift they allocate. Rather than discovering payroll surprises after the fact, your team can see how scheduling decisions affect costs in real time and respond before shifts are locked in.
### How it works
When allocating a worker to a shift on the client roster, Visualcare sends the shift details - along with any previously worked shifts in the same pay period - to Pay Cat for award interpretation. Pay Cat returns a costed breakdown displayed on screen using colour-coded indicators.
Shift history is linked across the pay period. If a worker has already worked 11 hours earlier in the day, the system factors those hours in when costing the next shift, giving an accurate picture of cumulative overtime exposure.
### Warning types
| Indicator | What it means |
| - | - |
| Informational (blue) | The shift attracts a penalty rate due to timing - for example, an afternoon or night rate. No action needed; this is for awareness only. |
| Payroll warning (amber or red) | A SCHADS condition has been triggered that increases the cost. Examples include overtime, broken shift allowance, or minimum engagement hours. Review the shift and consider reallocating. |
## Setting up Pay Cat Connect
Before AAR can display award costs, each worker needs to be correctly configured in Visualcare. There are three areas to set up: the worker profile, service payroll code mappings, and business-level configuration.
### Worker profile - Finance tab
Go to the worker profile and open the **Finance** tab. Set the following fields:
| Field | What to enter |
| - | - |
| Payrate Level | The worker's SCHADS pay level. Maps to the correct pay item in Xero or MYOB when exporting. |
| Receive First Aid Allowance | Tick if this worker is entitled to a first aid allowance. Applied per hour worked. |
| Worker Type | Set to **Full-time**, **Part-time**, or **Casual**. This determines base award rates and conditions. Workers set to any other type (for example, Broker or Contractor) won't be sent to Pay Cat. |
| Accounting Code | The mapping code used in your payroll system. Needed for the Xero or MYOB export. |
| Email | The worker's email address. This needs to match Pay Cat. |
If **Worker Type** is not set to Full-time, Part-time, or Casual, the worker's data saves in Visualcare but won't be sent to Pay Cat. You may see an error message - this is expected behaviour. The worker also won't appear in award-aware rostering costs.
### Worker profile - Engagement Details tab
Scroll to the **Award Details** section within the **Engagement Details** tab and complete the following:
| Field | What to enter |
| - | - |
| Award | Select **SCHADS Award**. This is the only supported award. |
| Award Sector | Select the sector that best describes the worker's primary service type (see guidance below). |
| Award Pay Level and Pay Point | The worker's pay level within the award - for example, 2.1. Invalid combinations are rejected by Pay Cat with an error. The worker saves in Visualcare but the record doesn't sync to Pay Cat until corrected. |
When you save, Visualcare stores the data locally first, then sends it to Pay Cat. You may briefly see an "Updating Pay Cat" message. If Pay Cat rejects the record (for example, an invalid pay level and point combination), an error message appears. The data is saved in Visualcare but won't exist in Pay Cat until you correct the issue and save again.
| If you deliver... | Select... |
| - | - |
| NDIS or disability services | Disability Services (under Social and Community) |
| Support at Home or aged care | Home Care |
| Mixed NDIS and Support at Home | Select the worker's predominant service type |
Only one award sector can be assigned per worker. If a worker regularly provides both NDIS and Support at Home services, this scenario isn't yet fully supported. A sector override capability is planned for a future release.
### Service payroll code mapping
When Pay Cat Connect is enabled, a payroll category mapping screen becomes available under **Maintenance** → **Services**. Each SCHADS payroll category needs to be mapped to the corresponding pay item in your Xero or MYOB account. When Pay Cat interprets a timesheet, it uses this mapping to assign the correct pay code in the export.
Go to **Maintenance** → **Services** and open the **Pay Cat Mapping** screen.
For each payroll category listed on the left, select or enter the matching pay item from your payroll system. Once all applicable codes have been entered, click **Save**.
If you use the Xero or MYOB API, the dropdown auto-populates with your live pay items. For MYOB without API access, enter the code manually.
#### Pay categories to map
Map every category in the **Permanent**, **Casual** and **Allowances** lists below. Each one is a SCHADS Award (MA000100) outcome that Pay Cat can return when it interprets a timesheet. The descriptions explain when each category applies. Pay Cat's engine makes the final call on how the award is applied.
An export only fails when the pay run includes a category that hasn't been mapped. For example, if the Sunday category isn't mapped, the export works until a worker is paid for a Sunday shift, then that line fails. Map every category in the lists below so a later pay run doesn't stop on a missing pay item.
| Pay category | When it applies |
| - | - |
| Permanent Ordinary Hours - MA000100 | Hours that don't trigger a penalty, overtime or top-up rule. |
| Permanent - Afternoon Shift | A shiftworker's shift finishes after 8pm and at or before midnight, Monday to Friday (12.5% loading). |
| Permanent - Night Shift | A shiftworker's shift finishes after midnight or starts before 6am, Monday to Friday (15% loading). |
| Permanent - Saturday | Ordinary hours worked on a Saturday (150%). |
| Permanent - Sunday | Ordinary hours worked on a Sunday (200%). |
| Permanent - Public Holiday | Hours worked on a public holiday, midnight to midnight (250%). |
| Permanent - Public Holiday Overtime | Overtime hours that fall on a public holiday (250%). |
| Permanent - Overtime x 1.5 | The first two hours worked past 10 hours in a day (the first three hours for full-time social and community services and crisis accommodation staff). |
| Permanent - Overtime x 2 | Daily overtime past the 1.5x band, and overtime worked on a Sunday. |
| Permanent - Period overtime - 1.5x | The first two hours over 38 ordinary hours in a week or 76 in a fortnight. |
| Permanent - Period overtime - 2x | Pay period overtime past the 1.5x band. |
| Permanent - Broken Shift (excess of 12 hr span) | Work on a broken shift more than 12 hours after the first shift of the day started (200%). Disability Services and Home Care only. |
| Permanent - Broken Shift overtime (excess of 12 hr span) | Hours that are both overtime and past the 12-hour broken shift span. |
| Permanent - less than minimum hours break between shifts | A shift starts less than 10 hours after the previous day's shift ended (8 hours around a sleepover, by agreement); hours are paid at 200% until a full break is taken. |
| Permanent - less than minimum hours break between shifts overtime | Overtime hours worked inside that shortened break. |
| Permanent - 24 Hour Care | A shift with the **24 Hour Care Shift** work type: up to 8 hours of care in a 24-hour period, paid at 155%. Home Care only. |
| Permanent - Top Up Hours (Less than minimum shift) | A shift is shorter than the minimum engagement (2 hours for Disability Services and Home Care, 3 hours for other sectors, 4 hours for work rostered immediately before or after a sleepover), so the difference is paid. |
| Permanent - Top Up Hours - Afternoon Shift | A top-up that falls in an afternoon shift period. |
| Permanent - Top Up Hours - Night Shift | A top-up that falls in a night shift period. |
| Permanent - Top Up Hours - Saturday | A top-up that falls on a Saturday. |
| Permanent - Top Up Hours - Sunday | A top-up that falls on a Sunday. |
| Permanent - Top Up Hours - Public Holiday | A top-up that falls on a public holiday. |
| Permanent - Work During Sleepover x 1.5 | Work performed during a sleepover is paid at the overtime rate with a one-hour minimum; this category covers the first two hours at 1.5x. |
| Permanent - Work During Sleepover x 2 | Work during a sleepover past the first two hours, or on a Sunday. |
Casual categories trigger on the same rules as the permanent categories. Casual rates include the 25% casual loading (Saturday 175%, Sunday 225%, public holiday 275%). Casuals have no "less than minimum hours break between shifts" categories because Pay Cat doesn't apply that rule to casual workers.
| Pay category | When it applies |
| - | - |
| Casual Ordinary Hours - MA000100 | Hours that don't trigger a penalty, overtime or top-up rule, including the 25% casual loading. |
| Casual - Afternoon Shift | A shiftworker's shift finishes after 8pm and at or before midnight, Monday to Friday. |
| Casual - Night Shift | A shiftworker's shift finishes after midnight or starts before 6am, Monday to Friday. |
| Casual - Saturday | Hours worked on a Saturday (175%). |
| Casual - Sunday | Hours worked on a Sunday (225%). |
| Casual - Public Holiday | Hours worked on a public holiday, midnight to midnight (275%). |
| Casual - Public Holiday Overtime | Overtime hours that fall on a public holiday. |
| Casual - Overtime x 1.5 | The first two hours worked past 10 hours in a day. |
| Casual - Overtime x 2 | Daily overtime past the 1.5x band, and overtime worked on a Sunday. |
| Casual - Period overtime - 1.5x | The first two hours over 38 hours in a week or 76 in a fortnight. |
| Casual - Period overtime - 2x | Pay period overtime past the 1.5x band. |
| Casual - Broken Shift (excess of 12 hr span) | Work on a broken shift more than 12 hours after the first shift of the day started. Disability Services and Home Care only. |
| Casual - Broken Shift overtime (excess of 12 hr span) | Hours that are both overtime and past the 12-hour broken shift span. |
| Casual - 24 Hour Care | A shift with the **24 Hour Care Shift** work type: up to 8 hours of care in a 24-hour period. Home Care only. |
| Casual - Top Up Hours (Less than minimum shift) | A shift is shorter than the minimum engagement (2 hours for Disability Services and Home Care, 3 hours for other sectors, 4 hours for work rostered immediately before or after a sleepover), so the difference is paid. |
| Casual - Top Up Hours - Afternoon Shift | A top-up that falls in an afternoon shift period. |
| Casual - Top Up Hours - Night Shift | A top-up that falls in a night shift period. |
| Casual - Top Up Hours - Saturday | A top-up that falls on a Saturday. |
| Casual - Top Up Hours - Sunday | A top-up that falls on a Sunday. |
| Casual - Top Up Hours - Public Holiday | A top-up that falls on a public holiday. |
| Casual - Work During Sleepover x 1.5 | Work performed during a sleepover is paid at the overtime rate with a one-hour minimum; this category covers the first two hours at 1.5x. |
| Casual - Work During Sleepover x 2 | Work during a sleepover past the first two hours, or on a Sunday. |
| Pay category | When it applies |
| - | - |
| First Aid Allowance - hourly | The worker has **Receive first aid allowance** ticked on their profile and works less than 38 hours in the week; paid for each hour worked. |
| First Aid Allowance - weekly | The worker works 38 hours or more in the week, so Pay Cat pays one unit at the capped weekly rate instead of the hourly rate. |
| Overtime Meal Allowance | Overtime in a day runs past one hour, and again past four hours. Not paid if the meal break was paid. |
| Broken Shift Allowance (1 unpaid break) | A Disability Services or Home Care worker has two periods of work in a day with an unpaid gap of more than one hour. |
| Broken Shift Allowance (2 unpaid breaks) | Three periods of work in a day with two unpaid gaps of more than one hour each. |
| Sleepover Allowance | A sleepover shift (8 continuous hours overnight) is rostered. |
| Vehicle Allowance - Up To ATO Limit | Kilometres recorded on the timesheet, up to the ATO cents-per-kilometre limit (non-taxable). |
| Vehicle Allowance - Above ATO Limit | The part of the kilometre rate above the ATO limit (taxable). Pay Cat splits the rate automatically. |
| Vehicle Allowance - Past 5000 km | Kilometres paid to a worker after they pass 5,000 business kilometres. The ATO only exempts the first 5,000 business kilometres from PAYG withholding, so tax is withheld on kilometres past that. |
| On Call Allowance (Weekday) | The worker is on call for a 24-hour period Monday to Friday. |
| On Call Allowance (Weekend & PH) | The worker is on call on a weekend or public holiday. |
These categories appear on the mapping screen but don't need a pay item. Visualcare only sends roster and timesheet data to Pay Cat. Leave, workers compensation and public holidays not worked aren't rostered work, so Pay Cat never returns those categories in a Visualcare export.
**System defaults.** These only apply to employees without an award classification, and every worker sent to Pay Cat is on the SCHADS Award.
* Permanent Ordinary Hours
* Casual Ordinary Hours
* Permanent - Overtime x 50%
* Permanent - Overtime x 100%
* Casual - Overtime x 75%
* Casual - Overtime x 125%
* Bonus
* Salary
**Leave**
* Annual Leave Taken
* Personal/Carer's Leave Taken
* Compassionate Leave Taken
* Community Service Leave Taken
* Long Service Leave Taken
* Leave Without Pay Taken
* Time in lieu taken
**Workers compensation (all nine variants)**
* Workers Comp - top up - no work is performed - no super
* Workers Comp - no work is performed - no super
* Workers comp - when work is performed - no super
* Workers comp - top up - when work is performed - no super
* Workers comp - After termination
* Workers Comp - top up - no work is performed
* Workers Comp - no work is performed
* Workers comp - when work is performed
* Workers comp - top up - when work is performed
**Uniform and laundry allowances.** Visualcare doesn't pass the uniform and laundry tags to Pay Cat, so these never trigger.
* Uniform Allowance
* Laundry Allowance - up to ATO threshold
* Laundry Allowance - above ATO threshold
**No meal break and public holiday not worked.** The no meal break categories only trigger when the **No Meal Break** work type is applied to a shift. Pay Cat adds an automatic meal break to shifts over five hours.
* Permanent - Public Holiday Not Worked
* Permanent - No Meal Break 1.5x
* Permanent - No Meal Break 2x
* Permanent - No Meal Break Overtime 1.5x
* Permanent - No Meal Break Overtime 2x
* Permanent - No Meal Break Public Holiday
* Permanent - No Meal Break Public Holiday Overtime
* Casual - No Meal Break Public Holiday
* Casual - No Meal Break Public Holiday Overtime
A printable checklist of every category to map, and the ones you can skip
The legacy integration used a service-level payroll matrix where you mapped a payroll code for each pay level for each service. With Pay Cat Connect, you map pay categories once. Pay Cat's interpretation determines which category applies based on the time worked, and the mapped pay code is used in the export.
### Business configuration
A small amount of business-level setup is needed under **Settings** → **Integrations**:
* **Pay period configuration** - weekly or fortnightly. This determines how pay period overtime is calculated (38 hours weekly, 76 hours fortnightly)
* **Payroll start date** - the day your pay period begins. This isn't always Monday - some providers run Wednesday to Tuesday - and it's how Pay Cat knows where the period starts and finishes
* **Business or provider name** - passed to Pay Cat for account identification
The interpretation logic itself is configured by Pay Cat and doesn't need to be set up by the provider. All new providers get the base SCHADS implementation by default.
## AAR scenarios and warnings
The following scenarios describe the SCHADS award conditions that Visualcare and Pay Cat detect and surface to rostering users.
To interpret a shift, select a worker when creating a service in the client's roster and click **Interpret Award**. If shift conflicts exist in the worker's roster, you'll need to resolve them before interpretation can succeed. Go to the worker's roster and identify conflicts highlighted in orange.
### Daily overtime
Under the SCHADS Award, a worker who works more than 10 hours in a single day is entitled to overtime rates for the additional hours.
| Hours worked (day) | Rate applied |
| - | - |
| Up to 10 hours | Ordinary rate |
| First two hours after 10 hours | 1.5x ordinary rate |
| After 12 hours | 2x ordinary rate |
Visualcare chains shifts across the pay period. If a worker has already completed an 11-hour shift earlier in the week, any additional hours rostered immediately attract higher overtime rates. The AAR panel reflects this cumulative position.
A long shift may also trigger an overtime meal allowance. You can configure whether this applies based on whether a meal has been provided during the shift.
A worker already has 11 hours logged for the day. A new two-hour shift is rostered.
* Hour one of the new shift = 1.5x (their 12th hour for the day)
* Hour two of the new shift = 2x (their 13th hour for the day)
The rosterer should consider reallocating to a worker with fewer hours logged.
### Pay period overtime
In addition to daily overtime, the SCHADS Award sets an overtime threshold for the full pay period:
* **Weekly pay period:** 38 ordinary hours per week
* **Fortnightly pay period:** 76 ordinary hours per fortnight
Once a worker exceeds these thresholds, additional hours attract overtime rates. The threshold resets at the start of the next pay period.
| Hours worked (pay period) | Rate applied |
| - | - |
| Up to 38 hours (weekly) or 76 hours (fortnightly) | Ordinary rate |
| First two hours over threshold | 1.5x ordinary rate |
| All further hours beyond that | 2x ordinary rate |
This is most likely to be triggered when a worker has a regular series of shifts for one client and picks up additional shifts for another, pushing them over the threshold without the rosterer necessarily noticing.
### Broken shift allowance
A broken shift occurs when a worker has two shifts in a day with an unpaid break of more than one hour between them. Under the default Pay Cat configuration, any break exceeding one hour triggers the broken shift allowance.
| Condition | Outcome |
| - | - |
| Break between shifts under one hour | No broken shift allowance (travel time assumed) |
| Break between shifts over one hour | Broken shift allowance triggered |
| 12-hour span rule | If the total span from start of first shift to end of last shift exceeds 12 hours, a separate broken shift condition may also apply |
The one-hour broken shift threshold is adjustable. If your enterprise agreement or internal policy uses a different threshold - for example, 30 minutes - contact Pay Cat to update this setting.
Travel time isn't accounted for at the rostering level because it's captured at the timesheet level after the shift is worked. You may see a broken shift warning on the roster for a shift with, say, a 90-minute gap, even though some of that gap will ultimately be paid as travel time. Once travel time is recorded on the timesheet, Pay Cat recalculates and the broken shift may no longer apply.
### Minimum engagement (top-up hours)
Under the SCHADS Award, workers are entitled to a minimum number of hours per engagement depending on their sector and employment type. The minimum engagement is two hours for workers in the Disability Services and Home Care sectors, and three hours for workers in other sectors. If a rostered shift is shorter than the minimum, the worker is paid for the minimum period regardless.
Pay Cat detects this and surfaces a warning in the AAR panel. The system also calculates and includes the top-up hours in the timesheet interpretation when the export is processed.
A casual worker's minimum engagement is two hours. The rosterer schedules a one-hour shift. Pay Cat returns a top-up of one additional hour, so the worker is paid for two hours in total.
### Allowances
Pay Cat detects and applies the following allowances where relevant:
| Allowance | When triggered |
| - | - |
| First aid allowance | The worker has **Receive First Aid Allowance** ticked in their profile. Applied per hour worked. |
| Overtime meal allowance | The worker works an extended shift and a meal has not been provided. Configurable per provider at roster level using unpaid break. |
| Vehicle allowance (taxable) | Kilometres recorded where tax applies above the ATO threshold. |
| Vehicle allowance (non-taxable) | Kilometres recorded within the ATO tax-free threshold. A separate pay code needs to be mapped. |
| Afternoon and night penalty | Informational only. The shift falls within a penalty period. No action needed. |
| Saturday, Sunday, public holiday | Higher rates apply automatically based on when the shift falls. |
Previously, kilometre reimbursements were exported as a single amount and you had to manually split the taxable and non-taxable portions. With Pay Cat Connect, this split happens automatically. You just need to map each portion to the correct pay item in your payroll software.
## Timesheet interpretation
Timesheet Interpretation automates the SCHADS award calculation for completed timesheets and exports a costed payroll file to Xero or MYOB. This replaces manual award calculation and the reliance on vAir for payroll interpretation.
### How it works
Review timesheets in Visualcare as per your normal processes.
Go to **Timesheets** → **Data Export**, select the timesheet data you want to export, and click **Send to Pay Cat**.
A loading bar appears while Pay Cat applies the award rules.
Click **View Details** to review the costed breakdown. Pay Cat applies the SCHADS award rules and returns a breakdown of hours and pay codes.
Select the items you want to export, click **Export to Payroll**, and select the appropriate accounting software export option. Confirm the export.
Visualcare maps the interpreted results to your Xero or MYOB pay items using the payroll category mappings you set up earlier.
### Who this applies to
Timesheet Interpretation is relevant for providers using Xero or MYOB who don't have native SCHADS award interpretation in their payroll system. If you already use KeyPay or Pay Cat as your payroll software, you won't typically use this export - your payroll system handles award interpretation natively.
### Workers included in the export
Only workers with **Worker Type** set to Full-time, Part-time, or Casual are included in the Pay Cat export. When you send to Pay Cat from **Timesheets** → **Data Export**, you may see some errors. This can be due to accounting codes missing or workers not existing in Pay Cat.
Workers classified as Broker, Contractor, or other types can still be exported using the existing payroll export method in Visualcare Data Export - the two processes run independently.
### Custom variations and enterprise agreements
The base SCHADS implementation applies to all providers. Some providers may have:
* Variations to standard SCHADS provisions - for example, different meal break rules
* Enterprise agreements with their own classifications and rates
These are supportable by Pay Cat but need a scoping consultation with the Pay Cat team to configure.
## Common issues
| Error or issue | Cause | Fix |
| - | - | - |
| Worker saved but Pay Cat error appears | Invalid pay level/point combination, or Worker Type not set to Full-time, Part-time, or Casual | Correct the field and save again. The worker saved in Visualcare but was rejected by Pay Cat. |
| "Cannot calculate shift costing" | Shift conflicts exist in the worker's roster | Go to the worker's roster, identify conflicts (highlighted in orange), and resolve them |
| Worker not appearing in award-aware rostering | Worker Type not set to Full-time, Part-time, or Casual | Update **Worker Type** on the **Finance** tab |
| Worker not appearing in Pay Cat export | Worker Type not set to Full-time, Part-time, or Casual | Update **Worker Type** on the **Finance** tab. Use legacy export for Broker or Contractor types. |
| Broken shift not showing where it used to | Pay Cat's default threshold is one hour; the previous system triggered on any gap | Expected behaviour. If the gap is under one hour, no broken shift allowance applies. |
| Accounting code missing on export | Accounting code not set on the worker's **Finance** tab | Add the accounting code |
| "Updating Pay Cat" message then error | Configuration issue on the worker profile | Check all required fields: Worker Type, Award, Award Sector, Pay Level/Point |
| Travel time not reducing broken shift at roster level | Travel time is captured at timesheet level only | Expected behaviour. Once travel is recorded on the timesheet, Pay Cat recalculates. |
| Costing differs from expectations but the data looks correct | The dayworker or shiftworker designation is wrong, or Pay Cat tags are missing or incorrect | Check the Pay Cat tags are set correctly - this is a data configuration issue, not an interpretation problem. Note that uniform and laundry tags are not available in the Visualcare integration. |
| Workers not synced after setup | Workers were configured before Pay Cat Connect was enabled on the database | Re-save each affected worker profile to trigger the sync (change a Pay Cat-relevant field and save, then change it back) |
| Allowance export to Xero fails with "A validation exception occurred" for one employee | The employee has no superannuation line on their Xero pay template | Add the superannuation line to the payslip in the current pay run and to the employee's pay template, then re-export that employee's allowances. See [Xero export troubleshooting](/troubleshooting/xero-export-errors#error-fail-a-validation-exception-occurred). |
| Export to Xero shows error but data may have arrived | Known issue with blank response | Always check Xero draft timesheets before retrying the export |
| "Timesheet with ID cannot be sent to Pay Cat because the worker does not exist in Pay Cat" | Worker was configured before Pay Cat Connect was enabled, or Worker Type is not Full-time, Part-time, or Casual | Re-save the worker profile to trigger sync. If Worker Type is wrong, correct it first. |
## Want to see more?
Watch the Pay Cat webinar [Pay Cat Connect for Award Compliance and Margins](/paycatconnectaward)
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for more errors and fixes.
## Related articles
The legacy KeyPay-API integration for payroll export
Export timesheet data to your payroll software
Sync worker data and compliance from Employment Hero
# QuickBooks integration
Source: https://support.visualcare.com.au/integrations/quickbooks
How to connect Visualcare to QuickBooks for payroll export via the KeyPay API, including employee sync and timesheet export
QuickBooks connects to Visualcare through the KeyPay API, the same connection method used by Employment Hero Payroll and Pay Cat. Once connected, you sync employees and pay items from QuickBooks into vCore, then export completed timesheets and kilometre data directly from Visualcare at the end of each pay run.
Because QuickBooks uses the KeyPay connection, payroll setup follows the [KeyPay integration](/integrations/keypay) guide. Use that guide for the payroll setup, then continue below for the QuickBooks side — finding your API key, and mapping your employees, pay items, and invoicing data.
## Linking vCore to QuickBooks
Log into your QuickBooks payroll account, go to **Account Settings** → **My Account**, and locate the **API Key** field. Click **Copy**.
If you're unsure where to find your API key, check with your QuickBooks administrator or contact QuickBooks support.
In vCore, click the **Settings** icon in the top right, then go to **Settings** → **Data Export**.
Click **KeyPay Connection**. In the pop-up that appears, paste the API key you copied from QuickBooks and click **Connect**.
A success message confirms the connection, and your QuickBooks company file name appears on the page.
To verify the connection, refresh the page and click **KeyPay Connection** again. You should see your company name and a connected status. If the field is blank, the API key wasn't copied correctly. Try copying it from QuickBooks again.
## Syncing data from QuickBooks
Once connected, pull your QuickBooks data into Visualcare from **Settings** → **Data Export**. Scroll to the KeyPay section and click each of the following:
* **Sync Employees**
* **Sync KeyPay Pay Items**
* **Sync Tax Rates**
* **Sync Expense Categories**
This brings across employee records, pay items, and other data from QuickBooks so they're available for mapping in Visualcare.
### Set the accounting code on each worker profile
Before your first export, you need to link each Visualcare worker to their matching employee record in QuickBooks.
Go to **Workers** → **Profile** and open a worker's record.
Click the **Finance** tab, scroll to the bottom, and find the **Accounting Code** field. Click the drop-down - this lists all employees synced from QuickBooks. Select the matching employee name and click **Save**.
Complete this for every active worker before running your first export.
Any worker without an accounting code set returns an "invalid worker accounting code" error at export time. If you see this error, click the hyperlink on the error message. It takes you directly to that worker's profile to fix it.
This mapping is permanent and doesn't need to be redone each pay run. You only need to update it if an employee record changes in QuickBooks in a way that breaks the link.
## Configuring work types and allowances
### Set allowance codes for services with special conditions
Some services, such as sleepover shifts, need to be tagged with a work type so the correct award conditions apply on export.
Go to **Settings** → **Data Export**, scroll to the KeyPay section, and click the blue arrow next to **KeyPay Work Types**. Locate the relevant work type and copy its **External ID**.
Go to **Maintenance** → **Services**, open the relevant service, paste the External ID into the **Allowance Code** field, and click **Save**.
This is a one-time setup per service. Check which of your services have special award conditions - for most providers this applies to sleepover shifts.
### Set the kilometre pay code
If your workers are paid for kilometres travelled, you need to set a pay code so kilometre data exports correctly.
Go to **Settings** → **Finance**.
Find the **Kilometres** section and paste the External ID for the kilometre allowance work type from QuickBooks into the **Pay Code** field.
To find the kilometre allowance External ID, go to **Data Export** → **KeyPay Work Types** and search for "kilometre".
If your organisation pays workers for kilometres between shifts (provider travel), set the pay code for that as well.
| Setting | Options | What it means |
| - | - | - |
| KM between shifts | No charge but pay / Charge and pay / No charge no pay | Whether to bill the participant and/or pay the worker for kilometres between shifts |
| Travel time | Leave blank (most common) | Travel time is treated as regular time worked with the applicable pay rate for the day and time |
Kilometres export as a separate step to timesheets. After exporting timesheets, go back and run **Export KM to KeyPay** as a second export. This step is easy to miss.
## Setting the timesheet approval preference
On the **Data Export** page, there's a setting for whether timesheets arrive in QuickBooks as **draft** or **auto-approved**.
Starting with **draft** is the safer option. Once you've confirmed the data looks correct across a few pay runs, you can switch to auto-approve if you prefer. This setting only affects how timesheets land in QuickBooks. It doesn't trigger a pay run automatically.
## Exporting timesheets to QuickBooks
Go to **Timesheets** → **Data Export**.
Select the pay period to export and click **Reload**.
Apply any required column filters, then tick to select all items.
Go to **Export timesheets** and select **Export to KeyPay**.
A summary window opens and highlights any items that won't export successfully. Review these, then click **Process Export** to send the payroll data to QuickBooks.
## Location tagging (optional)
QuickBooks locations let you tag payroll data by participant or area, which helps with cost tracking in your payroll reports. This is optional. Only configure it if you want cost tracking by location.
When exporting timesheets, Visualcare tags each shift with a location value pulled from a field on the roster. The available mapping options are:
| Visualcare field | Use when |
| - | - |
| Agreement Area / Location Area | Timesheets are tracked by area listed in the agreement area or location area |
| Agreement Reference 1 | Reference 1 on client agreements is used for cost tracking |
| Client Area Reference 1 / Location Area Reference 1 | The text in the agreement or location area field needs to differ from what appears in QuickBooks |
| Roster Category Reference 1 | Shifts are tagged by roster category |
| Service Reference 1 | Shifts are tagged by service reference 1 |
The text in the Visualcare field must exactly match the corresponding location name in QuickBooks. For example, if the QuickBooks location is called "North Coast", the value in the mapped Visualcare field also needs to be "North Coast". If these don't match, the location won't flow through on export.
To set up location tagging:
1. Go to **Settings** → **Data Export**
2. Scroll to the **KeyPay** section and find the **KeyPay Locations** drop-down
3. Select the Visualcare field that best matches how your locations are structured in QuickBooks
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Connect Visualcare to KeyPay for payroll export
Connect Visualcare to Pay Cat for award interpretation and payroll
Export timesheet data to your payroll software
Full list of integrations supported by Visualcare
# Services Australia integration for Support at Home
Source: https://support.visualcare.com.au/integrations/sah-api
Visualcare connects to Services Australia's Aged Care Web API to verify Support at Home (SAH) participant records and keep budget and balance data flowing into vCore. Setting this up involves registering a device with PRODA, registering that device with Services Australia, and confirming the connection in Visualcare.
Most connection failures come down to incorrect PRODA setup, a device that hasn't been activated correctly, or a missing Aged Care Service Provider link. Work through each step below in order rather than jumping ahead.
## Before you start
You'll need:
* **Organisation Manager permissions** in PRODA for your organisation
* A **PRODA B2B device** set up for SAH claiming (device name, RA number, and activation code)
* The **Aged Care Service Provider** added to your PRODA organisation
Services Australia guide
Services Australia guide
Services Australia guide
## Connecting Visualcare to the API
In PRODA, go to **Organisation** → **Device** and create a new B2B device for SAH claiming. Record the **Device Name** and **RA Number**, then click **Generate Activation Code**.
The activation code is only valid for 1 hour and isn't stored anywhere by PRODA or Visualcare, so have Visualcare open and ready before you generate it.
Still in PRODA, add the **Aged Care Service Provider** to your organisation if it isn't already there. Services Australia requires this link, and API access will fail without it.
In Visualcare, go to **Settings** → **Integrations** → **Services Australia (Aged Care Web API)** and click **Install**.
Enter the **Device Name**, **RA Number**, and **Activation Code** exactly as they appear in PRODA (the activation code is case sensitive), then click **Save**. Status should now show **Pending**.
"Pending" means the device is correctly created and linked. Don't edit or delete the device, and don't create a second device, once it's showing Pending.
Click **Manage** and download the **AC027 – Aged Care Web API Registration Form**. When completing it:
| Field | What to enter |
| - | - |
| Registration type | Tick one only: New registration, Update registration, or End registration |
| Registered provider name | Your company's registered name |
| PRODA organisation RA number | The RA number from step 1 |
| Active device name | The device name from step 1, exactly as it appears in PRODA |
| Software developer's name | Pre-filled: Visual Data Solutions Pty Ltd |
| Software name | Pre-filled: Visualcare 1.0 |
| Software integration version | Pre-filled: 1.0 |
| Nominated services | Add each subsidiary organisation or sub-branch using the software, for example "Happy Living Services – Gold Coast" and "Happy Living Services – Beerwah" |
Email the completed form to [developerliaison@servicesaustralia.gov.au](mailto:developerliaison@servicesaustralia.gov.au) and wait for a confirmation email back from Services Australia.
Once you've received confirmation, **allow a full 48 hours to pass** before proceeding, then:
1. Save the approved form as **"Visualcare AC027 - Support at Home"**
2. Go to **Settings** → **Integrations** → **Services Australia (Aged Care Web API)** → **Manage**
3. Upload the completed form
4. Click **Test Connection**
Status should now show **Connected**.
If you upload the form before the 48-hour wait has passed, the integration can become locked. If Visualcare can't connect to the API using the details provided, the uploaded form isn't saved and you'll see an error.
### If the connection still fails
Check the following before contacting support:
* A full 48 hours has passed since the Services Australia confirmation email
* The Aged Care Service Provider is added in PRODA
* The device details in PRODA match what's entered in Visualcare and on the AC027 form
* The correct activation code was used
- A screenshot of the PRODA device with activation enabled
- A screenshot showing the Aged Care Service Provider in PRODA
- The AC027 confirmation email from Services Australia
## Claiming settings
Once connected, configure how SAH claims are processed. Go to **Settings** → **Integrations** → **Services Australia (Aged Care Web API)** → **Manage**.
### Accounting software
Select the accounting software and export format you want to use for SAH invoicing. Supported platforms:
API or CSV
API or CSV
API or CSV
QBO, Attache CSV, Microsoft Dynamics, Microsoft Dynamics F\&O, TechOne, Magiq
### Rounding threshold
Some SAH service types claim in hours rather than minutes, in increments of 0.25 hours. The rounding threshold controls how Visualcare rounds actual time to the nearest 15-minute increment.
Set a threshold between 1 and 15 minutes. Minutes below the threshold round down; minutes at or above it round up.
If the threshold is set to 1, Care Management Time will always round up regardless of the amount entered.
For example, with a threshold of **8 minutes**:
| Actual minutes | Rounded to |
| - | - |
| 13 | 15 ↑ |
| 19 | 15 ↓ |
| 4 | 15 ↑ |
| 9 | 15 ↑ |
| 26 | 30 ↑ |
**Example 1:** Actual time is 13 minutes, threshold is 8. This rounds up to 0.25 hours.
**Example 2 - Care Management activity of 19 minutes:** 19 minutes is 4 minutes above the 15-minute mark and 11 minutes below the 30-minute mark. Because it's within the 8-minute threshold of the lower block, it rounds down to 15 minutes, or 0.25 hours.
**Example 3 - a 4-minute check-in:** This is below the 8-minute threshold. If rounding down to zero isn't allowed (see Zero rounding below), it rounds up to 0.25 hours instead.
### Zero rounding
Toggle **Zero Rounding** to **Yes** if you don't want the system rounding a service down to zero when the time entered is below your threshold. With this off, very short entries under the threshold could round down to nothing claimed.
Click **Save** at the bottom of the page to apply any changes to your Support at Home settings.
## Running into issues?
See [SAH troubleshooting](/troubleshooting/sah-claiming-errors) for more errors and fixes.
## Related articles
Understand the Support at Home tab, including API connection status and funding details
Common PRODA and claiming errors, and how to resolve them
Create, submit, and reconcile Support at Home claims
Configure funding types, government IDs, and accounting software settings
# Visualcare API
Source: https://support.visualcare.com.au/integrations/visualcare-api
Overview of the Visualcare API for third-party integrations, with a pointer to the public API reference
The Visualcare API allows third-party systems to read and write worker-related data. It uses standard REST conventions with HTTPS endpoints.
## API documentation
For full details of the API — authentication, error codes, and the complete endpoint catalogue — see the [Public API reference](/api-reference/overview).
## Requesting API access
To request API access for your Visualcare database, please have one of your admin contact [support@visualcare.com.au](mailto:support@visualcare.com.au). The team provides API credentials and documentation for your specific integration needs.
## Running into issues?
See [Integration troubleshooting](/troubleshooting/integration-issues) for common errors and fixes.
## Related articles
Authentication, error codes, and the full endpoint catalogue
Connect Visualcare to Xero for invoice and payroll export
# Xero integration
Source: https://support.visualcare.com.au/integrations/xero
How to connect Visualcare to Xero for invoice and payroll export, sync contacts, and configure accounting codes
Visualcare integrates with Xero to export client invoices and worker timesheet data directly from vCore. Once the API connection is established, you sync contacts, pay items, and invoice items between the two systems and export on demand.
## Linking vCore to Xero
To export any client invoice or worker timesheet data, the API connection between vCore and Xero needs to be established first.
Go to **Settings** → **Data Export** → **Accounting Software**.
If you want to connect to Xero to invoice clients, select **XERO2** from the **Invoice Export** drop-down and click **Save**.
If you want to connect to Xero to send worker timesheets, select **XERO2 / KeyPay** from the **Timesheet Export** drop-down and click **Save**.
Once the drop-downs have been selected, click **Authorise Xero**. Enter the company name when prompted, then proceed to connect to your Xero database.
If you're already logged in to Xero, select the organisation to connect and click **Allow Access**.
If you're not logged in to Xero, you'll need to log in first, then select the organisation and click **Allow Access**.
The authorisation screen requests access to several Xero scopes including Reports and Ledger. This access is used to retrieve invoice status from Xero back into Visualcare.
Once connected, you'll see options to remove the Xero connection or review the connected organisation. Click **Show Connected Org Details** to check.
This opens the organisation details window:
After the Xero connection has been established, items need to be synced from Xero into vCore. Under **Settings** → **Data Export** → **XERO**, click each of the sync buttons.
These pull the relevant lists of items into drop-downs throughout vCore. For example, **Sync Contacts** obtains the list of contacts from Xero and populates the following drop-downs in vCore:
| vCore field | Xero source |
| - | - |
| Client profile: **Accounting Code** | Customer contacts from Xero |
| Payer profile: **Accounting Code** | Customer contacts from Xero |
| Worker profile: **Accounting Code** | Employees and supplier contacts from Xero |
## Set up
### Payers
Payers link to a client profile or client agreement so that invoices export to the correct Xero contact. Payer profiles are created in **Maintenance** → **Payers**.
Once created, select an **Accounting Code** for the payer from the drop-down list in the **Contact** section. This drop-down is populated with contacts from Xero. Once selected, click **Save** in the top-left corner.
If the Xero contact is not listed in the drop-down, make sure the contact is set up in Xero and click the **sync contacts** button in the top-right corner. If the contact still doesn't appear, the Xero connection may need to be re-established (see the linking steps above).
### Clients
Once payer profiles are created, you set up client profiles for export. There are three places the system looks to export invoices for a client:
1. Agreement payer
2. Client profile payer
3. Client profile accounting code
If the agreement **Payer** field (1) is blank, the system looks for the **Payer** listed in the client profile (2). If that is also blank, the system exports to the client profile **Accounting Code** (3).
This method allows you to have different Xero contacts invoiced for the same client depending on the payer selected at the agreement level. For example, you may have an NDIS participant who is both plan managed and self managed. For the plan managed shifts, you create a payer profile of the plan manager and select that payer in one agreement. You then have another agreement with the payer blank, and if the client profile payer is also blank, the system looks at the client profile **Accounting Code** to export for that agreement.
For plan-managed clients, most providers create the participant as the Xero contact but use the plan manager's email address on that contact. Bulk-sending invoices from Xero then delivers them to the plan manager for payment while the invoice itself is still addressed to the participant - many plan managers reject invoices that are not addressed to the participant.
Agency-managed clients are typically routed to an "NDIS" payer profile (created in **Maintenance** → **Payers** with the NDIS Xero contact as its accounting code). Providers usually record these invoices in Xero for bookkeeping only and claim them through the Proda PACE upload rather than sending them from Xero.
**Sending a client contact to Xero**
When creating a client profile in vCore, if that client also needs to be set up as a contact in Xero, click the **Send contact to Xero** button after saving.
This creates a new customer contact in Xero and sends the following fields:
### Workers
First, make sure the worker has the correct **Payrate Level** set in **Worker Profile** → **Finance** → **Worker Details** → **Update Pay Level and Rates**.
For suppliers, the **Payrate Level** needs to be set to 0 for export. For employees, select the applicable **Payrate Level**.
At the bottom of the page there is a drop-down for the worker **Accounting Code** (1). This lists all employees and suppliers you've created as employees and contacts in Xero. Select the correct employee or supplier from the drop-down and click **Save** at the top-left of the page. This tells Visualcare which Xero employee or supplier to export their timesheets to.
When creating a worker profile in vCore, if that worker also needs to be set up as an employee in Xero, save the profile, go to the **Finance** tab, and under **Worker Details** click the **Send to Xero** button (2). Then click **Sync Contacts from Xero** (3) which brings the newly created contact back to the drop-down to select as an **Accounting Code**.
Setting employees up in Xero first is the recommended approach, since pay templates, tax details, and super are configured there. **Send to Xero** only creates a snapshot of the Visualcare data.
The fields below sync across to Xero when sending worker profile data. Items highlighted in pink are mandatory.
### Services (charge)
The charge amount for a service is set in **Maintenance** → **Services**.
You also need to select an **Accounting Code** for the service for export. This is the inventory item you've created in Xero. If the item you need is not listed, make sure it is set up in Xero and click **Sync Xero Invoice Items** in the top-right corner to bring them across.
Once the **Accounting Code** and all other relevant information is updated, click **Save** in the top-left corner.
If your Xero file is new and has no inventory items yet, you can bulk upload the full NDIS service catalogue to Xero first, then sync - much faster than creating items one by one. Contact the Visualcare helpdesk for a template file. Before importing in Xero (**Sales** → **Products and Services** → **Import** → **Items**), check the template's **Sales Account** column matches your sales account (the template assumes **200**). If the import preview warns that descriptions are over 50 characters, you can ignore it - Visualcare overrides the descriptions when you export invoices.
### Services (pay)
For paying the worker, Visualcare matches the service and the worker payrate level to find the payroll code to export. Payroll codes need to be selected for each service and payrate level when applicable for a successful export.
To select a **Payroll Code**, go to **Maintenance** → **Services**, select a service from the bottom table, and choose the **Payroll Code** from the drop-down for each pay level. Click **Save** in the top-left corner. If the pay item you need is not listed, make sure it is set up in Xero and click **Sync Xero Pay Items** in the top-right corner.
The pay rate amount listed is not exported for employee payroll. Only the payroll code is sent to Xero. The amount is sent for supplier payments, however.
**Mapping payroll codes in bulk**
If you have a large number of services, you can map payroll codes in a spreadsheet instead of clicking through each service. Go to **Maintenance** → **Services** → **All Services** and click **Export CSV**. Open the file in Excel, filter by shift type (weekday daytime, weekday evening, Saturday, Sunday, public holiday, and sleepover if applicable), and fill the matching payroll code down each pay level column for all services of that type. Save as a CSV, then back in **Maintenance** → **Services** → **All Services** click **Import CSV**, upload the file, and click **Save**.
For more information on configuring settings for Xero, see [Data export settings](/finance/billing-to-accounting-software). For information on how to export to Xero, see [Exporting payroll data](/finance/exporting-payroll-data).
## Tracking categories
Xero tracking categories let you tag invoice and payroll entries with an additional dimension, such as region, funding type, or cost centre, so you can report on them separately in Xero.
Visualcare maps a field from its data to a tracking category, so every exported entry carries the correct tracking value. There are two category slots:
| Category | Purpose |
| - | - |
| **Category 1** | Invoice tracking |
| **Category 2** | Payroll tracking (requires enablement by Visualcare support) |
The value in Visualcare must exactly match the tracking category value in Xero. A mismatch causes a "tracking ID failed" error on export.
### Configuring tracking categories
Go to **Settings** → **Data Export** and tick the **Tracking** checkbox. Fields for **Category Name** and **Link to Field** appear.
In **Category Name**, type the exact name of the tracking category as it appears in Xero, for example `Region`. Check in Xero under **Settings** → **Accounting** → **Tracking Categories** to confirm the exact name before entering it here.
Under **Link to Field**, choose the Visualcare field whose values populate the tracking category. The available fields differ between Category 1 and Category 2:
| Field | Category 1 (invoices) | Category 2 (payroll) |
| - | - | - |
| Agreement Reference 1 | Yes | Yes |
| Agreement Type | Yes | Yes |
| Area | Yes | Yes |
| Client Division | No | Yes |
| Client Funding Type | Yes | No |
| Client Name | No | Yes |
| Client Type | Yes | Yes |
| Service Reference 1 | Yes | Yes |
| Service Type | Yes | Yes |
| Worker Division Description | No | Yes |
| Worker Name | Yes | Yes |
The values in the Visualcare field you select must match the tracking category options in Xero exactly. For example, if your Xero "Region" category has the options North, South, East, and West, your Visualcare **Area** field values need to use those same names.
### Limitations
**Tracking invoices by client name**
Xero's tracking category setup links to a Visualcare field rather than the client record itself, so there's no direct way to track invoices by participant name using Category 1.
As a workaround, you can enter the client name manually in **Agreement Reference 1** and link that field to Category 1. This is a manual step per agreement and doesn't scale well for large client lists.
**Location roster shifts**
Location roster shifts have no associated agreement, so fields like **Agreement Reference 1** have no value for those shifts. Linking a tracking category to an agreement-based field produces export errors for location roster shifts. Tracking by **Area** (the worker's area) is a more reliable option for providers using location rosters, though this maps to the house or location rather than individual participants.
**Payroll tracking (Category 2)**
Category 2 for payroll tracking is not active by default. Contact [**support@visualcare.com.au**](mailto:support@visualcare.com.au) to have it enabled.
When payroll tracking is enabled, Visualcare amalgamates hours to the pay item before applying the tracking value. If a worker has hours under multiple funding types on the same pay item, only the tracking value from the first entry is applied. To track payroll by funding type accurately, separate pay items per funding type are needed.
## Running into issues?
Integration error fixes live under Troubleshooting. See [Xero export troubleshooting](/troubleshooting/xero-export-errors) for common Xero export errors and fixes, or [Integration troubleshooting](/troubleshooting/integration-issues) for other integration issues.
## Related articles
Connect Visualcare to KeyPay for payroll export
How to export timesheets and payroll data from Visualcare
Overview of billing and claiming in Visualcare
Export invoices from Visualcare to your accounting software
# Automated workflows
Source: https://support.visualcare.com.au/operations/automated-workflows
Set up automated email notifications and task creation triggered by events in Visualcare
Automated workflows let you trigger actions in Visualcare based on a set condition, without manual intervention. When a trigger occurs (for example, a client agreement reaching its alert date), the system can automatically send emails or create tasks for your team.
Workflows are managed from **Operations** → **Workflows**.
## Setting up a workflow
Go to **Operations** → **Workflows**.
Click **Add New Workflow**.
Enter a name in the **Workflow Label** field and select a workflow trigger from the drop-down menu. The trigger is the condition that starts the workflow (for example, "Client Agreement has reached its Alert Date").
Once the workflow is saved, click **Edit Workflow Actions**, then click **Add Action**.
Choose an action from the drop-down menu:
| Action | Description |
| - | - |
| **Send an email to up to two recipients** | Enter email addresses in **Variable 1** and **Variable 2**. At least one email address must be entered in **Variable 1** |
| **Send an email to Case Manager 1** | Automatically emails the client's first case manager |
| **Send an email to Case Manager 2** | Automatically emails the client's second case manager |
| **Create a task** | Choose up to two users from the drop-down menus in **Variable 1** and **Variable 2** |
| **Create a task for Case Manager 1** | Creates a task for the client's first case manager |
| **Create a task for Case Manager 2** | Creates a task for the client's second case manager |
Once active, the workflow runs automatically each time the trigger condition is met.
## Managing workflows
Existing workflows can be edited or deleted from the workflows page.
Workflows work across many areas of Visualcare — the same engine covers rostering, agreements, incidents, and more. Browse the trigger drop-down to see the full list of events you can automate against. For example, set up a workflow to automatically notify case managers when shifts are added, changed, or cancelled.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create and assign tasks from notes
Find, filter, and manage tasks assigned to office users
# Bulk edit tools
Source: https://support.visualcare.com.au/operations/bulk-edit-tools
Edit multiple client or worker records at once without opening individual profiles
The bulk edit feature lets you update client or worker details in bulk without opening individual profiles. This is useful for making the same change across many records at once.
## Clients
To bulk edit client details, navigate to **Operations** → **Bulk Edit** → **Clients**.
### Editing client records
Double-click inside the field you want to update and type in the new information. Click **Save** after entering the information.
### Adding columns
Use the **Column Chooser** to drag out additional columns for editing. This lets you display and edit fields that aren't shown by default.
**The editable fields allowed for bulk editing client profiles are** DOB, Address Line 1, Address Line 2, State, Suburb, Postcode, Phone 1, Phone 2, Email, Area, Division, Accounting Code, Service Status, Case Manager 1 and Case Manager 2.
## Workers
To bulk edit worker details, navigate to **Operations** → **Bulk Edit** → **Workers**.
### Editing worker records
Double-click inside the field you want to update and type in the new information. Click **Save** after entering the information.
### Adding columns
Use the **Column Chooser** to drag out additional columns for editing.
**The editable fields allowed for bulk editing of worker profiles are** DOB, Address Line 1, Address Line 2, Suburb, State, Postcode, Phone 1, Mobile, Worker Number, Email 1, Area, Division, Case Manager, Case Manager 2, Accounting Code, Status, Availability Note, Role, Employment Type, Budget Hours and Worker Type.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Import new records in bulk using CSV files
Manage services, charge rates, and pay rates
Customise categories, areas, divisions, and other list values
# Common questions
Source: https://support.visualcare.com.au/operations/common-questions
Frequently asked questions about Visualcare configuration, security, and app behaviour
Answers to common questions about Visualcare settings, security, and app behaviour.
## User accounts and access
Yes. The same email address can be used for both an admin user account (vCore login) and a vWorker profile in Visualcare. The two accounts are separate and don't conflict with each other.
No. vWorker does not have the 24-hour security logout that applies to vCore users. Workers stay logged in to the app until they manually log out.
However, if your organisation has enabled the setting that requires workers to log in each time they open the app, workers need to re-authenticate on each use. This is configured in **Settings** → **Mobile App**.
## Security
Yes. All data transmitted between Visualcare, the vWorker app, and Visualcare API endpoints is encrypted in transit using HTTPS over TLS. Current endpoints support TLS 1.2 and TLS 1.3, with AES-GCM cipher suites negotiated by the client and server.
Visualcare does not use a proprietary transport encryption protocol.
## vWorker app behaviour
When **Prompt to cancel incomplete form** is ticked in **Settings** → **Mobile App**, the vWorker app displays a cancel prompt when it detects open (incomplete) forms. This allows workers to start their shift while still being reminded about the unfinished form.
When the setting is unticked, workers need to complete the forms before they can start a shift.
There is currently no option to permanently disable this behaviour for an entire database. If you need this, raise a feature request with [support@visualcare.com.au](mailto:support@visualcare.com.au).
No. There is no setting to turn off or hide the **Were there any changes to the shift?** prompt in the vWorker app. The prompt serves a functional purpose: the worker's response populates the **Variations** columns in the timesheet and separates entries under the **Variations** tab, which is used for timesheet review and payroll processing.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage worker access to the vWorker app
How shifts work in the vWorker app
Set up user accounts and access levels
# Creating forms
Source: https://support.visualcare.com.au/operations/creating-forms
Step-by-step guide to creating forms on client and worker profiles in Visualcare
Forms in Visualcare are created from your uploaded JotForm templates and attached to client or worker profiles. This guide covers how to create a new form from the client profile.
## Where forms can be created
Forms can be created in three ways:
1. From within the client **Forms** tab by clicking **New Form** and selecting a template
2. From the vAssessment portal
3. From the vWorker mobile app
## Instructions
Open the client profile and select the **Forms** tab.
Click **New Form** and select the template you want to use from the drop-down list. Only templates that are active and visible to your user role will appear.
Fill in the form fields as needed. The form pulls from the JotForm template you selected.
Once completed, save the form. It will appear in the client's **Forms** tab for future reference.
The templates available in the drop-down are managed under **Maintenance** → **Templates**. If a template is missing, check that it's active and your role has been given access.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Edit, duplicate, and manage existing forms
Control template visibility and role access
# Creating tasks
Source: https://support.visualcare.com.au/operations/creating-tasks
Step-by-step guide to creating and assigning tasks in Visualcare
Tasks in Visualcare enable collaboration and coordination between office users. They help keep track of actions, set up reminders, delegate work to others, and assign priorities. This guide covers the different ways to create a task.
## How tasks work
Tasks are an extension of the notes functionality. Any note becomes a task when you assign it to an office user using the **Assign To (Create a task)** drop-down.
Tasks can only be assigned to office users, not workers.
## Instructions
Navigate to the relevant client or worker profile and open the notes section, or create a new note.
Select a user from the **Assign To (Create a task)** drop-down list. This converts the note into a task and assigns it to the selected user.
Optionally set the **Priority** (Low, Medium, High, or Urgent), **Remind Date**, and any other relevant details.
Click **Save Changes**. The assigned user receives an automated email notification if this option is enabled in **Settings** → **General** → **Tasks**.
To mark a task as complete, tick **Mark note as task completed** in the note window, or tick **This task is completed** when editing the task from the Tasks list.
## Other ways tasks are created
Tasks aren't only created manually. They can also be generated automatically:
| Source | How it works |
| - | - |
| **Workflows** | When a task action is selected in a workflow under **Operations** → **Workflows**, tasks are created automatically based on the workflow trigger |
| **vWorker shift notes** | In **Settings** → **Mobile App** → **vWorker** → **Shift**, travel notes or completion notes entered from the vWorker app can automatically create a task |
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Find, filter, and manage your tasks
Edit multiple client or worker records at once
# Data storage, security, and disaster recovery
Source: https://support.visualcare.com.au/operations/data-storage-security-and-disaster-recovery
Where your client data is stored, how it's protected, and how Visualcare handles outages and recovery
Providers often need answers about data sovereignty, security protections, and business continuity - for tenders, audits, or their own governance. This page covers the most common questions.
## Where is client data stored?
All client data is stored on-shore in Australia. Production systems are hosted in Sydney data centres, with backup replication zones in Melbourne. Client data does not leave Australia unless explicitly agreed in writing.
## What protections are in place against cyber attack?
Visualcare uses a defence-in-depth approach, including:
* Secure, hardened cloud infrastructure
* Encryption of data at rest and in transit
* Strict access controls and role-based permissions
* Multi-factor authentication for administrative access
* Continuous monitoring, logging, and alerting
* Regular security patching and updates
* Secure backups stored separately from live systems
These controls are designed to prevent unauthorised access, limit the impact of any incident, and support rapid recovery.
## Does Visualcare hold cyber insurance?
Yes. Visualcare maintains cyber insurance coverage to support incident response, remediation, and recovery in the event of a cyber security incident.
## What disaster recovery documentation exists?
As part of disaster recovery and business continuity planning, Visualcare maintains documentation covering:
* Core systems and infrastructure
* Hosting and infrastructure providers
* Backup and recovery procedures
* Incident response and escalation processes
This documentation is reviewed twice yearly and updated as systems evolve.
## Who do we contact in an emergency?
In the event of a natural disaster, system disruption or outage, or security incident, contact Visualcare Support through your normal support channels. Critical incidents are escalated internally to senior engineering and leadership teams immediately.
## Can information be accessed if the system is unavailable?
If the system is temporarily unavailable, the daily roster send feature provides manual access - it emails rosters every morning. Data is protected by frequent backups and is recovered to the most recent backup point once service is restored.
Turn on the daily roster send before you need it. It doubles as your offline copy of the day's rosters during an outage.
## How often is data backed up?
* Automated backups run daily
* Backups are retained securely and separately from live systems
* Recovery procedures are tested to confirm data integrity and reliability
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configuring permissions for user groups in Visualcare
Set up single sign-on for your organisation
# Editing drop-down lists
Source: https://support.visualcare.com.au/operations/editing-drop-down-lists
Customise drop-down list values for categories, areas, divisions, contacts, payers, groups, leads, and addresses
Visualcare uses drop-down lists throughout vCore to categorise and organise your data. You can manage these lists from the **Maintenance** menu to keep your options current and relevant to your organisation.
This article covers all configurable list types: categories, areas, divisions, contact types, contacts, payers, groups, leads, and addresses.
## Categories
Categories group and classify records across different parts of Visualcare. Navigate to **Maintenance** → **Categories** and select the category type you want to manage.
For all category types, the general workflow is the same: click the **Add** button to create a new entry, or select an existing entry from the list at the bottom of the screen to edit or delete it.
Document categories group documents on client and worker profile document tabs.
Click **Add Document Category**, enter a **Description**, select permissions for **User Group** and **Worker Types**, then click **Save**.
Equipment categories define a list of equipment you can issue and monitor with workers. Manage issued equipment in the worker profile under the **Equipment** tab.
Click **Add Equipment Category**, enter a **Description**, and click **Save**.
Expense categories classify expenses on the client profile under the **Expenses** tab.
Click **Add Expense Category**, enter a **Category**, and click **Save**.
Incident categories classify incident reports.
Click **Add Incident Category**, enter a **Category Code** and **Description**, and click **Add**. You can also add **Help Text** for additional guidance.
Note categories help filter notes in client profiles or note reports. You can also set permissions for user groups by using the checklist with a note category selected.
Click **Add Note Category**, enter a **Description**, and click **Save**.
Payer categories group payers for reporting purposes.
Click **Add Payer Category**, enter a **Code** and **Description**, and click **Save**.
Roster categories support additional reporting requirements. You can choose a category during the rostering process and then run a "Rostered hours by category" report to see how many hours have been rostered and completed in that category.
Click **Add Roster Category**, enter a **Category Code** and **Description**, and click **Save**.
Service categories are generally used for NDIS services. They can be assigned to service line items for streamlined reporting.
Click **Add Service Category**, enter a **Code** and **Description**, and click **Save**.
Template categories help with reporting and audit functions for form templates.
Click **Add Template Category**, enter a **Category Code**, and click **Add**.
Transport categories classify transport activities.
Click **Add Transport Category**, enter a **Description**, and click **Add**.
## Areas
Areas represent geographic regions (for example, Northern Suburbs or Southern Suburbs) that can be assigned to client or worker profiles. They're useful for filtering lists by location.
Navigate to **Maintenance** → **Areas**.
### Adding an area
1. Click **Add Area**
2. Enter a code and area description
3. Click **Save**
To edit or delete an existing area, select it from the list at the bottom of the screen, make your changes, and click **Save** or **Delete**.
### Additional area fields
| Field | Description |
| - | - |
| **Reference 1 and 2** | Optional reference fields for additional identifiers |
| **HCP NAPS ID** | Links to the organisation's HCP National Approved Provider System ID for this area |
| **HACC Agency ID** | Links to the HACC agency identifier for this area |
| **Default Unallocated Worker** | Sets the default worker added to a Location Roster shift when using the bulk edit function within leave requests. The worker's profile needs to have this area selected to appear in the drop-down |
## Divisions
Divisions further categorise clients and workers and allow you to assign different form templates if needed. They're useful for reporting metrics and organising rostering.
Navigate to **Maintenance** → **Divisions**.
### Adding a division
1. Click **Add Division**
2. Fill in the **Code** and **Division** fields
3. Click **Save**
### Editing a division
Double-click on a division in the list at the bottom of the screen to edit it. You can add a **Reference**, a **Template**, and an **Incident Form**, then click **Save**. To remove a division, select it and click **Delete**.
## Contact types
Contact types categorise contacts to help group them when creating new contact records.
Navigate to **Maintenance** → **Contact Types**.
### Adding a contact type
1. Click **Add Contact Type**
2. Enter the details for the new contact type
3. Click **Save**
To edit or delete an existing contact type, select it from the list, make your changes, and click **Save** or **Delete**.
If you want existing contacts with that type to reflect your changes, tick **Update existing contact** before saving. This ensures all contacts using that type get updated.
## Contacts
The contacts page holds all contacts within vCore. Contacts can be created within or linked to a client profile, or added and edited from the contact list.
Navigate to **Maintenance** → **Contacts**.
### Creating a new contact
Click **Add Contact**, enter the contact details, and click **Create**.
### Editing an existing contact
Search for a contact by typing in one of the columns or using the search bar at the top right.
Double-click on a contact row to open the contact profile and add details.
### Contact vAboutMe access
If the contact is a personal contact of a client, they can have access to vAboutMe.
To give a contact vAboutMe access:
1. Ensure the contact is added in the **Client Profile** → **Contacts** tab
2. Tick **vAboutMe Enabled**
Adjust the contact's accessibility using the vAboutMe settings on the contact profile.
## Payers
Payers represent the funding bodies or individuals responsible for payment. Use this section to add, edit, or delete payer information for clients and invoicing.
Navigate to **Maintenance** → **Payers**.
### Adding a new payer
Click **Add Payer**. Fill in the **Payer Code** and **Payer Name**, then click **Create**.
Click the **Choose** button next to the **Category** field. Double-click on a category to assign it to the payer.
Ensure the **Active** tick box is selected. Click **Save** at the top left of the page.
Use the drop-down search in the **Open Another Profile** window to navigate between payers.
### Payer tabs
| Tab | Description |
| - | - |
| **Contact** | Add the payer's contact details |
| **Client** | Displays clients attached to the payer. To add a client, go to the client profile's **Payers** section |
| **Agreements** | Displays agreements linked to the payer. Associate payers via the client profile's **Agreements** → **Payer** section |
| **Notes** | View existing notes or add new ones by selecting **New Note** |
### Editing or deleting a payer
Select and double-click on a payer from the list at the bottom of the screen. Make your changes and click **Save**, or click **Delete** to remove the payer.
## Groups
Groups help organise clients or workers. They're commonly used for Supported Independent Living (SIL) housing or activities involving multiple clients and workers (for example, Saturday Book Club, Hiking Group, or Cooking Class).
Navigate to **Maintenance** → **Groups**.
### Adding a group
Click **Add Group**, enter the group name and code, then click **Save**.
### Editing or deleting a group
Select a group from the list, make your changes, and click **Save** or **Delete**.
Only the group name can be changed, not the group code.
## Genders
The gender options available on worker and client profiles come from the Genders list. To add an option (for example, non-binary):
1. Navigate to **Maintenance** → **Genders**
2. Add the gender and save
The **Gender** field on profiles then shows every gender from this list.
## Leads
Lead source and status categories can be assigned to lead profiles under **Operations** → **CRM**. These help track where leads come from and their current progress.
Navigate to **Maintenance** → **Leads**.
### Lead source
Lead source categories identify where a lead originated and can be used for filtering or grouping the lead list.
Navigate to **Maintenance** → **Leads** → **Lead Source**.
To add a new lead source, select **Add Lead Source**, enter the source in the pop-up window, and click **Save**.
To edit an existing lead source, select it from the list at the bottom of the screen, update the **Lead Source** field, and click **Save**.
### Lead status
Lead status categories reflect the current progress of a lead and can be used for filtering or grouping.
Navigate to **Maintenance** → **Leads** → **Lead Status**.
To add a new lead status, select **Add Status**, enter the status in the pop-up window, and click **Save**.
To edit an existing lead status, select it from the list, update the **Status** field, and click **Save**.
## Addresses
System addresses are general public locations not specific to an individual client (for example, a group activity venue, medical practice, or shopping centre).
Navigate to **Maintenance** → **Addresses**.
### Adding an address
1. Click **Add Address**
2. Enter the address details: **Address Text**, **Unit No**, **Street No**, **Address Line 1**, **Address Line 2**, **Suburb**, **State**, **Postcode**
3. Optionally fill in the **General Notes** and **Identified Risks** fields for additional detail about the location
4. Click **Create** to save
To edit or delete an existing address, select it from the list at the bottom of the screen, make your changes, and click **Save** or **Delete**.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage services, charge rates, and pay rates
Manage form template visibility and settings
Edit multiple client or worker records at once
# Form templates
Source: https://support.visualcare.com.au/operations/form-templates
Filter form templates, control role-based visibility, and set which templates are used for shift start, shift completion, and incident forms
The form templates page in vCore lists all uploaded JotForm templates and lets you control who can access them, which roles can see them, and how they're used across the system.
Navigate to **Maintenance** → **Templates** to view and manage your form templates.
Form templates are built in JotForm and uploaded to vCore. Requests for new custom templates can be directed to the Visualcare support team at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Filtering templates
You can filter the templates list by:
* **Template Name** - search for a specific template
* **Visibility to worker** - show only templates visible (or not visible) to workers
## Setting role-based visibility
To control which worker roles can access a template:
1. Select a template from the list
2. Click **Roles**
3. Tick the worker roles that should have access to the selected template
4. Click **Save**
Any roles that are not ticked will not be able to view or complete the template.
## Form assignment options
Click **Edit** on a template to configure where and how the form is used:
| Setting | Description |
| - | - |
| **Visible to worker** | Allows workers to fill the template from the vWorker app |
| **Onboarding Portal** | Adds the form to the vOnboard portal for workers to complete during onboarding |
| **Is Start Form** | Pops up in vWorker when a worker starts their shift |
| **Is Incident Form** | Used when submitting incident reports |
| **Is Completion Form** | Pops up in vWorker when a worker completes their shift |
Only one template can be selected at a time for incident, shift start, and shift completion forms.
## Viewing template types in the list
To see which type each template is assigned to, drag the relevant column out of the **Column Chooser** into the grid. The column will contain links to view the form template.
## Word export tags
Field definitions contain word export tags that export information from a completed form into a Word document. For more information, see [Word templates](/operations/word-templates).
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create forms on client and worker profiles
Upload and manage Word document templates
View, edit, and manage completed forms
# Import CSV
Source: https://support.visualcare.com.au/operations/import-csv
Step-by-step guide to importing client, worker, or expense records in bulk using a CSV file
The **Import CSV** feature lets you add new client, worker, or expense records into your database in bulk using a CSV file.
This feature creates new records only. It cannot be used to update existing records (for example, adding new data to an existing client profile).
Navigate to **Operations** → **Import CSV**.
## Instructions
Choose from the drop-down: **Clients**, **Workers**, or **Expenses**.
Click **Download Example CSV** to get a file with the correct column formatting. Edit the CSV externally with your data.
Select the **Date Format** that matches the format used in your CSV file. Click **Select file**, choose your CSV, and click **Upload**.
Match the **Columns in Database** to the **Columns in uploaded file**. Once all columns are mapped, click **Preview Import**.
If bulk importing HCP expenses, ensure the **Agreement** and **Client Number** columns in the CSV match the clients' HCP agreement and client number on their profile.
Review the preview of records that are about to be created. Click **Process Import** to create the records.
The summary shows the number of records sent and how many were successfully created. Click **Back to Import** to import another CSV file.
## Importing services via CSV
The **All Services** page has two CSV options for bulk service management:
* **Export CSV** - downloads the full list of existing services including their **Service ID**
* **Download CSV Template** - downloads a blank template for creating new services only. This template does not include a **Service ID** column
When editing services in an exported CSV, the **Service ID** column must not be modified. Service codes must remain unique across your services list.
Two additional columns are available in the services CSV:
| Column | Description |
| - | - |
| **SAH Service** | SAH service code for the service (for example, SERV-0001) |
| **Type** | Service funding type |
After importing an updated CSV with new charge or pay rates, apply the rate changes by navigating to **Maintenance** → **Services** → click **Update Charge Rates** or **Update Pay Rates** → select **Current Service Selected** or **All Services**.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Edit multiple client or worker records at once
Manage services, charge rates, and pay rates
# Operations and administration
Source: https://support.visualcare.com.au/operations/index
Tasks, data management, forms, and organisation settings
# Operations and administration
Manage day-to-day operations including tasks, data imports, forms, and organisation-wide settings.
Create and manage tasks
Import data and use bulk edit tools
Create, manage, and use forms and templates
Manage drop-down lists, services, templates, and integrations
# Integration settings: SAH and NDIS
Source: https://support.visualcare.com.au/operations/integration-settings-sah-and-ndis
Configure your organisation's funding types, government IDs, and accounting software settings
This article covers the key configuration settings that connect Visualcare to government funding schemes (NDIS, Support at Home, CHSP) and your accounting software.
## Custom layout settings
Custom layout settings control which funding types and features are visible across vCore for all users. Navigate to **Settings** → **Custom Layout**.
### Funding types
Select which funding types you want to display in vCore:
* **NDIS**
* **CHSP/HACC**
* **HCP** (now transitioning to Support at Home)
Click **Save** after making your selections. Fields and functionality throughout vCore will show or hide based on these selections.
### Accounting software
Select your accounting software from the drop-down. This determines what appears on the data export page when exporting invoices and timesheets.
## Company information and government IDs
Your organisation's government identifiers are set under **Settings** → **Company Info**. These link directly to the claiming functionality for different funding sources.
Under this section, add or edit your company information including:
* Business address
* ABN
* Phone number
* Company logo
* Time zone
Click **Save** after making changes.
### Government ID fields
| Field | Description |
| - | - |
| **NDIS Organisation ID** | Your NDIS registration number. This is included in the NDIS claim file |
| **HCP NAPS ID** | Your organisation's National Approved Provider System (NAPS) identification number. If you have more than one NAPS ID, enter additional IDs under **Maintenance** → **Areas** and ensure the correct area is selected on each client profile |
| **HACC Agency ID** | Required for HACC/SCP services to export correctly. If you have multiple agency IDs, set them up under **Maintenance** → **Areas**. Ensure the correct time zone is also set, as HACC categories and fields differ between VIC (Melbourne) and WA (Perth) time zones |
## General settings related to operations
Several settings in **Settings** → **General** affect operational features across vCore.
### Task email notifications
To have all vCore users receive an email when a task is assigned to them, tick **Email user when a task assigned** and click **Save**.
### Incident and SIRS notifications
To notify specific employees by email when an incident report is submitted, add their email address under the incident section and tick **Email on incident submit**. Use a semicolon (;) to separate multiple email addresses.
For Serious Incident Response Scheme (SIRS) notifications, add the email address and tick **Email on SIRS submit**.
### Compliance settings
To automatically add compliance items to new worker profiles, tick **Add compliance to new worker profile automatically**.
To set which date the worker compliance KPI tile on the vCore home page uses, select **Alert Date** or **Expiry Date** from the drop-down.
### Document category requirement
To require users to select a document category when uploading documents, set **User Must Select Document Category When Upload** to **Yes**.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up and manage services, charge rates, and pay rates
Import records in bulk using CSV files
Manage areas, payers, and other configuration lists
# Managing forms
Source: https://support.visualcare.com.au/operations/managing-forms
View, edit, duplicate, and manage forms across client and worker profiles
Once forms are created on a client or worker profile, you can manage them from the **Forms** tab. This includes viewing, editing, duplicating, and linking forms to compliance items.
## Client forms
Navigate to the client profile and select the **Forms** tab to view all forms for that client.
### Edit info
Click **Edit Info** to update the form's profile details. You can change the:
* Form name
* Assigned to
* Review date
* Status
### View and edit data
Click **View/Edit Data** to open the form and edit any of the details. Only office users have the option to edit form data.
Once a form is marked as completed, it becomes read-only and the ability to edit is no longer available.
### Finalising a form
To finalise a form, click **Edit Info** and set the form's **Status** to completed. This is the "finalised" state referred to in the vWorker app: workers can edit a form in vWorker only until the office marks it as completed.
### Duplicate
Click **Duplicate** to copy all data from a form into a new form. This is useful when you want to carry forward data into the next period and only update a few details rather than filling out the entire form again.
When you duplicate a form, it creates a copy with "(COPY)" added to the form name.
## Worker forms and compliance linking
In the worker profile, the **Forms** tab allows you to link completed forms to compliance items. This is helpful for tracking worker compliance through form submissions.
### Linking a form to compliance
1. Go to the worker profile and select the **Forms** tab
2. Click the **Select Compliance** button under the **Link to Compliance** column
3. Select a compliance item to link to
Once linked, the form appears under the worker's **Compliance** tab and in the worker compliance report. Click **View** to open the form, or **Unlink** to remove the compliance link.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create new forms on client and worker profiles
Manage template visibility and role access
# Managing tasks
Source: https://support.visualcare.com.au/operations/managing-tasks
Find, filter, customise, and manage tasks assigned to office users
Once a note is assigned to an office user, it becomes a task. The tasks list gives you a centralised view to find, filter, and manage all tasks across your organisation.
## Finding tasks
Tasks can be accessed from two locations:
1. **Home page dashboard** - click the **Tasks** KPI tile, which displays the number of incomplete tasks and incidents assigned to you
2. **Tasks list** - navigate to the full tasks page for detailed filtering and management
## Filtering tasks
Use the search features at the top of the tasks page to narrow down your view:
| Filter | Description |
| - | - |
| **Show All Priorities** | Displays tasks for all priorities, or select a specific priority (Low, Medium, High, Urgent) |
| **Shows Tasks Created By All Users** | Displays all tasks, or filter to tasks created by a specific user |
| **Show All Assigned** | Displays all tasks, or filter to tasks assigned to a specific user |
| **Show Uncomplete Only** | Displays incomplete tasks. Switch to **Show All Status** for all tasks, or **Show Complete Only** for completed tasks |
| **Date From / Date To** | Select the date range |
| **Clear All Filters** | Resets all filters to the default view |
| **Reload** | Refreshes the data after making filter selections |
## Customising the task view
The task grid can be customised to suit how you work. Once you've set up a particular view, it becomes your default the next time you access the screen.
### Column chooser
All available data fields not currently displayed are in the **Column Chooser**. Click the column chooser icon, search for the field you need, and drag it into the grid. To remove a column, drag it back into the column chooser.
### Column positions
Rearrange columns by dragging and dropping them to your preferred position (for example, moving the **Edit** button to the start of the grid).
### Grouping columns
Group tasks by a column by dragging the column header to the area labelled **Drag a column header here to group by that column** (for example, grouping tasks by date). To clear the grouping, drag the column back into the grid.
### Filtering columns
Columns can be filtered in three ways:
* Using the funnel icon next to the column heading
* Entering search text into the search bar within the column
* Using the search bar at the top of the grid
## Managing a task
To manage a task, click the **Edit** button on the task row. The task window opens with the following fields:
| Field | Description |
| - | - |
| **Subject** | Generated when the note/task is created. References the source of the note (for example, "Feedback Note for Client Jane Smith"). Editing can be restricted for specific user groups in **Settings** → **User Group Security** → **Clients** → **Note Editing** |
| **Category** | Assign a category for reporting purposes. Categories are maintained in **Maintenance** → **Categories** → **Note Categories**. Access to tasks in a specific category can be restricted by user group |
| **Priority** | Low, Medium, High, or Urgent |
| **Assigned To** | Reassign the task to another user for further action. This creates a new task for that user. Don't mark the task as completed if reassigning |
| **Collaborators** | Add collaborators who can view the notes but not update them. Multiple collaborators can be assigned |
| **Remind Date** | Set a reminder date for follow-up |
| **Comment / Action / Outcome** | Categorises the note by type |
| **Comment Note** | Add notes (timestamped against the user entering the note) |
| **Select File** | Attach files or documents to the note |
| **This task is completed** | Tick when all actions for the task are done |
## Completing a task
When all actions for a task are finished:
1. Locate the task and click **Edit**
2. Tick **This task is completed**
3. Click **Save Changes**
## Automated workflows
Tasks can also be created automatically by workflows - for example, when a client agreement reaches its alert date. See [Automated workflows](/operations/automated-workflows) for how to set up triggers and actions.
Set up automated email notifications and task creation triggered by events in Visualcare
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create and assign tasks from notes
Edit multiple client or worker records at once
# Organisation document storage
Source: https://support.visualcare.com.au/operations/organisation-document-storage
Store, manage, and control access to documents at the organisation level in Visualcare
The organisation document storage area in vCore lets you upload and manage documents centrally, outside of individual client or worker profiles. Documents stored here can be made visible to workers and clients through their respective apps.
Navigate to **Maintenance** → **Documents** to access organisation-level document storage.
## Uploading documents
You can upload files or add URL links to the documents page.
1. Click **Add a File** or **Add a URL** at the top of the page
2. Select or upload the document
3. Click **Manage** to configure settings for the uploaded document
File uploads have an 8MB maximum per file. Compress or split larger files, upload from a local copy rather than a cloud location like OneDrive or Google Drive, and avoid filenames containing the text `system(`, which fails validation. See [Document upload fails](/troubleshooting/general#document-upload-fails) for more detail.
### Adding a URL
**Add a URL** links to a document that is already hosted elsewhere (for example, a policy PDF on your website or a shared drive link). Visualcare does not host or generate the URL - paste in the existing web address, then click **Manage** to set the document's category and visibility.
## Visibility settings
When managing a document, set its visibility to control who can access it:
| Setting | Description |
| - | - |
| **Visible to worker** | Makes the document accessible to workers on the vWorker mobile app |
| **Visible to client** | Makes the document accessible to clients on their app |
## Locking documents
Documents can be locked to prevent accidental deletion. When a document is locked, the delete button is disabled.
## Document categories and permissions
### Requiring a category on upload
If the setting **User Must Select Document Category When Uploading** is enabled (in **Settings** → **General**), you need to select a document category before uploading any file.
### Managing access permissions
Users only have access to documents for which they are granted permission. Document permissions are managed under **Maintenance** → **Categories** → **Document Categories**, where you set access by user group and worker type.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Upload Word templates with export tags
Manage document categories and other list values
# Service management
Source: https://support.visualcare.com.au/operations/service-management
Set up and manage services that control charge rates, pay rates, and accounting integrations
Services are a fundamental part of vCore. They link to rostering, set parameters for charging clients and paying workers, and connect to your accounting software for invoicing and payroll.
To access your services list, navigate to **Maintenance** → **Services**.
The page displays the full list of services at the bottom, with data fields for the selected service at the top. After making changes, click **Save**.
You can add, edit, or delete services from this page.
Services need to be marked **Active** to appear in the drop-down when rostering.
## Adding a new service
To add a new service:
1. Click **Add Service**
2. Enter the **Service Code**
3. Enter the **Service Description**
4. Input **Charge Rate**
5. Input **Pay Rates**
6. The **Accounting Code** links the service to accounting software for invoicing the client
7. The **Payroll Codes** link the service to accounting software for worker payroll
Service **Accounting Codes** and **Payroll Codes** need to match in vCore and your accounting software to ensure successful exporting.
Up to 48 **Payroll Codes** can be selected for a particular service. The labels for these different pay levels can be updated in **Settings** → **Finance** → **Pay Level**.
### Shift type
Shift types can be assigned to each service to flag in the roster if the line item doesn't match your time settings.
Select the service line item in the services list and choose the corresponding **Shift Type** from the drop-down. The shift flags in a different colour on the roster if the incorrect service is scheduled.
### Rate link
Rate links automatically change a service to one with a higher rate of pay if the incorrect service is rostered. This prevents workers being underpaid and ensures clients are charged at the correct rate.
For example, if a weekday daytime service is rostered on a Saturday, the system automatically corrects it to the Saturday service selected in the rate links.
This is also dependent on your time settings in **Settings** → **Rostering**.
## All services view
The **All Services** page shows a table view of every service that has been set up, with easy viewing of payroll codes, service categories, and more in one table.
Data in this page can be edited, saved, and exported to Excel.
## NDIS services
If a service has **NDIS** selected as the **Service Type**, several additional features are available:
| Feature | Description |
| - | - |
| **NDIS KM** | Links provider travel (799) codes for non-labour costs. Add these codes from the **NDIS Support Catalogue** and link them via the **NDIS KM** drop-down |
| **Centre Capital Costs** | Links centre capital cost codes. Add from the **NDIS Support Catalogue** and select in the **Centre Capital Costs** drop-down. The **Service Type** needs to be set to **NDIS** for this field to appear |
| **Is sleepover / Fixed Fee** | When ticked, exports one unit for any service rostered to that line item rather than the number of hours. Tick this for services charged at a flat rate but paid hourly. Sleepover export type also needs to be set to **PER SHIFT** in **Settings** → **Data Export** |
| **Service Categories** | Set up from **Maintenance** → **Categories** → **Service Categories** and assign to service line items for streamlined reporting |
| **Payers** | Link services to payers so they cannot be added to agreements with the incorrect payer attached |
| **Skills** | Link services to skills to help match workers to rostered services. This reflects in the skills count column in the roster select window |
### Adding NDIS services
NDIS services can be added and charge rates updated directly from the **NDIS Support Catalogue**.
Click **NDIS Support Catalogue** and ensure the current catalogue is selected in the date drop-down.
Select the **Add Services** tab. Tick the services you want to add.
Click **Add (number of) Services**.
### Updating NDIS pricing
When a new support catalogue is released, update charge rates using these steps:
Go to **Maintenance** → **Services** and click **NDIS Support Catalogue**. Ensure the current catalogue is selected in the date drop-down.
Under the **Update Pricing** tab, tick the services to update (or select all). Click **Update Rates**.
Navigate back to **Maintenance** → **Services** and select **Update Charge Rates**. Select the date for the new rates to take effect (this cannot be a future date) and click **Update**.
If **All services** is selected in the **Update Charge Rates** window, this updates every service in the list, including non-NDIS services. Use this with caution.
To find which agreements have "special rates" ticked, navigate to **Clients** → **Agreements**, click **Show all items**, and drag the **Override Charge Rates** column into the table. Filter it to **YES** to display the agreements that have special rates enabled.
## Bulk updating services
You can update multiple services at once - including charge and pay rates - by exporting the services list to CSV, editing the data, and reimporting.
Navigate to **Maintenance** → **Services** → **All Services** and click **Export all data**. This downloads a CSV of your full services list.
Open the file in a spreadsheet application and make your changes. Do not modify the **Service Id** column - these values identify existing records and must remain unchanged.
If you modify the **Service Id** column, the import will not match records correctly and changes won't apply as expected.
Save the file as a CSV (Comma delimited) format before reimporting.
Navigate to **Operations** → **Import CSV** → **Select File**, choose your saved CSV, then click **Upload**.
After the import completes, return to **Maintenance** → **Services**. To apply updated rates:
* Click **Update Pay Rates** or **Update Charge Rates**
* Select the **From Date** for the new rates to take effect
* Choose **Current Service Selected** to update only the selected service, or **All Services** to update all
* Optionally include **Roster Templates** and **Agreements** in the update
* Click **Update**
## Bulk adding new services
> Use the CSV template to create multiple new services in Visualcare at once
Use the **Download CSV Template** and **Import CSV** options on the **All Services** page to add multiple new services in a single import. This is useful when setting up a large service list, such as when preparing for the Support at Home (SAH) changes.
A standard SAH services list is available as a ready-to-use CSV: [SAH Services List](https://vcdn.visualcare.com.au/resources/sah-services-list.xlsx). Download it and import directly, or use it as a starting point for your own list.
This feature is available to users with permission to access **Maintenance** → **Services**.
Navigate to **Maintenance** → **Services** → **All Services** and click **Download CSV Template**.
This template is for creating new services only, so it does not include a **Service ID** column. If you also need to update existing services in the same file, use **Export CSV** instead and see [Bulk updating services](/operations/service-management#bulk-updating-services).
Open the file in a spreadsheet application and add a row for each new service.
Save the file in CSV (Comma delimited) format before importing.
Navigate to **Maintenance** → **Services** → **All Services** and click **Import CSV**. Select your saved file to upload.
The import process creates a new service for each row in the file.
Once the new services are created, apply their charge and pay rates by navigating to **Maintenance** → **Services**, clicking **Update Charge Rates** or **Update Pay Rates**, and selecting the relevant services.
## Related articles
Update existing services, including charge and pay rates, via CSV
Import new records in bulk using CSV files
Manage services, charge rates, and pay rates
## Fixed fee (sleepover) setting
The fixed fee setting on a service code controls whether shifts using that service export as a fixed fee (for example, for sleepover shifts) rather than by hours.
Once the sleepover checkbox is ticked on a service, all new shifts and any shifts modified from that point onward using that service have the fixed fee applied automatically.
The sleepover setting is only for services charged at a flat rate per shift. For awake (active) overnight shifts, where the worker stays awake and is charged and paid by the hour, use a standard service without the sleepover checkbox ticked and roster the shift as normal in the client or location roster.
The fixed fee setting only applies going forward. Existing timesheet entries created before the setting was enabled need to be edited manually. Running **Update Charge/Pay Rates** does not retroactively apply the fixed fee to existing timesheets, nor does re-rostering.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Customise categories, areas, divisions, and other list values
Edit multiple client or worker records at once
Import records in bulk using CSV files
# Word templates
Source: https://support.visualcare.com.au/operations/word-templates
Upload and manage Word document templates with export tags to generate pre-filled documents
Word templates in Visualcare let you upload customised Microsoft Word documents that automatically populate with data from vCore. These templates are commonly used for agreements, client profiles, worker profiles, transport runs, quotes, HCP quotes, and HCP statements.
Navigate to **Maintenance** → **Documents** to manage your Word templates and uploaded files.
## Uploading a Word template
To upload a file or add a URL, select the relevant option from the documents page.
Common Word template types include:
* Agreement
* Client or worker profile
* Transport run
* Quotes and HCP quotes
* HCP statements
Once uploaded, click **Manage** to set the template type as needed.
## Template settings
When managing a document, you can configure the following options:
| Setting | Description |
| - | - |
| **Template type** | Sets the context in which the template is used (for example, agreement, client profile) |
| **Visible to worker** | Makes the document accessible to workers on their mobile app |
| **Visible to client** | Makes the document accessible to clients on their app |
| **Word Export Template** | Marks the document as a Word export template. Multiple Word export templates can be used for export |
| **Lock** | Prevents the document from being deleted. When locked, the delete button is disabled |
## Word export tags
Word export tags allow you to insert placeholders into your Word document that automatically fill with data when exported from vCore. These tags pull information from completed forms and profile data.
Field definitions in form templates contain word export tags that export information from a completed form into a Word document.
### Available funds tags
The "Available Funds" concept is called **Unallocated Package** in Visualcare. Use the following export tags in the Summary Section of your Word export template to display available funds data:
| Description | Word export tag |
| - | - |
| Unallocated package daily | `${UP_Daily}` |
| Unallocated package monthly | `${UP_Mon}` |
| Unallocated package annually | `${UP_An}` |
Two similar-sounding values are easy to confuse: **Unspent Funds** is the HCA balance - the opening balance at the start of the quote - while **Unallocated Package** is the available funds at the end of the quote period, after all charges and costs are applied.
## Document categories
If the setting **User Must Select Document Category When Uploading** is enabled (in **Settings** → **General**), you need to select a document category before uploading a file to the documents page or to a client/worker profile.
Users will only have access to documents for which they are granted permission. Document permissions are managed under **Maintenance** → **Categories** → **Document Categories**.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Store and manage documents at the organisation level
Manage template visibility and role access
# Pay Cat Connect for Award Compliance and Margins
Source: https://support.visualcare.com.au/paycatconnectaward
## Overview
This page covers the Pay Cat Connect webinar on award compliance and margins, along with the questions submitted by attendees during the session.
Pay Cat Connect brings automated SCHADS Award interpretation into your rostering and payroll workflow. The webinar walks through how Award Aware Rostering (AAR) surfaces cost and compliance warnings while you build the roster, and how the same interpretation carries through to timesheet export for payroll.
## Q\&A
Timeline view award impact is on the roadmap for a future release, but is not available yet. Currently, Award Aware Rostering (AAR) requires rosterers to click **Interpret Award** on each shift on the client roster. We understand this creates friction for teams who work primarily in Timeline view, and this is a known gap we are actively working to address.
Location roster support for Award Aware Rostering (AAR) is on the roadmap, but there is no committed timeline at this stage. In the meantime, shifts rostered on the location roster are still correctly interpreted at the timesheet and export stage, so payroll accuracy is maintained.
Location roster support for Award Aware Rostering (AAR) is on the roadmap with no committed timeline. Payroll is not affected in the meantime: shifts on the location roster are still exported and interpreted correctly at the timesheet and payroll export stage. The limitation is visibility at the rostering stage only, not payroll accuracy.
Please reach out to your Customer Success Manager (CSM) to discuss pricing options that apply to your situation.
On the multi-sector question: currently, one award sector can be assigned per worker (either Disability Services or Home Care). Multi-sector override is planned for a future release, and Pay Cat is actively working on this.
On the value question: the time and cost savings from automated SCHADS Award interpretation are meaningful. Please review the webinar recording above, as there is a slide in the presentation that gives an example of cost savings. Your CSM can walk you through what this looks like for your specific rostering volume.
Yes. Employment type is configured through the Worker Type field on each worker's profile: Full-time, Part-time, or Casual. Pay Cat uses this to apply the correct SCHADS Award rates, loadings, and entitlements for each worker. Workers must be set to one of these three types to sync with Pay Cat.
**Warnings without clicking Interpret Award:** Not currently. Rosterers need to click **Interpret Award** to see award analysis. Timeline view warnings are on the roadmap as a future enhancement.
**Minimum shift length with back-to-back shifts:** If two shifts are back to back (or have a gap of under 1 hour), minimum engagement does not apply between them. Minimum engagement only triggers independently if there is a gap of more than 1 hour between shifts.
**Dual sectors (aged care and disability):** Multi-sector support is planned but has no committed timeline. Pay Cat is actively working on this. For now, each worker is assigned a single award sector.
**Sleepover shift example (1 hour before, 3 hours after):** Per the SCHADS Award, you must roster the employee, or pay the employee for at least four hours' work, for at least one of these periods of work. In this example, there would be one additional top-up hour.
Travel time is captured at the timesheet level, not at the rostering stage. This means that at the rostering stage, a short gap between shifts may show a minimum engagement warning, because Pay Cat does not yet know the travel time that will be recorded. Once travel time is entered on the timesheet, Pay Cat recalculates and the warning typically no longer applies.
For a scenario like 15 minutes with one client, 15 minutes travel, then 2 hours with a second client, the full worked time including travel is accounted for at the payroll export stage. We recommend organising a demo with your CSM to walk through a worker roster scenario that reflects your specific situation.
Non-client-facing shifts, such as cleaning or grounds maintenance, can be entered on a location roster. These shifts are still exported and interpreted for payroll at the timesheet stage, so workers receive the correct pay even without a client assigned.
Pay Cat Connect works at both stages, and they serve different purposes:
**Award Aware Rostering (AAR)** gives real-time cost and award visibility when you are building the roster, before shifts are worked. This helps rostering staff make informed decisions upfront.
**Payroll Interpretation** works at the timesheet stage after shifts are completed. It interprets the actual hours worked, applies the full SCHADS Award rules, and exports the costed data to Xero or MYOB for payroll.
The two features are available on different pricing tiers. Speak with your CSM if you would like to understand which applies to your current setup.
# Client reports
Source: https://support.visualcare.com.au/reporting/client-reports
Run reports on client data including funding, agreements, compliance, contacts and more.
The **Client Reports** section in Visualcare gives you a central place to pull reports on client data. You'll find reports covering everything from funding balances and agreement details through to compliance items, contact lists and service history.
Access client reports from **Reports** → **Client Reports** in the main menu, or from the **Reports** tab within an individual client profile.
## Reports available from the client profile
The **Reports** tab within a client profile provides reports specific to that client.
### Funding and operational balances
This table reports on the client's budget as set up in the **Agreement** tab. It draws on client roster and confirmed timesheet data.
| Column | What it shows |
| - | - |
| Rostered hours | Hours from the client roster |
| Budget hours | Hours from the client agreement |
| Actual hours | Hours from confirmed timesheets |
Totals display at the bottom of the table.
### Funding report
To run a funding breakdown report from the client profile:
1. Click **Funding Report**
2. Select the date range
3. Choose a funding type (leave blank to include all)
4. Enter the funding amount
5. Choose a specific service or leave on all services
6. Click **Reload** to generate the report
## Reports available from the reporting module
The following reports are available under **Reports** → **Client Reports**.
| Report | Description |
| - | - |
| Client Review Dates | Report on client review dates for specific timeframes |
| Client Agreement and Services | Report on agreements and services for a specified timeframe, with filters for client, agreement type, area or division |
| Client Birthdays | Report on client birthdays for the coming month or all months |
| Client Contacts | List of clients and their contacts |
| Client Communication | Report on last communication with clients, with filters by funding type and area |
| Client Compliance | List of all client compliance items, with filters on **Alert Date** or **Expire Date** |
| Client Distribution | Shows how many clients are receiving services in each suburb |
| Client Last Service/Timesheet | Displays the last scheduled service and the last confirmed shift (timesheet) for each client |
| Client Worker Preference | Search for specific clients or all, and filter by preferred, non-preferred or all |
| Client Documents | Search across all client documents |
Most reports support date range filters, column sorting, and export to Excel for further analysis.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up new client records in Visualcare
Track and manage client compliance items
Run reports on worker data
Report on rostering and timesheet data
# DEX reports
Source: https://support.visualcare.com.au/reporting/dex-reports
Set up and run Data Exchange reports for Commonwealth-funded services in Visualcare
Visualcare includes reporting tools for Data Exchange (DEX) data. These reports help you track service delivery for Commonwealth-funded services such as Commonwealth Home Support Programme (CHSP).
Access these reports from **Reports** in the main menu.
## Setting up DEX
Before you run DEX reports, your organisation needs to complete the initial DEX configuration. Work through these steps in order.
Download your reference files from the DEX portal (data.gov.au) and email them to [support@visualcare.com.au](mailto:support@visualcare.com.au). The Visualcare team uses these files to configure your DEX service types and outlets.
For each CHSP client, open their profile and go to the **CHSP/HACC** tab. Tick **Is CHSP** and **Is DEX**, then add the relevant DEX case.
Open the client's agreement and set the **Agreement Type** to CHSP. Add the **DEX Case** and **DEX Activity** columns to the agreement.
Use the **Column Chooser** in the roster to add the **DEX Case** and **DEX Activity** columns. This makes it possible to select DEX details when rostering services.
When creating rostered shifts for CHSP clients, select the appropriate **DEX Case** and **DEX Activity**. For meals and transport services, also enter the **Meal Quantity** or **Transport Quantity** as required by DEX.
For location-based rosters with multiple clients, use **Edit All Extras** to apply DEX details across the group, or **Edit DEX** to update individual clients within the roster.
For home modification services, select the Home Modification DEX Activity when rostering. In the timesheet, select **DEX Expense** to record the associated expense correctly.
Navigate to **Settings** → **Data Export** → **DEX Export**. Select your date range and run the **Errors** report first to identify and fix any data issues. Once errors are resolved, run the report to generate the XML file for submission to DEX.
Run the Errors report before every DEX export. Fixing data issues before generating the XML file saves time and avoids rejected submissions.
## DEX reports
The following reports are available under **Reports** → **DEX Reports**.
| Report | Description |
| - | - |
| Service Summary Report | Summarised list of DEX service types and cases by date range |
| Client DEX Sessions | Lists all DEX sessions by date range |
| DEX Rostered Shifts | Details support worker services, pay rates and client contributions |
DEX reporting is relevant to providers delivering Commonwealth-funded services such as Commonwealth Home Support Programme (CHSP). Make sure your services are correctly configured with DEX service types for accurate reporting.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
CHSP billing through DEX export
Configure CHSP and HACC settings on client profiles
Run reports on completed form submissions
Run reports on all expenses
# Expenses report
Source: https://support.visualcare.com.au/reporting/expenses-report
Run reports on all expenses created in Visualcare within a selected date range
The expenses report covers all expenses created in Visualcare within a selected date range. Access the report from **Reports** → **Expenses**.
## Running an expenses report
1. Use the date drop-down in the top left to select a predefined date range, or choose a custom date range
2. Click **Reload**
3. Information related to expenses displays in the columns, with additional column options available via the **Column Chooser**
4. Apply filters to columns to narrow down specific data
5. Export the table to Excel for further analysis
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Add and manage expenses on client profiles
Run reports on client data
Overview of billing and export options
# Forms report
Source: https://support.visualcare.com.au/reporting/forms-report
Run reports on completed form submissions across all clients in Visualcare
The forms report lets you pull a report of completed form submissions across all clients for a selected template and date range. Access the report from **Reports** → **Forms Report**.
## Running a forms report
1. Select the form template from the drop-down list on the left-hand side
2. Choose the date range
3. The report generates across all clients for the selected template and period
This report is useful for auditing completed assessments, care plans and other form-based records.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Create forms from client profiles, vAssessment, or vWorker
Manage forms on client and worker profiles
Run reports on client data
# Reporting
Source: https://support.visualcare.com.au/reporting/index
Client, worker, roster, timesheet, and funding reports
# Reporting
Generate reports to track clients, workers, rosters, timesheets, and funding across your organisation.
Reports on client data and activity
Reports on worker data and activity
Reports on rostering and timesheet data
Data Exchange reports for Commonwealth-funded services
Reports on completed form submissions
Reports on client and worker notes
Reports on all expenses
Monitor participant budgets and care management for Support at Home
# Notes report
Source: https://support.visualcare.com.au/reporting/notes-report
Run reports on client and worker notes in Visualcare
The notes report lets you pull a report of notes across your organisation, filtered by note type. Access the report from **Reports** → **Notes Report**.
## Running a notes report
Use the drop-down list on the left-hand side to select the type of note. Once loaded, you can sort, filter and export the results to Excel.
## Adding a note to multiple clients
Use **Add Bulk Note** to add the same note to several clients at once, rather than adding it to each client profile one by one.
Go to **Reports** → **Notes Report**.
Click **Add Bulk Note**.
Tick the box next to each client you want to add the note to.
Fill in the note fields the same way you would when adding a single note. For a description of each field, see [Managing a note](/client-management/notes-and-tasks#managing-a-note).
Click **Save Note**. The note is added to the **Notes** tab of each selected client.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Record and manage client progress notes
Manage notes and tasks on client profiles
Run reports on client data
# Rosters and timesheets reports
Source: https://support.visualcare.com.au/reporting/rosters-and-timesheets-reports
Run reports on rostering conflicts, service hours, timesheets and shift data
Visualcare provides a comprehensive set of reports for rostering and timesheet data. These reports help you identify conflicts, track billable hours, compare rostered versus actual hours, and analyse service delivery patterns.
Access these reports from **Reports** → **Rostering Reports** and **Timesheets** → **Timesheets** in the main menu.
## Rostering reports
The following reports are available under **Reports** → **Rostering Reports**.
### Conflicts
This report highlights any roster conflicts. A conflict falls into one of three categories:
| Conflict type | Description |
| - | - |
| Availability conflict | A worker's availability has changed and now conflicts with a rostered appointment |
| Leave conflict | A worker's leave has changed and now conflicts with a rostered appointment |
| Roster conflict | Time overlaps or insufficient time between two shifts for the same worker |
### Other rostering reports
| Report | Description |
| - | - |
| Public Holidays | Highlights any shifts scheduled on a public holiday. Make sure your state is set up correctly in the settings area |
| Cancelled Shifts / Shifts on Leave | Highlights any shifts that have been cancelled or marked as on leave |
| Billable Hours Summary | Reports on all billable hours for a selected date range, sorted by funding type with totals for different payroll periods |
| Movement Report | Shows the difference between cancelled shift hours and non-cancelled shift hours between a chosen period |
| Payer High Level | Reports on how many hours a payer is expected to pay between a given date period, based on timesheets. Displays total hours, on-hold hours and the remainder for each month within the date range |
| Roster Hours vs Actual | Compares rostered hours against actual hours by support worker for a selected timeframe |
| Roster Notes Report | Reports on all roster notes entered during rostering |
| Roster Hours by Category | Summarised list of client hours by roster category. Roster categories are used when rostering services to break shifts down by different reporting mechanisms |
| No Service Report | Reports on clients who do not have any shifts in rosters |
| Series Shift Report | Select a date range to view all shift series for all clients |
### Client services provided
This report shows confirmed client services (timesheets) for a selected timeframe. You have several options:
* Group by **Client**, **Payer** or **Service**
* Choose **Show Details** or **Totals Only**
* Export to Excel or run as an on-screen report
### Monthly hours breakdown
This report shows rostered items (not confirmed timesheets) for a selected date range. It's useful for forecasting upcoming months. Options include:
* Include or exclude uncompleted or cancelled shifts
* Multiple grouping options
* Export to Excel or run as an on-screen report
### Service summary reports
| Report | Description |
| - | - |
| Service Summary by Support Worker | View by date range, grouped by worker showing services, quantity, pay rate, charge rate, payer and client contribution |
| Service Summary by Payer | View by date range, with the option to show details or payer totals only |
## Timesheet reports
The following reports are available under **Timesheets** → **Timesheets**.
### Timesheet report
To run a timesheet report:
1. Go to **Timesheets** → **Timesheets**
2. Select the timeframe for your payroll period
3. Choose which report you want from the drop-down menu
4. Click **View**
This report shows all confirmed timesheets.
### Other timesheet reports
| Report | Description |
| - | - |
| Timesheet Summary | Select a date range to see a summary of kilometres, kilometres (no charge), reimbursements, total hours and pay based on completed timesheets |
| App Started but Not Finished | Report on all shifts started by a worker on the mobile app but not finished |
| Time Discrepancy | Select a date range and filter by worker to identify consistent lateness or early departures |
The Time Discrepancy report is useful for spotting patterns where workers are consistently starting late or finishing early.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
View and manage confirmed timesheets
Handle and resolve roster conflicts
Run reports on client data
Run reports on worker data
# Support at Home dashboards
Source: https://support.visualcare.com.au/reporting/sah-dashboards
Monitor Support at Home participant budgets and care management from the Participant and Organisation dashboards
The Support at Home dashboards give providers and care partners visibility over ongoing participant budgets and care management delivery. There are two views:
* **Participant Dashboard** — individual budget tracking on the client profile.
* **Organisation Dashboard** — oversight across all Support at Home participants.
Run a budget refresh before reviewing figures. This pulls the latest balances from the Services Australia API. Refresh from **Client Profile > SAH tab** — see [Billing to SAH](/finance/billing-to-sah) for details.
If a participant isn't linked to the API, their dashboard may not finish loading. To fix this, open the participant's profile, go to the **SAH** tab and link them.
## Participant Dashboard
### Access the dashboard
1. Open the client profile.
2. Open the **Support at Home Dashboard** tab.
3. Click **View Details** to see the current quarter's budget.
Hover over the coloured cards for additional data insights.
### Understand the budget figures
| Field | What it shows |
| - | - |
| **Starting Balance** | The approved budget for the current funding period (for example, 1 Jan–31 Mar 2026), pulled from the Services Australia API. Care management (10%) has already been deducted. Also visible on the client profile's SAH tab. |
| **Claimed Funds** | Funds successfully claimed and paid. The claim has been lodged, the payment statement has been reconciled in Visualcare, and the claim status is **Paid**. |
| **Available Balance** | Remaining budget from the Services Australia API (starting balance less claims). Also visible on the client profile's SAH tab. |
| **Planned Spend** | Future rostered services not yet delivered. Once a shift occurs and is approved in **Timesheets > All Timesheets**, it moves from Planned Spend to Committed Funds. Use this to spot where a roster needs adjusting to avoid going over budget. |
| **Committed Funds** | Services and expenses already delivered in the current period, but not yet claimed or paid. |
| **Estimated Remaining Funds** | Calculated as `Available Balance − Planned Spend − Committed Funds`. |
If a claim is in **Draft** or **Submitted** status (lodged with Services Australia but not yet reconciled), Estimated Remaining Funds may look off. The API shows a reduced available balance, but committed funds haven't moved to **Claimed** yet.
Fully close off claims (including reconciliation) and run a budget refresh before reviewing budgets, so the latest API figures come through.
### Export data
Use the export function on the Participant Dashboard to download budget data as a CSV for further analysis.
## Organisation Dashboard
### Access the dashboard
Go to **Reporting > Support at Home Organisation Dashboard** to monitor participant budgets across your entire organisation.
### Identify budget risks
The dashboard flags two risk categories:
* **Over Budget** — the participant is projected to exceed their budget by the end of the quarter, based on what's rostered and claimed.
* **At Risk** — the participant's estimated remaining balance is at 10% or less of their starting funds.
Click a flagged participant to open their profile and adjust their roster as needed.
### Monitor care management time
Review the care management section to see total time spent across all participants, and identify anyone who hasn't received their required minimum care management hours.
Restrict Organisation Dashboard access to authorised users only, to protect participant data.
Check budget utilisation regularly to catch overspending early, and export data frequently to keep records organised and accessible.
## Related articles
Submit claims and reconcile payments for Support at Home
Generate and send participant statements
How unspent funds display and roll over
Fix common Support at Home claiming errors
# Worker reports
Source: https://support.visualcare.com.au/reporting/worker-reports
Run reports on worker data including availability, compliance, training, skills and utilisation
The **Worker Reports** section in Visualcare lets you pull reports across your workforce. You'll find reports covering birthdays, availability, compliance, equipment, training, skills, utilisation and documents.
Access worker reports from **Reports** → **Worker Reports** in the main menu, or from the **Reports** tab within an individual worker profile.
## Reports available from the worker profile
The **Reports** tab within a worker profile provides a report on services provided by that worker.
## Reports available from the reporting module
The following reports are available under **Reports** → **Worker Reports**.
| Report | Description |
| - | - |
| Worker Birthday | Report on worker birthdays in the coming month |
| Worker Availability | Report on worker availability, with filters by area and division |
| Worker Compliance | List of all worker compliance items, with filters on **Alert Date** or **Expire Date** |
| Worker Equipment | Report on all equipment items assigned to workers |
| Worker Training | List of all worker training items, with filters on **Alert Date** or **Expire Date** |
| Worker Skills | List of all worker skills. Filter by **Worker** or **Skill** by dragging the column header to the top of the screen |
| Worker Utilisation | Report on how many hours a worker would like to work (set under the **Finance** tab as **Budget Hours Per Day**). Select a timeframe to compare budget hours, rostered hours and completed hours |
| Worker Documents | Search across all worker documents |
The Worker Utilisation report is useful for identifying workers who are under-rostered or over-rostered relative to their preferred hours.
## Tracking worker start dates and tenure
There isn't a dedicated tenure or check-in report under **Worker Reports**. Each worker's **Start Date** is stored on the [Engagement Details](/worker-management/engagement-details) tab of their profile.
To build a list of workers with their start dates (for example, to schedule 1, 6, and 12 month check-ins):
1. Go to **Workers** → **Profile** to open the worker list.
2. Use the **column chooser** in the top right to add the **Start Date** column, then drag it into the header row.
3. Click the **Excel** icon to export the list.
4. Sort or filter by **Start Date** in Excel to identify workers approaching each check-in milestone.
See [Creating a worker profile](/worker-management/creating-a-worker-profile#customising-the-worker-list) for more on the column chooser and Excel export.
## Running into issues?
See [General troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up new worker records in Visualcare
Track and manage worker compliance items
Run reports on client data
Report on rostering and timesheet data
# Roster Navigation
Source: https://support.visualcare.com.au/rosternavigation
How to navigate the client roster
## Roster navigation
The client roster screen includes several quick-access features at the top of the page.
### Hyperlinks
Click on the hyperlinks at the top of the roster screen to quickly access related information:
* **Client Name** - opens the client profile page
* **Address** - shows the location on Google Maps
* **Email** - opens a new email to the client
### Toolbar
The toolbar provides access to budget, notes, leave, deleted shifts, and roster history.
### Publish toggle
* **Publish ON** - workers see their shifts and get notifications as shifts are updated, added, or deleted
* **Publish OFF** - workers don't see any shifts on their phone. Make changes without triggering notifications
### Complete a roster
When a roster is finished (for example, the client has ceased services), click **Complete**. Then filter out completed rosters in your roster list.
## Roster notes
Click the **Notes** icon in the toolbar to view notes in the roster area.
Produce a roster notes report by selecting a date range and clicking **Submit**.
The report lists all roster notes entered when creating a shift or shift repeat. Export to Excel if needed.
To view notes for a specific shift, left-click on the shift and select **View Notes**.
# SAH end to end workflow- Impact call outs Session 1
Source: https://support.visualcare.com.au/sah-end-to-end-workflow-impact-callouts-session-1
This webinar is the first of a two-part series walking through the Support at Home process in Visualcare from start to finish. Whether you're new to Support at Home or have been using it since 1 November, this session covers the recommended intake workflow for a new participant and highlights where skipping a step can cause problems later on at claiming, invoicing and statements.
Part 2 continues the workflow, focusing on claiming, invoicing and statements.
## Questions and answers
Here are the questions raised during the session, with answers from the Visualcare team. Similar questions have been combined.
### Recordings
The recordings for both sessions are published on the Support Centre, with the presenter panel removed so the screen is larger.
* [SAH end to end workflow - Impact call outs Session 1](/sah-end-to-end-workflow-impact-callouts-session-1)
* [SAH end to end workflow - Impact call outs Session 2](/sah-end-to-end-workflow-impact-callouts-session-2)
### API connection and device expiry
The PRODA device used for your Services Australia API connection usually expires every six months, and it is coming up soon for many customers. Check your expiry date in **Settings** → **Integrations** → **Manage**. Reactivating the device before it expires is easier on the PRODA side.
If the device expires, you'll see a server error on the client profile's **Support at Home** tab. This doesn't stop claiming, but you won't be able to link new participants to the API until it's renewed.
See [Server error on the SAH tab](/troubleshooting/sah-claiming-errors#server-error-on-the-sah-tab) for instructions.
### Agreements and classifications
Clone the existing agreement to copy its service codes, then use the **Transfer** tool on the agreement page to move upcoming shifts from the old agreement to the new one. Select the from date and match any service codes that don't map automatically.
Once transferred, set the **End Date** on the old agreement, tick **Is Closed** and click **Save**.
See [Transferring roster items to a new agreement](/client-management/offboarding-generic#transferring-roster-items-to-a-new-agreement).
If services are changing, for example adding new services and removing old ones, we recommend using the **Clone** and **Transfer** feature. If services are staying the same or you're only adding new ones, you can either clone and transfer, or update the existing agreement.
See [Agreement management tips](/client-management/sah-agreements#agreement-management-tips).
Classification comes through from the Services Australia API and shows on the client profile's **Support at Home** tab. A participant can have more than one classification (for example AT high and classification level 6), so the product team is still working on how to display these in the classification field.
For now, you can record levels in the **Client Type** drop-down:
1. Create your levels in **Maintenance** → **Client** → **Client Types**
2. On the client profile **Details** tab, under **Service Status**, select the level in **Client Type**
3. Add **Client Type** as a column in the client list using the **Column Chooser**
**Division** and **Groups** can also be customised and allow multiple selections, if you aren't already using them.
See [The classification level drop-down doesn't have the right options](/client-management/sah-client-profile#the-classification-level-drop-down-doesnt-have-the-right-options).
The earliest end date you can choose is the day after the participant's last rostered service. Check their roster and remove any services after their last day of service, including any single shifts or broken series that may have been missed. You'll then be able to choose the actual departure date.
The **Delete shifts from a date onwards** button on the client profile **Details** tab, under **Service Status**, makes this quicker.
### Rostering, expenses and AT-HM
AT, HM and home support items shouldn't be rostered, because Services Australia requires specific item codes for these that the roster can't capture. Add them as expenses using the new look expense form instead.
To pay the worker, tick **Reimburse to worker** and select the pay code. You can also change the unit type to minutes.
Meal preparation (SERV-0008) is rostered as a normal shift. Meal delivery (SERV-0007) is added as an expense, dated the day of delivery, with the number of meals as the quantity.
For example, \$105 for 7 meals delivered on 7 September is entered with a quantity of 7, and the claim file shows 7 units at \$15.
See [SAH meal services](/client-management/sah-meals#service-codes).
Wraparound services apply to Assistive Technology and Home Modification items only (for example delivery, training or administration), so there is no wraparound to claim for rostered meal preparation.
See [SAH meal services](/client-management/sah-meals).
The item drop-downs on the new look expense form come from Services Australia's Support at Home reference data (the e-kit), which you can download from the Services Australia website. Visualcare filters the list by the service you select. For example, SERV-0063 Mobility products shows only the items under that code.
The e-kit also lists the wraparound codes and health professional types, so it's worth saving for reference.
Yes. Go to **Operations** → **Import CSV** and select **Expenses** as the import type. Use the second template, which handles both general expenses (for example gardening or cleaning) and the extra columns needed for AT-HM items. AT-HM items and their wraparound services can be uploaded in the same CSV.
See [SAH bulk import of AT-HM expenses](/client-management/sah-bulk-import-expenses#sah-bulk-import-at-hm-expenses).
In the bulk import CSV, set the **AT-HM Item/Wraparound** column to `Wraparound` (case-sensitive).
* If the parent item is already in Visualcare, enter its expense ID in **AT-HM Parent Expense ID**
* If the parent item is in the same CSV, give it a unique ID and use that same ID in the **AT-HM Parent Item Id** column on both rows
Check you're using the right wraparound code for the item type. Some wraparound codes are only for Home Modifications (SERV-0067 and SERV-0068), and using them with AT items will cause an error in PRODA.
See [SAH bulk import expenses](/client-management/sah-bulk-import-expenses).
Linking an item to an agreement doesn't determine which funding source Services Australia draws from, as Services Australia decides this when the claim is paid. The exception is Restorative Care and End of Life, where the agreement must be linked to the correct funding source.
Otherwise, the agreement-to-funding link is used for the participant and organisation dashboards.
The claim file follows the Services Australia template. In this template, the item description is mandatory when the Item Description Code refers to "Other" and for some Home Support items.
The **Supplier** field prints on the statement. You can enter the item description in this field along with the supplier name.
### Care management
We don't recommend adding care management time in bulk. It should be added on the client profile **Notes** tab when the care partner adds a note about the time spent.
Visualcare does have features to add notes in bulk and to create rosters from templates.
See [Tracking SAH care management time](/client-management/sah-care-management).
The **Activity Type** you select when adding care management time works like a care management note category. The participant and organisation dashboards use it to show where care management time is being spent in the coloured graphs.
See [Monitor care management time](/reporting/sah-dashboards#monitor-care-management-time).
The Visualcare Support at Home dashboards show how much care management time has been delivered and when it hasn't been delivered, but they don't include a care management balance remaining to claim.
You can view care management funding in PRODA under **Budgets** at the organisation level.
See [Understand the budget figures](/reporting/sah-dashboards#understand-the-budget-figures).
### Budgets, dashboards and claiming
A bulk budget refresh is currently requested via Support at [support@visualcare.com.au](mailto:support@visualcare.com.au). A product enhancement is with our team to let customers run a bulk budget refresh themselves, and we will share updates as it progresses.
The best time to request a refresh is after you have reconciled your claim, so statement balances are accurate. You can also refresh an individual participant's budget at any time by opening the **SAH** tab on their client profile.
See [Funding table](/client-management/sah-client-profile#funding-table).
The **Support at Home Organisation Dashboard** flags participants as:
* **Over Budget**: projected to exceed their budget by the end of the quarter, based on what's rostered and claimed
* **At Risk**: estimated remaining balance is at 10% or less of their starting funds
See [Support at Home dashboards](/reporting/sah-dashboards).
Check that the participant's Visualcare agreements are linked to the relevant funding. If this is set up correctly, send a ticket to the helpdesk with the participant and the services that aren't showing, so we can investigate and advise.
Use **Timesheets** → **Data Export** to find claim items. It has four claim columns:
* **Claim Reference**
* **Claim Item Reference**: the external reference ID, which matches column E of the Services Australia payment statement
* **Claim Item Status**
* **Claim Status**
Choose your date range, click **Reload**, add the columns with the **Column Chooser** and export to Excel if needed.
A gap happens when Services Australia pays less than the amount claimed, usually because the participant didn't have enough funds on the service date (for example, near the end of the quarter). The payment statement shows the item as rejected or partly paid.
When you reconcile the claim, a review screen shows any gap items, which you can download. Claims with gaps move to **Partially Paid** or **Not Paid**. When you generate invoices, Visualcare creates up to three:
* **INVG**: Government
* **INV**: Client Contribution
* **GAP**: Gap payment
Click the GAP invoice to choose who will be billed.
See [Gap payment workflow](/client-management/sah-gap-payments#gap-payment-workflow).
Our team is working with Services Australia to understand the adjustments process, and with a small group of customers to shape how adjustments will work in Visualcare. We'll share more information as this progresses.
In the meantime, if you need to correct an overclaim that has already been reconciled in Visualcare, contact Support with the updated payment CSV from PRODA and we can perform a data rollback.
See [After VC reconciliation](/client-management/sah-adjustments#after-vc-reconciliation).
### Documents
Documents attached to notes currently need to be downloaded to be viewed. If the document is also uploaded to the **Documents** tab, it can be viewed there without downloading.
See [Document storage](/client-management/document-storage).
### Statements and exited participants
Providers can claim for services delivered up to 60 days after a participant's departure date, so you may still need to generate statements for exited participants for up to two months. For participants who have passed away, we know a statement can cause distress for families. Our product team is scoping an offboarding process that handles both situations, and we have requested a filter by client status on the **Statements** page.
In the meantime, you can either:
* Set the participant's communication preference to **Post** on the **Billing Preferences** tab, so their statement goes into the ZIP file instead of being emailed
* Untick them before you generate statements for the month
If an exited participant shows as **Failed**, it usually means they have no budget or no transactions for that period, so there is nothing to generate.
See [Offboarding a client (Support at Home)](/client-management/offboarding-sah).
# SAH end to end workflow- Impact call outs Session 2
Source: https://support.visualcare.com.au/sah-end-to-end-workflow-impact-callouts-session-2
This recording is the second session in our Support at Home best practice webinar series, and follows the back end of the process, using a demo participant to show how approved timesheets, expenses and care management flow through to claiming, invoicing and statements.
If you missed part one or would like a refresher, you can find the recording [SAH end to end workflow- Impact call outs Session 1](/untitled-page)
## Questions and answers
Here are the questions raised during the session, with answers from the Visualcare team. Similar questions have been combined.
### Claiming and reconciliation
This can't be done from Visualcare, and we recommend against it if you have submitted the claim to PRODA. If you have accidentally moved a claim from **Draft** to **Submitted** status, we can roll it back for you. Please send a request to Support.
Common claiming errors and fixes, including AT-HM wraparound codes and the Restorative Care funding source column, are listed in [SAH claiming troubleshooting](/troubleshooting/sah-claiming-errors#proda-claiming-errors).
After you upload the reconciliation file, partly paid items are flagged on the review screen and the claim moves to **Partially Paid**. When you generate invoices, Visualcare creates separate Government (INVG), Client Contribution (INV) and Gap (GAP) invoices.
Set the payer on each GAP invoice. This is done one invoice at a time and doesn't carry over from the previous month. Depending on your arrangements, the gap might be invoiced to the participant, another payer, or written off in your finance system.
See [Gap payment workflow](/client-management/sah-gap-payments#gap-payment-workflow).
The claim is made against the service delivery date. If you claim again in the next quarter, the service date is still in the original period and Services Australia will reject it.
See [Why is an item only partially paid or not paid?](/finance/billing-to-sah#why-is-an-item-only-partially-paid-or-not-paid-on-the-claim-reconciliation-and-can-i-resubmit-for-unclaimed-portion)
A gap is usually due to the participant not having available funds for the service on the service date. To claim the remaining amount, enter a new expense item for the shortfall.
Confirm funding is actually available for that date first, or the new item will be rejected for the same reason.
See [Why is an item only partially paid or not paid?](/finance/billing-to-sah#why-is-an-item-only-partially-paid-or-not-paid-on-the-claim-reconciliation-and-can-i-resubmit-for-unclaimed-portion)
On **Data Export**, the **Claim Status** refers to the whole claim, so it can show as **Paid** even when an individual item wasn't fully paid. The **Claim Item Status** for that item could be **Rejected** or **Partially Paid**.
If something still doesn't look right, send the participant and service delivery date to the helpdesk and we'll take a closer look.
See [Invoice statuses](/finance/billing-to-sah#invoice-statuses).
### Invoicing
Create invoices from the **Invoices** tab, for example by selecting the month and creating them in bulk. Don't create invoices from the reconciled claim page, as this creates multiple invoices.
This is expected behaviour. The contribution invoice shows one unit of client contribution rather than actual hours, because showing actual hours would make the hourly charge rate for that item misleading. Participants should refer to their statement for the breakdown of hours and amounts.
The team is currently looking into this issue with invoice numbers on MYOB exports.
This is something we are looking into. If you haven't already sent a helpdesk ticket about this error, please do, so we can monitor it and let you know once it's fixed.
Hover over the error to see the reason. Then set the **Accounting Code** on the service in **Maintenance** → **Services** and refresh the **Invoicing** screen.
Invoices exported by CSV can be downloaded more than once. Invoices sent through a finance system integration can only be sent once, because they then exist in your finance system.
### Statements
Regenerated statements for past periods display the balance as of the current or most recently updated Services Australia API balance.
This is usually a timing issue where the participant's budget wasn't refreshed before the statement was generated. The budget refreshes when you open the **SAH** tab on the participant profile. After reconciling each month, we recommend requesting a bulk refresh from Support at [support@visualcare.com.au](mailto:support@visualcare.com.au).
Check the draft statement first. If the balance hasn't updated, refresh the budget and regenerate the statement.
See [Budget summary](/client-management/sah-monthly-statements#budget-summary).
This happens when not all items are reconciled before the statement is generated, for example items still in a **Draft** or **Submitted** claim. Reconcile everything for the month before generating statements.
See [SAH monthly statements](/client-management/sah-monthly-statements).
This has been released, and statements now show unspent funds from the previous quarter. See the [Visualcare changelog](https://product.visualcare.com.au/changelog) for details.
See [Budget summary](/client-management/sah-monthly-statements#budget-summary).
All transactions on the SAH statement use the service delivery date. Check the date on the pending line item to see whether it's from a previous quarter.
Each statement covers one calendar month (for example 1 to 31 July). Because budgets are quarterly, **Expenditure outside this period** shows spending in the same quarter that falls outside the statement month. For example, a July statement may show August or September spending.
This can happen when claims for the following month are made before the previous month's statement is generated. For example, if August claims are made before the July statement is generated and the budget is refreshed after those claims, they may be included in the available balance on the July statement.
The team is reviewing how statements calculate balances, and how this can be improved while staying accurate and aligned with Services Australia.
Statements in **Draft** can be recreated, either for one participant (**Recreate** on their statement) or for the whole month (**Recreate all**). **Send Statements** only sends statements in Draft status, so participants who have already been sent a statement won't receive another for that period.
The statement is built on the Services Australia template, which doesn't include the classification level.
This is an issue the team is looking into. Only the transactions appear in both sections. The balances in each separate summary correctly reflect the government balances, provided budgets have been refreshed.
The **Supplier** field comes through to the statement. You can add detail here, along with the supplier name.
Statements are delivered using the communication preference on the client profile's **Billing Preferences** tab. Participants set to email are emailed automatically when you click **Send Statements**. The ZIP file has two folders: one with every statement for the month, and one with statements for participants set to post.
Providers can claim for services delivered up to 60 days after a participant's departure date, so you may still need to generate statements for exited participants for up to two months. For participants who have passed away, we know a statement can cause distress for families. Our product team is scoping an offboarding process that handles both situations, and we have requested a filter by client status on the **Statements** page.
In the meantime, you can either:
* Set the participant's communication preference to **Post** on the **Billing Preferences** tab, so their statement goes into the ZIP file instead of being emailed
* Untick them before you generate statements for the month
If an exited participant shows as **Failed**, it usually means they have no budget or no transactions for that period, so there is nothing to generate.
See [Offboarding a client (Support at Home)](/client-management/offboarding-sah) and [Why statements fail](/client-management/sah-monthly-statements#why-statements-fail).
### Dashboards and care management
The figures can look wrong between Services Australia paying a claim and you reconciling it in Visualcare. The available balance drops as soon as Services Australia pays, but the items stay in **Committed Funds** until the claim is reconciled. During that gap, usually three or four days, the estimated remaining balance can look as if the funds have been counted twice.
Once you reconcile, the committed funds move to **Claimed** and the balance recalculates correctly.
See [Understand the budget figures](/reporting/sah-dashboards#understand-the-budget-figures).
This is currently with the product team.
The Visualcare Support at Home dashboards show how much care management time has been delivered and when it hasn't been delivered, but they don't include a care management balance remaining to claim.
# Budget information while rostering
Source: https://support.visualcare.com.au/scheduling/budget-information-while-rostering
How to view and monitor client budget information while working in the roster
Visualcare provides real-time budget visibility while you're rostering, letting you track spend against client agreements without leaving the roster screen. Budget information is available from within the client roster and from the client reports tab.
## Viewing budget in the client roster
Click the **Budget** button in the roster toolbar to view the client's budget. This pulls through from the budget set up in the client's agreement.
### Filtering options
The budget view offers several ways to narrow down the information:
* **Agreement** - select all agreements or a specific agreement
* **Roster** - select this roster or all rosters
* **Date range** - select a specific date range
The budget figures update based on your selections.
### Budget columns
The budget display shows both hours and dollar values:
| Column | What it shows |
| - | - |
| **Actual \$/Hours** | Confirmed timesheet items |
| **Rostered \$/Hours** | Currently rostered items |
| **Budget \$/Hours** | Client budget calculated from agreement details |
## Funding and operational balances
The client reports tab (**Client Profile** → **Reports**) provides a broader view of budget information. This table reports on client budgets set up in the agreement tab, based on roster and confirmed timesheet data.
* **Rostered hours** come from the client roster
* **Budget hours** come from the client agreement
* **Actual hours** come from confirmed timesheets
* Totals are displayed at the bottom
### Funding report
Click **Funding Report** to run a detailed funding breakdown. Enter your criteria including date range, funding type, funding amount, and service selection, then click **Reload** to generate the report.
Leave the funding type blank to include all funding types in the report.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up a client roster and create individual shifts
Edit one-off shifts, series, and manage leave
# Client and worker map
Source: https://support.visualcare.com.au/scheduling/client-and-worker-map
How to view client and worker locations on a map for rostering decisions
The client and worker map displays your clients and workers on a map based on their residential addresses. This helps with rostering decisions by showing proximity between workers and clients.
## Viewing the map
Go to **Operations** → **Client and Worker Map**.
### Map markers
* **Green pins** - worker addresses
* **Pink pins** - client addresses
The map shows residential addresses only and does not display live locations. An address needs to be set up on the client or worker profile for it to appear on the map.
## Using the map for rostering
The map is useful for:
* Identifying which workers live closest to a client
* Planning rosters to minimise travel time between shifts
* Reviewing geographic coverage across your service area
For distance information during rostering, the [worker select button](/scheduling/worker-select-button) shows the distance in kilometres from the client's address to each available worker.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Use the select button to filter workers by distance and availability
Assign vehicles to client roster shifts
View and manage rosters across workers and clients
# Conflict management
Source: https://support.visualcare.com.au/scheduling/conflict-management
How to identify and resolve rostering conflicts in Visualcare
The conflicts KPI alerts you to any shifts that clash with another shift, worker leave, or availability. This helps you catch scheduling issues before they cause problems.
## Viewing conflicts
The conflicts KPI on the home page dashboard shows the number of conflicts in your rosters for the next seven days.
Click the KPI tile to review the full list of conflicting shifts.
## Types of conflicts
Conflicts occur when:
* A worker is rostered on two shifts at the same time
* A shift overlaps with a worker's leave
* A shift is scheduled during a time the worker is unavailable
## Resolving conflicts
To resolve a conflict:
1. Click the conflicts KPI to view the list
2. Identify the conflicting shifts
3. Open the relevant client roster to edit or move the shift
4. Alternatively, use the [Timeline views](/scheduling/timeline-views) to drag and drop shifts to a different worker
### Conflict settings
You can adjust how the system handles back-to-back shifts in **Settings** → **Rostering** → **Display** → **Conflict Type**:
* **Default** - highlights all conflicts, including where one shift's end time overlaps the next shift's start time
* **Ignore back to back shifts** - ignores conflicts where shifts are rostered back to back (for example, one shift ending at 10:00am and the next starting at 10:00am)
In the timeline views, conflicting shifts are highlighted yellow. Click on them to see the conflict details.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Find and manage shifts without assigned workers
View and manage rosters across workers and clients
Edit one-off shifts, series, and manage leave
Configure conflict type and other rostering settings
# Creating new shifts
Source: https://support.visualcare.com.au/scheduling/creating-new-shifts
How to set up a client roster and create new shifts in Visualcare
Before you create shifts, you need a client roster. This page covers setting up a new roster and adding shifts to it.
## What you'll need
* A client profile with at least a first name and last name
* An active agreement with a start date, end date, and at least one service
## Setting up a new client roster
Go to **Client Rosters** and click **Create New Roster**. This step is only needed once per client - if a roster already exists, skip ahead to creating a shift.
Use the search filters to find the client you want to roster for.
Once the client is selected, a blank roster opens where you can begin adding shifts.
## Creating a shift
Double-click on the day you want the shift to start on. The roster screen opens.
Complete the following fields:
| Field | Description |
| - | - |
| **Service** | Select the main service rate. If your rate link is set up correctly in **Maintenance** → **Services**, the correct service code is automatically assigned based on the day and time of the shift (for example, Saturday, Sunday, night time, public holiday). If rate link is not configured, select the correct service for the day and time manually |
| **Is location roster** | Toggle to **Yes** to allocate the client to a location roster instead of selecting a worker |
| **Pay Rate** | Automatically pulls through once a worker is selected, based on the worker's pay rate level and the service code |
| **Charge Rate** | Automatically pulls through based on the service item selected |
| **Shift Start** | The date the shift is due to start |
| **Shift End** | The date the shift is due to end |
| **Time (clock icon)** | Select the start and finish time of the shift |
| **This shift occurs over 2 days** | Tick this for overnight shifts. The system only allows you to select the day following the shift as the end date |
| **Support Worker** | Select a worker from the drop-down list, or use the **Select** button for filtered searching (see [Worker select button](/scheduling/worker-select-button)) |
| **Use additional workers** | Tick to assign up to four workers to one client for the same shift |
| **Shift Repeats** | Turn on for recurring rosters (see [Creating recurring shifts](/scheduling/creating-recurring-shifts)) |
| **Notes** | Notes added here flow through to the vWorker mobile app and appear in the client roster shift detail |
| **Notes - Private** | This note stays in the client roster shift detail only and is not visible on vWorker |
| **Unpaid Break** | Tick this and nominate the break start time if the worker is to have an unpaid break. It will show on the vWorker mobile app and you can nominate whether you charge or not charge the client in Settings > Data Export |
| **Paid Break Duration** | Enter the minutes for worker to have a paid break. This flows to the vWorker app to notify the worker and the total charge hours is reduced.
**Note-client is not charged while worker is taking a break and no settings configuration for this option** |
If you need to provide the worker a paid break and charge the client, do not use Unpaid or Paid break and simply provide a Public note for the worker to advise of their break time/duration.
Once all details are entered, click **Done**. The shift appears on the roster and is sent to the assigned worker via the vWorker mobile app.
## Fixed fee shifts
Fixed fee shifts let you charge a fixed amount for the entire shift regardless of duration.
Open a client roster, enter a shift, and select the time and worker first.
You need to select the time and worker before clicking **Fixed Fee**. If you don't follow this order, the charge rate reverts to the standard service charge rate.
Click **Fixed Fee** and enter the charge rate for the fixed amount.
The fixed fee flows through to timesheets and appears in the **Charge Rate** column. You can add the **Is Fixed Fee** column in timesheets from the column chooser to easily identify which shifts have fixed fees.
Fixed fee timesheet items export on an invoice line as a quantity of one, regardless of duration.
## Cancelling a shift
To cancel a shift without deleting it from the roster, right-click the shift and select **Mark This Shift as On Leave**. Then fill in the following fields:
| Field | Description |
| - | - |
| **Leave Type** | The type of leave to record against the shift |
| **Leave Code** | The service code to charge for the cancelled shift, or select **No Code** if no charge applies |
| **Cancellation Charge %** | The percentage of the service rate to charge for the cancelled shift |
| **Pay Hours** | Set to normal hours if the worker is still to be paid, or **0** if the worker is not being paid for the cancelled shift |
Click **Save**. The shift changes to the cancelled colour on the roster.
## Roster tools
The top of the roster contains several tools for managing the roster as a whole:
| Tool | What it does |
| - | - |
| **Budget** | Shows agreement budget details for the client, so you can see how much funding has been used and what remains |
| **Add Client Leave** | Blocks the client out for a period, preventing new shifts from being created during that time |
| **Deleted Shifts** | Lists any shifts that have been deleted from the roster, with an option to reinstate them |
| **Delete Roster** | Removes the entire roster |
If a client is no longer receiving services, mark the roster as **Completed** rather than deleting it. This preserves the historical record.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up repeating shift patterns and split shifts
Use the select button to filter and find the right worker
Edit one-off shifts, series, and manage leave
View client budget information while rostering
# Creating recurring shifts
Source: https://support.visualcare.com.au/scheduling/creating-recurring-shifts
How to set up repeating shift patterns and split shifts in client rosters
Recurring shifts let you create repeating roster patterns so you don't need to add each shift individually. You can also split a single shift into multiple segments with different service codes.
## Setting up a recurring shift
Double-click on the day you want the series to start on. The shift form opens.
Toggle **Shift Repeats** to on and configure the recurrence pattern:
* Select which days the shift repeats on
* Choose to end the series after a set number of occurrences or by a specific date
The system does not allow you to schedule past the agreement end date.
When creating shift repeats, use the **Create Individual Series** option to separate each day into its own series. This lets you make changes to a specific day's series without affecting the others.
Complete the remaining shift details and click **Done**. The recurring shifts appear on the roster.
## Split shift rostering
A single shift can be split into multiple segments, each with its own service code and timeframe. This is useful when different rates or services apply during different parts of the same shift.
Create a new shift and select **Split Shift** from the service list - it's always at the end of the list.
If this is an overnight shift, tick **Shift occurs over 2 days** and select the following date. Split shifts support recurring patterns too.
Tick **Split 1** to enter details for the first segment:
* Select the service relating to that timeframe
* Use the arrows to set the duration - the start and end time display on the right
Continue with **Split 2** and further splits as needed.
The shift appears as one shift on the vWorker mobile app, but in timesheets it splits into an individual line for each segment.
## Auto split shift
Instead of manually splitting shifts, you can enable automatic splitting so the system handles rate changes for you.
Go to **Settings** (cog icon) → **Settings** → **Rostering** tab and tick the **Auto Split Shift** box.
The system automatically splits any shifts that cross a pay rate change boundary. For example, an overnight shift from Friday to Saturday is split at midnight, applying the correct rate for each day.
Auto split only applies when shifts cross from a weekday to weekend, public holiday, or vice versa.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up a client roster and create individual shifts
Edit one-off shifts, series, and manage leave
Configure rostering settings including auto split shift
# Download worker rosters
Source: https://support.visualcare.com.au/scheduling/download-worker-rosters
How to bulk download worker rosters as PDF or Excel files
You can download rosters for multiple workers at once, either as separate files or combined into a single document. This is useful for printing rosters or sharing them with workers who prefer a paper copy.
## Downloading rosters
Go to **Operations** → **Download Worker Rosters**.
From the current workers list, tick the workers you want to download rosters for. Use the **Select All** tick box to download all worker rosters at once.
Choose whether to download rosters **separately** (one file per worker) or **combined** in one file, then click **Bulk Download Roster**.
In the confirmation dialogue, set the following:
| Field | Description |
| - | - |
| **Start date** | Beginning of the date range |
| **Number of weeks** | How many weeks of roster data to include |
| **File type** | PDF or Excel |
| **Additional details** | Include services and categories as needed |
Click **Confirm** to start the download.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Email roster summaries to clients
View and manage rosters across workers and clients
# Editing shifts
Source: https://support.visualcare.com.au/scheduling/editing-shifts
How to edit existing shifts, manage series, handle leave, and navigate the client roster
Once a roster has been created, edit individual shifts, single items in a series, or entire series. This page also covers leave management, and other roster tools.
## Editing a recurring roster
Right-click on a recurring roster item to see the available options:
| Option | What it does |
| - | - |
| **Edit series from here forward** | Make changes and click **Save** to update all future shifts in the series |
| **Delete from here forward** | Deletes the entire series from that day forward |
| **Delete single shift (create exception)** | Deletes one rostered item in a series and creates an exception |
| **Mark this shift as on leave** | Opens leave options for this shift. Apply this to multiple entries as needed |
| **Mark series on leave from here forward** | Marks the series on leave from that date forward |
## Editing a one-off or single item in a series
Double-click on the item and change the details. A message at the top of the screen confirms you're editing a single roster item.
## Editing an entire series
Left-click on one of the roster items in the series and select **Edit Series**.
A message at the top of the screen confirms "You are editing the entire roster series".
## Managing leave and cancellations
To enter leave or a cancellation for a client, select the **Leave** button at the top left of the roster. Select a date range or multiple individual items at once. Alternatively, right-click on a shift or series to add leave directly.
Select the date range to highlight tick boxes, or select items individually, then click **Next**.
Select the type of leave or cancellation and configure the relevant charge and pay settings, then click **Save**.
Right-click on a shift to see the leave type and to remove leave from the shift or series if needed.
### Leave charge and pay options
The client is not charged but the worker is paid.
* Select **Leave Type** and **Leave Code**
* Reduce **Cancellation Charge %** to 0%
* Leave **Pay Hours** as is (defaults to full shift pay hours, or enter reduced hours as per your policies)
Neither the client nor the worker is paid.
* Set **Leave Code** to **No Code** to make sure the leave is not sent to timesheets for invoicing or payroll
Both the client is charged and the worker is paid.
* Select **Leave Type** and **Leave Code**
* Set **Cancellation Charge %** to 100% (or a reduced percentage as per your arrangement)
* Leave **Pay Hours** as is (defaults to full shift pay hours, or enter reduced hours as per your policies)
The client is charged but the worker is not paid.
* Select **Leave Code** and set **Cancellation Charge %** to 100% (or a reduced percentage)
* Update **Pay Hours** to zero (or enter reduced hours as per your policies)
## Deleting shifts and rosters
### Delete shifts from a date
Select **Delete Roster** then **Delete shifts from date** to remove all shifts from a specific date.
### Recover deleted shifts
Go to **Deleted Shifts** in the top left corner of the roster and select shifts to reinstate.
Deleting a roster removes it permanently. Use the **Complete** function instead if the client has simply ceased services.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up a client roster and create individual shifts
Set up repeating shift patterns and split shifts
View budget details while working in the roster
Identify and resolve shift conflicts
# Email client rosters
Source: https://support.visualcare.com.au/scheduling/email-client-rosters
How to email roster summaries to clients individually or in bulk
You can email rosters to clients individually or in bulk. Rosters are sent as PDF or CSV attachments with a customisable message.
## Emailing client rosters
Go to **Operations** → **Email Client Rosters**.
All current clients appear in the list. Use the column filters to narrow down the list, then tick the clients you want to send rosters to. Use **Select All** to send to all active clients.
Click **Email Roster**.
In the confirmation dialogue, set the following:
| Field | Description |
| - | - |
| **Start date** | Beginning of the date range |
| **Number of weeks** | How many weeks of roster data to include |
| **Services** | Include service details |
| **Worker details** | Include worker information |
| **Format** | PDF or CSV |
| **Message** | Customisable email message to the client |
The system shows how many of the selected clients have an email address on their profile. Only clients with an email address can receive the roster.
If a client doesn't have an email address, add one to their client profile before sending.
Click **Confirm** to send the client rosters.
The default email message can be configured in **Settings** → **Rostering** → **Display** → **Default Email Message**. This message is used whenever you send a client their roster via email.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Bulk download worker rosters as PDF or Excel
Configure default email message and other settings
# Scheduling and service delivery
Source: https://support.visualcare.com.au/scheduling/index
Create rosters, manage shifts, and use advanced rostering tools
# Scheduling and service delivery
Build and manage rosters for your clients and workers. This section covers everything from creating individual shifts through to advanced tools like rapid rostering and template wizards.
Create and manage shifts for individual clients
Group activities, shared locations, and staff training
Rapid rostering, templates, timeline views, and more
Configure general rostering settings
# Internal staff training rostering
Source: https://support.visualcare.com.au/scheduling/internal-staff-training-rostering
How to use location rosters to schedule internal staff training sessions
Location rosters can be used to schedule internal staff training sessions alongside group activities and housing. By creating a location profile for the training venue, you can roster multiple workers to attend the same session.
## Setting up for training sessions
Go to **Maintenance** → **Location Profile** and click **Add Location**. Enter a code and description for the training venue (for example, "TRAIN-HO" for "Head Office Training Room"), then click **Save**.
Double-click the profile to open it and add the venue address and contact information. Click **Save**.
Go to **Operations** → **Location Roster** and click **Create New Location Roster**. Select the training location profile and click **Add**.
## Rostering training sessions
Once the location roster is created, you can schedule training sessions using the multi person appointment feature.
Click **View** next to the training location roster to open the calendar view.
Double-click on the training date to open the **Add multi person appointment** window.
Select the appropriate service, enter the training start and end times, and add any notes about the session.
Toggle the **Type** to **Worker**, click **Select**, and tick the workers attending the training. Click **Use Selected**.
Click **Done** to create individual shift line items for each worker.
If training sessions recur on a regular schedule, toggle **Shift Repeats** on when creating the shift to set up a recurring series.
For full details on creating and managing location roster shifts, see [Location rostering](/scheduling/location-rostering).
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Full guide to location roster setup and management
Create shifts in a client roster
# Location rostering
Source: https://support.visualcare.com.au/scheduling/location-rostering
How to set up and manage location rosters, including creating shifts, editing, ratios, CHSP/DEX rostering, and unallocated shifts
Location rosters let you schedule shifts for any service where multiple clients and workers attend the same location - group activities, day programs, centre-based services, and staff training are all common use cases. This page covers everything from setting up a location profile through to managing shifts, ratios, CHSP/DEX rostering, and unallocated location shifts.
## Setting up a location profile
Before you can create a location roster, a location profile is needed.
From the top menu bar, go to **Maintenance** → **Location Profile**.
Click **Add Location**, enter a **Code** (an abbreviation works well for easy identification) and **Description**, then click **Save**.
Double-click the new profile to open it. Add the address, contact information, and upload an image if needed. Click **Save**.
The location profile includes several tabs for additional information:
| Tab | Purpose |
| - | - |
| **Details** | General details about the location |
| **Clients** | Add specific clients to the location (for example, residents of a house). These profiles appear on the vWorker app for all worker shifts at this location |
| **Contacts** | Add new contacts or select from existing contacts |
| **Rosters** | View and open rosters created for the location |
| **Forms** | Forms completed for the location via vCore or vWorker |
| **Compliance** | Manage compliance items for the location |
| **Notes** | All notes related to the location from vCore or vWorker |
| **Assets** | Record items held at the location (for example, first aid kit, furniture, appliances) |
| **Documents** | Upload and manage files for the location |
| **Rooms** | List rooms and capacity at the location |
## Creating a location roster
From the menu bar, go to **Operations** → **Location Roster**.
Click **Create New Location Roster**, select the location profile from the list, and click **Add**. The roster appears in the list.
For best practice, use only one roster for each location profile.
Click **View** to open the roster and access the calendar view.
### Display options
Location roster shifts have two display options, configurable under **Settings** → **Rostering** → **Display** → **Location Roster**:
Shows a green bar for each day rostered, with the number of clients (**C**) and workers (**W**) for that day.
Shows a list of all clients and workers rostered for that day. Workers appear in pink and clients in blue.
## Creating shifts
From the location roster calendar view, double-click on the day you want the shift to start on to open the **Add multi person appointment** window. Alternatively, right-click for additional options.
### Multi person appointment
Use the multi person option to create a shift for multiple clients and workers at once, with the same time and service.
Select the **Service** from the drop-down, enter the **Shift Start** and **Shift End** time, and toggle **Shift Repeats** for recurring shifts. You can also enter shift notes, which pop up as an alert in the vWorker app.
Toggle the **Type** switch to **Worker** or **Client** and click **Select**. Use filters and tick boxes to choose people, then click **Use Selected**.
If the Client you need to roster is not appearing, check the service selected is added to their agreement.
Workers display with a **W** and clients with a **CL**. You can remove or add names before saving.
Click **Done** to create the shift. This creates an individual shift line item for each person added.
### Single person appointment
Adding a single person shift limits the service list to items on the selected client's agreement.
Click **Select** and choose the client, then select the service from the drop-down.
Enter the start and end time, toggle **Shift Repeats** for recurring shifts, and add any other relevant information.
Click **Done** to roster the shift.
## Editing shifts
### Calendar view
Left-click on a shift in the calendar view to see clients and workers attending that day.
From this window you can:
* Click **View Roster** or **Edit** next to a name to open the roster view
* Click the red **X** to delete a client or worker from the shift
* If the shift is part of a series, confirm whether to delete the single shift or the series from that date forward
### Roster view
Double-click on a shift in the calendar view, or click **View Roster** from the shift detail window. This opens a day view with client shifts in the top section and worker shifts in the bottom section.
In both the client and worker sections, you can:
| Action | Description |
| - | - |
| **Remove** | Remove a client or worker from that shift or series |
| **Show History** | Review the audit history for the shift or series |
| **Add Client** / **Add Worker** | Add people to that day |
| **Edit** | Make changes for one person for that shift (creates an exception if part of a series) |
| **Edit Series** | Edit the whole series |
| **Edit from here forward** | Make changes from the selected date onwards |
| **Leave** | Mark a client or worker on leave, assign leave type, leave code, and apply a cancellation charge |
When adding a client shift from the roster view, confirm that the **Master Service Code** is included in the client's agreement. The Master Service Code is the service selected on the location shift. Check the shift's service, then open the client's agreement and confirm the same service appears in its services list. If it's missing, click **Add Services** on the agreement, tick the service, and click **Add selected services**. See [Creating agreements for rostering](/client-management/creating-agreements-for-rostering).
### Linking workers and clients
Linking a worker to clients in a location roster communicates this information to the worker via the vWorker app and to the client via the vAboutMe app.
In the worker section at the bottom of the roster view, click **Link Clients** next to the applicable worker.
In the pop-up window, click the blue **Link** button next to each client. The button turns pink once linked.
Linked clients appear in the **Client Links** column of the worker section. The client section shows linked workers in the **Worker Links** column, with an **Unlink** button if changes are needed.
Linked shifts cannot be edited or removed from the location roster - the buttons are greyed out. To make changes, remove the link first, edit as needed, then re-link the shifts.
## Ratios
You can set a worker:client ratio when rostering in a location roster. Based on the ratio of workers assigned to clients, the charge rate for each client is automatically calculated. This covers the requirement to divide the price of a support by the number of participants in a group, also referred to as "apportioning" the price of group supports.
The NDIS Price Guide requires the price to be divided by the number of participants:
> If a support item is delivered to a group of participants, then the price limit for each participant is the price limit set out for that service item divided by the number of participants in the group. Providers should make a claim for each participant using the relevant support item.
### Step one: Setting up the client agreement
To make sure the charge rate is calculated correctly based on ratio in the location roster, you first need to set up the client agreement.
In the client agreement, **Agreement Type** must be **NDIS**, and **NDIS Activity Type** must be **Set ratio when rostering**. Then click **Save**.
### Step two: Setting up the ratio in the location roster
Go to **Operations** → **Location Roster**, then select a location roster from the list (click **View**) or click **Create New Location Roster**.
Once the calendar view opens, double-click on the day you want to add location shifts.
In this screen, select the worker:client ratio. For example, in a ratio of **3:6**, 3 indicates the number of workers and 6 indicates the number of clients.
Fill out all the other required fields, like service, start and finish time, workers, clients, and notes. Toggle the **Shift Repeats** button on if you need to set up an ongoing location shift series. Once set up as required, click **Done**.
The formula used for calculating the charge rate for each client is:
**(number of workers × charge rate) ÷ (number of clients)**
For example, if the original charge rate for the selected service is \$65 and the ratio selected while rostering is 3:6, the new charge rate for each client is (3 × 65) ÷ 6 = **\$32.50**.
In the table view, you can see that the charge rate for each client is calculated according to the ratio set up.
### Editing the ratio in table view
You can also edit the ratio if required in the table view of the location roster using the **Edit** column. Choose **Edit Single**, **Edit Series**, or **Edit here forward**, select the new worker:client ratio as required, and click **Done**.
If you edit from here forward, this also gives you the option to edit the ratio for the series moving forward - enter the new ratio and click **Save changes**.
### Adding leave to a location shift
If you need to add leave to a location shift, click **Leave** under the **Actions** menu in the **Edit** column, then fill in the required fields (leave type, leave code, cancellation charge as a percentage of the original charge rate, and a note).
If you select **NO CODE** under **Leave Code**, the shift does not appear in timesheets. If you select a leave code, the system uses it to calculate the new charge rate for the client based on the ratio selected in the location roster. You can see the apportioned charge rate in the location timesheet.
There is also a **Ratio** column available in the location roster table view, location timesheets, and the data export page. You can drag and drop it from the column chooser into your table as required.
If **Use agreement charge rates** is ticked in the client agreement, the system uses these rates to calculate new charge rates based on the ratio. If it is unticked, the system uses the rates set up in services under Maintenance.
In Maintenance Services and agreements, clicking the update rate button updates the charge rate from that date forward in rosters and timesheets as it normally does. It also applies the ratio if the agreement is set to **Set ratio when rostering**.
## Commonwealth Home Support Programme (CHSP) and Data Exchange (DEX) rostering
CHSP funding claims can be added to location roster shifts using DEX case and activity fields.
### DEX case and activity
When creating client shifts using the bulk create function in the calendar view, **DEX Case** and **DEX Activity** drop-down fields don't display any selection upon creating the shift. When editing an individual client shift or series from the roster view, these fields pre-populate based on the agreement setup.
To edit DEX items for a single shift, use the **Edit DEX** button to select the **DEX Case** and **DEX Activity**.
### Meals, transport, and activity fee
Additional charges for **Meal Qty** (number of meals), **Transport Qty** (number of trips), and **Activity Fee** (dollar amount) can be added to a client CHSP service in the location roster. These items are claimable based on the DEX setup in your database.
Add meals and transport when editing an individual client shift or series. To add items in bulk, select **Edit all extras (DEX only)**, add the details, and save.
## Unallocated location shifts
To mark worker shifts as unallocated within a location roster, you need to set up an unallocated worker profile.
Create a worker profile with the name "Unallocated Worker" and set the **Worker Type** to **Unallocated** under **Finance** → **Worker Details**.
Set the same **Area** for both the unallocated worker profile and the location profile.
In **Maintenance** → **Areas**, select the area and choose the unallocated worker as the **Default Unallocated Worker**.
Shifts assigned to the unallocated worker populate in the Unallocated KPI tile and are available for roster invitations. Use the **Select worker for Invitation** button to create an invitation for unallocated shifts.
You can create multiple unallocated worker profiles for different areas if needed.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Send shift invitations to available workers
Find and manage shifts without assigned workers
Create shifts in a client roster
Schedule internal staff training sessions with location rosters
# Rapid rostering for Support Coordination
Source: https://support.visualcare.com.au/scheduling/rapid-rostering
How to set up visualcare to use rapid rostering for Support Coordination services
## Overview
Our Rapid rostering feature has been designed to only include the components required to successfully deliver support coordination services. This module runs on a separate database to align with NDIS privacy requirements.
## Setting up for Support Coordination
To set up a separate database, we need the following transferred from your main vCore database:
* List of clients
* List of office users
* List of workers
* List of note categories (if you use them)
* List of services related to support coordination
* Any other relevant information you'd like transferred across
## Getting started
Support coordinators use standard logins and can be assigned as the first **Case Manager** on the client profile for reporting purposes. This isn't mandatory in order to add support coordination services.
Once the support coordinator has been set as the case manager on the client, create the visualcare agreement. Add the support coordination services the client requires and enter the budget details.
Creating the visual agreement is required before you can use the Rapid Roster feature.
Create a blank roster once the agreement is saved, so you can start rostering when you're ready.
Support coordinators need to be set up as a worker so that timesheets can be created for the support coordination service. Once confirmed, the timesheet can be exported for invoicing.
Support coordinator timesheets don't need to be exported if the coordinator is on a salary.
## Creating a roster
Go to **Operations** > **Rapid Roster**.
Click the green **Add New** button.
Enter the details and any notes required for the shift.
### Field reference
| Field | Description |
| - | - |
| **Client** | Select from the list of clients where the support coordinator has been assigned as the case manager |
| **Roster** | Select the roster ID |
| **Service** | Select the appropriate service from the client's support coordination agreement |
| **Worker** | Select the support coordinator from the list |
| **Category** | Select from your list of note categories. Create note categories under **Maintenance** > **Categories** > **Note categories** |
| **Notes** | Add any notes relating to the service. This note appears in the client profile under the **Notes** tab |
On the right-hand side, the budget graph updates as you add support coordination services, and notes display historically.
Once you've added a service for the client, it appears on the support coordination page. Click **Add New** to add the next service.
All support coordination services are displayed in the client roster.
## Confirming timesheets
Support coordinators' timesheets need to be confirmed manually, as they usually won't be using the mobile app to clock in and out of shifts. Follow your internal process to confirm timesheets so you can export the services for invoicing to clients as normal.
When you add a support coordination service, it shows as a **Rostered** item in the budgeting areas. The service needs to be manually confirmed in timesheets before it can be exported for invoicing.
## Related articles
Understand care management and coordination activity tracking
Set up the client profile that holds case manager and agreement details
# Roster invitations
Source: https://support.visualcare.com.au/scheduling/roster-invitations
How to send and manage roster invitations to workers for unallocated shifts
Roster invitations let you send shift offers to multiple workers at once. Workers receive a notification on the vWorker app and can accept or decline. Depending on your settings, shifts are either assigned automatically to the first responder or held for manual approval.
## Setting up roster invitations
Before sending invitations, configure your settings under **Settings** → **Roster Invitation**.
| Setting | Options |
| - | - |
| **Roster invitation default accepted status** | **Approval Required** - shifts need manual assignment after acceptance. **Assign Directly** - the shift is automatically assigned to the first worker who accepts |
| **Send push notification to successful invitee** | Tick to send a notification and customise the message |
| **Send push notification to unsuccessful invitee** | Tick to send a notification and customise the message |
### Email notifications
Set up the email address that receives notifications when shifts are accepted under **Settings** → **Company Information** → **General**.
## Creating an invitation
First, create a roster with no worker assigned. This allows the shift to flow through to the invitations area.
Go to **Operations** → **Roster Invitations** and click **Create New Invitation**.
Click **Add Roster Item** and use the filters to find the shifts you want to include. Select the items and click **Add**.
Only unallocated shifts appear in this list. Shifts you've already included in a previous invitation are excluded.
Click **Add Workers** and select workers from the list using the tick boxes. Scroll to the bottom and click **Add**.
Select the roster items you want to send and click **Send Invites**.
A window appears where you can customise the notification message. Workers receive a notification on their phone letting them know a new shift is available.
## Managing invitations
### Viewing responses
Go to **Operations** → **Roster Invitations** to view the list of invitations. You can filter by date and see high-level information including roster items included and number of workers invited.
Click **Edit** to open an invitation. The top section shows roster items and who has responded. Click **View** to see individual responses.
Use the column chooser to add or remove columns from the invitation view.
### Manually assigning a shift
If your settings are set to **Approval Required**, click **Assign** to assign the shift to your preferred worker.
### Unassigning or deleting a shift
If you need to remove a shift or reassign it, click the **Action** button and select your option.
## Worker experience on vWorker
The invitation process from the worker's perspective:
1. The worker receives a notification that a shift invitation is available
2. They open **Invitations** in the vWorker app and view the shift details
3. They click **Accept** and can add comments about the shift
4. The invitation shows as **Pending** until assigned by office staff, then changes to **Accepted**
## Location roster invitations
You can send roster invitations for shifts within a location roster. To do this:
Create a worker profile as an "Unallocated" worker type. You might name this worker "Open Shift" or "Unallocated Worker".
Create a worker shift in the location roster and assign it to the unallocated worker. This allows the shift to flow through to the invitations area.
Click **Add New Invitation** and select **Add Roster Items**. The location shifts assigned to the unallocated worker appear in the list. Follow the same steps as above to send invitations.
These shifts display the location name and appear in the unallocated KPI on the home page, highlighted in yellow.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Find and manage shifts without assigned workers
Set up and manage location rosters
Filter and find the right worker for a shift
Configure invitation settings and other rostering options
# Roster template wizard
Source: https://support.visualcare.com.au/scheduling/roster-template-wizard
Roster templates let you define standard shift patterns for a client, then generate multiple shifts at once from those templates. This speeds up rostering for clients with regular, predictable schedules.
## Creating roster templates
Go to the client profile and click the **Roster Template** tab. You can double-click an existing template to edit it, or click **New Roster Item** to create a new one.
In the new roster item window, set up the shift pattern:
| Field | Description |
| :- | :- |
| **Day of week** | Which day the shift falls on |
| **Start time** | Shift start time |
| **Finish time** | Shift finish time |
| **Frequency** | Weekly or monthly |
| **Repeats** | How often the shift repeats |
| **Default support worker** | Assign a worker or leave as unallocated |
| **Category** | Shift category |
| **Agreement** | Linked agreement |
| **Service** | Service code for the shift |
Once saved, the template item appears in the list.
## Generating shifts from templates
In the roster templates list, tick the templates you want to use and click **Create Rosters**.
Enter the start and end dates for the period you want to create shifts for.
A list of all shifts appears in date order. From here you can make specific changes such as:
* Changing the worker for a particular day
* Adjusting times or services
* Deleting a shift if the client is away on a specific date
Click **Next** to review the final list, then confirm to create the shifts in the client roster.
# Roster template wizard
The roster template wizard lets you generate rosters for multiple clients simultaneously using their existing roster templates. This is useful when you need to create shifts in bulk across your client base for an upcoming period.
## What you'll need
* Roster templates already set up on each client's profile (see [Rapid rostering](/scheduling/rapid-rostering))
* Only clients with roster templates appear in the wizard
## Using the roster template wizard
Go to **Operations** → **Roster Template Wizard**.
Select the clients from the list using the tick boxes, then click **Start Wizard**.
Only clients with roster templates already added to their profile appear in this list.
Enter the start and end dates for the rosters to be created. Untick any shifts you want to exclude, then click **Next**.
A worker can be assigned to any shift that doesn't already have one selected. Confirm all details and click **Next**.
The system automatically excludes any shifts rostered to an expired agreement, so you don't need to check for this manually.
A dialogue box displays the number of shifts to be created. Click **Process Rosters** to create the shifts, which then appear on each client's roster.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Create and manage roster templates for individual clients
Create shifts manually in a client roster
View and manage rosters across workers and clients
# Rostering configuration
Source: https://support.visualcare.com.au/scheduling/rostering-configuration
How to configure rostering settings including shift colours, time rules, display options, and more
Rostering settings control how shifts are displayed, how time rules are applied, and how various roster features behave across your organisation. To access these settings, click the cog icon in the top right of the page and go to **Settings** → **Rostering** tab.
## Shift colours
Customise the colour of each shift type displayed on your rosters. Click the drop-down list for each item type to select a colour.
## Time settings
Configure how shift times and durations are handled.
| Setting | Description |
| - | - |
| **Roster default length** | Sets the default shift end time based on start time plus this value (in minutes) |
| **How many minutes late consider as late shift** | After this number of minutes, an unstarted shift appears in the late KPI on the home page |
| **Shift start/end times** | Define the start and end times for afternoon and night shifts. The rate link functionality (in **Maintenance** → **Services**) uses these values to automatically update the service code if a shift doesn't fall in the correct time slot |
| **Lock roster on and before** | Prevents changes to rosters and stops new shifts being added before a specific date. Useful at the end of financial year after all claiming, billing, and payroll is complete |
| **Auto split shift** | When ticked, the system automatically splits overnight shifts at midnight when they cross a pay rate boundary (for example, weekday to weekend or public holiday). Only applies to boundary-crossing shifts |
| **Create separate series per day for roster templates** | When on, the roster wizard creates a separate series for each day. When off, a single series is created for multiple days with the same shift details |
| **Allow shift(s) to be edited when already started by workers** | Allows editing of shifts on client and location rosters after a worker has started the shift. If the shift is completed, edits need to be made at the timesheet level instead |
## Display settings
Configure how rosters look and behave.
| Setting | Description |
| - | - |
| **Compact** | When ticked, each shift appears on one line in the client roster. When unticked, shifts expand into the available space for that day |
| **Conflict type** | **Default** highlights all conflicting shifts including overlapping end/start times. **Ignore back to back shifts** ignores conflicts where shifts are rostered consecutively (for example, one ending at 10:00am and the next starting at 10:00am) |
| **Default email message** | The default message included when you email a client their roster, either from the client roster or from **Operations** → **Email Client Rosters** |
| **Default leave code** | When marking a shift on leave: **No code** applies no leave code (no charge or pay, does not flow to timesheets). **Same as shift** uses the service code assigned to the shift as the default leave code |
| **Location roster** | Choose between **Group client and worker shifts** (green bar showing count of clients and workers) or **List client and worker shifts** (individual list with workers in pink and clients in blue) |
| **Show run button** | Enables or disables the **Run** button in **Operations** → **Timeline Worker (Week/Month)** and **Operations** → **Timeline Location**. The run button lets you set filters before loading data |
| Setting | Description |
| - | - |
| **Client shift and location shift description** | Customise how shifts appear on rosters. Copy valid tags from the list and paste them into the text box to change the description format |
| **Display availability note** | Switch on or off the display of availability notes in **Operations** → **Timeline Worker (Week/Month)** |
| **Pre-load roster data** | Set how much data loads at once when viewing a roster, from one to six months |
## Shift type boundary behaviour
When a shift falls exactly on a time boundary between two shift types (for example, evening and night), Visualcare classifies it based on the shift's **start time**. A shift that starts before the night period begins is classified as an evening shift, even if it runs entirely within night hours.
For example, if night is set to start at 12:01 AM and morning at 6:00 AM, a shift from 12:00 AM to 6:00 AM is classified as evening because it starts one minute before the night period. Adjusting the night start to include 12:00 AM would fix this specific shift but may affect how other shifts are classified.
If your organisation regularly rosters shifts that fall on a boundary (for example, 12:00 AM to 6:00 AM), consider turning off rate links for the affected night service to prevent incorrect automatic rate changes.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up a client roster and create shifts
Identify and resolve shift conflicts
View and manage rosters across workers and clients
Send roster summaries to clients
# SAH rostering and services
Source: https://support.visualcare.com.au/scheduling/sah-rostering
Configure Support at Home services, map them to SAH types, and manage roster-related FAQs
This page covers how to set up and maintain SAH services in Visualcare, including service creation, mapping to SAH types, updating charge rates, and finding agreements with special pricing.
## Setting up SAH services
### Creating and editing services
Create new SAH services or edit existing ones under **Maintenance** → **Services** → **All Services**. From here you can update:
* Charge and pay rates
* Accounting codes
* Service descriptions
To create or update services in bulk, use the **Import CSV** function under **Maintenance** → **Services** → **All Services**. See [Import CSV](/operations/import-csv) for file format details.
### Mapping services to SAH types
For a service to be claimable under SAH, it needs to be linked to a government SAH service type:
1. Open the service under **Maintenance** → **Services**
2. Set the **Service Type** to **Support at Home** - this reveals the **SAH Service** field
3. Select the correct SAH service from the field
To map services in bulk, use an Import CSV file with an SAH service code column. See [Service management](/operations/service-management) for details.
## Updating charge rates
To update charge rates across multiple services:
1. Go to **Maintenance** → **Services** → **Update Charge Rates**
2. Select the effective date
3. Click **Update**
The **All services** option updates every service, including those with manually overridden rates. If you have services with custom pricing, update those individually rather than using the bulk update.
## Finding agreements with special rates
To identify client agreements where charge rates have been manually overridden:
1. Go to **Clients** → **Agreements**
2. Click **Show all items**
3. Drag the **Override Charge Rates** column into the table view
4. Filter the column to **YES**
This gives you a list of agreements where standard rates do not apply, making it easier to review and maintain custom pricing.
## Frequently asked questions
The government does not currently specify separate SAH services by day of the week or time of day. Providers set unit prices that account for time-of-day and weekend rate variations. Capped pricing, which is expected in 2026, is likely to address this.
For more information, see the [Support at Home Pricing Resources](https://www.health.gov.au/resources/collections/support-at-home-pricing-resources) on the Department of Health website.
Set pricing from the government is expected from July 2026. Until then, providers set their own prices. The 10% care management fee and other contribution rules remain as per current government guidance.
Updating a "parent" SAH service charge rate overrides the rate on the linked "child" HCP original service. If you need to maintain different rates for the same service under different scenarios, update them individually rather than via the parent service.
## Running into issues?
See [SAH claiming errors](/troubleshooting/sah-claiming-errors) for common errors and fixes.
## Related articles
Set up repeating shift patterns and split shifts in client rosters
Create and manage services in Visualcare
Bulk update services and other records using CSV imports
Set up and manage Support at Home agreements
# Timeline views
Source: https://support.visualcare.com.au/scheduling/timeline-views
How to use the timeline views to see rosters by worker or client across day, week, and month periods
Visualcare provides several timeline views that give you an overview of rostered shifts across workers and clients. These views are accessible from the **Operations** menu and let you reassign shifts, spot conflicts, and create new shifts.
## Worker day view
The worker day view shows all shifts for a single day, grouped by worker. Access it via **Operations** → **Timeline Worker (Day)**.
### Key features
* **Filter** by worker type, worker roles, and area
* **Change the time scale** to show every hour for a more compact view
* **Change the date** to view different days
* **Conflict highlighting** - conflicting shifts are highlighted yellow. Click once to see the conflict detail
### Reassigning shifts
Double-click on a shift to edit it. Select the worker you want to move the shift to - you can also change the start time and date. The shift moves to the new worker's roster automatically.
New shifts cannot be created from the worker day view. Create shifts from within the client roster instead.
## Client day view
The client day view shows all shifts for a single day, grouped by client. Access it via **Operations** → **Timeline Client (Day)**.
### Key features
* **Filter** by area, division, case manager, and locations
* **Change the time scale** and date as with the worker view
* **Conflict highlighting** - conflicting shifts are highlighted yellow
Double-click on a shift to assign a different worker. New shifts cannot be created from this view.
## Worker week and month view
The worker week and month view provides a broader overview across longer time periods. Access it via **Operations** → **Timeline Worker (Week/Month)**.
The data can be viewed by week, fortnight, or month.
### Navigation
| Control | What it does |
| - | - |
| **Refresh** | Refreshes the screen data |
| **Date selector** | Select the week or month to view |
| **Filters** | Filter by worker type, worker role, areas, divisions, or case manager |
### Compact vs extended view
Shifts are displayed as coloured blocks. You can click and drag shifts to reassign them to a different worker or day.
Lists the individual shifts with their details. Drag-and-drop is not available in this view.
You need to be in compact view to drag and drop shifts between workers.
### Leave and availability
Worker availability is visible in this view. If a worker is unavailable for the entire day, that day is highlighted purple.
### Moving a shift
Click on the shift count (for example, "3 shifts") to view the individual shift details.
Left-click on the shift you want to move and drag it. As you move it up and down the screen, the system highlights which workers are **preferred** and **non-preferred**.
Drop the shift on the target worker and select **Yes** to confirm.
* A yellow alert appears if you try to move a shift to a conflicting time
* A red alert appears if you try to move the shift to a different day than originally created
The hours and dollar totals for the worker update when you drop the shift. This shows the total hours and pay for the selected timeframe.
### Creating a shift
You can add a shift to a worker directly from this view by clicking the grey plus button next to their name.
Select the date, start and end time, client, service, roster, charge rate, and pay rate, then click **Save to Roster**.
To fit the whole month view on your screen, use your browser's zoom function. In Chrome, click the three-dot menu in the top right corner and use the **-** button to zoom out.
If you use the zoom function, reload the page afterwards to make sure everything lines up correctly.
## Daily schedule
The daily schedule (**Operations** → **Daily Schedule**) shows rostered shifts in a list format. It displays the same information as the day view but gives you the ability to sort and filter columns, and export to Excel.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Identify and resolve shift conflicts
Create shifts in a client roster
Edit one-off shifts, series, and manage leave
Find and manage shifts without assigned workers
# Transport runs
Source: https://support.visualcare.com.au/scheduling/transport-runs
How to schedule and manage community bus runs and transport with multiple pick-up and drop-off destinations
Transport runs let you schedule and manage community bus runs or similar trips where there are multiple pick-up and drop-off destinations for multiple clients. Each run can include a driver, vehicle, and a series of stops ("drops") with clients assigned to each.
## Creating a new transport run
Go to **Operations** → **Transport Runs**.
Click **Create New Roster**. Enter a relevant name in the **Reference** field, select a date for the run, and click **Add Run**.
Once the run is created, add additional information at the top of the page:
| Field | Description |
| - | - |
| **Date of run** | Update the date if needed |
| **Reference** | Update the name of the run |
| **Transport Category** | Select a category (set up under **Maintenance** → **Categories** → **Transport Categories**) |
| **Start Time** | Start time of the run |
| **Finish Time** | Finish time of the run |
| **Driver** | Select a worker as the driver |
| **Vehicle** | Select a vehicle (set up under **Maintenance** → **Vehicles**) |
Click **Save** to save the changes.
To duplicate an existing transport run, click the **Clone** button at the top of the page. This creates a copy with the same settings and stops.
## Adding drops
Drops are the individual stops within a transport run. Each drop can have multiple clients.
Click **Add Drop** and add relevant notes for the driver.
Click **Add Client to Drop**, fill in the relevant fields, and click **Add Client**.
There are three types of addresses you can use for pick-up or drop-off:
| Address type | Description |
| - | - |
| **Home** | The client's main address from their profile |
| **Client** | An address specific to that client, set up under the client profile's **Addresses** tab |
| **System** | An address not linked to a specific client, set up under **Maintenance** → **Addresses** |
## Managing clients on a drop
Once clients are added to a drop, you can manage them using the options available:
* **Edit** - update client details for this drop, make changes and click **Save**
* **Add On Hold** - if a client is unavailable, mark them as on hold by selecting a **Leave Type** and adding notes
* **Delete** - remove the client from the drop entirely
## Adding workers to the run
Multiple workers can be added to a transport run alongside the driver.
Click **Add Worker**, tick the workers to be added, and click **Add Selected Workers**.
## Transport run report
Once all drops have been created and clients are added in the correct order, click **Run Report** in the top right corner to generate the transport run report.
If a customised Word tag template has been added to your database, use the **Export to Word** feature to export the report in your customised format.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up vehicles and assign them to shifts
Roster group activities using location rosters
View client and worker locations on a map
# Unallocated shifts
Source: https://support.visualcare.com.au/scheduling/unallocated-shifts
How to find and manage shifts that don't have a worker assigned
The unallocated shifts feature alerts you to any shifts in your rosters that don't have a worker assigned. This helps you identify gaps in coverage and take action before shifts are missed.
## Viewing unallocated shifts
The unallocated shifts KPI on the home page dashboard shows the number of unallocated shifts across your rosters for the next 30 days.
You can review unallocated shifts in two ways:
1. **Quick access window** - view the list directly from the dashboard
2. **Click the KPI tile** - opens a detailed view where you can filter by date, time, roster ID, and client
### Filtering
To filter the unallocated shifts list, click in the date field and enter the date to see unallocated shifts for that specific day.
## Resolving unallocated shifts
Once you've identified unallocated shifts, you can:
* Open the client roster and assign a worker directly
* Use [Roster invitations](/scheduling/roster-invitations) to send shift invitations to available workers
* Use the [Worker select button](/scheduling/worker-select-button) when editing the shift to find a suitable worker
For location roster shifts, set up an unallocated worker profile so location shifts also appear in the unallocated KPI. See [Location rostering](/scheduling/location-rostering) for setup instructions.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Send shift invitations to available workers
Identify and resolve shift conflicts
Filter and find the right worker for a shift
View rosters across workers and spot gaps
# Vehicle rostering
Source: https://support.visualcare.com.au/scheduling/vehicle-rostering
How to set up vehicles and assign them to client roster shifts
The vehicle rostering feature lets you assign vehicles from your fleet to client roster shifts. Vehicle assignments flow through to the vWorker app so workers know which vehicle to use.
## Setting up vehicles
Before you can roster vehicles, they need to be added to the vehicle list.
From the menu bar, go to **Maintenance** → **Vehicles**. This shows a list of existing vehicles with their details.
Click **Add Vehicle** in the top left of the screen.
In the pop-up window, enter the vehicle make, model, year, capacity (number of seats), and registration number. Click **Create**.
Double-click the vehicle in the list to open its profile. From here you can:
* Update vehicle information and **Save**
* Add **Documents** related to the vehicle
* Complete **Forms** for the vehicle
* Add or read **Notes** about the vehicle
* **Delete** the vehicle profile if needed
If the vehicle is a company car and kilometres associated with it should be charged to the client but not paid to the worker, use the tick box on the right side of the vehicle profile page.
When ticked, this applies to both the **KM** and **KM Between** fields, meaning kilometres added for shifts with this vehicle rostered are not included in the worker pay export.
## Assigning vehicles to shifts
From the menu bar, go to **Operations** → **Vehicle Rostering**. This shows a list of shifts for today.
In the vehicle drop-down menu on the right side of the page, select the vehicle to assign to the shift.
If a vehicle name appears in grey italics, that vehicle is already rostered at that time and cannot be selected.
The rostered vehicle is visible to the worker within shift information on the vWorker app.
Vehicle rostering is currently not available for location roster shifts.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Schedule and manage community bus runs
Create shifts in a client roster
View client and worker locations on a map
# Worker select button
Source: https://support.visualcare.com.au/scheduling/worker-select-button
How to use the worker select button to filter and find the right worker for a shift
When creating or editing a shift, you can either choose a worker from the drop-down list or use the **Select** button to open a filtered search window. The select button helps you find the most suitable worker by filtering for compliance, availability, preferences, and distance.
## Using the select button
In the shift form, click the **Select** button next to the **Support Worker** field.
This opens a new window that automatically filters for workers who are:
* Compliant with relevant requirements
* Not already rostered on another shift at that time
* Available on the day or at the time of the shift
* Preferred by the client (highlighted), while excluding non-preferred workers
## Filtering and searching
The select window provides several ways to find the right worker:
| Feature | Description |
| - | - |
| **Skills filter** | Search for workers with specific skills or qualifications |
| **Column filters** | Use the column headers to sort and filter by any visible field |
| **Distance (KM)** | View the distance in kilometres from the client's address to the worker's address |
| **Previous shift distance** | See the distance from the worker's previous shift location |
| **Previous workers** | View a list of workers who have previously been assigned to this client at the bottom of the window |
The drop-down list in the shift form shows all workers and is not filtered for compliance or availability. Use the **Select** button whenever you need to verify a worker is suitable for the shift.
## Multiple workers
If you need to assign more than one worker to a shift, tick **Use additional workers** in the shift form. This lets you assign up to four workers to one client for the same shift.
## Running into issues?
See [Scheduling troubleshooting](/troubleshooting/rostering-issues) for common errors and fixes.
## Related articles
Set up a client roster and create individual shifts
Identify and resolve shift conflicts
Send shift invitations to available workers
# All timesheets
Source: https://support.visualcare.com.au/timesheets/all-timesheets
View every worker's timesheet entries in a single list
The **All Timesheets** page shows every worker's timesheet entries in one consolidated view. This is useful when you need to review timesheets across the organisation without switching between individual workers.
## Timesheet views
Visualcare provides three different ways to view timesheets:
| View | What it shows |
| - | - |
| **Timesheets** (view by worker) | Timesheets grouped by worker, with status indicators for each |
| **Timesheets Locations** | Timesheets from the location roster only. Client timesheets need to be manually confirmed |
| **All Timesheets** | All workers' timesheets in a single flat list |
To access the all timesheets view, go to **Timesheets** → **All Timesheets**.
The date range defaults to the current payroll period. You can select a different payroll period from the drop-down to view timesheets for a different date range.
Use the column chooser to bring out the columns and data you need to see. This lets you customise the view to show only the fields relevant to your workflow.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
View timesheets grouped by individual worker with status indicators
View timesheets from the location roster
Edit confirmed timesheet entries including times, rates and variations
Configure payroll cycles and export settings
# Editing timesheets
Source: https://support.visualcare.com.au/timesheets/editing-timesheets
Step-by-step guide to editing confirmed timesheet entries including times, rates and variations
Once a timesheet has been confirmed, you can edit the details to adjust times, rates, and variations. This is useful when shift details differ from what was originally rostered.
## What you can edit
After a timesheet has been confirmed, you can change the following fields:
* Service
* Start and end time
* Charge rate and pay rate
* Variations (time added or deducted)
## Instructions
Go to **Timesheets** → **Timesheets**, find the worker, and click **Edit** to open their timesheet view.
In the bottom section (confirmed timesheets), update the fields you need to change. You can adjust the service, start time, end time, charge rate, or pay rate directly in the grid.
If a worker toggled on "were there any changes to the shift" at the end of their shift in vWorker, the note is highlighted in yellow and flows through to the variation comment. To process a variation:
1. The **Variation** tick box is automatically ticked when a change was highlighted
2. Add the quantity in minutes (for example, 30 for 30 minutes; this value is positive to add time, or negative to deduct time)
3. The **Var comment** flows through from the worker's app
4. Tick the box to approve the variation
This adds or deducts time from the shift. The rostered hours stay the same, but the total hours reflect the variation.
You can also change the start and end times directly in the time columns. However, changing times this way updates both the hours and total hours, and does not record the difference between rostered hours and total hours.
If a worker sent through issue notes by toggling in the vWorker app that there were shift changes, click the **View** button to review. When there are changes, the **View notes** button is highlighted orange.
The notes include the completion note and any travel notes.
Review the **APP** columns to see when the worker pressed start and finish in the vWorker app. You can also open the link to view a pinpoint on Google Maps showing where they were when they pressed start and finish.
Click **Save Changes** to save any changes you've made.
Use the column chooser to bring out the columns and data you need to see. Different columns are available depending on your workflow.
## Locking timesheets
Locking prevents further changes to confirmed timesheets for invoicing, payroll, or National Disability Insurance Scheme (NDIS) purposes.
Go to **Timesheets** → **Data Export**.
Select the relevant timesheet records from the list.
Click **Lock Transactions** and choose from **Lock Invoicing**, **Lock Payroll**, or **Lock NDIS**.
If the **Lock Transactions** button isn't visible, it's a user group permission issue. Ask your admin to enable it under **User Group Security** → **Lock Transactions**.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
View timesheets grouped by worker with confirmation status
Manually confirm timesheets when workers haven't used the vWorker app
Review and approve timesheet variations
View and manage travel time and kilometre records
# Timesheets and service confirmation
Source: https://support.visualcare.com.au/timesheets/index
Confirm timesheets, approve variations, and manage the vWorker app
# Timesheets and service confirmation
Manage timesheet confirmation, travel time, variations, and the vWorker mobile app.
View timesheets by worker, location, or across all shifts
Confirm, edit, and approve timesheets
Help workers clock in, out, and submit notes via the app
Configure shift timing, late shift thresholds, and roster behaviours
# Location shifts
Source: https://support.visualcare.com.au/timesheets/location-shifts
View timesheets generated from the location roster, which follow a separate confirmation process from client roster timesheets
The **Timesheets Locations** view shows timesheets generated from the location roster. This is separate from client roster timesheets because location roster shifts (for example, group homes or day programs) follow a different confirmation process.
## Accessing location timesheets
Go to **Timesheets** → **Timesheets Locations** to view location roster timesheets.
## How location timesheets work
Location roster timesheets differ from standard client roster timesheets in a few key ways:
* They are generated from shifts on the location roster rather than the client roster
* Client timesheets linked to location shifts need to be manually confirmed
* Workers clock in and out of location shifts through the vWorker app in the same way as client shifts
Client timesheets from the location roster need to be manually confirmed even when the worker has completed the shift through the vWorker app. The worker's timesheet is confirmed, but the individual client timesheets still need to be reviewed and confirmed separately.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
View all timesheets in a single consolidated list
Manually confirm timesheets when they aren't auto-confirmed
How workers view and manage location roster shifts in the app
View timesheets grouped by worker with confirmation status
# Manual confirmation
Source: https://support.visualcare.com.au/timesheets/manual-confirmation
Step-by-step guide to manually confirming timesheets when workers haven't used the vWorker app
When a worker hasn't started and completed a shift through the vWorker app, you need to manually confirm their timesheet. This moves roster items from the unconfirmed section into confirmed timesheets, ready for payroll processing.
## Instructions
Go to **Timesheets** → **Timesheets**, find the worker, and click **Edit** to open their timesheet view.
The screen is split into two sections:
* **Top section** - roster items that haven't been confirmed yet
* **Bottom section** - confirmed timesheet items
In the top section, tick the checkbox next to each roster item you want to confirm. You can select one or multiple items at once.
Click **Send to timesheets**. The selected items move from the top section to the bottom section as confirmed timesheet entries.
Review the newly confirmed entries in the bottom section. You can edit the service, start and end times, charge rate, and pay rate if needed. Click **Save Changes** to finalise.
You only need to manually confirm timesheets when a worker has not started and completed a shift in the vWorker app. Shifts completed through the app are automatically confirmed.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
View timesheets grouped by worker with confirmation status
Edit confirmed timesheet entries including times, rates and variations
How workers start and complete shifts through the vWorker app
Set up worker access to the vWorker app
# Payroll settings
Source: https://support.visualcare.com.au/timesheets/payroll-settings
Configure payroll cycles, kilometre rates, NDIS and CHSP export settings, and charge codes
The finance settings page controls how timesheets connect to payroll, invoicing and scheme exports. These settings affect payroll cycles, kilometre calculations, NDIS and CHSP exports, pay levels and charge codes.
## Accessing payroll settings
Go to **Settings** → **Finance** to view and update finance-related settings.
## Timesheets
| Setting | Description |
| - | - |
| **Payroll Start Date** | The earliest date that payroll exports cover. This is generally the start date of your first payroll cycle |
| **Payroll Cycle Days** | Controls the preset drop-downs in pages such as data export and all timesheets |
| **Default cancellation charge** | The default percentage amount applied when marking a client shift as on leave |
| **Load data on Data Export page by default** | Set to **No** to let you update the date range before data loads, which helps with large datasets |
## Kilometre
| Setting | Description |
| - | - |
| **Max minutes between shifts** | Shifts with a gap exceeding this threshold are excluded when using **Calc KM** on the timesheets page |
| **Max KM warning** | Kilometre values above this threshold are flagged when using **Calc KM** |
| **Charge rate** | The amount charged per kilometre when exporting invoices to Xero |
| **Charge code** | The inventory item code used when exporting kilometre charges to Xero |
| **Pay codes** | Separate pay codes for KM, KM (between shifts) and travel time, used when exporting timesheets for payroll |
| **NDIS KM fields** | Fields for the NDIS claim export file |
## NDIS
Select the data to use for the **ClaimReference** column in the NDIS claim export file.
## CHSP
| Setting | Description |
| - | - |
| **Insurance Per Hour** | The insurance cost per hour for CHSP exports |
| **Payroll code** | The deduction code used when exporting to MYOB supplier invoice, Xero Purchase Order and Xero Supplier Invoice |
| **Add Percentage to Total Hours** | Adds extra minutes to the shift when exporting to DEX |
## Pay level
Update the labels of your pay levels here. These labels are reflected on the **Services** page.
## Charge and expense
| Setting | Description |
| - | - |
| **Extra Charge to Client Code** | Used when a timesheet has an extra charge to client. This is the first available code when marking an expense as **Is Charge**. It needs to match an inventory item in Xero for export |
| **Expense Reimbursement Code** | Used when a timesheet has an EC Reimbursement amount. This is the first available code when marking an expense as **Is Reimbursement**. It needs to match a pay item in Xero for export |
| **Extra Charge Meal Code** | Used for invoice export when the shift has a meal cost associated |
| **Extra Charge Transport Code** | Used for invoice export when the shift has transport costs associated |
| **First Aid Allowance Code** | Code used to export the first aid allowance on the data export page |
| **First Aid Allowance Rate** | Rate applied when exporting the first aid allowance |
| **Supplement Code (Xero Purchase Order)** | Code for supplement items on Xero Purchase Order exports |
| **Supplement Rate (Xero Purchase Order)** | Rate for supplement items, with the same quantity as the shift |
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Overview of how Visualcare captures transport and between-visit kilometres
Configure shift timing, late shift thresholds, and roster behaviours
View all timesheets across the organisation
# Travel time and kilometres
Source: https://support.visualcare.com.au/timesheets/travel-time-and-kilometres
How Visualcare captures and manages transport kilometres and between-visit kilometres
Visualcare captures kilometres in two ways: transport kilometres charged to clients, and between-visit kilometres paid to workers. Understanding the difference is important for accurate billing and payroll.
## Types of kilometres
### Transport kilometres
Transport kilometres are recorded when a worker transports a client as part of a shift. These are:
* Recorded by the worker in the vWorker app, or manually entered into the timesheet area
* Charged back to the client
* Reimbursed to the worker
* Displayed in the **KM** column in timesheets
You can override the kilometres entered by the worker from the vWorker app if needed.
Workers enter transport kilometres in vWorker only when they tap **Complete Shift**. There is no way for a worker to open a completed shift in the app and add or change the KM value afterwards. If a worker forgets to enter KM, or enters the wrong figure, an office user needs to correct it from timesheets.
### Correcting or backfilling transport kilometres
Use this when a worker forgot to enter KM on a prior shift, entered the wrong figure, or the shift has already been confirmed.
1. Go to **Timesheets** → **Timesheets**, find the worker, and click **Edit** to open their timesheet view.
2. Locate the shift and update the **KM** column. Use the column chooser to add the column if it's not visible.
3. Click **Save Changes**.
For location shifts, correct the value under **Timesheets** → **Timesheets - Location** instead. See [Kilometres on location shifts](/apps/vworker-clocking-in-and-out#kilometres-on-location-shifts).
### Between-visit kilometres
Between-visit kilometres cover the distance a worker travels from one client to the next. These are:
* Automatically calculated based on client addresses and time between shifts (configured in settings)
* Paid to the worker
* Not charged to the client by default (controlled by the **KM Between Charge / Pay** setting)
* Displayed in the **KM No Charge** column in timesheets
## Calculating between-visit kilometres
To calculate between-visit kilometres:
1. Open the worker's timesheets by going to **Timesheets** → **Timesheets** and clicking **Edit** next to the worker
2. Find the **KM No Charge** column using the column chooser if it's not visible
3. Click the **Calc KM** button at the bottom of the screen
The system calculates the distance between shifts and populates the **KM No Charge** column.
You can override the calculated kilometres at any time. After making changes, tick the box in the **Lock KM No Charge** column to prevent the values reverting when you click **Calc KM** again in the future.
Click **Save Changes** after calculating or making changes.
## Configuring travel time for export
Before travel time data exports to your accounting software, configure the settings in **Settings** → **Finance** → **Kilometre** section.
| Setting | What it does |
| - | - |
| **Max minutes between shifts** | Travel exceeding this limit on a single shift is skipped during calculation |
| **Pay Code (Travel Time)** | The pay code from your accounting software used when exporting travel time |
| **Travel Time Charge / Pay** | Controls whether the client is charged and/or the worker is paid (see options below) |
| **Export Travel Time** | Tick this checkbox to include travel time in exports |
The **Travel Time Charge / Pay** options are:
* **Charge and Pay** - the client is charged and the worker is paid
* **No Charge but Pay** - the worker is paid but the client is not charged
* **Charge but No Pay** - the client is charged but the worker is not paid
* **No Charge No Pay** - neither charged nor paid
Run **Calc KM** before each pay run or invoicing run. Travel time is only included in an export after Calc KM has been run and saved for that period.
## Configuring between-visit kilometres for export
Between-visit kilometre export also requires configuration in **Settings** → **Finance** → **Kilometre** section.
| Setting | What it does |
| - | - |
| **Max KM Warning** | Distances exceeding this threshold trigger a warning for review |
| **Pay Code (KM Between, No Charge)** | The pay code from your accounting software used when exporting between-visit kilometres |
| **KM Between Charge / Pay** | Controls whether the client is charged and/or the worker is paid (same options as travel time) |
Calc KM skips the first shift of each day for each worker, since there's no previous shift to measure distance from. Only shifts where a worker sees two or more clients on the same day generate between-visit kilometres.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Confirm travel time entries for payroll processing
Configure shift timing, late shift thresholds, and roster behaviours
Configure kilometre charge rates, pay codes and export settings
Edit confirmed timesheet entries including times and rates
# Travel time confirmation
Source: https://support.visualcare.com.au/timesheets/travel-time-confirmation
Step-by-step guide to confirming travel time and kilometre entries for payroll
After calculating between-visit kilometres and reviewing transport kilometres, you need to confirm the entries so they flow through to payroll and invoicing. This guide covers the steps to review and finalise travel-related timesheet data.
## Setting up travel time export
Before travel time flows through to payroll and invoicing exports, configure the export settings in vCore:
1. Go to **Settings** → **Finance** → **Kilometre**
2. Set the **Max minutes between shifts** - travel time between shifts that exceeds this threshold is excluded from the calculation
3. Select a **Pay Code (Travel Time)** from your accounting software to map the travel time entries to
4. Set the **Travel Time Charge/Pay** option:
| Option | Effect |
| - | - |
| Charge and Pay | Travel time is charged to the client and paid to the worker |
| Charge but No Pay | Travel time is charged to the client but not paid to the worker |
| No Charge but Pay | Travel time is paid to the worker but not charged to the client |
| No Charge No Pay | Travel time is not charged or paid |
5. Tick the **Export Travel Time** checkbox
6. Click **Save Changes**
The first shift of the day is always excluded from the travel time calculation. Travel time exceeding the **Max minutes between shifts** threshold is also excluded.
## Instructions
Go to **Timesheets** → **Timesheets**, find the worker, and click **Edit** to open their timesheet view.
Click the **Calc KM** button at the bottom of the screen. This populates the **KM No Charge** column with automatically calculated distances based on client addresses and the time between shifts.
The calculation uses settings configured in **Settings** → **Finance** → **Kilometre**. The **Max minutes between shifts** threshold controls which shifts are included in the calculation. Distances above the **Max KM warning** threshold are flagged with a warning for review.
Check the **KM** column for any transport kilometres recorded by workers in the vWorker app. Override any incorrect values if needed.
If you've overridden any between-visit kilometre values, tick the **Lock KM No Charge** column for those entries. This prevents the values from reverting when you click **Calc KM** again.
Click **Save Changes** to confirm all travel time and kilometre entries.
Always save after calculating or making changes to kilometre values. Unsaved changes are lost when you navigate away from the page.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Overview of how Visualcare captures transport and between-visit kilometres
Configure shift timing, late shift thresholds, and roster behaviours
Configure kilometre charge rates and pay codes for export
# Roster time settings
Source: https://support.visualcare.com.au/timesheets/travel-time-default-settings
Configure default settings for shift timing, late shift thresholds, and related roster behaviours
Travel time settings control how Visualcare handles shift timing, late shift thresholds and related roster behaviours that affect timesheets. These settings are configured in the rostering section of settings.
## Accessing travel time settings
Go to **Settings** → **Rostering** to view and update settings related to shift timing and travel.
## Time settings
The time settings section controls how shift times behave in rosters and flow through to timesheets.
| Setting | Description |
| - | - |
| **Roster Default Length** | Sets the default shift end time based on start time plus this value (in minutes) |
| **How many minutes late consider as late shift** | Controls the late KPI on the home page. Once this timeframe passes without the shift being started, the shift counts as late |
| **Shift Start / End Times** | Defines the boundaries for afternoon and night shifts. These values are also used by the rate link functionality in **Maintenance** → **Services** to automatically update the service applied to a rostered shift |
| **Lock Roster on and Before** | Prevents changes to rosters or new shifts before a specific date. Useful at the end of financial year after all claiming, billing and payroll is complete |
## Auto split shift
Ticking the **Auto Split Shift** box makes the system automatically split overnight shifts at midnight and apply the correct service code for the following day.
This only applies for shifts rostered overnight from a weekday to a weekend or public holiday (and vice versa). For example, a Friday night to Saturday shift, or a Saturday to Sunday shift.
## Allow editing started shifts
The **Allow shift(s) to be edited when it has already been started by workers** setting controls whether you can change a shift on a client or location roster once a worker has started it.
If the shift has been completed by the worker, you need to edit the details at the timesheet level rather than on the roster.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Overview of how Visualcare captures transport and between-visit kilometres
Configure payroll cycles, kilometre rates and export codes
Confirm travel time and kilometre entries for payroll processing
# Variation approval
Source: https://support.visualcare.com.au/timesheets/variation-approval
How to review and approve individual timesheet variations when actual shift times differ from the roster
A variation is a change a worker submits when their actual shift differs from the rostered time. For example, a worker stays 30 minutes late or starts early. When a worker flags a change through the vWorker app, the variation appears in the timesheet view for you to review before exporting.
## Where variations appear
In **Timesheets** → **Timesheets**, look for shifts with data in these columns:
| Column | What it shows |
| - | - |
| **Variation** | A ticked checkbox indicating the worker submitted a change |
| **Variation Quantity** | The time difference in hours (for example, 0.5 for 30 extra minutes) |
| **Comment** | The worker's explanation of what changed |
Use the column chooser to make sure the **Variation**, **Variation Quantity**, and **Comment** columns are visible. These aren't always displayed by default.
## Two ways to handle a variation
When you see a variation on a timesheet, you have two options.
### Option 1: Adjust the start or finish time (recommended)
This is the better approach because the invoice shows the correct shift times alongside the correct total hours.
Read the worker's comment to understand what changed. For example, "Client needed extra support, finished at 11:30 instead of 11:00."
Adjust the **Finish Time** (or **Start Time**) to reflect what actually happened.
Click **Save Changes**. Add an **Office Note** (for example, your initials and a short comment) to flag that you've reviewed this variation.
### Option 2: Approve the variation directly
This adds the variation quantity to the total hours without changing the start or finish time.
Check the **Variation Quantity** and **Comment** columns.
Tick the **Approve Variation** checkbox on that shift.
When you approve a variation without adjusting times, the invoice shows the original rostered times but charges for the updated total hours. For example, a shift shows 9:00 to 11:00 but the participant is charged for 2.5 hours. This can cause confusion for plan managers reviewing invoices.
## Using office notes to track reviews
Add an **Office Note** to every variation you review. This prevents other staff from re-reviewing the same shift and helps your team see at a glance which variations have been handled.
Reviewing variations daily takes five to 10 minutes. Leaving them until pay run day means reviewing an entire pay period at once, which takes much longer.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Approve multiple timesheet variations at once
Edit confirmed timesheet entries including times, rates and variations
Manually confirm timesheets when workers haven't used the vWorker app
# Bulk variation approval
Source: https://support.visualcare.com.au/timesheets/variation-approval-bulk
How to approve or reject multiple timesheet variations at once
When you have multiple variations to review across a pay period, the bulk approval workflow in **Timesheets** → **All Timesheets** lets you handle them together rather than one at a time.
## Filtering to variations only
Go to **Timesheets** → **All Timesheets** and set the date range to the pay period you're reviewing.
Use the column chooser to display the **Variation**, **Variation Quantity**, and **Comment** columns if they aren't already visible.
Click the filter on the **Variation** column and select only ticked entries. This narrows the list to shifts where workers flagged a change.
## Approving variations in bulk
Work through the filtered list. For each shift, check the **Variation Quantity** and **Comment** to understand what changed.
For each variation, choose one of these approaches:
* **Adjust the time** (recommended): Update the **Start Time** or **Finish Time** to reflect what actually happened, then click **Save Changes**. This keeps invoice times accurate
* **Approve the variation**: Tick the **Approve Variation** checkbox to add the variation quantity to total hours without changing the shift times
Add an **Office Note** to each reviewed shift so other staff know it's been handled.
Click **Save** to apply all your changes at once.
Approving a variation without adjusting times means the invoice shows the original rostered times but charges for the updated total hours. For shifts where the time difference matters on the invoice, adjust the start or finish time directly instead.
Reviewing variations daily takes five to 10 minutes. If you leave them until pay run day, you'll need to review the entire period at once. Daily reviews are faster and reduce the risk of missing something.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Review and approve individual timesheet variations
Edit confirmed timesheet entries including times, rates and variations
Export timesheet data to your payroll software
# View by worker
Source: https://support.visualcare.com.au/timesheets/view-by-worker
View timesheets grouped by worker with confirmation status indicators
The **Timesheets** page groups timesheet entries by worker, giving you a clear overview of each worker's confirmation status for the selected payroll period.
## Accessing timesheets by worker
Go to **Timesheets** → **Timesheets** to open the worker-grouped view. The date range defaults to the current payroll period, but you can select a different period from the drop-down.
## Understanding the status indicators
Each worker row displays an icon showing their overall timesheet status:
| Icon | Meaning |
| - | - |
| Green tick | All timesheets have been confirmed |
| Orange cross | There are unconfirmed timesheets |
## Viewing a worker's timesheets
Click **Edit** next to a worker to open their individual timesheet view. This screen is split into two sections:
* **Top section** - roster items that haven't been confirmed yet
* **Bottom section** - confirmed timesheet items
A timesheet is confirmed either by the worker completing their shift through the vWorker app, or by manually confirming it in this screen.
Use the column chooser to bring out the columns and data you need to see for your review workflow.
## Running into issues?
See [Timesheet troubleshooting](/troubleshooting/timesheet-issues) for common errors and fixes.
## Related articles
Manually confirm timesheets when workers haven't used the vWorker app
Edit confirmed timesheet entries including times, rates and variations
View all timesheets in a single consolidated list
How workers start and complete shifts through the vWorker app
# Accessing Visualcare from overseas
Source: https://support.visualcare.com.au/troubleshooting/access-denied
Why Visualcare can't be reached from outside Australia, and how to arrange access before you travel
For security reasons, Visualcare can only be accessed from within Australia. If you're travelling or working overseas, the connection is blocked before the login screen loads.
## How to get back in
Access from outside Australia requires a VPN connected to an Australian server. If you don't have a VPN, ask your IT team or administrator for your organisation's approved VPN.
A VPN that's installed but not connected - or connected to a server outside Australia - is still blocked. Check that:
* The VPN is switched on and shows as connected
* The selected server location is **Australia**
* You've reloaded the page (or opened a new tab) after connecting
If you're having trouble with the VPN connection itself, contact your organisation's internal IT team - Visualcare doesn't maintain or support your organisation's VPN.
If you're connected to an Australian VPN server and still can't get in, lodge a support ticket - see [Getting support](/getting-started/getting-support) for how to raise one. Include your location and the network you're connecting from so we can investigate quickly.
Your organisation's VPN, connected to an Australian server, is the only supported way to access Visualcare from overseas. If you're travelling and will need access, arrange it with your IT team - with your employer's awareness and consent - before you leave.
# Agreement and service troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/agreement-and-service-issues
Common issues when managing client agreements and services in Visualcare
This page covers common problems when working with client agreements and services in Visualcare. Work through the relevant fix below, and if you're still stuck, reach out to the helpdesk.
***
### Issue: Unable to remove a service from an agreement
**Symptoms:** When you try to remove a service from a client agreement, Visualcare won't let you delete it.
**Cause:** The service is still in use. This happens for one of two reasons: the service is linked to active roster items, or it's referenced by submitted timesheets. Both need to be resolved before the service can be removed.
#### Fix - linked roster items
1. Go to **Timesheets** → **All Timesheets** and adjust the date range to cover the agreement's dates
2. Go to the **Rosters** tab and open the **Column Chooser**
3. Add the **Agreement Code** column, then filter by the relevant agreement code
4. Locate the roster item that uses the service code, and note down its date and time
5. Go to the client's **Roster**, find that roster item, and open it
6. Change or remove the service on the roster item, then save
7. Return to the agreement and remove the service
#### Fix - submitted timesheets
1. Go to **Timesheets** → **All Timesheets** and adjust the date range to cover the agreement's dates
2. Open the **Column Chooser**, add the **Agreement Code** column, and filter by the relevant agreement code
3. Locate the timesheets that reference the service code, and note the date and time of each
4. Select those timesheets and click **Delete Timesheets**
Deleting timesheets also permanently removes any linked Travel or Shift Notes. Make sure you've recorded any information you need before deleting.
5. Go to the client's **Roster**, find the relevant roster item, and edit it to remove or change the service
6. Return to the agreement and remove the service
7. Once the service is removed, manually resend the roster item to timesheets
As an alternative, you can clone the agreement without the unwanted service and transfer the roster items across to it - see [Cloning, transferring, and closing agreements](/client-management/creating-agreements-for-rostering#cloning-transferring-and-closing-agreements).
***
### Issue: Wrong payroll code appearing on services
**Symptoms:** A service is generating timesheets with an incorrect payroll code, or the payroll code doesn't match what's configured on the service.
**Cause:** The most common reason is that the worker has an override configured in their **Override Service Pay Level** settings. Worker-level overrides take precedence over service-level payroll codes, so even if the service is set up correctly, the override changes the output.
**Fix:**
1. Open the worker's **Profile**
2. Go to the **Engagement Details** tab
3. Scroll down to the **Override Service Pay Level (XERO / MYOB / Reckon API / Attache)** section
4. Check whether any overrides have been added for the relevant service
5. Update or remove the override as needed, then save
***
### Issue: Update Charge Rates didn't work for a client
**Symptoms:** After running the **Update Charge Rates** function, charge rates for certain clients haven't updated.
**Cause:** The **Override Charge Rates** setting is enabled on the client's agreement, which prevents the global update from affecting that client.
**Fix:**
1. Go to **Clients** → **Agreements**
2. Locate the relevant agreement and edit it
3. Untick the **Override Charge Rates** checkbox
4. Click **Save**
5. Run **Update Charge Rates** again
To find every agreement with the override enabled, go to **Clients** → **Agreements**, open the **Column Chooser**, add the **Override Charge Rates** column, and sort by "Yes".
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
Set up and configure client agreements for rostering and billing
Manage services, payroll codes, and rate link configuration
Configure worker pay settings including service pay level overrides
Edit, delete, and manage submitted timesheets
# Data and CSV errors
Source: https://support.visualcare.com.au/troubleshooting/data-and-csv-errors
Common errors when importing or exporting CSV files and data in Visualcare, and how to fix them
This page covers errors that appear when importing or exporting CSV files, saving notes, or working with data in Visualcare.
## CSV import errors
### Issue: "Service Id column is missing" during bulk update services
**Symptoms:** Visualcare shows "Service Id column is missing" when you upload a bulk update services CSV.
**Cause:** The Service Id column has been deleted or renamed in the file, or the file was saved in the wrong CSV format (UTF-8, Macintosh, or MS-DOS encoding instead of standard comma-delimited).
**Fix:**
1. Open the CSV file in your spreadsheet application
2. Confirm the **Service Id** column is present and hasn't been renamed or removed
3. Save the file using **File** → **Save As** and select **CSV (Comma delimited)** as the file type
4. Re-upload the file
***
### Issue: "Column must contain a numeric character" during bulk update services
**Symptoms:** Visualcare shows "Column must contain a numeric character" when importing a bulk update services CSV.
**Cause:** The **Pay Rate** or **Charge Rate** column contains non-numeric values, such as text, currency symbols, or blank cells.
**Fix:**
1. Open the CSV file and locate the **Pay Rate** and **Charge Rate** columns
2. Remove any text, symbols, or blank cells - every row needs a valid number
3. Save the file as **CSV (Comma delimited)**
4. Re-upload the file
***
### Issue: Import gets stuck at 100% during bulk update services
**Symptoms:** The bulk update services import appears to complete (reaching 100%) but doesn't finish processing or apply the changes.
**Cause:** Special characters in the **Service Code** or **Service Description** fields are causing the import to stall.
**Fix:**
1. Open the CSV file and review the **Service Code** and **Service Description** columns
2. Remove any special characters (for example, symbols like @, #, %, &, accented letters, or brackets)
3. Save the file as **CSV (Comma delimited)**
4. Re-upload the cleaned file
***
### Issue: Lines missing after importing expenses CSV
**Symptoms:** After uploading an expenses CSV, some rows don't appear in Visualcare.
**Cause:** Special or unusual characters in the **Description** or other text fields prevent those rows from being processed.
**Fix:**
1. Open the CSV file and review the **Description** column and any other text fields for unusual characters (for example, ®, accented letters, or characters that don't display correctly)
2. Remove or replace any invalid characters with plain text equivalents
3. Save the file and re-upload the cleaned CSV
***
## Export errors
### Issue: Garbled text on the Export Reimbursements page
**Symptoms:** The **Export Reimbursements** page displays garbled or unreadable text when you open it.
**Cause:** Browser cache is interfering with how the page loads.
**Fix:**
1. Press **Ctrl + Shift + Delete** to open your browser's clear browsing data tool (works in Chrome and Edge)
2. Set the time range to **All time**
3. Untick **Browsing history**
4. Tick **Cookies and other site data** and **Cached images and files**
5. Click **Clear data**
6. Fully close the browser, reopen it, and navigate back to the **Export Reimbursements** page
***
## Notes errors
### Issue: "Undefined" error when saving a note
**Symptoms:** Visualcare shows an "undefined" error when you try to save a note.
**Cause:** The note contains special characters, a restricted character combination (for example, "system("), or exceeds the character limit.
**Fix:**
1. Remove any special characters from the note - avoid @, #, %, &, (), and accented letters
2. Check whether the note contains the word "system(" and remove it if present - this combination triggers the error
3. Shorten the note if it's very long, as there's a character limit
4. Ensure the note uses plain text throughout
5. Save again
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk.
## Related articles
How to import data using CSV files in Visualcare
Managing services and service codes in Visualcare
Using bulk update tools to edit multiple records at once
Managing and importing client expense records
# DEX reporting troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/dex-errors
Common Data Exchange (DEX) reporting errors and how to resolve them in Visualcare
This page covers errors that appear when submitting Data Exchange (DEX) reports, including upload failures, client record validation issues, and missing columns in the clients table. Most DEX errors relate to client data in the Commonwealth Home Support Programme (CHSP) or Home and Community Care (HACC) tabs.
## DEX errors
### Issue: Accommodation type code is not valid
**Symptoms:** DEX rejects a client record with a message indicating the accommodation type code is not valid.
**Cause:** The DEX portal no longer supports the accommodation type selected on the client's profile. DEX periodically updates the list of valid accommodation type codes, and older values become invalid.
**Fix:**
1. Open the affected client's profile
2. Go to the **CHSP/HACC** tab
3. Change the **Accommodation Type** to a currently supported type
4. Click **Save**
5. Re-submit the DEX report
***
### Issue: Invalid Statistical Linkage Key (SLK)
**Symptoms:** The DEX XML upload fails with a message indicating the Statistical Linkage Key (SLK) is invalid or fails format validation.
**Cause:** A change to the client's **First Name**, **Surname**, **Date of Birth**, or **Gender** fields causes Visualcare to regenerate the SLK. If the new SLK doesn't match the one already registered in DEX, the upload is rejected.
**Fix:**
1. Run the **Audit Report** in Visualcare to identify which field was changed and what the previous value was
2. Revert the changed field to its original value to restore the original SLK
3. If the original value is no longer correct and the SLK genuinely needs updating, manually re-enter the correct value in the relevant field to regenerate the SLK, then re-submit the report
If you're unsure which field changed, check the audit trail for the client record around the date the error first appeared.
***
### Issue: Number of unidentified clients is inconsistent
**Symptoms:** DEX returns an error along the lines of: "The number of unidentified clients must be greater than or equal to the maximum number of unidentified clients who attended the associated sessions."
**Cause:** The number of unidentified clients declared at the case level doesn't match or isn't consistent with the session-level data for that case.
**Fix:**
1. Check the client's records in the DEX portal to confirm the session attendance data
2. In Visualcare, open the client's profile and go to the **CHSP/HACC** tab
3. Open the relevant DEX case and update the number of unidentified clients to match the session data, or add a DEX case with the correct number if one is missing
4. Re-submit the DEX report
***
### Issue: Missing CHSP service category (APPLY\_FAILED)
**Symptoms:** Visualcare shows an error along the lines of: "Missing CHSP service category for \[service category name] (APPLY\_FAILED)" when working with CHSP services or applying a CHSP/DEX organisation data update.
**Cause:** Your organisation data in Visualcare doesn't include the CHSP service category referenced in the error. DEX periodically publishes new reference data, including new service categories (for example, "2025-26 Onwards" versions), and your organisation data needs to be updated to include them before Visualcare can use them.
**Fix:**
1. Log in to the Data Exchange portal and download a fresh copy of your **OrganisationData.xml** (from the home page, under **My Organisation**, select **Reference data**, then **Download Organisation data**)
2. In Visualcare, go to **Settings** → **Integrations** and select the **CHSP/DEX Org Data** tile
3. Upload the file and select **Preview**. Check that the missing service category appears under **Inserted** in the Service categories table
4. Select **Apply update**, then retry the action that produced the error
See [CHSP / DEX Stage 3: updating your organisation data](/industry-updates/chsp-stage-3/chsp-dex-stage-3-org-data) for the full process.
If the error persists after updating your organisation data, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au) with the full error message.
***
### Issue: DEX Client ID column not visible in the clients table
**Symptoms:** You need to locate a client by their DEX Client ID, but the column doesn't appear in the clients table and there's no way to search by it.
**Cause:** The **DEX Client ID** column is hidden by default. It needs to be added to the table view using the column chooser.
**Fix:**
1. Open the **Clients** table
2. Click the **Column Chooser** button (usually shown as a column or settings icon in the table header)
3. Find **DEX Client ID** in the list of available columns and add it to the visible columns
4. Use the search or filter on the column to locate the client by their DEX Client ID
Once you've added the DEX Client ID column, it stays visible for your session. Re-add it after logging out and back in if it no longer appears, as some browser settings don't retain column preferences.
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
How to generate and submit DEX reports in Visualcare
Set up CHSP and HACC fields on client profiles
Add a new client and configure their profile details
# General troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/general
Common Visualcare errors and fixes that apply across multiple areas
Common issues that don't fall into a specific feature category. For topic-specific troubleshooting, see the links at the bottom of this page.
## Dashboard notes tile displays "Err"
**Symptom:** The Notes tile on the Visualcare dashboard shows "Err" instead of content.
**Cause:** This is typically caused by a certificate issue on the Visualcare backend.
**Fix:** Contact the Visualcare helpdesk. This issue needs to be resolved by the engineering team and can't be fixed from your end.
## "You cannot access the form" error
**Symptom:** A worker sees "You cannot access the form" when trying to open a form in the vWorker app.
**Cause:** The form template is not set to be visible to workers.
**Fix:**
1. Go to **Maintenance** → **Templates**
2. Find the form that isn't appearing and click **Edit**
3. Tick the **Visible to Worker** checkbox
4. Click **Save**
The form becomes available in the vWorker app after saving.
## "Data issue" error in vWorker
**Symptom:** A worker sees a "data error" message in the vWorker app.
**Cause:** This is typically caused by an outdated version of the app.
**Fix:**
1. Delete the vWorker app from the worker's device
2. Reinstall the latest version from the app store (Apple App Store or Google Play)
If the error continues after reinstalling, contact the Visualcare helpdesk.
## "Incorrect details" error in vOnboard
**Symptom:** A worker sees an "incorrect details" error when trying to log into vOnboard.
**Cause:** The worker's profile is not web-enabled in Visualcare.
**Fix:**
1. Open the worker's profile in Visualcare
2. Tick the **Web Enabled** checkbox on their profile
3. Click **Save**
If the error continues after enabling web access, reset the worker's password.
## "Error: undefined" when saving a note
**Symptom:** An "Error: undefined" message appears when saving a note.
**Cause:** The note contains special characters or formatting the system rejects. This is a known system limitation.
**Fix:**
1. Remove special characters such as `@`, `#`, `%`, `&`, brackets, and accented letters (for example é, ñ, ü)
2. Remove the word "system" immediately followed by an open bracket - the combination `system(` triggers the error
3. Remove a percentage sign immediately followed by another character without a space (for example `%abc`)
4. If the note is very long, shorten it - notes have a character limit
5. Keep the note in plain text where possible: letters, numbers, and simple punctuation
6. Save the note again
## Unable to view a note
**Symptom:** A note you expect to see is not visible in the notes table.
**Cause:** Either filters are hiding the note, or the note belongs to a note category your user group does not have permission to view.
**Fix:**
1. Click **Reset Filter** in the top right of the notes table - filters or sorting are often hiding the note
2. If the note is still not visible, check the category permissions (requires administrator access):
1. Go to **Maintenance** → **Categories** → **Note Categories**
2. Select the relevant note category
3. Tick the appropriate user group under **User Group Permission**
4. Click **Save**
## Unable to see other users' tasks
**Symptom:** A user sees only their own tasks, or no tasks at all, in the task table.
**Cause:** Table filters, a user group security setting, or User Access Control restrictions.
**Fix:**
1. Click **Reset Filter** in the top right of the task table
2. If tasks are still missing, check the user group setting (requires administrator access):
1. Go to **User Group Security** and select the user group
2. Click **Operations** to expand the section
3. Set **Tasks visible only to assigned user or user listed as collaborator** to **No**
4. Click **Save**
3. If the setting is already off, User Access Control is likely limiting visibility based on client permissions. Check whether the user can view the client profile associated with the task - if not, review the User Access Control settings for the user group (requires administrator access)
## Document upload fails
**Symptom:** An "Upload failed" error appears when uploading a document.
**Cause:** The file is too large, stored in a cloud location, or has a restricted filename.
**Fix:**
1. Check the file size - uploads have an 8MB maximum. Compress or split larger files
2. If the file is stored in a cloud location such as OneDrive or Google Drive, download it and store it locally before uploading
3. Check the filename - a filename containing the text `system(` fails validation. Rename the file and try again
## Workers or clients list not loading
**Symptom:** The workers or clients list does not load properly.
**Fix:**
1. On the list view, change the **Scrolling Mode** from **Scrolling** to **Paging**
2. If the list still fails to load, clear your browser cache:
1. Open your browser settings (usually the three-dot menu in the top-right corner)
2. Go to **Privacy and Security** → **Clear browsing data**
3. Select **Cached images and files** and **Cookies and other site data**
4. Choose the **All time** range
5. Click **Clear data**, restart the browser, and try again
## Unable to delete a client profile
**Symptom:** A client profile cannot be deleted.
**Cause:** An active roster is still associated with the client. Profiles with an active roster are protected from deletion.
**Fix:**
Remove the roster items from the roster before deleting it:
1. Open the **Client Profile** and go to the **Roster** tab
2. Double-click the active roster
3. Click **Delete Roster** and use **Delete shifts from date** to remove the roster items from the roster
4. Then delete the roster: tick **Delete this roster?** in the confirmation popup and click **Delete**
5. Return to the **Client Profile** screen
6. Tick **Delete this profile** and click **Save**
If you are offboarding a client rather than removing a profile created in error, see [Offboarding a client](/client-management/offboarding-generic) - closing or transferring agreements is usually the right approach rather than deletion.
## Related troubleshooting
Troubleshoot shift and roster problems
Troubleshoot timesheet confirmation and approval problems
Troubleshoot Xero, KeyPay, and other integration errors
Common Xero export errors and how to fix them
# Troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/index
Common issues and solutions for rostering, timesheets, integrations, and more
# Troubleshooting
Find solutions to common issues across Visualcare.
Common issues and how to resolve them
Fix login errors, missing permissions, and access from outside Australia
Troubleshoot rostering problems
Troubleshoot timesheet problems
Fix common issues with client agreements and services
Troubleshoot vWorker mobile app problems
Fix errors when importing or exporting CSV files and data
Resolve Data Exchange (DEX) reporting errors
Resolve Support at Home claiming errors in PRODA and Visualcare
Troubleshoot integration and data sync problems
Fix Xero invoicing, payroll, and kilometre export errors
Fix MYOB invoicing and job export errors
Fix KeyPay timesheet, kilometre, and location export errors
# Integration troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/integration-issues
Hub for integration troubleshooting - MYOB, SMS, and general data export issues, with links to the Xero, KeyPay, and MYOB export error pages
This section is being expanded. If you're experiencing an issue not covered here, contact the Visualcare helpdesk.
## Xero, KeyPay, and MYOB export errors
Errors for each accounting and payroll integration have a dedicated troubleshooting page:
Invoicing, payroll, kilometre, connection, and sync errors when exporting to Xero
Timesheet, kilometre, and location errors when exporting to KeyPay
Invoicing and timesheet errors when exporting to MYOB
## MYOB errors
### Issue: No Session error when exporting to MYOB
**Symptoms:** The export fails with a "No Session" error when exporting invoices to MYOB Advanced.
**Cause:** A session handling issue on the server your organisation is connected to. Visualcare runs across multiple servers, and the session state can become invalid on a specific server.
**Fix:**
1. Note the error message and which export you were running
2. Contact the Visualcare helpdesk and report the "No Session" error
3. The team will identify which server your organisation is on and resolve the session issue
This error differs from the Xero "No Session" error, which is resolved by clearing the Xero token and re-authorising. MYOB session issues are resolved on the server side by the Visualcare team.
***
## SMS errors
### Issue: SMS messages failing to send
**Symptoms:** A "Failed to send" error appears when sending SMS messages from **Operations** → **SMS**.
**Diagnosis:** The underlying error does not display in the screen itself. To find it:
1. Go to **Operations** → **SMS** and send a test SMS
2. Open your browser's developer tools (usually F12, or right-click → **Inspect**)
3. Go to the **Network** tab
4. Click the request named `send_sms.php`, then open the **Response** tab
**Common errors:**
| Response | Cause and fix |
| - | - |
| `Insufficient credits for request` | Your MessageMedia account is out of SMS credits. Log in to your MessageMedia portal and top up your credits |
| `AUTH_FAILED - The auth data you have provided is invalid` | The MessageMedia API credentials on your database are incorrect. Confirm your MessageMedia API Key and Secret, then send them securely to the Visualcare helpdesk to update the integration |
| `{"status":"fail","phone":[...]}` | The SMS failed to send to that phone number. Contact the Visualcare helpdesk for investigation |
See [MessageMedia integration](/integrations/messagemedia) for how the SMS integration is set up.
## General data export issues
### Issue: Export Care Management Fees stuck on Importing
**Symptoms:** The Care Management Fees export never progresses past "Importing".
**Cause:** No accounting code is selected on the client profile - either it was never set, or the Xero contact name changed and broke the link between Visualcare and Xero.
**Fix:**
1. Open the **Client Profile** in Visualcare and check whether an **Accounting Code** is listed
2. If not, check in Xero that an active Xero contact exists for the client - create one if needed
3. Back on the **Client Profile**, click **Sync contact from Xero**
4. Once the contact syncs, select the **Accounting Code** from the dropdown
5. Click **Save**
### Issue: Export summary shows errors for all items
**Symptoms:** Every item on the export summary page shows as a failure.
**Cause:** The accounting codes for payers, clients, or services are missing or out of sync.
**Fix:**
1. Go to **Settings** → **Data Export** → **XERO** and click all the sync buttons to refresh data from your accounting software
2. Check that payers have an **Accounting Code** selected (**Maintenance** → **Payers**)
3. Check that clients have either a **Payer** or an **Accounting Code** set on their profile
4. Check that services have an **Accounting Code** selected (**Maintenance** → **Services**)
You can click **Show fails only** on the export summary page and download the failures as a CSV to review and correct the missing codes before re-exporting.
### Issue: Xero connection lost or expired
**Symptoms:** Exports fail with session or authentication errors, or the **Authorise Xero** button reappears.
**Cause:** The Xero API token has expired. Xero tokens expire periodically and need to be re-established.
**Fix:** Go to **Settings** → **Data Export** → **Accounting Software**, click **Clear Xero Token** if visible, then click **Authorise Xero** and log in to re-establish the connection. After reconnecting, click all the sync buttons before retrying the export.
## Related articles
Set up and configure the Xero integration
Connect Visualcare to KeyPay for payroll export
How to export timesheets and payroll data from Visualcare
Overview of billing and claiming in Visualcare
# KeyPay export troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/keypay-export-errors
Common KeyPay export errors and how to resolve them in Visualcare
This page covers errors that appear when exporting timesheets, kilometres, or other payroll data from Visualcare to KeyPay.
For general integration setup and configuration, see [Integration troubleshooting](/troubleshooting/integration-issues).
## Timesheet export errors
### Error: This timesheet already exists, please provide the timesheet ID
**Symptoms:** The export fails with "FAIL This timesheet already exists, please provide the timesheet ID".
**Cause:** KeyPay has already processed a timesheet for the same pay calendar period. Once a timesheet exists for a period, KeyPay rejects any further timesheets for that same calendar.
**Fix:**
* Identify the dates for the failed timesheets
* Split the export into separate batches for each distinct pay calendar period (for example, run 28-30 June separately from 1-4 July)
This is a restriction in KeyPay and is not controlled by Visualcare. KeyPay accepts only one timesheet per worker per pay calendar period.
***
### Error: Request is invalid. Timesheets Key does not match an id for any employee
**Symptoms:** The export fails with "Request is invalid. Timesheets Key does not match an id for any employee".
**Cause:** The employee mapping between Visualcare and KeyPay is out of sync.
**Fix:**
1. Go to **Settings** → **Data Export** → **KeyPay** section
2. Click **Sync Employees** to refresh the employee data from KeyPay
3. Retry the export
4. If the issue continues, contact [support@visualcare.com.au](mailto:support@visualcare.com.au)
***
### Error: Error invoking handler for query Payroll
**Symptoms:** The export fails with "Failed. Error invoking handler for query Payroll.DataAccess.Queries.GetReportingDimensionValuesQuery".
**Cause:** A sync issue between Visualcare and KeyPay.
**Fix:**
* Run a timesheet export. This often re-initialises the sync with KeyPay and clears the error
* If the error continues, go to **Settings** → **Data Export** and click **Sync Employees** before retrying
***
### Issue: Timesheets exported as unapproved (or auto-approving when not wanted)
**Symptoms:** Timesheets arrive in KeyPay as unapproved when you want them approved, or they're being auto-approved when you don't want that.
**Cause:** The **Auto approve timesheets** setting in Visualcare controls whether timesheets are sent to KeyPay as approved or unapproved.
**Fix:**
1. Go to **Settings** → **Data Export** → **KeyPay** section
2. Find the **Auto approve timesheets** checkbox
3. Tick it if you want timesheets automatically approved in KeyPay, or untick it to have them come through as unapproved
***
### Error: Error sending to KeyPay when sending a worker
**Symptoms:** The export fails with "Error sending to KeyPay" when attempting to send a worker record to KeyPay.
**Cause:** Required fields are missing from the worker profile. KeyPay requires specific fields to be completed before a worker record exports successfully.
**Fix:** Check the following mandatory fields on the worker profile:
| Fields | Location |
| - | - |
| First Name, Last Name | **Worker Profile** → **Details** tab |
| Start Date | **Worker Profile** → **Engagement Details** tab |
| Worker Type, TFN | **Worker Profile** → **Finance** tab → Worker Details column |
| Account Name, BSB, Account Number, Percentage | **Worker Profile** → **Finance** tab → Bank Details column |
| Address Line 1, State, Suburb, Postcode, Country | **Worker Profile** → **Details** tab → General Details column |
| Super Fund Name, Member Number | **Worker Profile** → **Finance** tab → Worker Details column |
Complete any missing fields, click **Save**, and retry the export.
***
## Kilometre export errors
### Error: WorkTypeId does not match an external id for any WorkType
**Symptoms:** The KM export fails with "WorkTypeId does not match an external id for any WorkType".
**Cause:** The pay code in Visualcare doesn't match any external ID in the KeyPay work type list.
**Fix:**
1. Go to **Settings** → **Finance** → **Kilometre** in Visualcare
2. Check the **Pay Code (KM)** and **Pay Code (KM Between, No Charge)** fields. These are two separate pay codes that map to different KeyPay work types — one for standard kilometre travel and one for between-client travel with no charge
3. If either is blank, or the value doesn't match an entry in KeyPay, go to **Data Export** → **KEYPAY section** → **KeyPay Work Type list**
4. Confirm that the pay codes under **Settings** → **Finance** → **Kilometre** exactly match one of the External IDs in that list
5. If no matching External ID exists, create one in KeyPay or update the pay code names to match
6. Check for typos or extra spaces at the start or end of the pay code values
***
### Error: No Session during KM export
**Symptoms:** The KM export to KeyPay fails with a "No Session" error.
**Cause:** A browser session issue is preventing the export from connecting to KeyPay.
**Fix:**
1. Clear your browser cache (press Ctrl + Shift + Delete)
2. Fully close and reopen your browser
3. Return to the **Export Reimbursements** page and retry the export
***
## Location errors
### Issue: Wrong KeyPay location appearing on timesheets
**Symptoms:** Timesheets exported to KeyPay show the wrong location.
**Cause:** The KeyPay Location setting in Visualcare maps a Visualcare field to the External IDs in KeyPay. If the wrong field is selected or the External IDs don't match, the wrong location is applied.
**Fix:**
1. Go to **Settings** → **Data Export** → **KeyPay** section
2. Click the arrow next to **KeyPay Locations** to expand the list of External IDs
3. Apply the correct External IDs from KeyPay to the corresponding sections in Visualcare
The **KeyPay Locations** drop-down maps to different Visualcare fields depending on what you select:
| KeyPay Locations option | Where to configure in Visualcare |
| - | - |
| Agreement Area / Location Area | **Maintenance** → **Areas** → **Area** field |
| Client Area Reference 1 / Location Area Reference 1 | **Maintenance** → **Areas** → **Reference 1** field |
| Agreement Reference 1 | Client agreement → **Reference 1** field |
| Roster Category Reference 1 | **Maintenance** → **Categories** → **Roster Categories** → **Reference 1** field |
| Service Reference 1 | **Maintenance** → **Services** → **Reference 1** field |
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk.
## Related articles
General integration and data export errors
Connect Visualcare to KeyPay for payroll export
How to export timesheets and payroll data from Visualcare
Common Xero export errors and fixes
# Login and access troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/login-and-access
Common login and access issues in Visualcare and how to resolve them
This page covers the most common login and access issues providers encounter in Visualcare. Work through the relevant fix below, and if you're still stuck, reach out to the helpdesk.
***
## Login issues
### Issue: 403 Forbidden error when accessing Visualcare
Visualcare blocks access from IP addresses outside Australia for security reasons. See [Access denied (403)](/troubleshooting/access-denied) for the full fix, including VPN setup and what to do if you're still blocked.
***
### Issue: SSO login loop after Microsoft sign-in
**Symptoms:** After entering Microsoft credentials, the user is stuck in a login loop or receives an error.
**Cause:** When Single Sign-On (SSO) is enabled for a user, the system expects the SSO login flow. A mismatch between the user's SSO configuration and their Visualcare account can prevent the login from completing.
**Fix:**
1. Disable SSO for the affected user in **Users** → select the user → disable SSO
2. Ask the user to sign in with their standard Visualcare username and password
3. Once the user has signed in successfully, re-enable SSO for the user
***
### Issue: Worker unable to log in to the vWorker app
**Symptoms:** A worker reports being unable to log in to the vWorker app.
**Cause:** This is most commonly caused by an incorrect username or password, or a worker profile that hasn't been set up correctly.
**Fix:**
1. Ask the worker to confirm they're using the correct username and password
2. If the password is incorrect, go to the **Worker Profile**, locate the active worker account, and use the **Reset Password** option
3. If the password is correct but login still fails, review the worker's profile to confirm it's set up correctly and linked to an active user account
4. If the issue persists after checking credentials and profile setup, ask the worker to uninstall and reinstall the vWorker app, then attempt login again
5. If the worker is still unable to log in, raise a ticket with the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au)
***
### Issue: Clearing browser cookies and cache
Several fixes on this page ask you to clear your browser's cookies and cache. Each browser does this differently - use the official guide for yours:
* [Chrome](https://support.google.com/accounts/answer/32050)
* [Microsoft Edge](https://www.microsoft.com/en-us/edge/learning-center/how-to-manage-and-clear-your-cache-and-cookies)
* [Firefox](https://support.mozilla.org/en-US/kb/clear-cookies-and-site-data-firefox)
* [Safari on Mac](https://support.apple.com/en-au/guide/safari/sfri11471/mac)
* [Safari on iPhone or iPad](https://support.apple.com/en-au/105082)
***
## Access and permissions
### Issue: Suspend button not visible in Users
**Symptoms:** A user navigates to the **Users** section but the **Suspend** button (used to deactivate a user account) doesn't appear.
**Cause:** The **Suspend** button is controlled by a User Group Security permission. If the user's assigned User Group doesn't have permission to view other user groups, the button is hidden.
**Fix:**
1. Go to **User Group Security**
2. Select the User Group assigned to the affected user
3. Expand the **Settings** section
4. Set **User Groups** permission to **Show**
5. Click **Save**
This permission change needs to be made by someone in your organisation with User Group Security access. The Visualcare helpdesk is unable to modify user permissions on your behalf.
***
### Issue: User unable to view documents
**Symptoms:** A user navigates to the **Documents** screen but expected documents don't appear.
**Cause:** This is usually caused by active filters hiding document categories, or User Group permissions restricting access to one or more Worker Document Categories.
**Fix - clear filters:**
1. Go to the **Documents** screen
2. In the top-right corner, click **Reset Filter** to clear any active filters
3. Check whether the documents now appear
**Fix - review document category permissions:**
1. Go to **Maintenance** → **Document Categories**
2. Select **Worker Documents**
3. Review the **User Group Permissions** section and confirm the correct User Groups have access
4. Click **Save**
***
### Issue: User unable to view worker pay rates
**Symptoms:** A user cannot see worker pay rates while rostering or in the Timesheets section.
**Cause:** The user's User Group does not have the pay rate permission enabled.
**Fix:**
1. Go to **Settings** → **User Group Security**
2. Select the User Group assigned to the affected user
3. Click the **Workers** tab
4. Set **Worker Finance Tab and Pay Rate in Rosters and Timesheets** to **Show**
5. Scroll down and click **Save**
6. Ask the user to refresh and confirm the pay rate field now appears
***
### Issue: Users cannot see the Incidents tab
**Symptoms:** The **Incidents** tab does not appear for a user.
**Cause:** One or more of three User Group Security permissions is missing.
**Fix:**
1. Go to **User Group Security** and select the user's User Group (if you're unsure which group the user is in, go to **Users**, select the user, and note their User Group)
2. Check all three of these permissions:
* **Home** → **KPI Incidents** is set to **Show**
* **Clients** → **Ability to View Incidents** is set to **Yes**
* **Worker** → **Worker Incidents** is set to **Show**
3. Click **Save**
***
### Issue: User unable to create a contact
**Symptoms:** A user cannot create a contact.
**Cause:** The **Contacts to Show** permission is missing from the user's User Group.
**Fix:**
1. Go to **User Group Security**
2. Select the relevant User Group
3. Click **Maintenance** to expand the permissions
4. Enable **Contacts to Show**
5. Click **Save**
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
How to log in to Visualcare, including SSO and standard login options
Steps to reset a forgotten or expired password
Configuring permissions for user groups in Visualcare
Managing user accounts and access levels
How workers log in to the vWorker app
Managing worker access to the vWorker app
# MYOB export troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/myob-export-errors
Common MYOB export errors and how to resolve them in Visualcare
This page covers errors you might see when exporting invoices or timesheets from Visualcare to MYOB.
For general integration setup and configuration, see [Integration troubleshooting](/troubleshooting/integration-issues).
## Invoicing errors
### Error: No client accounting code
**Symptoms:** The export fails with "No Client Accounting Code".
**Cause:** The **Accounting Code** field on the client profile is blank. This typically happens when the code wasn't selected when the profile was created, or the linked MYOB contact has changed.
**Fix:**
1. Open the client profile in Visualcare
2. Check whether an accounting code is listed
3. If not, log in to MYOB and confirm there's an active contact for this client
4. If no contact exists, create one and make sure it has the correct linked account set up (for example, an income account for sales)
5. Return to the client profile in Visualcare and click **Sync contact from MYOB**
6. Once the contact syncs, select the **Accounting Code** from the drop-down and save
***
### Error: No client payer accounting code / No agreement payer accounting code
**Symptoms:** The export fails with "No Client Payer Accounting Code" or "No Agreement Payer Accounting Code".
**Cause:** The payer linked to the client profile or client agreement doesn't have an accounting code set in Visualcare.
**Fix:**
1. Open the client profile to identify the **Client Payer**, or open the client agreement to identify the **Agreement Payer**
2. Go to **Maintenance** → **Payers** and open the relevant payer profile
3. Under the **Details** tab, locate the **Accounting Code** field
4. Enter the correct MYOB code and click **Save**
5. Retry the export
***
### Error: No service accounting code
**Symptoms:** The export fails with "No Service Accounting Code".
**Cause:** The service is missing an accounting code in Visualcare. This usually happens when the service wasn't originally linked to a MYOB inventory item, or when the MYOB inventory item was deleted or renamed.
**Fix:**
1. Go to **Maintenance** → **Services** and open the affected service
2. Check the **Accounting Code** drop-down for the relevant MYOB inventory item
3. If it's not listed, log in to MYOB and check whether the inventory item exists
4. If not, create a new inventory item in MYOB
5. Return to Visualcare, go to **Maintenance** → **Services**, and click **Sync MYOB Invoice Items**
6. Once the sync completes, open the service, assign the **Accounting Code** from the drop-down, and save
***
### Error: EXEMPTOUTPUT (tax code error)
**Symptoms:** The export fails with "Error converting value 'EXEMPTOUTPUT' to type 'System.Guid'. Path 'Lines\[0].TaxCode.UID'".
**Cause:** The wrong MYOB company account is selected in Visualcare, which causes a mismatch in tax code configuration.
**Fix - step 1: select the correct MYOB company**
1. Go to **Settings** → **Data Export**
2. Under the **MYOB Company** drop-down, select the correct MYOB account
3. Scroll down and click all the sync buttons (for example, **Invoice Items**, **Tax Codes**)
**Fix - step 2: if syncing fails**
1. Scroll to the top of the **Data Export** tab
2. Click **Disconnect MYOB** and then **Save**
3. Reload the page in your browser
4. Click **Authorise MYOB** to reconnect
5. Scroll down and click all the sync buttons again
***
### Error: FAIL Error converting value "" to type System.Guid
**Symptoms:** The export fails with "FAIL Error converting value '' to type 'System.Guid'. Path 'Lines\[x].Activity.UID'".
**Cause:** A field mapped to the MYOB Job contains a blank value, a client agreement has **Override KM Charge Code** ticked without a valid code selected, or a data mismatch exists between Visualcare and MYOB (usually caused by a deleted or renamed MYOB contact).
**Fix - if the mapped job field has blank values:**
1. Go to **Settings** → **Data Export** → **MYOB / Quickbooks**
2. Check the **Invoice - Job Field** and **Timesheets - Job Field** settings to see which field is mapped
3. Navigate to the source of that field (for example, the client agreement, service, or client profile) and make sure the field is populated for all records included in the export
**Fix - if an override KM charge code is blank:**
1. Open the client agreement included in the export
2. If **Override KM Charge Code and KM Charge Rate** is ticked, confirm a valid **KM Charge Code** is selected
3. Either select a valid code from the drop-down, or untick the override option
4. Save the agreement and retry the export
**Fix - if a MYOB contact was deleted or renamed:**
1. Go to **Settings** → **Data Export** and re-sync contacts from MYOB
2. Re-select the accounting code on the affected client, payer, or worker profile
3. Retry the export
***
### Error: Job is missing
**Symptoms:** The export fails with "Job is missing".
**Cause:** The field mapped to the MYOB Job in Visualcare contains a blank value, or the job value entered doesn't exist in MYOB.
**Fix:**
1. Go to **Settings** → **Data Export** → **MYOB / Quickbooks** in Visualcare
2. Check what is selected for **Invoice - Job Field** and **Timesheets - Job Field**
3. Navigate to the corresponding location in Visualcare (for example, the client agreement if **Agreement Reference 1** is selected) and confirm the field has a valid value
4. Log in to MYOB and confirm the job exists and is active
5. If the job doesn't exist in MYOB, create it to match the value in Visualcare
6. Retry the export
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk.
## Related articles
General integration and data export errors
Set up and configure the MYOB integration
Common Xero export errors and fixes
How to export timesheets and payroll data from Visualcare
# Scheduling troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/rostering-issues
Common rostering issues and how to resolve them in Visualcare
This page covers common problems when creating, editing, or managing rosters in Visualcare. If your issue isn't listed here, contact the Visualcare helpdesk.
## Conflict detection
### Issue: Roster conflicts not showing
**Symptoms:** Overlapping shifts for the same worker aren't highlighted in the roster view.
**Cause:** Either the conflict isn't genuine (the shifts don't actually overlap), or the worker has been marked as exempt from conflict detection.
**Fix:**
1. Confirm the conflict is real by creating a test scenario - roster the same worker on two shifts with overlapping times and check whether the colour coding appears
2. If the colour coding appears on the test but not on your actual shifts, open the worker's profile and go to the **Details** tab
3. Under **General Details**, check whether **Roster Conflict Exempt** is enabled
4. If it is, disable it and save
5. If conflicts still aren't showing after these steps, contact [support@visualcare.com.au](mailto:support@visualcare.com.au)
***
## Shift allocation
### Issue: Unallocated shifts not appearing in the unallocated report
**Symptoms:** Shifts you know are unallocated don't show up when you run the unallocated report.
**Cause:** The client's roster has been marked as **Completed**. Completed rosters are inactive, so their shifts are excluded from the unallocated report.
**Fix:**
1. Go to the client's **Roster**
2. Find the **Completed?** toggle
3. Switch it to **No** and save
4. Re-run the unallocated report
***
### Issue: Workers not seeing unassigned shifts in the app
**Symptoms:** Workers report they can't see shifts that need to be filled in vWorker.
**Cause:** Unassigned shifts are not automatically visible to workers in the app. Workers only see shifts they've been assigned to or invited for.
**Fix:**
Send roster invitations for the unassigned shifts from the Visualcare web app. Workers receive the invitation and accept the shift from there.
See [Roster invitations](/scheduling/roster-invitations) for full instructions.
***
### Issue: Roster items not appearing on the worker roster or in vWorker
**Symptoms:** Roster items are visible on the client's roster but do not appear on the worker's roster or in the vWorker app.
**Cause:** The client roster has not been published. Unpublished roster items stay on the client roster only.
**Fix:**
1. Open the **Client's Roster**
2. Set **Publish** to **On**
3. Save the roster
Once published, the roster items sync to the worker's roster and the vWorker app.
### Issue: Create New Location Roster button not visible
**Symptoms:** A user cannot see the **Create New Location Roster** button.
**Cause:** The user's User Group is missing one or more of three permissions.
**Fix:**
1. Go to **Settings** → **User Group Security** and select the relevant User Group
2. Under **Operations**, set **Location Roster** to **Show**
3. Under **Maintenance**, set **Locations** to **Show**
4. Under **Clients**, set **Client Roster** to **Show**
5. Click **Save**
***
### Issue: Cannot add a client to a location roster shift
**Symptoms:** A client cannot be added to a location roster shift, or doesn't appear in the client select list when adding them to a shift.
**Cause:** The most common cause is that the shift's service (the **Master Service Code**) is not included in the client's agreement. The client's status can also prevent them appearing in select lists.
**Fix:**
1. Check which service is selected on the location shift
2. Open the client's agreement and confirm that service appears in its services list. If it's missing, click **Add Services**, tick the service, and click **Add selected services** - see [Creating agreements for rostering](/client-management/creating-agreements-for-rostering)
3. Check the client's profile and confirm the **Status** is set to **Current**. Any other status removes the client from some searchable lists
4. Try adding the client to the shift again
## Roster item behaviour
### Issue: Rostered service changing unexpectedly or not saving
**Symptoms:** When you roster a shift and select a service, the service changes to something else after saving. Or updates to the roster item don't apply as expected.
**Cause:** The service has a **Weekday Service Leave Rate Link** configured that points back to itself. When a weekday service is linked to itself, the system overrides whichever service you've selected on the roster item.
**Fix:**
1. Go to **Maintenance** → **Services**
2. Find the affected service
3. Click the **Rate Link** button
4. Change the **Weekday** option to blank
5. Click **Save**
6. Re-open the roster item and confirm the correct service is now saving
***
### Issue: Ratio not applying to location roster items or timesheets
**Symptoms:** The correct support ratio isn't being applied when you roster a shift on a location roster or approve a timesheet.
**Cause:** The client agreement isn't configured to set the ratio at the point of rostering. Ratio settings only apply to location rosters, not client rosters.
**Fix:**
1. Open the relevant **Client Agreement**
2. Find the **NDIS Activity Type** field and set it to **Set Ratio when rostering**
3. Save the agreement
4. Re-roster any affected shifts on the location roster - shifts rostered after this change have the correct ratio applied automatically
5. For older shifts, open each roster item and save it again to trigger the ratio calculation
Ratio settings only apply to location rosters. Only shifts rostered after updating the activity type setting have the ratio applied automatically. Older shifts need to be individually re-opened and saved.
***
### Issue: Travel time not calculating when using Calc KM
**Symptoms:** Clicking **Calc KM** on a roster item or timesheet doesn't calculate travel time, or returns an error.
**Cause:** The client's address is missing, incomplete, or contains a typo. The Calc KM function uses Google Maps to calculate distances, so the address needs to be a valid, resolvable location.
**Fix:**
1. Go to the **Client Profile** and open the **Details** tab
2. Find the **Address** field
3. Use the **Search Address** field to look up the address via Google Maps
4. Select the correct address from the results
5. Save the client profile
6. Return to the roster item or timesheet and retry **Calc KM**
***
## Display issues
### Issue: "Restricted Client" appearing on a location roster
**Symptoms:** A location roster shows "Restricted Client" instead of a client's name. You're unable to edit or remove the linked roster items.
**Cause:** The client profile was deleted while roster items or timesheets were still linked to that client in a location roster. The system retains the references but can't display the deleted client's details.
**Fix:**
This issue needs to be resolved by the Visualcare support team. Contact [support@visualcare.com.au](mailto:support@visualcare.com.au) with the details of the affected location roster. The support team will clear the linked roster items and timesheets so the roster displays correctly.
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
Send shift invitations to workers for unassigned shifts
Configure agreements, activity types, and ratio settings
Set up and manage services, including rate link configuration
Manage worker details, including roster conflict exemptions
# SAH troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/sah-claiming-errors
Common Support at Home claiming errors in PRODA and Visualcare, and how to resolve them
This page covers errors that appear when submitting Support at Home (SAH) claims through the Provider Digital Access (PRODA) portal, uploading payment summary files, and working with the SAH claiming workflow in Visualcare.
## API Connection
### "Server Error" on the SAH tab
**Cause:**
* PRODA B2B devices expire every 6 months as Services Australia policy. An expired or locked device interrupts the API connection between Visualcare and PRODA, which shows as a Server Error on the client's SAH tab.
* The API connection can also drop out or disconnect intermittently (independent of device expiry/locking). When this happens, the connection will need to be manually reconnected to restore the link between Visualcare and PRODA.
**Fix:**
Select **Organisations** at the top right, then choose the organisation associated with the expired device.
Go to **B2B Devices**, and click on the name of the expired device.
Select **Generate New Code** in the Device Details section, and record the new **Device Activation Code**, **Device Name**, and **RA Number**.
These details aren't stored anywhere by the system, and the code is only valid for 1 hour.
Enter the new code under **Settings** → **Integrations**. Status will show **Pending**.
Click **Manage** in the Integrations tab and upload the **original AC027 form**, named **"Visualcare AC027 - Support at Home"**, to move the status from Pending to Connected.
Generate a new activation code before a device passes its 6-month expiry, rather than waiting for the Server Error to appear.
### What a Server Error does and doesn't affect
A Server Error interrupts the flow of budget and balance data from Services Australia, but it doesn't stop you working.
**Not affected** - these continue to work as normal:
* SAH claiming, including via CSV
* SAH invoicing
**Affected** - these will show inaccurate figures until the connection is restored:
| Area | Impact |
| :- | :- |
| SAH tab (client profile) | Available budget won't reflect the correct balance |
| SAH Individual and Organisation dashboards | Available balance won't be accurate on either dashboard |
| Client statements | Expenditure displays correctly, but the available balance shows the last known figure from before the error, so it won't reconcile against the expenditure shown |
**To restore accurate data:** reconnect the B2B device using the steps above, then contact the Visualcare support team to request a budget refresh across all three affected areas.
***
## PRODA claiming errors
When you submit a SAH claim batch, PRODA may return one or more error messages against individual line items. The errors below describe the most common messages, what causes them, and how to fix them.
**Symptoms:** One or more line items in your claim batch are rejected by PRODA with error messages against individual service items.
**Cause:** Errors are typically caused by incorrect date formatting in the CSV, missing or wrong service codes on the Service Identifier, invalid unit types, or participant details that don't match the PRODA record.
**Fix:** Review the error message for each rejected item using the table below, correct the relevant field in Visualcare or in the CSV, then resubmit the claim.
| Error | Resolution |
| - | - |
| "Item XX Support Service X is not valid" / "Item XX Delivery Date is either missing or wrong format YYYY-MM-DD" / "Invoice cannot be created" | The CSV was opened and saved with incorrect date formatting. Correct the date format to YYYY-MM-DD before saving the CSV. |
| "A valid value must be supplied for field Service type" / "Care recipient CRID does not have SAH classification for service X on DATE" / "Care recipient CRID is not approved for X on DATE" / "Unit type invalid for provided service X" | An incorrect service code (or no service) has been added to the Service Identifier. Use the SAH service code (SERV-00XX), not the Visualcare service code. |
| "A valid value must be supplied for field item description" | The Home Support Item is missing an Item Description Code, a Unit Type, or an Item Description (required for OTH codes). |
| "Care recipient X is not in the care of service provider on DATE" | The care recipient was discharged before the date of the service being claimed. Use the service delivery date, not the invoice date. |
| "Unit type invalid for provided service X" | An incorrect unit type has been added. The Unit Type field should be blank for all services other than Assistive Technology and Home Modifications (AT-HM) or Home Support Items. |
| "Field Health Professional Type has invalid value" | The Health Professional Type field only applies to service codes 0066 and 0068. For all other codes, leave this field blank. |
| "Field item description has invalid value" | The wrong service code has been used. Match the item description code to the correct service code. |
| "Field wraparound description has invalid value" | The wraparound code needs to match the service code. For AT codes 61-66: use WRAP-001 for setup, WRAP-003 for delivery. For Home Modifications (HM) codes 67-68: use WRAP-008 for training, WRAP-012 for coordination. |
| "A valid value must be supplied for the field purchase method type" | For AT-HM items, set the purchase method type to "PURCHASED" unless the item is being loaned. |
| "This is not a valid care recipient ID" | Ensure the care recipient has a valid Care Recipient Identifier (CRID) in Visualcare. Visualcare only includes participants with a valid CRID in the claim file. |
| "Service delivery date cannot be in future" | Services with a future delivery date cannot be claimed. Wait until the service date has passed. |
| "Care recipient CRID is not approved for service X on DATE" | The participant is not approved for the service on that date in the PRODA record. |
| "The quantity must be an increment of 0.25 hours" | For services with an hours unit type, quantities must be in 0.25-hour increments. Visualcare automatically rounds these service types. |
| "Invoice cannot be created" | This error appears alongside other errors. Fix the other errors in the batch and the invoice will be created on resubmission. |
| Item XX - Care recipient XX does not have the correct entry event for funding source | Participant has both Ongoing and Restorative Care funding, column H needs to be populated with "RC" if Restorative Care funding to be claimed |
***
## Payment file upload errors
When reconciling a Support at Home (SAH) claim, uploading the payment details CSV file from Services Australia can return one of the errors below.
### "Unable to parse payment file. Please try again later"
**Symptoms:** The payment details CSV fails to upload, with the error "Unable to parse payment file. Please try again later".
**Cause:** The payment details CSV contains adjustment or amendment line items. These are generated by Services Australia, for example following a reassessment or where hardship has been applied, and can be backdated. Visualcare doesn't currently support adjustment or amendment entries in payment details uploads.
**Fix:** Review the payment details CSV file and decide whether to remove the adjustment lines yourself or send the file to the Visualcare helpdesk team.
Use this option if you're comfortable identifying and removing the affected rows, for example where there are only a few.
Open the payment details CSV file in a spreadsheet application.
Identify any rows marked as an **amendment** or **adjustment** and **previous**, along with the related lines directly below each item.
Delete those rows from the file.
Save the file as a CSV.
Re-upload the cleaned CSV in Visualcare. The claim will now reconcile.
This step is optional. Only complete it if you want adjustment or amendment lines reflected in Visualcare.
Create a helpdesk ticket and attach the **original, unedited** payment details CSV file so the lines can be applied to the correct claim file. Adjustments and amendments may relate to past claim periods, not just the current one.
Use this option if you'd rather Visualcare handle the reconciliation directly.
Open the payment details CSV file in a spreadsheet application.
Identify any rows marked as an amendment or adjustment.
Close the file without making any changes.
Create a helpdesk ticket and attach the original payment details CSV file. Visualcare will manually reconcile the related claim(s) and amend any lines to reflect the changes.
Whichever option you choose, keep a copy of the original payment details CSV file. Adjustment history isn't stored in Visualcare, so this forms part of your audit trail. See [SAH payment adjustments](/client-management/sah-adjustments) for more on handling under and overclaims.
Adjustments can affect the Participant Portion. If participant invoices have already been created for the period the adjustment falls in, you'll need to manually pass on the new charges or credits to the participant via your finance system, as Visualcare does not do this automatically at this time.
### "Internal Server Error"
**Symptoms:** The payment details CSV fails to upload, with the error "Internal Server Error".
**Cause:** This can mean the file size exceeds Visualcare's upload limit.
You can see more information on SAH adjustments in this article [SAH payment adjustments](/client-management/sah-adjustments)
***
## How to amend items claimed and paid in the Aged Care Claiming Portal
If you need to amend a service item that has already been claimed and paid through the Aged Care Claiming Portal (ACCP), this is managed directly in ACCP rather than in Visualcare.
Services Australia provides a training module with step-by-step guidance on how to process amendments in ACCP. You can access it at the [Services Australia ACCP amendments training module](https://hpe.servicesaustralia.gov.au/MODULES/ACPP/ACPPM10/index.html).
Amendment processing in ACCP is managed by Services Australia. If you need support beyond what the training module covers, contact the Services Australia provider helpline.
***
## Running into issues?
You can see more information on SAH adjustments in this article [SAH payment adjustments](/client-management/sah-adjustments)If your issue isn't listed here, contact the Visualcare helpdesk.
## Related articles
How to generate and submit SAH claim files in Visualcare
Setting up and managing Support at Home client agreements
Managing financials for Support at Home clients
Monitor participant and organisation-level SAH budgets
# Timesheet troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/timesheet-issues
Common timesheet issues and how to resolve them in Visualcare
This page covers the most common timesheet issues providers encounter in Visualcare. Work through the relevant fix below, and if you're still stuck, reach out to the helpdesk.
***
### Issue: Unable to edit a timesheet
**Symptoms:** A timesheet opens in read-only mode, or the edit option is unavailable.
**Cause:** The timesheet is locked, either because it's tied to a locked invoice or another lock condition.
**Fix:**
1. Go to **Timesheets** → **All Timesheets** → **Timesheets** tab
2. Locate the **Locked Invoice** and **Locked Timesheet** columns (if these columns aren't visible, use the column chooser to add them)
3. A tick in either column means the timesheet is locked
4. If the timesheet is locked by an invoice or system lock, contact Visualcare support to unlock it
***
### Issue: Unable to delete timesheets
**Symptoms:** The **Delete Timesheets** button doesn't appear on the Timesheets screen.
**Cause:** The user's User Group doesn't have the **Delete Timesheets** permission enabled.
**Fix:**
1. Identify the user's User Group - go to **Users**, select the user, and note the **User Group** assigned to them
2. Go to **User Group Security**, select the relevant User Group, and expand the **Timesheets** section
3. Set **Delete Timesheets** to **Yes** and click **Save**
4. Return to the Timesheets screen and confirm the **Delete Timesheets** button now appears
Only your organisation's system administrator can change User Group Security permissions. The Visualcare helpdesk is unable to modify user permissions on your behalf.
***
### Issue: Back-to-back location roster shifts not carrying over to timesheets
**Symptoms:** Shifts from back-to-back client location rosters don't appear in timesheets as expected.
**Cause:** The back-to-back client shifts setting in the mobile app configuration is disabled.
**Fix:**
1. Go to **Settings** → **Mobile App** → **Shift**
2. Locate the **Back-to-back shift options** section
3. Change the setting to the option that best suits your organisation's workflow
4. Click **Save**
Once enabled, back-to-back shifts carry over correctly to timesheets.
***
### Issue: Approved leave keeps reappearing in the Leave Request screen
**Symptoms:** After approving, rejecting, or deleting a leave request, the same or another leave request immediately reappears in the Leave Request screen.
**Cause:** Visualcare increments the date filter by one day each time an action is taken, which causes the next pending leave request to appear automatically.
**Fix:**
1. Go to the **Leave Request** screen
2. Change the **End Date** filter to a far future date (for example, a date several years ahead)
3. Click **Reload**
4. Select all leave requests in the list and approve, reject, or delete them as needed
***
### Issue: Shift times incorrect after daylight saving time change
**Symptoms:** Shift times on timesheets or recurring roster series show the wrong time after a daylight saving transition. A sleepover shift may show a discrepancy between the **Edit Appointment** and **Edit Series** screens.
**Cause:** Visualcare does not automatically adjust shift times for daylight saving. Recurring series that have a start date on or after the daylight saving changeover date may retain the post-DST time for that shift and all following occurrences. A discrepancy between the appointment and series screens can also occur if a user edits a series without clicking **Done**, leaving the series record with the original time.
**Fix:**
1. Go to **Timesheets** → **All Timesheets**
2. Find the affected timesheet entries
3. Edit the start and end times manually to reflect the correct times
4. Click **Save**
5. For recurring roster series, open the series via **Edit Series** on the roster, update the times, and click **Done** to apply the change to future occurrences
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
How to edit, adjust, and update timesheets in Visualcare
Viewing and managing timesheets across your organisation
Reviewing timesheet records grouped by worker
Managing worker leave requests and approvals
Configuring permissions for user groups in Visualcare
# vWorker app troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/vworker-app-issues
Common vWorker mobile app issues and how to resolve them in Visualcare
This page covers common issues providers and workers encounter with the vWorker mobile app. Work through the relevant fix below, and if you're still stuck, reach out to the helpdesk.
***
## Errors and crashes
### Issue: App crashes caused by spaces in worker web usernames
**Symptoms:** The vWorker app crashes on launch or during use for a specific worker. The worker is unable to log in or use the app.
**Cause:** The worker's web username contains spaces (including spaces embedded within the name, not just trailing spaces). Spaces in the username prevent the app from authenticating correctly.
**Fix:**
1. Open the worker's profile in vCore
2. Go to the **Details** tab and check the **Web Username** field
3. Remove all spaces from the username, including any between first and last names (use the format `FirstName.LastName`)
4. Save the profile
5. Ask the worker to log out and log back in, or reinstall the app
If multiple workers are affected, contact [support@visualcare.com.au](mailto:support@visualcare.com.au) for a bulk username cleanup across the database.
***
### Issue: "Data issue" error on app launch
**Symptoms:** Worker opens the vWorker app and sees a "data issue" error message.
**Cause:** The installed version of the app is outdated.
**Fix:**
1. Delete the current vWorker app from the device
2. Open the App Store (iPhone) or Google Play Store (Android)
3. Search for vWorker and install the latest version
4. Log in and confirm the error no longer appears
***
### Issue: "Fail to save note" error when completing a shift
**Symptoms:** Worker attempts to save a progress note and receives a "Fail to save note" error.
**Cause:** Text was copied and pasted from another app (for example, a notes or messaging app) that uses different character encoding. The special characters from the source app are incompatible with vWorker.
**Fix:**
1. Ask the worker to review the note text for any special characters (for example, curly quotes, em-dashes, or symbols)
2. Remove those characters and retype them manually rather than pasting
3. Save the note again and complete the shift
***
## Shift completion issues
### Issue: Worker unable to finish shift on the app
**Symptoms:** Worker attempts to complete a shift in vWorker but is blocked from finishing it.
**Cause:** The worker hasn't enabled GPS/location services on their device, and the provider has GPS requirements enabled for shift completion.
**Fix - ask the worker to enable location services:**
1. On iPhone: go to **Settings** → find the vWorker app → **Location** → set to **While Using** or **Always**
2. On Android: go to **Settings** → **Apps** → find the vWorker app → **Permissions** → **Location** → enable it
3. Return to the vWorker app and complete the shift
**Fix - update the GPS requirement in Visualcare (if location services aren't appropriate for this worker):**
1. Go to **Settings** → **Mobile App** → **Shift**
2. Locate the GPS requirement setting and update it as needed
3. Click **Save**
***
### Issue: Worker unable to complete shift due to travel note (Android)
**Symptoms:** Workers on Android are blocked from completing a shift because a travel note is required but the field isn't visible in the app.
**Cause:** The Mobile App settings have a conflict: the travel note field is required for shift completion but isn't visible in the app.
**Fix - show the travel note field so workers can fill it in:**
1. Go to **Settings** → **Mobile App** → **General**
2. Locate the **Travel Note** field setting and set it to visible
3. Click **Save**
4. Ask the worker to complete the shift and enter the travel note when prompted
**Fix - remove the travel note requirement:**
1. Go to **Settings** → **Mobile App** → **Shift**
2. Locate the travel note requirement and change it to **No**
3. Click **Save**
***
### Issue: Workers unable to complete shift without client signature despite setting being "not mandatory"
**Symptoms:** Workers are asked for a client signature before completing a shift, even though the global signature setting in **Settings** → **Mobile App** shows "No" or "Not mandatory".
**Cause:** The client profile has its own **Require signature** setting that overrides the global default. When this is set to anything other than "default", it takes precedence.
**Fix:**
1. Open the relevant **Client Profile**
2. Locate the **Require signature** field
3. Change the value to **Default**
4. Save the client profile
5. Ask the worker to attempt shift completion again
***
## Adding shifts
### Issue: Workers unable to add or edit shifts in the app
**Symptoms:** A worker cannot add or edit shifts in the vWorker app.
**Cause:** The mobile app settings or the worker type are not configured for shift creation.
**Fix:**
1. Go to **Settings** → **Mobile App**
2. Under the **vWorker** column, click **Home** to expand
3. Change the **Rostering** option to allow adding or editing shifts
4. Open the **Worker Profile** → **Finance** tab
5. In the **Worker Details** column, set **Worker Type** to **Contractor** or **Service Provider**
6. Click **Save**
The worker closes and reopens the app for the change to take effect. See [Enabling adhoc shifts](/apps/vworker-clocking-in-and-out#enabling-adhoc-shifts) for the full setup.
## Form issues
### Issue: Workers unable to view a form in the app
**Symptoms:** A worker opens vWorker and the expected form isn't visible, or they receive a "You cannot access the form" error.
**Cause:** The Form Template hasn't been configured to be visible to workers.
**Fix:**
1. Go to **Maintenance** → **Templates**
2. Locate the relevant form template
3. Click **Edit**
4. Enable the **Visible to Worker** checkbox
5. Click **Save**
6. Ask the worker to refresh the app and try again
***
### Issue: Incorrect form displaying for shift completion, shift start, or incidents
**Symptoms:** The wrong form appears when a worker completes a shift, starts a shift, or logs an incident in vWorker.
**Cause:** Either the wrong Form Template has been set as the Completion Form, Start Form, or Incident Form, or a division override on the client profile is pointing to a different form.
**Fix - update the form template:**
1. Go to **Maintenance** → **Templates**
2. Find the correct form for the relevant purpose
3. Click **Edit**
4. Enable the appropriate checkbox for the form type:
* For shift completion forms: enable **Is Completion Form**
* For shift start forms: enable **Is Start Form**
* For incident forms: enable **Is Incident Form**
5. Click **Save**
**Fix - check for a division override on the client profile:**
1. Open the relevant **Client Profile**
2. Check whether the client is assigned to a division
3. If so, go to **Maintenance** → **Divisions** and open the division
4. Review the form configured for that division and update it if it's pointing to the wrong template
5. Alternatively, remove the client from the division in the Client Profile if a division override isn't appropriate for that client
***
## Messaging issues
### Issue: Messages not showing recent conversations
**Symptoms:** Worker opens the messages section in vWorker but recent conversations aren't visible or appear out of order.
**Cause:** The message list is sorted in the wrong order (oldest first instead of newest first).
**Fix:**
1. Open the vWorker app
2. Tap the menu icon (three horizontal lines) in the top-left corner
3. Open **Private Messages** or **Group Messages**
4. Tap the sort icon (up/down arrow) in the top-right corner to toggle the sort order
5. If the issue persists, close and reopen the app to refresh the message list
***
### Issue: Worker receiving notifications but unable to see messages
**Symptoms:** Worker gets push notifications for new messages but when they open the messages section in vWorker, no messages appear.
**Cause:** The message list is sorted oldest-first, so new messages are at the bottom rather than the top.
**Fix:**
1. Open the vWorker app
2. Go to **Private Messages**
3. Tap the arrow icon in the top-right corner to toggle the message order from oldest-first to newest-first
***
## Notification and location settings
### Issue: Worker not receiving shift notifications
**Symptoms:** Worker reports they aren't receiving push notifications for new shifts, shift changes, or messages.
**Cause:** Notification permissions for the vWorker app are disabled on the device, or a system feature (Focus mode on iPhone, battery optimisation on Android) is silencing them.
**Fix - iPhone:**
1. Go to the device **Settings**
2. Scroll down and tap the vWorker app
3. Tap **Notifications**
4. Ensure **Allow Notifications** is turned on
5. Check that no Focus modes (for example, Do Not Disturb or Sleep) are configured to silence vWorker notifications
**Fix - Android:**
1. Go to the device **Settings**
2. Tap **Apps** and find the vWorker app
3. Tap **Notifications** and ensure **Allow notifications** is enabled
4. Return to the app settings and check **Battery** or **Battery optimization**
5. Set vWorker to **Unrestricted** or **Don't optimise** so the system doesn't restrict background notifications
***
### Issue: Requiring location services on app sign-in
**Symptoms:** You want to require workers to have location services enabled before they sign in to the vWorker app, but the setting isn't currently active.
**Cause:** The **Require GPS permission** setting in Mobile App configuration is disabled.
**Fix:**
1. Go to **Settings** → **Mobile App** → **Shift**
2. Locate the **Require GPS permission** setting
3. Change it to **Yes**
4. Click **Save**
Workers are now prompted to enable location services when they sign in to the vWorker app.
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
Setting up and managing worker access to the vWorker app
How workers sign in to the vWorker mobile app
How workers start and complete shifts in vWorker
Completing and managing progress notes in vWorker
Overview of the vWorker app menu and navigation
Creating and configuring form templates in Visualcare
# vWorker troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/vworker-issues
Common vWorker app issues and how to resolve them in Visualcare
This page covers common issues with the vWorker mobile app. For issues related to clocking in and out, see [vWorker: Clocking in and out](/apps/vworker-clocking-in-and-out).
***
### Issue: vWorker app crashes on login
**Symptoms:** The vWorker app crashes immediately when a worker tries to log in, or crashes shortly after opening.
**Cause:** Spaces in the worker's web username cause the app to crash. This includes spaces in the middle of the username, not just trailing spaces.
**Fix:**
1. Go to **Workers** → **Profile** and open the affected worker
2. Check the **Web Username** field for any spaces
3. Remove all spaces from the username, including any embedded within the name
4. Click **Save**
5. Ask the worker to log out and log back in to the vWorker app. If the issue persists, ask them to uninstall and reinstall the app
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk at [support@visualcare.com.au](mailto:support@visualcare.com.au).
## Related articles
How shifts work in the vWorker app
Set up worker access to vWorker and vOnboard
Add and configure worker profiles
# Xero export troubleshooting
Source: https://support.visualcare.com.au/troubleshooting/xero-export-errors
Common Xero export errors and how to resolve them in Visualcare
This page is the home for Xero export errors in Visualcare - invoicing, payroll, kilometre, expense, connection, and sync issues. If the fix doesn't resolve your issue or the error is not listed, contact [support@visualcare.com.au](mailto:support@visualcare.com.au).
For how to set up the Xero connection, see [Xero integration](/integrations/xero). For MYOB, SMS, and general data export issues, see [Integration troubleshooting](/troubleshooting/integration-issues).
## Invoicing errors
### Export summary errors
These errors appear on the export summary pop-up when the payer, client, or service set up is incomplete.
| Error | How to resolve |
| - | - |
| **No agreement payer accounting code** | Go to **Maintenance** → **Payers**, search for the payer missing an accounting code, click on it, and select an **Accounting Code** from the drop-down. If the contact isn't listed, click **sync contacts** in the top-right corner. |
| **No client payer accounting code** | Same resolution as above. |
| **Client missing accounting code** | Go to the client profile and select a code in the **Accounting Code** drop-down, or select a **Payer** if applicable. |
| **Service missing accounting code** | Go to **Maintenance** → **Services**, search for the service missing an **Accounting Code**, click on it, and select the code from the drop-down. If the code isn't listed, click **Sync Xero Invoice Items** in the top-right corner. |
An error on the export status page before clicking **Start Import** also means the payer, client, or service doesn't have an accounting code selected - see the resolutions above.
***
### Error: Accounting code missing in Visualcare - try syncing again
**Symptoms:** The export status page shows "Accounting code missing in Visualcare Xero contacts - try syncing again" before you click **Start Import**.
**Cause:** The client, payer, or service doesn't have an accounting code selected in Visualcare, or the Xero sync is out of date.
**Fix:**
1. Go to **Settings** → **Data Export**
2. Click all of the following sync buttons: **Sync Contacts**, **Sync Invoice Items**, **Sync Employees**, **Sync Xero Pay Items**, **Sync Tax Rates**
3. Retry the export
4. If the error persists, click **Clear Xero Token**, then click **Authorise Xero** to reconnect
5. Repeat the sync buttons above, then retry the export
***
### Error: Missing code in Xero
**Symptoms:** The export fails with "Missing code in Xero" for a service or kilometre entry.
**Cause:** The inventory item for the service is not set up or is inactive in Xero, or the kilometre pay codes are not configured in Visualcare.
**Fix - for service-related missing code:**
1. Go to **Maintenance** → **Services** and open the affected service
2. Check whether an **Accounting Code** is selected
3. Log in to Xero and go to **Business** → **Products and Services**
4. Make sure the relevant inventory item is set up and marked as active
**Fix - for kilometre-related missing code:**
1. Go to **Settings** → **Finance** → **Kilometre** and confirm the kilometre codes are configured
2. Open the relevant client agreement and check the **Override** setting
3. If **Override** is ticked, make sure a kilometre code is selected. If the override isn't needed, untick it
***
### Error: Item code \[code] is not valid
**Symptoms:** The invoice export summary shows a line status reason such as "HTTP 200: Item code '\[code]' is not valid". The line isn't exported to Xero.
**Cause:** Xero doesn't recognise the item code that Visualcare sent on the invoice line. Visualcare sends the service's **Accounting Code** for service lines and the kilometre **Charge code** for kilometre lines. The error occurs when that code doesn't match an active inventory item in Xero.
The "HTTP 200" prefix doesn't mean the line exported successfully. Read the message after the prefix to find the cause.
**Fix - for service lines:**
1. Note the code shown in the error message
2. Go to **Maintenance** → **Services** and open the service used on the affected invoice line
3. Check the **Accounting Code** drop-down. If the selected code doesn't match the code of an inventory item in Xero, select the correct item
4. If the correct item isn't listed, click **Sync Xero Invoice Items** in the top-right corner, then select it
5. Log in to Xero, go to **Business** → **Products and Services**, and make sure the item exists and is active
6. Retry the export
**Fix - for kilometre lines:**
1. Go to **Settings** → **Finance** → **Kilometre**
2. Check that the **Charge code** matches the code of an active inventory item in Xero
3. Open the relevant client agreement and check the **Override** setting. If **Override** is ticked, make sure the selected kilometre code is valid
4. Retry the export
***
### Error: FAIL Tracking option not found in Xero
**Symptoms:** The export fails with "FAIL Tracking option \[value] in tracking category \[name] not found in Xero".
**Cause:** A value in Visualcare doesn't exactly match the corresponding tracking option in Xero. This is usually caused by a typo or extra space.
**Fix:**
1. Go to **Settings** → **Data Export** and scroll to the **XERO** section
2. Note which field is selected under **Link to Field**
3. Navigate to that field in Visualcare (for example, Area, Service Reference, Client Division)
4. Check that the field's value exactly matches the tracking option configured in Xero, including spelling and spacing
***
### Error: To update fields on a paid invoice line item / Invoice not of valid status for modification
**Symptoms:** The export fails with one of these messages when exporting expenses or invoices.
**Cause:** The next invoice number in Visualcare has already been used or paid in Xero, so Xero rejects the update.
**Fix:**
1. Go to **Settings** → **Data Export** → **Accounting Software**
2. Update the **Next Invoice Number** to a value that hasn't been used in Xero yet
Set your invoice prefix to "VC" in **Settings** → **Data Export**. This prevents invoice number conflicts if anyone creates invoices manually in Xero.
***
### Invoices exporting to the wrong accounting code
**Symptoms:** Invoices export to Xero but are assigned to the wrong contact or accounting code.
**Cause:** Visualcare uses a hierarchy to determine which accounting code to apply. The order is: (1) Client Agreement Payer, (2) Client Payer, (3) Client Profile Accounting Code. If any of these are set incorrectly, invoices export to the wrong code.
**Fix:**
1. Go to **Maintenance** → **Payers**
2. Search for the payer and open their profile
3. Check the **Accounting Code** field and update it if needed
4. Also check the client agreement to confirm the correct payer is selected there
***
### Error: GST not exporting correctly (Xero Use GST)
**Symptoms:** Invoices export with GST when they should be GST-free, or expenses export without GST, or GST is doubled.
**Cause:** The **Xero Use GST** checkbox in Visualcare controls whether Visualcare applies its own GST codes or pulls them from the Xero inventory item settings. A mismatch in either direction produces incorrect GST on the export.
**Fix - if invoices export with GST when they should be GST-free:**
1. Go to **Settings** → **Data Export** → **Xero** section
2. Tick **Xero Use GST**. This tells Visualcare to apply its own GST codes rather than pulling them from the Xero inventory item settings
**Fix - if expenses export without GST, or GST is doubled:**
1. Go to **Settings** → **Data Export**
2. Scroll down and untick the **Xero Use GST** checkbox
3. Confirm that the GST rate is correctly configured on the inventory item in Xero
***
### Error: No matching Xero contacts found
**Symptoms:** A "No matching Xero contacts found" browser error appears when exporting invoices to Xero.
**Fix:**
1. Re-sync your Xero contacts: go to **Settings** → **Data Export** and click **Sync Contacts**
2. Check that each client, payer, and agreement has the correct Xero contact selected, and that names and spellings match what is recorded in Xero
3. Review your invoice grouping settings in **Settings** → **Data Export** - incorrect grouping prevents the export matching to a single Xero contact. If invoice grouping is enabled, the recommended configuration is:
* **Group Invoice By 1:** Payer
* **Group Invoice By 2:** Client Code or Client Account Code
## Payroll errors
### Export summary errors
These errors appear on the export summary pop-up when the worker or service set up is incomplete.
| Error | How to resolve |
| - | - |
| **No support worker accounting code** | Go to **Worker Profile** → **Finance** and select an **Accounting Code** in the worker profile. |
| **No service payroll code** | Go to **Maintenance** → **Services**, search for the service, click on it, and select a payroll code for the level you were attempting to export. |
***
### Issue: Start Import stuck on "Checking XERO Data"
**Symptoms:** After clicking **Start Import**, the page stays on "Checking XERO Data" and doesn't progress.
**Cause:** The Xero integration has disconnected.
**Fix:**
1. Go to **Settings** → **Data Export**
2. Click **Clear Xero Token**
3. Click **Authorise Xero** and log in to Xero when prompted
4. Try the import again
***
### Error: Pay items and employees not showing after sync
**Symptoms:** After syncing, Xero pay items or employees don't appear in the drop-down lists in Visualcare.
**Cause:** A value in the **KeyPay API Key** field is causing the system to prioritise KeyPay over Xero, which suppresses the Xero sync.
**Fix:**
1. Go to **Settings** → **Data Export** → **KeyPay Connection**
2. Clear any value in the **API Key** field
3. Click the **x** to close the window and click **Save**
4. Scroll down and click **Sync Xero Pay Items** and **Sync Employees**
***
### Error: FAIL: Earnings Rate does not exist or is not valid for timesheets
**Symptoms:** The payroll export fails with this message.
**Cause:** A pay item in Xero is not correctly configured. Common causes include the type of units not being set to **Hours**, the pay item being inactive, the item not being in the worker's pay template, the pay item being set as an allowance rather than an earnings type, or an apostrophe in the pay item name.
**Fix:**
1. Log in to Xero and find the affected pay item
2. Confirm the item is set up as OTE or Reimbursement, the **Type of Units** is set to **Hours**, and the item is active
3. If using pay templates, make sure the pay item is added to the template for the affected worker
4. Check for any apostrophes in the pay item name and remove them
5. Go to **Settings** → **Data Export** in Visualcare and click the relevant Xero sync buttons
6. Retry the export
***
### Error: Employee doesn't have a pay run calendar
**Symptoms:** The export fails with "Employee doesn't have a pay run calendar".
**Cause:** The worker in Xero doesn't have a pay calendar assigned.
**Fix:**
1. Log in to Xero and go to **Payroll** → **Employees**
2. Open the affected worker
3. Under the **Employment** tab, check the **Pay Calendar** field
4. If it's not set, click **Edit**, select the correct calendar, and save
5. Retry the export
***
### Error: FAIL! Null when exporting allowances
**Symptoms:** The export fails with "FAIL! Null" when exporting payroll allowances (for example, first aid allowances).
**Cause:** Too many allowance items are included in a single export batch.
**Fix:** Export in smaller batches of 40 items or fewer. Select a subset of the items, export them, then repeat for the next batch.
***
### Error: Employee name not found in Xero
**Symptoms:** The export fails with "Employee name not found in Xero. Please make sure Worker Accounting Code match Employee name in Xero".
**Cause:** Either the worker profile doesn't have an accounting code selected, or there is an apostrophe in the employee name on Xero that prevents the data from being read.
**Fix:**
1. Go to the worker profile and make sure an **Accounting Code** is selected
2. If the code is already selected, check for an apostrophe in the employee name in Xero. Remove it, resync contacts in Visualcare, reselect the worker accounting code, and try the export again
***
### Error: No pay runs found
**Symptoms:** The export fails with "No pay runs found" when exporting kilometres.
**Cause:** No pay run exists in Xero for the export period.
**Fix:**
1. Log in to Xero and create a pay run that covers the same date range as your export
2. Save or finalise the pay run
3. Retry the export in Visualcare
***
### Error: No payslips found on payrun
**Symptoms:** The export fails with "No payslips found on payrun" when exporting kilometres or expenses.
**Cause:** The timesheets haven't been approved in Xero yet.
**Fix:**
1. Log in to Xero and go to **Payroll** → **Pay employees**
2. Approve the timesheets for the relevant pay period
3. Retry the export in Visualcare
***
### Error: Provided period doesn't correspond with a pay period
**Symptoms:** The export fails with "Provided period doesn't correspond with a pay period".
**Cause:** The worker's pay calendar in Xero doesn't align with the export period selected in Visualcare.
**Fix:**
1. Log in to Xero and go to **Payroll** → **Employees**
2. Open the affected worker and check the **Pay Calendar** under the **Employment** tab
3. Update the calendar so it matches your intended export period
4. If needed, also check **Settings** → **Finance** in Visualcare and confirm the **Payroll Start Date** and **Payroll Cycle Days** are correct
5. Retry the export
***
### Error: FAIL A validation exception occurred
**Symptoms:** The payroll, kilometre or Pay Cat allowance export fails with "FAIL A validation exception occurred". On a Pay Cat allowance export, the result shows some lines succeeded and some failed (for example, "96 succeeded, 8 failed"), and the failed lines all belong to one employee.
There are two causes. If the failed lines all belong to one employee, check the second cause first.
**Cause 1:** The kilometre pay type in Visualcare doesn't match how the KM pay codes are set up in Xero (Ordinary Time Earnings vs Reimbursement).
**Fix - for the kilometre pay type:**
1. Go to **Settings** → **Finance** → **Kilometre** in Visualcare and check how your KM pay codes are set up in Xero
2. Go to **Settings** → **Data Export** → **XERO** → **KM Pay Type**
3. Select **pay item** if the codes are Ordinary Time Earnings, or **reimbursement** if they're reimbursements
4. Retry the export
**Cause 2:** The employee doesn't have a superannuation line on their pay template in Xero. Xero rejects the allowance lines for that employee. This is common for new starters.
**Fix - for a missing superannuation line:**
1. Log in to Xero and go to **Payroll** → **Pay employees**, open the draft pay run, and open the affected employee's payslip
2. Add a superannuation line to the payslip and save. This fixes the current pay run, because the timesheet was approved to the pay run before the template was changed.
3. Go to **Payroll** → **Employees**, open the employee, and add the superannuation line to their **Pay Template** so future pay runs include it
4. In Visualcare, select only the affected employee's allowance lines and export them again. Allowance exports add to the approved payslip rather than replacing it, so re-exporting lines that already succeeded doubles them up in Xero.
Adding the allowance itself to the employee's pay template doesn't fix this error. The superannuation line is what's missing.
***
## Kilometre export errors
### Error: FAIL Unknown error during KM export
**Symptoms:** The KM export fails with "FAIL Unknown error".
**Cause:** The pay item assigned in Xero to the KM pay code has been modified or deleted.
**Fix:**
1. Go to **Settings** → **Finance** → **Kilometre** in Visualcare
2. Confirm a valid **Pay Code (KM)** is selected
3. Log in to Xero and verify the pay item exists and is correctly configured
4. Retry the KM export
***
### Warning: Super guarantee warning when exporting kilometres
**Symptoms:** A super guarantee warning appears during the KM export to Xero.
**Cause:** The employee in Xero does not have super added to their pay template.
**Fix:**
1. Log in to Xero and go to **Payroll** → **Employees**
2. Open the affected employee
3. Add super to the employee's pay template
4. Save the employee record in Xero
5. Retry the KM export in Visualcare
***
### Error: TrackingItemID is required for each timesheet line
**Symptoms:** The export fails with "TrackingItemID is required for each timesheet line".
**Cause:** Timesheet tracking is enabled in Xero but not configured in Visualcare.
**Fix - if you don't want timesheet tracking:**
* Log in to Xero and disable timesheet tracking
**Fix - if you want to use timesheet tracking:**
* Contact [support@visualcare.com.au](mailto:support@visualcare.com.au) and provide your Xero category name, the option values, and the Visualcare field you'd like mapped to it
* Once the configuration is done, retry the export
If tracking is already configured but you're still seeing this error, check that the tracking fields are filled in for the timesheets you're trying to export.
***
## Connection errors
### Error: Authorise Xero Error Code 500
**Symptoms:** A "500" error appears when trying to authorise the Xero integration.
**Cause:** A browser caching or session issue is interrupting the authentication process.
**Fix:**
1. Open your browser in **Incognito Mode** (or Private Browsing) and try authorising Xero again
2. If the error persists, exit incognito mode, clear your browser cache and cookies, close and reopen your browser, then retry
3. If the issue continues, try a different browser (for example, Chrome instead of Edge)
***
### Error: FAIL undefined or Array no session during export
**Symptoms:** The export fails with "FAIL undefined" or "Array no session".
**Cause:** The connection between Visualcare and Xero has expired or is no longer valid.
**Fix:**
1. Go to **Settings** → **Data Export**
2. Click the pink **Clear Xero Token** button
3. Click **Authorise Xero** and log into your Xero account to reconnect
4. Click all the sync buttons (for example, **Sync Xero Pay Items**, **Sync Contacts**)
5. Retry the export
***
### Error: Error sending to Xero \[object Object]
**Symptoms:** The export fails with "Error sending to Xero. \[object Object]" when sending a worker to Xero.
**Cause:** Data in the worker profile contains formatting issues. The most common causes are spaces in the Tax File Number (TFN) field or invalid characters in the worker's address.
**Fix:**
1. Open the **Worker Profile** in Visualcare
2. Go to the **Details** tab and review the address for typos, extra symbols, or incorrect formatting
3. Go to the **Finance** tab and locate the **TFN** field in the Worker Details column
4. Remove any spaces or non-numeric characters from the TFN
5. Click **Save** and retry the export
***
## Sync issues
### Issue: Xero sync not picking up new codes
**Symptoms:** After adding new contacts, employees, or inventory items in Xero, they don't appear in Visualcare after syncing.
**Cause:** An apostrophe in an item's name in Xero prevents the sync from reading it correctly.
**Fix:**
1. Log in to Xero and review recently created or updated contacts, employees, or inventory items
2. Remove any apostrophes from names
3. Go to **Settings** → **Data Export** in Visualcare and click the relevant sync buttons again
***
## Expense export errors
### Error: Date cannot be changed on an invoice that has payments or credit notes allocated / invoice already exists
**Symptoms:** Expense exports to Xero fail with messages like "Date cannot be changed on an invoice that has payments or credit notes allocated to it", "The status DRAFT cannot be applied", or "The document cannot be edited as it is currently dated before the end of year lock date".
**Cause:** Either the expense has already been exported and the invoice is locked in Xero, or there's an invoice number clash.
**Fix - if the invoice already exists and is locked:**
* These invoices need to be managed or voided directly in Xero
**Fix - if there's an invoice number clash:**
1. Go to **Settings** → **Data Export**
2. Find the **Next Invoice Number** field
3. Increase the value by five to ten (for example, if the current value is INV-100, change it to INV-105 or INV-110)
4. Click **Save** and retry the export
***
## Running into issues?
If your issue isn't listed here, contact the Visualcare helpdesk.
## Related articles
General Xero, KeyPay, and data export errors
Set up and configure the Xero integration
How to export timesheets and payroll data from Visualcare
Common MYOB export errors and fixes
# vWorker: Settings
Source: https://support.visualcare.com.au/v-worker-settings
The **Mobile App** settings in vCore control how the vWorker app behaves for all workers in your organisation. This includes what workers can do when starting and completing shifts, what they must record, and how the app handles security and location.
Settings changed here apply to every worker using vWorker. Some settings can be overridden at the client or worker level, and these are called out below.
## Finding the settings
1. Go to **Settings** → **Mobile App**
2. Under the **vWorker** column, click a section to expand it
3. Update the settings as needed
4. Click **Save**
Workers may need to log out of vWorker and log back in, or close and reopen the app, before some changes take effect.
## General
| Setting | What it does |
| - | - |
| **Prevent User taking Screenshot** | When set to **Yes**, workers can't take screenshots in the app. When set to **No**, screenshots are allowed, and Visualcare emails the address in **Settings** → **Company Info** → **Email** each time a worker takes one. |
| **Travel Note** | Controls whether the travel note field is visible to workers when they complete a shift. |
| **Verify password every time the app returns from background** | Workers **must** enter their password if screen locks |
| **Edit Profile Picture** | When set to **Yes**, workers can edit their own profile picture that is displayed. When set to **No**, this is fully controlled by the admin users. |
| **Worker name format** | **Control** how much of the workers name is displayed. |
| **Show buttons, fields, information** | **Control** what is shown in areas throughout the app for the worker. |
If the travel note is required in the **Shift** section but hidden in the **General** section, workers on Android can't complete their shifts. Make sure the field is visible whenever it's required.
## Shift
| Setting | What it does |
| - | - |
| **Require GPS permission** | When set to **Yes**, workers are prompted to turn on location services when they sign in to vWorker. |
| **GPS requirement for shift completion** | Controls whether workers need location services turned on to complete a shift. If a worker can't use location services, update this setting rather than leaving them unable to finish shifts. |
| **Travel note requirement** | Controls whether workers must enter a travel note to complete a shift. |
| **Require Client signature** | Sets the default for whether workers need a client signature to complete a shift. |
| **Back-to-back shift options** | Controls how back-to-back location roster shifts are handled, including whether they carry over correctly to timesheets. |
| **Create tasks from shift notes** | Travel notes or completion notes entered in vWorker can automatically create a task in vCore. |
| **Show actual Start/Finish Time** | When the worker clocks in, the Actual start time will show in brackets underneath the rostered start/finish times. |
| **Show KM between shifts when completing a shift** | By default, KM during the shift is always shown for the worker. This is an extra field to allow a worker to put in KM's travelled between shifts |
| **Show "Any signs of deterioration" when completing a shift** | This will display a **toggle** for the worker at the end of a shift. If it is toggled to **Yes**, the client's Case Manager will get an email alert. If no Case Manager, the company settings email recieves the notification. |
| **Show all other worker(s) for multi-workers/location shift** | Will display any other workers rostered on **to the same location** and option to show any on the whole day or only for that workers shift time. |
| **Require workers to enter a note when completing shift** | Ensures the worker must enter a completion note at the end of the shift, app will **not clock out** unless there is one. |
| **Variation/Travel notes to create a task** | If a worker enters either of these through the mobile app, a task is created for the **Case Manager.** |
| **Note/Photo visibility when workers submit** | Control who can see the notes or photos. Worker would be any worker who **works with the client**, and client's would be anyone who has access to **vAboutMe.** Invisible means only office staff can see the notes and photos. |
| **Shift Report Selection Prompt (Allow worker to choose which shift for filling completion form)** | Relevant for back to back shifts- if allowed, worker can choose which shift to fill out the completion form on. |
| **Require workers to enter 'KM travelled during shift' and 'Travel notes' when completing shift** | Ensures worker has to fill these fields out before clocking out of the shift. |
| **Back to back location shifts (client timesheet confirmed if shift is within worker start/finish time)** | Worker only needs to clock in at the beginning of shift and end to confirm multiple back to back shifts in location. Disable requires worker to clock in and out of each portion of the back to back shifts. |
A client's own **Require signature** setting overrides the default set here. If workers are asked for a signature when the default is set to not required, open the client profile and set **Require signature** to **Default**.
## Home
| Setting | What it does |
| - | - |
| **Rostering** | Controls whether workers can add or edit shifts from the app. |
| **Number of days displayed** | Will show the worker their shifts for the next xx amount of days. |
| **Distance and Travel time** | Additional option for the worker to view distance (km's) and Travel time (minutes) between their shifts in one day. |
Workers can only add or edit shifts if their **Worker Type** is set to **Contractor** or **Service Provider** on the **Finance** tab of their profile. See [Enabling adhoc shifts](/apps/vworker-clocking-in-and-out#enabling-adhoc-shifts) for the full setup.
## Other vWorker settings
| Setting | What it does |
| - | - |
| **Require login each time** | When turned on, workers must log in every time they open the app. When turned off, workers stay logged in until they log out. |
| **Prompt to cancel incomplete form** | When ticked, workers see a prompt to cancel any incomplete forms and can still start their shift. When unticked, workers must complete open forms before they can start a shift. |
| **Adhoc shifts** | Allows workers to create unscheduled shifts in the app. |
| **Prevent workers submitting leave requests and updating availability on the vWorker app and the onboarding portal when there are shifts assigned in the next** | 1, 2, 4 & 6 week options. E.g. If worker has shifts assigned in the next 2 weeks, and setting set for "**2 weeks**", the worker will not be able to change their availability and a note will appear advising to contact the office. If no shifts assigned to the worker, worker can update availability in the app and onboarding portal. This applies to both entering **leave** and updating **availability**. "**No Limitations"** means worker can enter leave/update availability even if they have a shift the **next day.** |
| **Advanced Incident** | Toggle this to turn on the ability to have up to three separate Incident forms: Client Incident, Worker Incident and Location Incident |
## Settings managed outside Mobile App
Some things workers see in vWorker are controlled in other areas of vCore:
| What you want to change | Where to change it |
| - | - |
| Which forms workers can see in the app | **Maintenance** → **Templates**, then tick **Visible to Worker** on the form template |
| Which form appears at shift start, shift completion or for incidents | **Maintenance** → **Templates**, then tick **Is Start Form**, **Is Completion Form** or **Is Incident Form**. Check for division overrides in **Maintenance** → **Divisions**. |
| Whether a specific client requires a signature | The **Require signature** field on the client profile |
| Client health information shown to workers | The **Details** tab on the client profile |
## Running into issues?
See [vWorker app troubleshooting](/troubleshooting/vworker-app-issues) for common errors and fixes.
## Related articles
Send login details and manage worker access to the app
How workers start and complete shifts through the app
Overview of all features available in the vWorker app menu
Fixes for common vWorker app issues
# Visualcare Support Centre
Source: https://support.visualcare.com.au/webinar-support-centre
Our first best practice webinar walked customers through the newly launched Support Centre . The session covered how to navigate the new layout, demonstrated the built-in search and AI Search feature for finding answers quickly without raising a ticket. It also touched on the Getting Started guide for new users and how articles are structured with related links to guide customers to further information. The session wrapped up with a section on best practice in lodging a Support ticket and a live Q\&A.
# Adding skills
Source: https://support.visualcare.com.au/worker-management/adding-skills
How to add and manage skills on a worker profile in Visualcare
Worker skills help you match the right worker to the right shift. Skills assigned to a worker profile are used when searching for workers during rostering, making it easier to find someone with the right capabilities.
## What you'll need
* A worker profile open in vCore
* Skills configured in **Maintenance** → **Workers** → **Skills** (see [Compliance workflows and settings](/worker-management/compliance-workflows-and-settings) for details on managing maintenance lists)
## Instructions
Navigate to the worker's profile and open the **Skills** tab in the lower section of the screen.
Click **New Skill** to add a skill one at a time. Select the skill from the list and save.
To edit an existing skill, double-click on the item.
Click **Add Multiple Skills** to assign several skills in one go. Select the skills you need and confirm.
Keep worker skills up to date so that rostering searches return accurate results. When a worker completes new training or gains a new qualification, add the corresponding skill to their profile.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Track worker training and qualifications
Set up a new worker in Visualcare
Configure skills and other maintenance lists
# Budget hours
Source: https://support.visualcare.com.au/worker-management/budget-hours
Set daily budget hours on a worker profile to prevent over-rostering in Visualcare
Budget hours per day define how many hours a worker is allocated across a seven-day week. This value flows through to rostering and helps prevent you from rostering a worker beyond their allocated hours.
## Setting budget hours
Open the worker's profile and navigate to the **Finance** tab. Locate the **Budget Hours per Day** field in the **Worker Details** section.
Enter the hours per day based on a seven-day week. For example, for a worker on 36 hours per week, divide by seven days to get 5.14 hours per day.
The budget hours value is used in rostering to flag when a worker is approaching or exceeding their allocated weekly hours. Keep this field up to date when a worker's contracted hours change.
## How it works
| Scenario | Calculation |
| - | - |
| 38 hours per week | 38 / 7 = 5.43 hours per day |
| 36 hours per week | 36 / 7 = 5.14 hours per day |
| 25 hours per week (part-time) | 25 / 7 = 3.57 hours per day |
The system uses this daily figure multiplied across seven days to determine the worker's total weekly allocation. When rostering, you'll see a warning if a shift allocation would push the worker over their budgeted hours.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure bank details and pay rate levels
Set when a worker is available for shifts
Configure award details and employment information
# Worker compliance configuration
Source: https://support.visualcare.com.au/worker-management/compliance-configuration
Understand how compliance items flow from Maintenance settings to worker profiles in Visualcare
Compliance items in Visualcare flow from the Maintenance area to individual worker profiles. Once configured in Maintenance, compliance items appear automatically on worker profiles based on how your organisation has set them up, including links to worker roles and worker types.
## How compliance items flow to profiles
Compliance items configured in **Maintenance** → **Workers** → **Worker Compliance** appear on each worker's **Compliance** tab. The items that appear depend on the configuration:
* **Mandatory items** are added to all worker profiles automatically
* **Role-linked items** are added to workers assigned to specific roles
* **Type-linked items** are added to workers assigned to specific worker types
* Items added via **Add to All Workers** appear on every profile
## Role-based compliance
Roles link specific compliance items to groups of workers. Only workers assigned to a particular role see the compliance items tied to that role.
### Setting up roles
1. Go to **Maintenance** → **Workers** → **Worker Roles**
2. Click **Add Role** to create a new role
3. Open the worker's profile and select the relevant role
### Linking roles to compliance items
1. Go to **Maintenance** → **Workers** → **Worker Compliance**
2. Highlight the compliance item
3. Click **Role Link** and select the role(s) to associate with this item (you have the option to select multiple roles)
After linking, choose one of the following to push the item to workers:
* **Add to Workers by Role** - adds the item to all workers with the linked roles
* **Add to All Workers** - adds the item to every worker regardless of role
Worker Type works the same way. Highlight the compliance item, click **Worker Type Link**, select the types, and then use **Add to Workers by Type** to push the item.
## Compliance in rostering
When you use the select button to choose a worker for a shift in client rosters, only compliant workers are highlighted by default.
By default, rostering only shows workers with no expired items. To see workers with expired items, select the filter and click **Expired**.
## Retiring or deleting compliance items
If a compliance item is no longer needed, there are two ways to retire it from **Maintenance** → **Workers** → **Worker Compliance**. Which option you choose depends on whether you want to keep the item's history on worker profiles.
| Option | What happens to the master item | What happens on existing worker profiles |
| - | - | - |
| **Edit** (untick Mandatory and Visible to Workers) | Stays in Maintenance, but is no longer required or shown to workers | Copies already on worker profiles stay where they are |
| **Delete** | Permanently removed | Removed from every worker profile it appears on |
### Editing an item to stop using it
Editing is the safest way to stop using a compliance item, because nothing is removed from worker profiles.
1. Go to **Maintenance** → **Workers** → **Worker Compliance**
2. Highlight the compliance item and click **Edit**
3. Untick **Mandatory** and **Visible to Workers**
4. Save your changes
Editing only quietens the master item. It does not remove the item from worker profiles that already have it. Any copies pushed to workers before the change will still appear on their **Compliance** tab.
### Removing role and worker type links
If a compliance item is linked to a role or worker type, it will keep being added to new starters who are given that role or type, even after you have edited it. To stop a retired item coming back:
1. Go to **Maintenance** → **Workers** → **Worker Compliance**
2. Highlight the compliance item
3. Click **Role Link** and deselect all roles
4. Click **Worker Type Link** and deselect all worker types
5. Save your changes
Check the role and type links whenever you retire an item. This is the most common reason a retired item keeps reappearing on new worker profiles.
### Removing copies already added to workers
If an item was pushed to workers using **Add to All Workers**, **Add to Workers by Role** or **Add to Workers by Type**, each worker received their own copy of the item. Editing or unlinking the master item does not remove these copies.
There is no bulk remove option in Maintenance. If you need an item removed from multiple worker profiles but want to keep the master item, contact the Visualcare helpdesk for assistance.
### Deleting an item
Deleting a compliance item removes it from Maintenance and from every worker profile it appears on. When you click **Delete**, a warning appears to confirm the item will also be deleted from support worker profiles.
Deleting a compliance item is permanent and cannot be undone. The item is removed from every worker profile that has it, and there is no archive option. If you may need the item's history later, edit the item instead of deleting it.
To delete an item:
1. Go to **Maintenance** → **Workers** → **Worker Compliance**
2. Highlight the compliance item
3. Click **Delete**
4. Read the warning, then click **Delete** to confirm
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure compliance items in Maintenance
Day-to-day compliance management on worker profiles
Set up a new worker in Visualcare
# Compliance workflows and settings
Source: https://support.visualcare.com.au/worker-management/compliance-workflows-and-settings
Configure worker compliance items, roles, skills, and training items in Visualcare Maintenance
The Maintenance area in vCore is where you configure the compliance items, roles, skills, training items, leave types, and statuses that flow through to worker profiles. This article covers the worker-related settings available under **Maintenance** → **Workers**.
## Worker compliance items
Go to **Maintenance** → **Workers** → **Worker Compliance** to manage compliance items.
### Adding a compliance item
Click **Add Compliance Item**, fill in the fields below, and click **Save**.
| Field | Description |
| - | - |
| **Description** | The name of the compliance item |
| **Expiry Days** | Number of days from the start date to the expiry date (for example, 365 for annual renewal) |
| **Warning Days** | Number of days from the start date to the alert date (for example, 335 for a 30-day warning before annual expiry) |
| **Mandatory** | Tick if this item is mandatory for all workers |
| **No Expiry Date** | Tick if the item does not expire |
| **Visible to Workers** | Tick to make the item visible to workers in their mobile app or portal |
| **No Start Date** | Tick if the item does not have a start date |
### Linking to roles and worker types
Link compliance items to specific **Worker Roles** or **Worker Types** so that only relevant workers see them. When creating a new compliance item, push it to workers using one of these options:
* **Add to Workers by Role** - adds the item to workers with linked roles
* **Add to Workers by Type** - adds the item to workers with linked types
* **Add to All Workers** - adds the item to every worker
## Worker roles
Go to **Maintenance** → **Workers** → **Worker Roles** to manage the list of roles available on worker profiles.
* Click **Add Role**, enter the role name, and click **Add**
* To delete a role, click on it and select **Delete**
## Skills
Go to **Maintenance** → **Workers** → **Skills** to manage the skills list. Skills assigned to worker profiles assist in searching for workers when rostering.
* Click **Add Skill**, enter the **Code** and **Description**, and click **Add**
* To edit, click the skill, update the description, and click **Save**
* To delete, click the skill and click **Delete**
## Training items
Go to **Maintenance** → **Workers** → **Training Items** to manage training items.
* Click **Add Training Items**, enter the **Code** and **Description**, and click **Save**
* Link relevant forms to a training item using the **Template** drop-down
* To edit, click the item, update the description, and click **Save**
* To delete, click the item and click **Delete**
## Leave types
Go to **Maintenance** → **Workers** → **Leave Type** to manage the leave types available for worker leave requests.
* Click **Add Leave Type**, enter a **Leave Code** and **Leave Type**, and click **Add**
* To edit, click the leave type, update the description, and click **Save**
* To delete, click the leave type and click **Delete**
Leave types configured here appear in the leave request workflow in both vCore and the vWorker mobile app.
## Worker status
Go to **Maintenance** → **Workers** → **Worker Status** to add an additional filtering layer for worker lists.
* Click **Add Status**, enter the detail, and click **Add**
* To delete, click the status item and select **Delete**
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How compliance items flow from Maintenance to profiles
Day-to-day compliance management on worker profiles
Add skills to a worker profile
Manage worker leave requests
# Contractor setup
Source: https://support.visualcare.com.au/worker-management/contractor-setup
Set up contractors in Visualcare, configure pay rates, and export contractor data to Xero
Contractors are handled differently from employees in Visualcare. They're created as suppliers or contacts in Xero (not as employees), and when you export contractor data, Visualcare exports the actual pay rate as an invoice under "Bills to Pay" in Xero rather than just hours.
Many providers don't export contractor data from Visualcare - they handle contractor invoicing separately. Check with your finance team before setting up the full export workflow. If you're not exporting, you only need to set **Worker Type** to **Contractor** on the worker profile.
## Setting up the worker profile
Go to **Workers** → **Profile** and select the contractor.
Scroll to the **Finance** tab and set:
* **Accounting Code** - select the contractor from the **Suppliers** list (not from Employees). If they don't appear in the list, they need to be created as a contact in Xero first.
* **Worker Type** - select **Contractor**. This also allows them to add shifts for themselves in vWorker.
Click **Save**.
## Choosing a pay rate method
If you're exporting contractor data, you need to decide how to handle pay rates. There are two methods:
| Situation | Recommended method |
| - | - |
| Fewer than 10 contractors | Method 1: Specific pay level |
| All contractors charge the same rate for the same service | Method 1: Specific pay level |
| 10 or more contractors with different rates | Method 2: Contractor-specific services |
| Brokerage or large providers | Method 2: Contractor-specific services |
### Method 1: Specific pay level per contractor
This method creates a unique pay level for each contractor (or group of contractors at the same rate).
Go to **Settings** → **Data Export** → **Finance**. Scroll to the **Pay Level** section, select an unused pay level, and rename it to identify the contractor (for example, "Contractor - John" or "Contractor Level 1"). Click **Save**.
Go to **Workers** → **Profile**, select the contractor, open the **Finance** tab, and set **Pay Rate Level** to the pay level you created. Click **Save**.
Go to **Maintenance** → **Services**. For each service the contractor provides, enter their pay rate against the pay level you created. Click **Save**.
There is a hard cap of 48 pay levels. If you have multiple contractors at different rates for the same service, each needs a separate pay level. If you hit the cap, switch to Method 2.
### Method 2: Contractor-specific services
This method creates a unique service for each contractor. It involves more setup but has no pay level limit.
Go to **Maintenance** → **Services**. Find the service the contractor provides and click **Copy** (or create a new service). Rename it to include the contractor's name - for example, "Self-Care, Weekday, Daytime - Contractor Jack". Enter the contractor's pay rate for the appropriate pay level. Leave the billing and accounting codes the same. Click **Save**.
When rostering this contractor, select their contractor-specific service. The correct pay rate applies automatically.
Use clear naming conventions like "Service Name - Contractor FirstName" so rostering staff can easily find the right service.
* No limit on the number of contractors
* The service list gets longer (multiplied by the number of contractors)
* Rostering staff need to select the correct contractor-specific service
* Each contractor-specific service needs to be added to the relevant client agreements
## Exporting contractor data to Xero
Once contractors are rostered and shifts are confirmed:
Go to **Timesheets** → **Data Export** and select your date range.
Select the contractor shifts you want to export. Click **Export Timesheets** → **Export Supply to Xero**.
The system checks that each worker has an accounting code mapped to a supplier and that each service has an accounting code.
Click **Process Export**. In Xero, the export appears as an invoice under **Bills to Pay** with the contractor's name and the amount based on their pay rate.
If you get a "No accounting code" error, make sure the service has an accounting code set (not the payroll code).
## Running into issues?
See [Finance troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up worker profiles in Visualcare
Configure pay rates and pay levels
Manage services and service codes
Export timesheet data to your payroll software
# Creating a worker profile
Source: https://support.visualcare.com.au/worker-management/creating-a-worker-profile
How to add a new worker to Visualcare and populate their profile with personal and employment details
A worker profile stores all the key information about a team member, from personal details to compliance items, pay rates, and availability. Every worker in your organisation needs a profile before they appear in rostering or receive access to mobile apps.
## What you'll need
* Access to the **Workers** module in vCore
* The worker's first and last name (at minimum)
## Instructions
Go to **Workers** → **Profile** to open the worker list. You'll see all current workers listed here.
Use the **Search** box in the top left corner to quickly find an existing worker by name, or search by specific fields such as first name and last name.
Click **Add Worker** at the top of the list.
Enter the worker's first and last name, then click **Create**.
The worker profile opens with tabs and basic information at the top of the screen, along with additional tabs and more detailed subsections at the bottom.
To add or edit information, click in the field to type or select from the drop-down, then click **Save**. The page prompts you with a pop-up if you try to leave without saving.
Some profile fields are customisable for your organisation:
* **Areas** - configured in **Maintenance** → **Areas**
* **Divisions** - configured in **Maintenance** → **Divisions**
* **Groups** - configured in **Maintenance** → **Groups**
* **Payers** - configured in **Maintenance** → **Payers**
Open the **Details** tab to enter the worker's general information such as address, languages, and allergies.
In the **Next of Kin** section, enter contact details for up to two next of kin contacts.
If the worker holds a driver's licence, tick **Drivers Licence** and enter the relevant details.
Enter the worker's National Disability Insurance Scheme (NDIS) clearance details.
If applicable, fill in the worker's vehicle insurance details (policy number and insurance type) and vehicle details (including registration number).
Enter auditor details including name and date where relevant.
Click **Save** at the top of the profile to save all changes. Continue populating the remaining tabs (skills, training, compliance, finance, and so on) as needed.
## Worker type, role, and employment type
Three fields on the worker profile serve different purposes:
| Field | Customisable? | Notes |
| - | - | - |
| **Worker Type** | No - values are fixed and cannot be changed by clients | Adding new Worker Type values requires a developer request to Visualcare |
| **Role** | Yes - your organisation can edit the available options | Configured in the worker profile |
| **Employment Type** | Yes - free text field | Enter any value that suits your organisation |
## Customising the worker list
You have several options for customising how the worker list displays.
### Column chooser
Click the **column chooser** icon in the top right corner to add additional headings to the worker list.
Drag additional headers into the header row. Change the sequence of columns by dragging and dropping headings.
### Export to Excel
Export the worker list data to Excel by clicking the **Excel** icon.
## Populating profiles via vOnboard
Worker details don't need to be entered manually. Workers complete their own details through the vOnboard portal.
To give a worker access to vOnboard, make sure their profile includes:
* **First Name**
* **Last Name**
* **Web Username**
* **Email**
* **Web Enabled** ticked
* **vOnboard Portal** ticked
Click **Send Login Details** to email an invite to the worker. They log in to the onboarding portal and fill in their information directly.
The **Case Manager** assigned in the worker profile receives an email alert when the worker makes changes in the onboarding portal.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up award details and employment information
Add skills to a worker profile
Configure bank details and pay rate levels
Set up worker access to onboarding and mobile apps
# Engagement details
Source: https://support.visualcare.com.au/worker-management/engagement-details
Manage worker engagement details including award information and pay rate overrides in Visualcare
The engagement details tab stores a worker's employment and award information, including their current status, award selection, and service-specific pay rate overrides.
## Engagement details overview
Open the worker's profile and navigate to the **Engagement Details** tab in the lower section of the screen.
Key fields on this tab:
| Field | Description |
| - | - |
| **Current** | Tick this box if the worker is currently active. Unticking removes the worker from rostering selection |
| **Start Date** | The date the worker commenced employment |
| **End Date** | The date the worker's employment ended (if applicable) |
To make sure a worker who is no longer current does not appear in rostering selection, untick the **Current** box in the worker profile and click **Save**.
## Award details
Select the award the worker is on from the **Award Details** section. This links the worker to the correct pay conditions for your organisation.
## Pay rate overrides
Use the **Override Service Pay Level** section (under **Award Details**) to set overrides for both award and pay rate levels on a per-service basis. This is useful when a worker is typically on one pay rate level but moves to a different level for specific services.
To set up an override:
1. Click **Add Service** in the **Override Service Pay Level** section
2. Select the service
3. Choose the pay rate level that applies when the worker delivers that service
For example, if a worker is typically on pay rate level 1 (set in the **Finance** tab) but moves to level 2 or 3 for certain services, configure those overrides here.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Configure bank details and pay rate levels
Steps to offboard a worker from Visualcare
Set up a new worker in Visualcare
# Worker management
Source: https://support.visualcare.com.au/worker-management/index
Manage worker profiles, availability, skills, compliance, and communication
# Worker management
Manage your workforce in Visualcare, from creating profiles and tracking availability through to compliance and training.
Create and manage worker records
Availability, leave, pay rates, and budget hours
Track worker skills and training
Manage compliance requirements and workflows
# Leave requests
Source: https://support.visualcare.com.au/worker-management/leave-requests
Review, approve, and manage worker leave requests in Visualcare
When workers submit leave requests through the vWorker mobile app, they appear on the vCore home page for review. From here you approve or reject requests, unallocate affected shifts, and manage leave types.
## Viewing leave requests
Leave request notifications appear as a KPI on the vCore home page. Click the link to view pending requests.
The leave requests page defaults to showing all **Pending** items for the next six months. Adjust the filters at the top of the page to change the date range or status.
To receive email notifications when a worker submits a leave request, assign the relevant office user as **Case Manager 1** or **Case Manager 2** on that worker's profile. Visualcare sends the alert to the assigned case manager.
## Approving or rejecting leave
Click **Approve** or **Reject** on any pending leave request.
After approving leave, unassign any shifts that fall within the leave period by clicking **View Shifts** and then **Unallocate**.
### Bulk editing leave requests
To approve or reject multiple leave days at once, or to unallocate shifts in bulk:
1. Tick the relevant items
2. Click **Bulk Edit**
3. Update the actions needed
4. Click **Save**
## Editing leave requests
Leave requests submitted by a worker are editable by office users in vCore. Click **Edit** to:
* Assign a leave type
* Add notes
* Delete the leave request if needed
When an office user enters leave directly through vCore, it is automatically approved on save.
## Configuring leave types
Leave types are managed in **Maintenance** → **Workers** → **Leave Type**.
To add a new leave type:
1. Go to **Maintenance** → **Workers** → **Leave Type**
2. Click **Add Leave Type**
3. Enter a **Leave Code** and **Leave Type**
4. Click **Add**
To edit a leave type, click on it in the list, update the description, and click **Save**. To delete, click the item and click **Delete**.
Leave types configured here appear in both vCore and the vWorker mobile app leave request workflow.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set worker availability patterns
Configure leave types and other worker settings
Set up worker access to mobile apps
# Managing availability
Source: https://support.visualcare.com.au/worker-management/managing-availability
Set and manage worker availability patterns in Visualcare
The availability tab on a worker profile defines when that worker is available for shifts. This information flows through to rostering, helping you allocate shifts to workers who are free at the right times.
## Setting availability
Open the worker's profile and navigate to the **Availability** tab in the lower section of the screen.
You have several options for entering availability:
| Option | What it does |
| - | - |
| **Available for the Whole Day** | Marks the worker as available for the entire day |
| **Unavailable for the Whole Day** | Marks the worker as unavailable for the entire day |
| **Add Available Time** | Adds a specific time window (for example, 9:00 AM to 12:00 PM) |
To set split availability throughout the day (for example, available from 9:00 AM to 12:00 PM and then 3:00 PM to 10:00 PM), click **Add Available Time** for each window.
Clicking **Available for the Whole Day** or **Unavailable for the Whole Day** overwrites any existing time entries for that day.
## Two-week rotating pattern
Availability uses a two-week rotating pattern. The logic starts from the first week of the year, so Week 1 and Week 2 alternate from that point forward. Set availability for both weeks if the worker has a fortnightly rotating schedule.
## Web availability setting
The **Web Availability** setting on a worker's profile controls how far ahead the worker can update their own availability through the web portal or the vWorker app. The options are:
| Option | Behaviour |
| - | - |
| **No limitation** | The worker can change their available time freely with no restriction on how far ahead |
| **1 week** | The worker can only update availability up to one week in advance |
| **2 weeks** | The worker can only update availability up to two weeks in advance |
This setting defaults to the value configured on the global settings page. You can override it per worker by changing the value on their individual profile.
## Disabling a worker from rostering
If a worker is no longer available for allocation - for example, while on extended leave or during an investigation - you can remove them from the rostering drop-down without deleting their profile.
Open the worker's profile and locate the **Current** checkbox in the profile header. Untick it and click **Save**. The worker no longer appears as an option when allocating shifts in the roster.
To reinstate the worker, simply tick **Current** and save again.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage worker leave requests
Set daily budget hours to prevent over-rostering
Set up a new worker in Visualcare
# Managing training items
Source: https://support.visualcare.com.au/worker-management/managing-training-items
Track and manage worker training and qualifications on their profile in Visualcare
The training and qualifications tab on a worker profile tracks completed training, certifications, and qualifications. Like skills, training items are also used when searching for workers during rostering.
## Adding and editing training items
Open the worker's profile and navigate to the **Training and Qualifications** tab in the lower section of the screen.
* Click **New Item** to add a new training record
* Double-click an existing item to edit it
* Enter details such as the training item name, completion date, and expiry date where applicable
Training items are configured in **Maintenance** → **Workers** → **Training Items**. Forms relevant to a training item are linked using the **Template** drop-down. See [Compliance workflows and settings](/worker-management/compliance-workflows-and-settings) for details on configuring training items.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Add skills to a worker profile
Track compliance items on a worker profile
Configure training items in Maintenance
# Managing worker compliance
Source: https://support.visualcare.com.au/worker-management/managing-worker-compliance
Track and manage compliance items on a worker profile in Visualcare
The compliance tab on a worker profile shows all compliance items assigned to that worker. From here you manage start dates, track expiry dates, and monitor compliance status day to day.
## Viewing compliance items
Open the worker's profile and navigate to the **Compliance** tab. Compliance items flow through automatically from the Maintenance area based on your organisation's configuration.
Each compliance item shows:
| Column | Description |
| - | - |
| **Description** | The name of the compliance item |
| **Start Date** | When the item was completed or commenced |
| **Alert Date** | When the system sends a warning that the item is approaching expiry |
| **Expiry Date** | When the item expires and needs renewal |
| **Required** | Whether the item is mandatory |
## Updating compliance items
When you edit the **Start Date** on a compliance item, the **Alert Date** and **Expiry Date** update automatically based on the warning days and expiry days configured in Maintenance. These dates are overridable if needed.
If the **Required** field is ticked, the item is mandatory and needs to be completed.
## Compliance and rostering
When selecting a worker for a shift, the rostering view highlights only workers who are fully compliant by default.
To see workers with expired compliance items during rostering, select the filter and click **Expired**.
## Forms compliance
Linked forms appear under the compliance tab and in the worker compliance report.
* Click **View** to open a linked form
* Click **Unlink** to remove a form from a compliance item
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
How compliance items flow from Maintenance to profiles
Configure compliance items in Maintenance
Set up a new worker in Visualcare
# Messaging
Source: https://support.visualcare.com.au/worker-management/messaging
Send and manage messages to workers through the Visualcare messaging module
The messaging module in vCore connects office users with workers via the vWorker mobile app. Each time a new message is sent, the worker receives a push notification on their phone. Messaging works the same way for both client and worker contexts.
The messaging module is shared across client and worker contexts. For client-related messaging, see [Client messaging](/client-management/messaging).
## Accessing messages
When a new message arrives, a number badge appears next to the message icon in vCore. Click the icon to open the messaging module.
## Private messages
Click the **Private** tab to view one-on-one messages. The number of unread messages for each person is highlighted in red.
### Marking messages as read
New private messages show a red number badge. To clear the badge, click on the person and then click **Mark as Read** in the top right corner.
When one office user marks a message as read, the red number badge disappears for all office users.
### Viewing read receipts
Click the information icon (**i**) on a message to see who read it and when.
The **Seen Time** shows when the message was marked as read, and **Seen By** shows who read it.
## Group messages
Click the **Group** tab to view group messages. Unread message counts appear next to each group name.
### Creating a group
Click the **Create New Group Chat** icon to start a new group conversation.
Click **Choose** to select participants, enter a group name, and click **Create**.
### Managing a group
Click **Manage Group** to edit the list of participants in an existing group.
Workers need to stay logged in to the vWorker app to receive push notifications for new messages. If a worker logs out, they won't get notified of new messages until they log back in.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Add notes and documents to a worker profile
Set up worker access to mobile apps
Messaging in the client context
# Notes and document storage
Source: https://support.visualcare.com.au/worker-management/notes-and-document-storage
Add notes, tasks, and documents to a worker profile in Visualcare
Worker profiles include dedicated tabs for notes (including tasks) and document storage. These help you keep important records, communications, and files attached to the right worker.
## Notes and tasks
Open the worker's profile and navigate to the **Notes** tab. This tab lists all notes and tasks assigned to the worker.
### Filtering notes
Use the filters at the top to narrow the list. You also have the option to:
* Click the filter icon on any column header to filter by that column
* Type directly in the filter field for a manual search
Export the data to Excel by clicking the **Excel** icon in the top right corner.
### Creating a note or task
Click **New Note/Task** to create a new entry.
A note becomes a task when a person is assigned to it. If only a priority and category are assigned, it remains as a note. Once it becomes a task, it appears in the task list on the home page.
Use tasks for items that need follow-up or action by a specific person. Use notes for general record-keeping that doesn't need assignment.
### Editing a note or task
Double-click on a note to open and edit it.
## Documents
Open the worker's profile and navigate to the **Documents** tab to manage file storage.
### Uploading a document
Click **Select File** to choose a file, then click **Upload** to attach it to the worker's profile.
### Managing documents
Click **Manage** on a document to open its profile, where you assign a category and lock the file to prevent deletion.
| Action | Description |
| - | - |
| **Manage** | Open the document profile to assign a category and lock or unlock the file |
| **Download** | Download a copy of the file to your downloads folder |
| **Delete** | Delete the file (only available if the file is not locked) |
| **Visibility to Workers** | Mark the document as visible or invisible to workers in the mobile app and the onboarding portal |
Locking a document prevents it from being deleted. Use this for important records that should not be accidentally removed.
### Making a document visible to all workers in vWorker
Documents uploaded to a worker's profile are only visible to that worker. To share a document with all workers through the vWorker app, upload it through **Maintenance** instead.
Navigate to **Maintenance** → **Documents** and upload the file.
Click **Manage** on the uploaded file.
Under **Visibility to Worker**, change the setting to **Visible**.
Click **Save**. The document now appears in the vWorker app for all workers.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up a new worker in Visualcare
Send and receive messages with workers
Track compliance items on a worker profile
# Offboarding a worker
Source: https://support.visualcare.com.au/worker-management/offboarding
How to offboard a worker and remove them from active rostering in Visualcare
When a worker leaves your organisation, you need to update their profile so they no longer appear in rostering selection or active worker lists. This process involves recording an end date and marking them as no longer current.
## What you'll need
* Access to the worker's profile in vCore
* The worker's end date
## Instructions
Go to **Workers** → **Profile** and search for the worker. Double-click to open their profile.
Navigate to the **Engagement Details** tab in the lower section of the screen. Enter the worker's **End Date** in the engagement details.
In the worker profile header, untick the **Current** box. This removes the worker from rostering selection lists.
Once **Current** is unticked and saved, the worker no longer appears when selecting workers for shifts. Make sure all their remaining shifts have been reallocated before completing this step.
Click **Save** at the top of the profile to apply the changes.
Before completing the offboarding, review the following:
* **Shifts** - check for any allocated future shifts and reallocate them to other workers
* **Leave requests** - resolve any pending leave requests
* **Compliance items** - note the status of compliance items for your records
* **Documents** - download any documents you need to retain separately
* **Mobile app access** - the worker's vWorker and vOnboard access is tied to their profile. Once marked as not current, they lose access to scheduled shifts, though you may also want to untick **Web Enabled** for additional security
Offboarded workers remain in the system for historical reporting and record-keeping. They are simply excluded from active rostering and selection lists.
## Revoking app access
When a worker leaves, untick the following options on their profile to remove all system and app access:
| Setting | What it controls |
| - | - |
| **Current** | Removes the worker from rostering selection and active worker lists |
| **Web-enabled** | Removes access to the vCore web interface |
| **vAssessment portal** | Removes access to the vAssessment portal |
| **vOnboard portal** | Removes access to the vOnboard portal |
Open the worker's profile, untick each of the above options, and click **Save**.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Manage worker engagement and award details
Set up a new worker in Visualcare
Manage worker leave requests
# Pay rates
Source: https://support.visualcare.com.au/worker-management/pay-rates
Configure bank details, pay rate levels, and financial information on a worker profile in Visualcare
The finance tab on a worker profile stores bank details, pay rate levels, tax information, superannuation details, and integration settings for your finance system.
If your organisation uses vOnboard, financial information entered by the worker flows through from the portal automatically.
## Bank details
Enter the worker's bank account details. You have the option to enter up to three bank accounts.
## Part-time daily hour requirement
Enter a worker's part-time daily hour requirement here for information purposes.
## Worker details
### Pay rate level
Select the worker's pay rate level and the date from which it applies, then click **Update**. This value is used for integration with your finance system.
When a worker's pay rate level changes, update the level and the effective date here. The new level applies from the date entered.
The pay rate level set here is the worker's base level. If a worker receives a different level for specific services, set service-level overrides in the [Engagement Details tab](/worker-management/engagement-details).
### Additional pay fields
| Field | Description |
| - | - |
| **Overnight Rate** | The worker's overnight rate (for information and record only) |
| **First Aid Allowance Rate** | The worker's allowance rate, exported to the finance system |
| **Pay Notes** | Notes related to the worker's pay (information only) |
| **Worker Type** | Select from the drop-down. Certain worker types change how the system behaves (for example, the "Service Provider" type adjusts mobile app settings to be service-provider specific) |
| **Employment Type** | Select from the drop-down |
### Tax and superannuation
| Field | Description |
| - | - |
| **TFN** | Tax File Number (information only) |
| **ABN** | Australian Business Number (information only) |
| **Residency** | Residency status (information only) |
| **HECS/FS Debt** | HECS or Financial Supplement debt details (information only) |
| **Tax Free Threshold** | Tick if the worker has claimed the tax-free threshold (information only) |
| **Registered GST** | Tick if the worker is registered for GST (information only) |
| **Super Fund Name** | Superannuation fund name (information only) |
| **Policy Number** | Super policy number (information only) |
| **Member Number** | Super member number (information only) |
| **USI / SPIN** | Unique Superannuation Identifier or Superannuation Product Identification Number (information only) |
### Finance system integration
| Field | Description |
| - | - |
| **Accounting Code** | Select the worker's name from the drop-down. This links the Visualcare employee record to the employee record in your finance system |
| **Send to Xero** | Creates the contact in Xero for this worker |
| **Sync Code from Xero** | Syncs the worker name from Xero to appear in the accounting code drop-down |
| **Council Reference** | Reference number (information only) |
## HCP and CHSP
| Field | Description |
| - | - |
| **Is HCP Worker** | Tick if the worker provides Home Care Package services |
| **Is CHSP Worker** | Tick if the worker provides Commonwealth Home Support Programme services |
## Insurance
| Field | Description |
| - | - |
| **Insurance** | Insurance details (information only) |
| **Insurer** | Insurer name (information only) |
| **Insurance Policy No** | Policy number (information only) |
## External references
| Field | Description |
| - | - |
| **External ID 1** | External reference number (information only) |
| **External ID 2** | Additional external reference number (information only) |
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set daily budget hours to prevent over-rostering
Configure award details and pay rate overrides
Set up a new worker in Visualcare
# vOnboard and vWorker access
Source: https://support.visualcare.com.au/worker-management/vonboard-and-vworker-access
How to set up worker access to the vOnboard portal and vWorker mobile app
Visualcare offers two worker-facing applications: the vOnboard portal for onboarding new workers, and the vWorker mobile app for day-to-day shift management. Both are set up from the worker profile in vCore.
## Setting up vOnboard
The vOnboard portal allows workers to enter their own details during onboarding, reducing manual data entry for your office team.
### What you'll need
* A worker profile created in vCore with the following fields completed:
* **First Name** and **Last Name**
* **Web Username**
* **Email**
* **Web Enabled** ticked
* **vOnboard Portal** ticked
### Instructions
Open the worker's profile in vCore. Make sure the required fields above are filled in, and both **Web Enabled** and **vOnboard Portal** are ticked.
Click **Send Login Details** at the top of the profile. This emails an invite to the worker with instructions to log in and complete their onboarding information.
The first time the worker logs in, they are prompted to create a password.
To receive email notifications when a worker updates their profile through vOnboard, assign a **Case Manager** to the worker in their vCore profile.
Information entered by workers through vOnboard flows directly into their vCore profile, including details on the Finance tab.
## Setting up vWorker
The vWorker app gives workers access to their shifts, leave requests, messaging, and more from their mobile device.
### System requirements
| Platform | Minimum version |
| - | - |
| Android | 10 or above |
| iOS | iOS 11 or above |
### Instructions
In the worker's vCore profile, make sure **Web Enabled** is ticked and a **Web Username** is set. Click **Send Login Details** to provide the worker with their credentials.
Workers download **vWorker** from the **App Store** (iPhone) or **Google Play** (Android).
Workers open the app and enter their login details. Once logged in, they need to stay logged in to receive shift notifications.
If a worker logs out of the app, they won't receive push notifications for new shifts or messages. Workers need to remain logged in at all times.
When the app opens for the first time, workers select **Allow** when prompted for notification and location permissions. These settings are also adjustable in the device's **Settings** → **Notifications** → **vWorker**.
Some organisations need location services enabled at all times. Refer workers to your own policies and procedures for guidance.
### Display settings
Workers choose between dark and light mode in their device's **Display and Brightness** settings. The app also supports automatic switching based on daylight hours or a custom schedule.
### Security
For security and privacy purposes, workers should have a passcode on their phone. If a worker's phone is lost or stolen, they need to alert your office immediately so their access is disconnected by unticking **Web Enabled** on their profile.
## Running into issues?
See [Worker management troubleshooting](/troubleshooting/general) for common errors and fixes.
## Related articles
Set up a new worker in Visualcare
Send and receive messages with workers
Steps to offboard a worker from Visualcare