Sona

Sona is a workforce management platform for frontline teams, covering rotas and shifts, absences, employment records and payroll. With Weld you can sync your Sona data into your data warehouse and combine it with your finance, HR and operational data to report on staffing levels, hours worked, absence and labour cost across your locations.

Features

Feature nameSupported
Column HashingTrueColumn level
BlockingTrueColumn level
IncrementalTrue
Custom dataFalse
HistoryTrue
ReSyncTrueTable level
TemplatesFalse

Data Schema


Setup Guide - ELT

Step 1 - Request a Sona API token

  1. Ask Sona to issue a client API token for your organisation, for use with Weld.
  2. Ask for the token to have read access to the data you want to sync — shifts, pay lines, payroll, absences, users, employment periods, org units, metrics and the related reference data.
  3. Store the token somewhere safe until you have created the connection.

Step 2 - Create the connection

  1. In the Weld app, navigate to Connections and click + New Connection.
  2. Search for Sona and select it.
  3. Enter the destination schema name of your choice. This name is used to identify the connection in future syncs.
  4. Paste your API Token.
  5. Click Connect to validate the token and establish the connection.

Step 3 - Data To Sync

Select the tables you wish to include in the sync. You can view the schema, remove columns or hash sensitive information.

The connector exposes 17 tables, grouped below by area. Some tables bring related tables along with them — those are listed underneath.

  • Shifts and pay — shifts, pay_lines, payroll_submission_statuses, locked_periods
    • shifts also syncs shift_breaks and shift_people_we_support
    • payroll_submission_statuses also syncs payroll_submission_status_exceptions
  • Absences — absences, absence_types
    • absences also syncs absence_days, absence_documents, absence_linked_shifts and absence_linked_shift_payroll_run_rows
  • People and employment — users, employment_periods
    • users also syncs user_manager_org_units, user_read_only_org_units, user_blocked_for_org_units, user_receives_content_for_org_units, user_home_tier_org_units, user_appears_on_roster_for_org_units, user_assignable_org_units, user_types_of_work, user_pay_groups, user_base_roles, user_skills_and_attributes and user_auth_strategies
    • employment_periods also syncs employment_period_specs, employment_spec_contract_types, employment_spec_contracted_hours, employment_spec_rates_of_pay, employment_period_permission_roles, employment_period_permission_role_org_units and employment_period_types_of_work
  • Organisation — org_units
    • org_units also syncs org_unit_external_connections, org_unit_public_holidays and org_unit_public_holiday_regions
  • Metrics — metrics, metric_values
  • Reference data — contract_types, jobs, levels, rates_of_pay, shift_types, types_of_work
    • shift_types also syncs shift_type_tags

Step 4 - Configure sync

  1. Select how often you would like the data to sync.
  2. Choose a start date to set how far back the initial sync goes for shifts, pay_lines, payroll_submission_statuses and metric_values. Without a start date, shifts, pay_lines and payroll_submission_statuses go back one year, and metric_values goes back two weeks. All other tables are synced in full.
  3. Provide a unique destination table name.

shifts and metric_values also include the next two weeks, so rotas and metric values that are already planned in Sona appear in your warehouse ahead of time.

Weld will take over from here and commence syncing data from your Sona account.

Was this page helpful?