SPARKS PROVIDER | MIGRATION TEMPLATES | 22 OCTOBER 2026

Choose one pack
---------------
Basic: four shorter CSV files for participants, staff, shifts and notes.
Full: ten CSV files, with more detail for those four categories plus participant
contacts, incidents, document lists and service agreements with pricing items.
The same field guide explains both packs. Its Basic column marks the shorter
set. Numbering is shared between packs, so gaps in the basic file numbers are
intentional. Use one version of each dataset; do not upload basic and full copies
of the same records. You may use basic for one category and full for another.

Every CSV contains headings only. There are no people or example records in it.
The workbook contains clearly labelled fictional examples, not an upload file.
Leave out categories you do not need. Keep an untouched copy of your original
exports and agree the date range and cutover with Sparks before importing.

Preparing your files
--------------------
1. Keep the supplied headings. Add one source record per row. Fill fields marked
   Yes in the guide; other columns can stay blank when unknown or not applicable.
   Blank does not mean consent, active status, a zero amount or permission to
   guess. Keep source facts and wording. The owner reviews unresolved choices.
2. Keep source references as text, including leading zeroes. If your platform has
   no reference, choose a unique stable reference once and use it consistently.
   Do not use names alone as links. Do not put Sparks database IDs in these files.
3. Save as UTF-8 CSV with comma separators. Quote values containing commas,
   double quotes or new lines, doubling any quotes inside a quoted value. Keep
   multiline note and agreement text intact. Never evaluate source text as a
   spreadsheet formula. Protect identifiers from spreadsheet auto-formatting.
4. Dates are YYYY-MM-DD in these interchange files, for example 2028-02-29.
   Sparks displays dates day first. Local times use 24-hour HH:MM. For a timestamp
   use ISO 8601 with an explicit offset, for example 2026-11-02T09:00:00+10:00.
   Keep the service time_zone, such as Australia/Brisbane or Australia/Sydney.
   Daylight saving follows that zone. Never convert civil dates to UTC dates.
   For an overnight shift, supply its actual end_date as well as end_time.
5. Lists use semicolons. Booleans use TRUE or FALSE. Amounts are AUD decimals
   without currency symbols; distances are km and durations are minutes.
   Unknown stays blank. Do not invent an NDIS item code from a service name.

Keeping the four basic files linked
----------------------------------
01_participants.csv: participant_reference is unique per participant.
03_staff.csv: staff_reference is unique per staff member. An email heading is
required to identify this file, but an unknown email value can stay blank.
04_roster.csv (shifts): shift_reference is unique per source shift; use the same
participant_reference and staff_reference values as in the first two files.
Additional participant/staff references are semicolon lists. An unassigned shift
can have blank staff references. Do not create a fictitious staff member for it.
05_shift_notes.csv: note_reference is unique per note. Link participant_reference
and, when known, shift_reference. Preserve the original author and timestamp;
author_name keeps attribution when the original author is not moving across.
If the source timestamp has no offset, supply time_zone and arrange review.

Full-pack details and histories
------------------------------
Split funding: plan_management is the usual funding way. plan_routes lists the
two or three ways in a split plan; the usual way must belong to that list.
billing_email is the plan manager's email; self_billing_email is separate for a
plan + self split. invoice_route is the recorded choice for an individual shift.
Keep missing choices for review. Do not infer funding from a service/item code.

Complex shifts: retain source_booking_details and original exports for group,
multi-worker, conflicting, repeating or multiple-service bookings. A flat row
cannot describe every participant/worker allocation. Preserve booking and series
references, individual funding, location, times, rates, travel and allocations.
Agree their mapping before scheduling anything. Historical attendance, approval
and invoice references are facts for reconciliation, not new approvals, payroll
actions, reservations, claims or permission to bill a shift twice.

Documents: CSVs are manifests only. Supply the actual files separately through
the agreed secure handover, with matching relative source_file_path/file_name.
Keep renewals, earlier versions, signatures and issued originals unchanged.
service_agreement is a participant document kind. Insurance policies on staff
records use insurance_policy, with a separate label for each policy. Signed
elsewhere dates need the original document and owner confirmation; a filled date
or document kind alone is not signature evidence. Do not recreate or resend a
signed agreement. The agreement items' rate is the participant's service price.

What happens after upload
-------------------------
Upload each completed CSV in Switch to Sparks > Another platform. The current
upload limit is 5 MB per CSV. Larger exports need an agreed split or secure
handover that preserves references and complete records. The ZIP and workbook
are downloads, not files to upload in the CSV uploader.

An accepted upload is stored privately for review. Received does not mean it has
been imported. Sparks checks mapping, counts, links, dates, duplicates and owner
choices before an agreed import. Uploading does not invite staff, grant access,
send messages, create financial transactions or submit claims. Retain original
authors and history; never substitute the uploader for a historical author.

These ten categories are not an export of every app record. Arrange a separate
handover for goals, training, availability, price books, tasks, policies, consents
and contracts with signing evidence, issued invoices, claim/payment history or
other registers. Do not force these into unrelated columns or assume they have
been transferred. Never include passwords, tokens, bank details or staff wages.

Return completed care records and attachments only through the private migration
area or the agreed secure channel. Blank templates may be emailed; completed
records containing personal or health information should not be sent by ordinary
email. Review the migrated results together before relying on them for care.
