Integrated Data
BST10
What this page covers: A complete reference mapping every BST10 field to its Mosaic equivalent. Use this guide when configuring your integration, verifying synced data, or troubleshooting discrepancies.
| Integration type | On-Premise (SQL Server replica) |
| Setup complexity | Moderate |
| Prerequisite | BST10 Integration Setup |
How Data Flows
BST10 (SQL Server replica) → Mosaic Sync Engine (field mapping + replication) → Mosaic (9 synced data types)
Mosaic replicates a subset of BST10 database tables from your Final schema and maps them into Mosaic data types. Because data is sourced from the Final schema, only posted timesheet data flows into Mosaic — unposted time entries are not synced.
Integrated Data Types
The integration syncs 9 data categories from BST10 into Mosaic:
| Data Type | Description |
|---|---|
| Clients | Client records (name, code) |
| Members | Member name and email |
| Member Project Bill Rates | Member-to-project rate assignments from labor bill rate schedules (with optional project-level overrides) |
| Member Roles | Default role per member based on the member's labor bill class |
| Phases | Task/phase breakdowns under projects (fee, dates, status, billable) |
| Projects | Project records (number, dates, fee, billable, status, client) |
| Standard Bill Rates | Individual rate amounts derived from labor bill rate schedule rate types |
| Standard Roles | Organization-wide role definitions sourced from labor bill classes |
| Time Entries | Posted time entries (hours, project, phase, member, billability, description) |
This list may expand as new features are added. When a new feature is added, your Customer Success Manager will reach out requesting access to your replica to update the table set.
Not Synced
| Data Type | Description |
|---|---|
| Unposted Time | Time entries that have not been posted in BST10 |
| Non-Labor Expenses | Time/expense entries where LaborExpense is not flagged as labor |
| Region / Office | Geographic region or branch location classifications |
| Department | Organizational department associated with a member |
| Activities / Work Categories | BST10 labor activity codes are not synced as a standalone entity |
Reading the Field Mapping Tables
Symbol legend for technical tables
The Technical Reference tabs below use a shorthand notation for BST10 database field references. Read this legend before reviewing the mappings.
| Symbol | Meaning | Example |
|---|---|---|
. | Database table field reference | Employee.GivenName = the GivenName field from the Employee table |
_ | Nested/child table relationship | Project_Task.Name = the Name field from the Project_Task child table |
• | Values combined into one composite value | Employee • Project = concatenated into a composite key |
> | Fallback priority — use the first available value | ChildBudgetSum > Budget = use ChildBudgetSum; if null, use Budget |
Clients
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Client ID | The unique client identifier used internally by Mosaic |
| Client Name | The client display name |
| Client Number | The client code |
Members
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Member ID | The unique member identifier |
| First Name | The member's first name |
| Middle Name | The member's middle name |
| Last Name | The member's last name |
| The member's email address |
Member Project Bill Rates
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Member Project Rate ID | A composite identifier linking the member, project, labor bill rate schedule, and effective date |
| Member | The member the rate applies to |
| Project | The project the rate applies to |
| Rate | The linked standard or override rate entry |
| Start Date | The effective date for the rate assignment |
Standard vs. Override Rates
Member-to-project rates can come from two sources:
- Standard: The labor bill rate schedule attached to the project's labor terms.
- Override: A project-specific override that replaces the standard rate for a specific member on a specific project.
Mosaic syncs both, and the rate description in Mosaic indicates which type was applied.
Member Roles
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Member Role ID | The member identifier the role assignment belongs to |
| Member | The member the role applies to |
| Role | The member's labor bill class |
Phases
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Phase Name | The task/phase name |
| Phase Number | The task/phase code |
| Phase ID | The unique phase identifier |
| Parent | The parent project (for top-level phases) or parent phase (for nested phases), derived from hierarchy |
| Project | The project the phase belongs to |
| Billable Status | Whether the phase has chargeable time enabled |
| Status | The phase's effective status — Active, Inactive (Complete), Pending Active/Inactive, or Mistake (mapped to Hold) |
| Is Archived | Phases are not archived from the phase status (parent project archival applies instead — see Projects) |
| Start Date | The phase start date |
| End Date | The phase finish date |
| Fee | The phase's budgeted labor amount — sourced from the sum of child phase budgets, falling back to the phase's own budget |
Projects
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Project Name | The project name |
| Project Number | The project code |
| Project ID | The unique project identifier |
| Client | The client linked to the project |
| Fee | The project fee amount |
| Start Date | The project start date |
| End Date | The project finish date |
| Billable Status | Whether the project has chargeable time enabled |
| Status | The project status — Active, Inactive (Complete), Pending Active/Inactive, or Mistake (mapped to Hold) |
| Is Archived | Projects with status Inactive are archived in Mosaic |
Standard Bill Rates
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Rate ID | The rate type identifier within the labor bill rate schedule |
| Rate Amount | The regular billing rate |
| Rate Description | The labor bill rate schedule name combined with the member's name (override rates also note the project and labor term) |
Standard Roles
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Role ID | The labor bill class identifier |
| Role Name | The labor bill class name |
Time Entries
| What Syncs to Mosaic | Where It Comes From in BST10 |
|---|---|
| Date | The transaction date of the time entry |
| Member | The member who logged the time |
| Project | The project the time was logged against |
| Phase | The task/phase the time was logged against |
| Hours | The quantity of hours logged |
| Billable | Whether the time entry is flagged as billable |
| Description | The posting description for the time entry |
| Hourly Rate | Calculated from the labor effort divided by hours |
Time Entry Sources
- Only posted time entries are synced — Mosaic reads from the BST10
Finalschema, which contains posted data only.- Only labor time entries are synced (entries where
LaborExpenseis flagged as labor).- Time entries are only fetched for projects with status Active in BST10.
Troubleshooting & FAQ
Why are my time entries not showing up?
Time entries must meet all of the following to sync:
- The time entry is posted in BST10 (Mosaic reads from the
Finalschema). - The time entry is flagged as labor (non-labor expenses are excluded).
- The associated project's status is Active in BST10.
If a time entry is missing, verify each of these conditions in BST10 first.
Why is the phase fee in Mosaic different from BillFeePc in BST10?
BillFeePc in BST10?Phase fees in Mosaic reflect the labor budget aggregated across child phases, falling back to the phase's own budgeted labor amount. Project_Task.BillFeePc (phase fee percentage) is intentionally not used because Mosaic surfaces budgeted labor expenses for resource planning.
Why isn't a member's role coming through?
A member's role in Mosaic comes from the member's Labor Bill Class in BST10 (Employee.BillClass). If a member has no labor bill class assigned, no role will sync for that member.
Can I rename field labels in Mosaic to match my BST10 custom labels?
No. Custom field name changes in Mosaic to match BST10 labeling is not supported as a standard integration feature.
Are unposted time entries supported?
No. Mosaic reads exclusively from the BST10 Final schema, which contains posted data only. Unposted timesheets cannot be synced.
I need a data source or field that isn't listed here.
Any integration not listed in this documentation is considered a customization and is charged at an hourly rate. For more information, see Integration Requests.
BST Global Documentation Links
A consolidated reference of all BST Global documentation referenced in this guide:
| Topic | Link |
|---|---|
| BST Global Support | BST Global Support Portal |
| BST Global Website | BST Global |
