PSOhub OData Reference
Explore every OData table and field available in PSOhub including definitions, key relationships, and technical details to help you build accurate reports and dashboards.
Published: 14 July 2026
Audience
- Admin
Objective
This article provides the full field-level reference for all tables available in the PSOhub OData Feed. Use it to look up any table, understand what each field represents, and find how to use your PSOhub data effectively in Power BI, Excel, or other reporting tools.
OData Tables by PSOhub Module
Smart Quotes |
| Quotes |
Project Management |
| ContractGroups · ContractGroupTemplates · ContractLines · ContractLineTemplates · ContractTemplates · ContractTotals · Projects · ProjectStages · ProjectTypes · SubTotalGroups · BudgetGridLineResources · BudgetGridLines · ProductPriceLists · Products · CompletionProgresses |
Work Management |
| KanbanLanes · Plans · SubTasks · TaskLists · Tasks |
Resource Management |
| MasterDataWorkingDaysPerMonths · PlanningPerDays · PlanningPerdayProjectMembers · ResourceAbsenceHolidayDayTotals · ResourceDailyCapacity · ResourceMonthlyCapacities · Events |
Time & Expenses |
| Comments · ExpenseCategories · Expenses · TimeSheets |
Invoices |
| GLAccounts · InvoiceContractLines · InvoiceLines · Invoices · InvoiceTaxes · Recurrings · RetainersAndInstallments · TaxCategories · TransactionClasses |
Customers |
| Addresss · Companies · Contacts · Currencies |
Users & Business Units |
| BusinessUnits · ProjectMembers · ProjectRoles · Tags · UserAccounts |
Full OData Table & Field Reference
Addresss
This table contains all company addresses in your PSOhub environment. A company can have multiple addresses (e.g. invoice and physical addresses), and each address record is stored here with a reference to the related company.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the address record |
| CustomerAddress | Field from PSOhub addresss data |
| PostalCode | Postal or ZIP code for the address |
| Region | State, province, or region (optional or empty for some countries) |
| City | City where the address is located |
| Country | Country name of the address |
| Address2 | Additional address details such as unit, floor, or suite (if used) |
| Address_Company | ID of the company this address is associated with |
| Company_DefaultAddress | ID of the company for which this address is marked as the default (e.g. invoice or primary address) |
BudgetGridLineResources
This table holds the individual resource lines added to each contract line in the Budget Grid. These resources can be specific project members or project roles and define the number of hours, billable value (based on selling rate), and internal cost (based on cost rate).
| Field Name | Description |
|---|---|
| ID | Unique identifier for this budget resource line |
| TotalHoursBudgetted | Total hours budgeted for this specific resource on the contract line |
| TotalHoursPlanned | Total hours planned (via resource planning) |
| TotalHoursRemaining | Remaining hours that have not yet been planned in resource planning |
| TotalCostAmount | Internal cost estimate for this resource (based on the user's cost rate × budgeted hours) |
| TotalAmount | External value of the resource's work (based on the billing rate × budgeted hours) |
| Description | Optional description field for the resource line |
| BudgetGridLineResource_ProjectMember | ID of the project member assigned to this line (used when a specific resource from the project is selected) |
| BudgetGridLineResource_BudgetGridLine | ID of the contract line (budget grid line) this resource is linked to |
| BudgetGridLineResource_ProjectRole_ForFiltering | ID of the project role linked to this line (used when budgeting has been done for a project role instead of a project member/resource) |
BudgetGridLines
This table stores the total budget values for each contract line in a project, including budgeted hours, cost estimates, and billable amounts. It also tracks variances between budgeted and used hours and links directly to the associated contract line.
| Field Name | Description |
|---|---|
| ID | Unique identifier for this budget grid line |
| BudgettedHours | Total number of hours budgeted for the contract line |
| BudgetCostAmount | Internal cost value based on the budgeted hours (using user cost rates) |
| BudgetAmount | External value of the budgeted hours (using billing rates) |
| DeltaBudgetUsed | Difference between budgeted and used hours (can be negative) |
| BudgetGridLine_ContractGroupLine | ID of the contract line (group line) that this budget grid line belongs to |
BusinessUnits
This table contains all business units set up in your PSOhub environment. Business units help segment users, approvals, and financial data across departments or regions and can be structured in parent-child hierarchies.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the business unit |
| Name | The name of the business unit |
| ReadOnly | Indicates whether the business unit can be deleted or not |
| ObjectGUID | Internal global identifier used by PSOhub's backend |
| NumberOfMembers | Total number of users assigned to this business unit |
| changedDate | The date and time when the business unit was last modified |
| createdDate | The date and time when the business unit was created |
| AdminApprovalHours | Indicates whether admin approval is required for submitted hours |
| PMApprovalHours | Indicates whether project manager approval is required for submitted hours |
| BusinessUnit_Organisation | ID of the PSOhub organization this business unit belongs to |
| BusinessUnit_SubBusinessUnit | ID of the parent business unit, if this is a child unit |
| BusinessUnit_Account_TeamLead | ID of the user assigned as team lead for this business unit |
| BusinessUnit_AccountingAuthorization | ID of the user or role responsible for accounting authorization |
Comments
This table stores internal notes added to individual time entries in PSOhub. These comments provide context for changes, clarify logged hours, or record communication between team members related to time registration.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the comment |
| TimesheetComment | Field from PSOhub comment data |
| createdDate | The date and time when the comment was created |
| Comment_TimeSheet | ID of the time entry this comment is linked to |
| Comment_Account | ID of the user who created the comment |
Companies
The Companies table holds records for all organizations in your PSOhub environment. These companies can be customers, vendors, or internal entities and are often linked to projects, contracts, and contacts.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the company |
| Name | Name of the company |
| TotalCompanyValue | Aggregated total value of all projects linked to the company |
| CompanyHubspotID | HubSpot ID for this company (used for syncing) |
| Company_DefaultAddress | Foreign key linking to the company's default address in the Addresses table |
CompletionProgresses
This table tracks updates to the completion percentage of individual contract lines in PSOhub's Completion Management feature. Each record represents a historical snapshot of the completion status for a specific contract line at a given point in time.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the progress update |
| UpdateDate | Date and time when the progress update was made |
| UpdatedBy | Name of the user who entered the progress update |
| PercentageCompleted | Percentage of completion for the contract line at the time of the update |
| CompletionProgress_ContractGroupLine | ID of the contract line this completion update is linked to |
Contacts
This table contains all company contacts in your PSOhub environment. These contacts are typically linked to companies and are used for communication, invoicing, and integration with external systems like Xero, QuickBooks, and Salesforce.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contact |
| Fullname | Full name of the contact |
| FirstName | First name of the contact |
| LastName | Last name of the contact |
| Gender | Gender of the contact (if provided) |
| Email address of the contact | |
| JobTitle | Job title of the contact |
| Phonenumber | Phone number of the contact |
| ExternalContactID | External ID from a connected system (e.g. CRM or ERP) |
| ContactID | Internal PSOhub contact identifier |
| DateOfBirth | Date of birth of the contact |
| ExternalCompanyID | External ID of the company this contact is associated with |
| Edit | Indicates if the contact can be edited (TRUE/FALSE) |
| CanEdit | Indicates if the contact can be edited by the current user (TRUE/FALSE) |
| OrgID | Internal organization ID |
| MoneyBirdId | ID used to link this contact to MoneyBird |
| QuickBooksId | ID used to link this contact to QuickBooks |
| ExactIdGUID | ID used to link this contact to Exact Online |
| XeroContactGUID | ID used to link this contact to Xero |
| BexioContactId | ID used to link this contact to Bexio |
| SalesforceId | ID used to link this contact to Salesforce |
| DynamicsId | ID used to link this contact to Microsoft Dynamics |
| Contact_Company | ID of the company this contact is associated with |
| Contact_Organisation | ID of the PSOhub organization this contact belongs to |
ContractGroups
The ContractGroups table defines the primary budget groupings within a project contract in PSOhub, such as "Hours," "Expenses," or custom groups like "Design & Planning."
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract group |
| Group | Name of the contract group (e.g. Hours, Expenses, Design & Planning) |
| ConcatenatedNumberName | Combination of group number and group name for display |
| RecordGUID | Globally unique identifier for the contract group record |
| AlertPercentageOne | First threshold percentage for budget usage alerts |
| AlertPercentageTwo | Second threshold percentage for budget usage alerts |
| AlertPercentageOneReached | Boolean value indicating if first alert threshold has been triggered |
| AlertPercentageTwoReached | Boolean value indicating if second alert threshold has been triggered |
| FirstAlertSent | Boolean indicating if a notification has been sent for the first threshold |
| SecondAlertSent | Boolean indicating if a notification has been sent for the second threshold |
| PercentageUsedBudgetUsedAmount | Percentage of the budget used based on monetary amount |
| PercentageUsedBudgetUsedHours | Percentage of the budget used based on time effort (hours) |
| ContractGroup_OneEngagement | ID linking to the OneEngagement (i.e. the associated project) |
| SubTotalGroup_ContractGroup | ID for a subtotal grouping of related contract groups |
| ContractGroup_OrganizationGroupNumber | Organization-specific group number for sorting/structure |
| ContractGroup_ContractGroupNumber | Unique group number assigned within the contract for sequencing |
ContractGroupTemplates
The ContractGroupTemplates table defines the individual contract groups that make up a contract template in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract group template |
| Group | The name of the contract group (e.g. Hours, Expenses, Development) |
| GroupNumberNameConcatenated | Display value combining group number and group name |
| ContractGroupTemplate_ContractTemplate | Foreign key linking this group to a specific contract template |
ContractLines
Each ContractLine represents a specific scope of work, expense, or deliverable within a ContractGroup. This table defines the financial and planning details for the line, including type, budget, usage, invoicing, and profit tracking.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract line |
| Name | The name of the contract line (e.g. Design, Travel Expenses) |
| Description | Optional internal description of the contract line |
| ContractLineType | The billing type (e.g. Fixed_fee, Time_Materials, Expenses) |
| Amount | Agreed financial value of the line |
| Budget | Total budget assigned to the line |
| Alert | Status of whether budget alerts are enabled |
| AlertPercentageOne | First alert threshold percentage (e.g. 80) |
| TotalContractLineValue | Total value of the line across currencies |
| AmountUsed | Total value already used from this contract line |
| HoursBooked | Number of hours booked on this line |
| Active | Whether the contract line is active |
| AmountInvoiced | Amount already invoiced for this line |
| InvoiceMethod | How this line is invoiced (e.g. Manual, Recurring) |
| DeActivateOnBudgetOverwrite | Indicates if line deactivates when budget is overwritten |
| PercentageUsed | % of the contract line budget already used |
| DisplayName | Concatenated display name with contract line number and name |
| AlertPercentageTwo | Second alert threshold percentage (e.g. 90) |
| FirstAlertSent | Whether the first alert has been sent |
| SecondAlertSent | Whether the second alert has been sent |
| BudgetOverwriteAlertSent | Whether the overwrite alert has been sent |
| ExpenseNonBillable | Whether expenses on this line are non-billable |
| AmountBase | Amount in base currency |
| BudgetBase | Budget in base currency |
| TotalContractLineValueBase | Total contract line value in base currency |
| AmountUsedBase | Amount used in base currency |
| AmountInvoicedBase | Amount invoiced in base currency |
| HubSpotTicketID | Linked HubSpot ticket ID, if synced |
| EstimatedProfitAmount | Projected profit in default currency |
| EstimatedProfitAmountBase | Projected profit in base currency |
| EstimatedMarginPercentage | Projected profit margin (%) |
| ActualProfitAmount | Actual profit achieved |
| ActualProfitAmountBase | Actual profit in base currency |
| ActualMarginPercentage | Actual profit margin (%) |
| BudgetBasedOnCostRate | Budget based on internal cost rates |
| BudgetBasedOnCostRateBase | Base currency value of cost-based budget |
| UsedBasedOnCostRate | Used amount based on internal cost rates |
| UsedBasedOnCostRateBase | Base currency used value based on cost |
| PlannedHours | Total planned hours for this line |
| UsedHours | Hours already worked on this line |
| RemainingHours | Planned hours minus used hours |
| TagsSearch | Internal tags for filtering/searching lines |
| PercentageCompleted | Completion % (based on hours or tasks) |
| ToBeInvoiced | Remaining amount to be invoiced |
| ToBeInvoicedBase | Base currency value to be invoiced |
| ProfitAmount | Actual profit amount in local currency |
| ProfitAmountBase | Actual profit in base currency |
| RecognizedRevenue | Revenue recognized to date |
| RecognizedRevenueBase | Recognized revenue in base currency |
| Project | Linked project ID |
| RecurringInvoiceSchema | Recurring invoice schema, if applicable |
| ContractGroupLine_ContractGroup | Linked contract group this line belongs to |
| ContractGroupLine_TaxCategory | Linked tax category for invoicing |
| ContractGroupLine_GLAccount | Linked general ledger account |
| ContractGroupLine_TransactionClasses | Transaction classes for reporting |
| ContractGroupLine_TrackingCategory | Linked tracking category |
| BudgetGridLine_ContractGroupLine | Linked budget grid line |
| ContractGroupLine_Product | ID of the product linked to this contract line |
| ContractGroupLine_ProductPriceList | ID of the product pricelist linked to this contract line |
ContractLineTemplates
The ContractLineTemplates table defines individual contract lines within a contract template in PSOhub. Each line represents a specific service, deliverable, or expense.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract line template |
| Name | Name of the contract line (e.g. Consultancy, Travel Expenses) |
| Description | Optional description of the contract line |
| ContractLineType | Type of line item: Time_Materials, Fixed_fee, or Expenses |
| Amount | Default amount for this line |
| Budget | Budgeted amount for the line |
| TotalContractLineValue | Total value for this line |
| RevenueAccount | Revenue account associated with this line (if applicable) |
| Currency | Currency in which the contract line is defined |
| NonBillableExpense | Indicates whether the expense is billable (FALSE = billable) |
| LineNumberNameConcantenated | Display value combining line number and name |
| FixedFeeExpense | TRUE if the line is both Fixed Fee and an expense |
| ContractLineTemplate_ContractGroupTemplate | Foreign key linking this line to a specific contract group template |
| ContractLineTemplate_ContractTemplate | Foreign key linking this line to the contract template |
| ContractLineTemplate_ContractLineNumber | Foreign key referencing the line number template |
| ContractLineTemplate_TaxCategory | Tax category used for this line (if applicable) |
ContractTemplates
The ContractTemplates table defines reusable contract blueprints in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract template |
| Name | Name of the contract template |
| IsExample | Indicates whether this is an example template |
| ContractTemplateID | Alternate identifier |
| changedDate | Last date and time the template was modified |
| createdDate | Date and time the template was originally created |
| ContractTotal_ContractTemplate | Foreign key linking to total contract value info |
| ContractTemplate_Organisation | Foreign key linking the template to a specific organization |
| owner | ID of the user who owns or created the contract template |
| changedBy | ID of the user who last modified the template |
ContractTotals
This table summarizes financial totals across all contract lines within a single engagement or contract template.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the contract totals record |
| TotalBudget | Total budgeted amount across all contract lines |
| TotalAmount | Total contracted amount |
| TotalAmountUsed | Total amount of the contract that has been used |
| TotalAmountInvoiced | Total amount that has been invoiced so far |
| TotalCostAmount | Total cost associated with the contract lines |
| changedDate | Last modified date of the record |
| createdDate | Date the record was created |
| TotalBudgetBase | Total budget in base currency |
| TotalAmountBase | Total contracted amount in base currency |
| TotalAmountUsedBase | Used amount in base currency |
| TotalAmountInvoicedBase | Invoiced amount in base currency |
| TotalCostAmountBase | Total cost in base currency |
| TotalEstimatedProfitAmount | Estimated profit based on budget and cost |
| TotalEstimatedProfitAmountBase | Estimated profit in base currency |
| TotalEstimatedMarginPercentage | Estimated margin as a percentage |
| TotalActualProfitAmount | Actual profit calculated after usage/invoicing |
| TotalActualProfitAmountBase | Actual profit in base currency |
| TotalActualMarginPercentage | Actual margin as a percentage |
| TotalSalesBudgetAmount | Sales budget set for the contract |
| TotalBudgetBasedOnCostRate | Budget calculated using internal cost rates |
| TotalBudgetBasedOnCostRateBase | Cost rate-based budget in base currency |
| TotalUsedBasedOnCost | Used budget based on internal cost |
| TotalUsedBasedOnCostBase | Used cost in base currency |
| PercentageCompleted | Overall completion percentage for the contract |
| TotalPlannedHours | Total planned hours across all contract lines |
| TotalUsedHours | Total actual hours booked |
| TotalRemainingHours | Remaining hours not yet used |
| TotalBudgettedHours | Total number of hours budgeted |
| TotalDeltaBudgetUsed | Difference between budgeted and used hours |
| ToBeInvoiced | Total amount yet to be invoiced |
| ToBeInvoicedBase | To be invoiced amount in base currency |
| ProfitAmount | Final calculated profit |
| ProfitAmountBase | Final profit in base currency |
| RecognizedRevenue | Revenue that has been recognized |
| RecognizedRevenueBase | Recognized revenue in base currency |
| ContractTotal_OneEngagement | Linked engagement (project) ID |
| ContractTotal_ContractTemplate | Linked contract template ID |
| owner | User ID of the record owner |
| changedBy | User ID of the last person to change the record |
Currencies
This table stores all available currencies configured within an organization, including their exchange rates and display settings.
| Field Name | Description |
|---|---|
| ID | Unique identifier of the currency |
| ExchangeRate | The exchange rate relative to the base currency |
| Active | Indicates whether this currency is active |
| AddToChilds | If set to true, the currency applies to child organizations |
| BaseCurrency | True if this is the organization's base currency |
| CurrencyDisplayName | The display name of the currency (e.g. Euro (EUR) €) |
| changedDate | Timestamp of the last update to the record |
| createdDate | Timestamp of when the record was created |
| MultiCurrency_Organisation | Links to the organization that uses this currency |
| MultiCurrency_Currencies_Base | Links to the base currency in a multi-currency setup |
| MultiCurrency_Currencies_Multi | Links to the foreign/multi currency in a multi-currency setup |
| owner | ID of the user who owns this record |
| changedBy | ID of the user who last modified this record |
Events
The Events table stores scheduled items for users, including absences, holidays, and project-related time blocks.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the event record |
| EventId | Internal identifier of the event |
| ResourceId | ID of the user or resource the event is linked to |
| StartDate | Date and time the event starts |
| EndDate | Date and time the event ends |
| EventContext | Additional context or comments about the event (optional) |
| SendInviteToResource | Indicates if an invite was sent to the resource (TRUE or FALSE) |
| Title | Title or name of the event |
| EventType | Type of event (e.g. Holiday, Absence, Project) |
| WorkingHoursAbsent | Number of working hours considered absent for this event |
| EventInvite_Event | Linked ID if the event was created via an invite |
| Event_Account | ID of the account or organization the event is associated with |
| Event_Organisation | ID of the organization the resource belongs to |
| Event_OneEngagement | ID of the related OneEngagement (if applicable) |
| Event_ContractGroupLine | ID of the related contract line (if applicable) |
| Event_Company | ID of the company related to the event (if applicable) |
| Event_ProjectRole | ID of the project role this event is linked to (if applicable) |
ExpenseCategories
This table stores the list of expense categories used in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the expense category |
| OrderNumber | Determines the display order of categories |
| Category | Name of the expense category (e.g. Travel, Lodging) |
| ExpenseCategory_Organisation | Reference to the organisation this category belongs to |
Expenses
This table stores individual expense records submitted by users in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the expense entry |
| ExpenseDate | Date the expense occurred or was submitted |
| Description | Description of the expense |
| Amount | Total amount of the expense including VAT (in the user's currency) |
| VAT | VAT percentage applied to the expense |
| VATAmount | Amount of VAT included in the total |
| Invoiced | Indicates whether the expense has been invoiced |
| AmountExcVAT | Amount of the expense excluding VAT |
| HasAttachment | Indicates whether an attachment is uploaded |
| Currency | The currency code or symbol used for the expense |
| createdDate | Date and time the expense record was created |
| TotalAmountBase | Total amount including VAT, converted to the organization's base currency |
| VATAmountBase | VAT amount converted to the base currency |
| AmountExVATBase | Amount excluding VAT, converted to the base currency |
| Expense_ExpenseCategory | Link to the category the expense falls under |
| Expense_ContractGroupLine | Link to the contract group line the expense is associated with |
| Expense_OneEngagement | Link to the engagement the expense belongs to |
| Expense_Account | Link to the user account that submitted the expense |
| Expense_Company | Link to the company the expense is associated with |
| Expense_Invoice | Link to the invoice this expense was billed on (if applicable) |
| Expense_BusinessUnit | Link to the business unit responsible for this expense |
GLAccounts
This table stores General Ledger (GL) account mappings used to link PSOhub contract lines to specific GL accounts in external accounting systems such as Xero, QuickBooks, and Sage.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the GL account |
| GLName | Display name of the GL account in PSOhub |
| Description | Optional description of the account or its intended use |
| SageExternalID | External ID used when syncing to Sage |
| SageDefaultTaxID | Default tax ID used for this GL account when syncing to Sage |
| SageDefaultTaxPercentage | Default tax rate (percentage) used with this GL account in Sage |
| changedDate | Date and time the record was last modified |
| createdDate | Date and time the record was originally created |
| GLAccount_AccountingAuthorization | Link to the accounting integration authorization |
| GLAccount_Organisation | Link to the organization this GL account belongs to |
| owner | User who created the record |
| changedBy | User who last modified the record |
InvoiceContractLines
This table stores individual contract lines that are included in a customer invoice.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the invoice line |
| LineNumber | Display line number on the invoice |
| Name | Label or name of the invoice line |
| LineType | Type of contract line: Fixed_fee, Time_Materials, Retainer, Expenses |
| Amount | Total amount for this line |
| Invoiced | Amount already invoiced for this line |
| ToBeInvoiced | Amount yet to be invoiced |
| NumberOfLines | Number of rows the line spans on the invoice |
| TaxPercentage | Tax rate applied to the line item |
| OriginalToBeInvoiced | Original amount to be invoiced before adjustments |
| Currency | Currency used for this invoice line |
| DateLabelDisplay | Whether the invoice line displays a date label |
| NameLabelDisplay | Whether the invoice line displays a name label |
| HoursLabelDisplay | Whether the invoice line displays hours worked |
| RateLabelDisplay | Whether the invoice line displays rate per hour |
| DescriptionLabelDisplay | Whether the invoice line includes a description label |
| PersonNameDisplay | Whether the person's name is shown on the invoice line |
| Description | Description text displayed on the invoice line |
| RoleDisplay | Whether the user role is shown on the invoice line |
| FixedFeeExpense | TRUE if the line is a fixed fee expense (not time-based) |
| AmountBase | Total amount in the base (home) currency |
| InvoicedBase | Amount already invoiced in the base currency |
| ToBeInvoicedBase | Remaining amount to be invoiced in the base currency |
| InvoiceContractLine_Invoice | Link to the invoice this line is part of |
| InvoiceContractLine_ContractGroupLine | Link to the original contract line that generated this invoice line |
| InvoiceContractLine_InvoiceSchema | Link to the invoice schema (if applicable) |
InvoiceLines
The InvoiceLines table contains the detailed line items associated with each invoice in PSOhub, representing the specification sheet for T&M or hybrid invoices.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the invoice line |
| Description | Description of the invoice line |
| Rate | Billing rate applied to the line |
| AmountOfHours | Number of hours or units associated with the line |
| TotalAmount | Total amount billed on this line (Rate × Hours/Units) |
| Date | Date associated with the billed entry |
| Currency | Currency in which the amount is billed |
| TotalAmountBase | Total amount converted to the organization's base currency |
| RateBase | Rate converted to the base currency |
| InvoiceLine_InvoiceContractLine | Reference to the related contract line in InvoiceContractLines |
| InvoiceLine_Account | Reference to the PSOhub account that generated the invoice line |
| InvoiceLine_ProjectRole | Reference to the project role associated with the work (if applicable) |
Invoices
The Invoices table captures all invoice records in PSOhub, including summary and detailed invoices for both fixed fee and time-based billing.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the invoice |
| Name | Internal name of the invoice |
| InvoiceNumber | Official invoice number (if assigned) |
| Reference | Optional reference field (e.g. PO number) |
| InvoiceDate | Date the invoice was issued |
| ExpirationDate | Due date for the invoice |
| TotalExVAT | Total amount excluding VAT |
| VATPercentage | VAT percentage applied |
| Total | Total invoice amount including VAT |
| Status | Status of the invoice (e.g. Draft, Sent, Approve, Paid) |
| DateFrom | Start of the period covered by the invoice |
| DateTo | End of the period covered by the invoice |
| Footer | Optional footer text included on the invoice PDF |
| DatePAID | Date the invoice was marked as paid |
| InvoiceDetailLevel | Invoice layout type: Summary or Detailed |
| IsCredit | Boolean flag indicating if the invoice is a credit note |
| AccountingExternalURL | External link to the invoice in the connected accounting software |
| ExternalInvoiceNumber | Invoice number assigned by external accounting system |
| XeroInvoiceID | Internal ID used for syncing with Xero |
| TotalExVATBase | Total amount excluding VAT, converted to base currency |
| TotalAmountIncVATBase | Total amount including VAT, converted to base currency |
| SentDate | Date the invoice was sent from PSOhub |
| Project | Reference to the project associated with the invoice |
| Company | Reference to the company the invoice is billed to |
| InvoiceSchema | Reference to the invoice template or layout schema |
| Invoice_Contact_Main | Contact person associated with the invoice |
InvoiceTaxes
The InvoiceTaxes table stores tax subtotals for each invoice in PSOhub, breaking down VAT amounts applied per rate.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the VAT record |
| VATPercentage | VAT rate (%) applied to the invoice items |
| VATAmount | The monetary amount of VAT charged for this tax rate |
| TaxName | Name or label for the VAT type |
| VATAmountBase | VAT amount converted to the organization's base currency |
| InvoiceTax_Invoice | Reference to the invoice this tax subtotal is associated with |
KanbanLanes
The KanbanLanes table defines the visual workflow lanes used in PSOhub's Kanban view.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the Kanban lane |
| Name | The label of the lane as shown in the Kanban view (e.g. To do, In progress) |
| Action | The internal status that this lane maps to (e.g. To_Do, Running, Done) |
| ObjectGUID | The unique identifier used internally to track this lane's position or ID |
| KanbanLanes_Organisation | The organization ID this lane belongs to |
MasterDataWorkingDaysPerMonths
This table is a reference calendar that defines the number of working days in each month. PSOhub uses it as the basis for monthly capacity calculations, so it acts as a shared lookup rather than holding resource-specific data. Join it from ResourceMonthlyCapacities to convert available working days into planned capacity.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the working-days record |
| Month | Month number (1–12) the record applies to |
| Year | Calendar year the record applies to |
| WorkingDays | Number of working days in this month |
| StartDate | First day of the month |
| EndDate | Last day of the month |
| MonthName | Name of the month (e.g. January) |
PlanningPerdayProjectMembers
This table stores the day-by-day resource plan at the project-member level. Each row captures planned and used hours and amounts for a specific project member on a single day, linked to the relevant contract line. Use it when you need planning data broken down per project member rather than per resource across the whole organization.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the daily project-member planning record |
| ObjectID | Internal global identifier used by PSOhub's backend |
| Date | The calendar day this planning record applies to |
| WeekNumber | ISO week number of the date |
| MonthNr | Month number (1–12) of the date |
| Year | Calendar year of the date |
| PlannedHours | Hours planned for this project member on this day |
| PlannedAmount | Planned value (in project currency) for this day |
| UsedHours | Hours actually booked for this project member on this day |
| UsedAmount | Actual value (in project currency) booked on this day |
| PlanningPerdayProjectMember_ProjectMember | ID of the project member this planning record belongs to |
| PlanningPerdayProjectMember_ContractGroupLine | ID of the contract line this planning record relates to |
PlanningPerDays
This table holds the day-by-day resource plan in PSOhub. Each row represents planned and used effort for a single resource on a single day, optionally tied to a project and contract line. It replaces the annual, column-per-month structure of the deprecated Calculation tables with one row per day, which makes it far easier to build time-series reports in Power BI or Excel.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the daily planning record |
| ObjectID | Internal global identifier used by PSOhub's backend |
| Date | The calendar day this planning record applies to |
| YearForDate | Calendar year of the date |
| YearOfWeekNumber | Year that the ISO week number belongs to |
| WeekNumber | ISO week number of the date |
| MonthNr | Month number (1–12) of the date |
| RegistrationLevel | The level at which the planning is registered (e.g. project or resource) |
| PlannedHours | Hours planned for this resource on this day |
| PlannedAmount | Planned value (in project currency) for this day |
| UsedHours | Hours actually booked for this resource on this day |
| UsedAmount | Actual value (in project currency) booked on this day |
| CapacityRemaining | Remaining capacity for this resource on this day |
| AvailableCapacity | Total available capacity for this resource on this day |
| changedDate | The date and time when the record was last modified |
| createdDate | The date and time when the record was created |
| PlanningPerDay_Account | ID of the resource (UserAccounts) this planning record belongs to |
| PlanningPerDay_ProjectMember | ID of the project member this planning record relates to |
| PlanningPerDay_Project | ID of the project this planning record relates to |
| PlanningPerDay_ContractLine | ID of the contract line this planning record relates to |
| PlanningPerDay_WorkloadPeriod | ID of the workload period this planning record relates to |
| PlanningPerDay_Organisation_AccessRule | Internal ID used for organization-level access control |
| PlanningPerDay_CalculationPeriod | Foreign key reference to a calculation period |
Plans
The Plans table stores the core metadata for every plan in PSOhub, regardless of whether the plan is linked to a project, quote, or standalone.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the plan |
| Name | The name of the plan |
| GuestGUID | Guest access GUID for external sharing |
| PlanningGuestURL | Public URL to access the plan in guest mode |
| TotalTasks | Total number of tasks in the plan |
| TotalTasksCompleted | Number of completed tasks in the plan |
| TotalTasksOverdue | Number of tasks with due dates in the past and still incomplete |
| TaskboardStatus | Current status of the plan (e.g. Active, Archived) |
| NumberSelected | Number of selected (manually marked) tasks |
| DateFirstTask | Start date of the earliest task in the plan |
| DateLastTask | Due date of the latest task in the plan |
| TotalUnAssigned | Number of tasks not assigned to any user |
| ExternalDealID | Deal ID from an external source such as HubSpot |
| TaskBoard_TaskBoardTemplate | Linked Task Board Template used to structure the plan |
| TaskProgress_TaskBoardProgress | Linked progress indicator for this plan |
| TaskBoard_OneEngagement | Link to the related project or quote this plan belongs to |
| TaskBoard_Organisation_NoProject | Link to the organization if this is a standalone/non-project plan |
| TaskBoard_PlanStage | Plan stage (e.g. Draft, In Progress, Completed) |
ProductPriceLists
The ProductPriceLists table defines the price lists that can be assigned to products within PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the product pricelist |
| Name | Field from PSOhub product pricelist data |
| NumberOfProducts | Field from PSOhub product pricelist data |
| Active | Field from PSOhub product pricelist data |
| ProductPriceList_MultiCurrency | ID of the multicurrency linked to this product pricelist |
| ProductPriceList_Organisation | ID of the PSOhub organization this product pricelist belongs to |
| ProductPriceList_BusinessUnit | ID of the business unit linked to this product pricelist |
Products
The Products table defines the products that can be used within PSOhub for quoting, contracting, and invoicing purposes.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the product |
| Name | Field from PSOhub product data |
| SKU | Field from PSOhub product data |
| Description | Field from PSOhub product data |
| Billing_Frequency | ID of the frequency linked to this product |
| UnitSellingPrice | Field from PSOhub product data |
| UnitCostPrice | Field from PSOhub product data |
| UnitMarginPrice | Field from PSOhub product data |
| MarginPercentage | Field from PSOhub product data |
| Source | Field from PSOhub product data |
| URL | Field from PSOhub product data |
| SAPExternalID | Field from PSOhub product data |
| changedDate | The date and time when the record was last modified |
| createdDate | The date and time when the record was created |
| Product_ProductCategory | ID of the product category linked to this product |
| Product_CompanyVendor | ID of the company vendor linked to this product |
| Product_ProductPriceList | ID of the product pricelist linked to this product |
| Product_Organisation | ID of the PSOhub organization this product belongs to |
ProjectMembers
The ProjectMembers table tracks users assigned to a project in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the project member |
| Active | Indicates whether the user is actively assigned to the project |
| SendAlert | Boolean flag to send alerts for overdue tasks assigned to this member |
| Rate | Billing rate of the project member in their local currency |
| RateBase | Billing rate converted to the base currency |
| ExternalRate | Optional external rate (e.g. subcontractor billing rate) |
| Currency | Currency code for the billing rate |
| ProjectMemberGUID | Unique GUID for this project member record |
| CostRate | Internal cost rate for this resource |
| CostRateBase | Internal cost rate converted to base currency |
| Tags | Custom tags associated with the user |
| BackUpPM | Boolean flag indicating whether this user is a backup project manager |
| ProjectMember_OneEngagement | Linked Engagement (Project) ID this member is assigned to |
| ProjectMember_ProjectRole | Linked Project Role ID |
| ProjectMember_Account | Linked internal user account |
| ProjectMember_InvoiceContractLine_ForInvoiceDoc | Linked contract line ID for billing/invoicing purposes |
| ProjectMember_ProjectPlan | Linked Plan ID the user is participating in |
ProjectRoles
This table defines the available roles that can be assigned to users within a project.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the role configuration |
| Role | The name of the project role (e.g. Project Manager, Engineer) |
| Rate | The billable rate (usually per hour) associated with this role |
| CostRate | The internal cost rate used for profitability and margin analysis |
| RateBase | The base multiplier or currency factor for the rate |
| CostRateBase | The base multiplier for the cost rate |
| ProjectRole_Organisation | Links to the organisation that owns the role |
| ProjectRole_MultiCurrency | Links to the MultiCurrency table for international rate management |
Projects
The Projects table stores the main project records in PSOhub. It serves as the foundation for contract tracking, project management, time logging, invoicing, and reporting.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the project |
| ProjectName | Name of the project |
| Description | Free-text description or scope of the project |
| ProjectStage | Current stage of the project (e.g. Active, Proposal, Archived) |
| ProjectDate | Start date or creation date of the project |
| ExpectedEndDate | Estimated end date of the project |
| DealAmount | Amount associated with the originating quote/deal |
| TotalProjectValue | The financial value of the project |
| DueDaysInvoice | Number of days after invoice date before payment is due |
| InvoiceDetailLevel | Detail level for invoices: Summary or Detailed |
| Reference | Optional reference number or code |
| ProjectNumber | Auto-generated project number (e.g. PRO-2024-25) |
| SmartInvoiceStatus | Status of invoicing for the project |
| ClosedDate | Date the project was closed or archived |
| InternalProject | TRUE if the project is for internal use only |
| Planning | TRUE if the project includes a plan |
| Currency | Currency used for the project |
| TotalProjectValueBase | Project value converted to base currency |
| IsQuote | TRUE if this record was generated from a quote |
| Tags | Tags used to categorize the project |
| IsExample | TRUE if the project is a demo/example |
| ExternalDealID | ID of the associated external deal (e.g. HubSpot deal) |
| Location | Location related to the project |
| Remark | Additional notes or comments |
| IsHubSpotServiceProject | TRUE if flagged as a HubSpot service project |
| HubspotCustomObjectID | Custom object ID in HubSpot (if linked) |
| ProjectManager | User ID of the assigned project manager |
| Customer | Linked company/contact acting as the customer |
| ProjectType | Category of project (e.g. Consultancy, SaaS) |
| ContractTotal_OneEngagement | Linked contract total for OneEngagement model |
| OneEngagement_Organisation | Organization assigned under OneEngagement |
| OneEngagement_MultiCurrency | Linked record for multi-currency conversion context |
| OneEngagement_BusinessUnit | Business unit responsible for the project |
| OneEngagement_ProjectStage | Custom stage in OneEngagement lifecycle |
| OneEngagement_ContractTemplate | Contract template used for this project (if any) |
| OneEngagement_Contact_MainContact | Primary contact person for this project |
ProjectStages
The ProjectStages table defines the lifecycle stages a project can go through in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the project stage |
| StageName | Name of the project stage (e.g. Draft, Active, Closed, Archived) |
| OrderNumber | Determines the order in which stages appear |
| Description | Optional internal notes about the stage |
| ProjectStage_Organisation | The organization to which this stage configuration belongs |
ProjectTypes
The ProjectTypes table contains the different types of projects that an organization can define in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier of the project type |
| ProjectTypes | Field from PSOhub projecttype data |
| ProjectType_Organisation | Link to the organization this project type belongs to |
Quotes
The Quotes table contains all quotes created in PSOhub. Each quote represents a formal offer sent to a client for proposed services.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the quote |
| QuoteDate | Date the quote was issued |
| QuoteExpirationDate | Date the quote is set to expire |
| QuoteNumber | System-generated number for the quote |
| Comments | General comments or notes added to the quote |
| QuoteFooter | Custom footer text that appears at the bottom of the quote PDF |
| AddTeamAndRates | Indicates if team members and hourly rates were added |
| AddTaskBoard | TRUE if a Task Board was included in the quote |
| AddGanttChart | TRUE if a Gantt chart was included in the quote |
| QuoteStage | Current stage of the quote (e.g. Draft, Signed, Expired, Declined) |
| IsSigned | Whether the quote has been signed |
| DeepLink | Link to view or sign the quote externally |
| WLTotalHours | Total estimated hours from workload planning |
| WLTotalAmount | Total estimated amount from workload planning |
| TotalAmountEstimate | Total estimated amount including all sections |
| ProjectName | Name of the proposed project |
| Description | Description of the project in the quote |
| ProjectStage | Stage the resulting project will begin in |
| ProjectDate | Proposed start date for the project |
| ExpectedEndDate | Proposed end date for the project |
| Amount | Deal amount in the quote's selected currency |
| TotalProjectValue | Total project value calculated in the quote |
| TotalProjectValueBase | Total project value in the base currency |
| ExternalDealID | Deal ID from an external CRM (e.g. HubSpot) |
| InvoiceDetailLevel | Selected invoice layout (e.g. Summary, Detailed) |
| Reference | Internal reference code or label for tracking |
| Currency | Currency symbol used in the quote |
| changedDate | Timestamp when the quote was last modified |
| createdDate | Timestamp when the quote was originally created |
| Quote_Project | Foreign key linking to the related project |
| ContractTotal_OneEngagement | Foreign key to the total contract record linked to the quote |
| OneEngagement_ProjectType | Foreign key to the selected project type for this quote |
| OneEngagement_BusinessUnit | Foreign key to the selected business unit |
Recurrings
The Recurrings table stores configuration data for recurring fixed-fee invoices in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the recurring schedule |
| StartDate | The date the recurring schedule begins |
| EndDate | The date the recurring schedule ends |
| Frequency | How often the invoice recurs (e.g. Monthly, Quarterly) |
| NextRecurringDate | The next scheduled date for invoice generation |
| ContractGroupLine | ID of the associated contract group line |
| RecurringInvoiceSchema_Project_OData | Foreign key linking to the associated project |
ResourceAbsenceHolidayDayTotals
This table records daily absence and holiday totals per resource. Each row represents the planned and used non-working hours for a resource on a single day, classified by absence or holiday type. Use it to factor leave and absence into capacity and utilization reporting.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the absence/holiday record |
| ObjectID | Internal global identifier used by PSOhub's backend |
| Date | The calendar day this record applies to |
| WeekNumber | ISO week number of the date |
| Month | Month number (1–12) of the date |
| Year | Calendar year of the date |
| PlannedHours | Absence or holiday hours planned for this day |
| UsedHours | Absence or holiday hours actually taken on this day |
| AbsenceHolidayType | Type of absence or holiday (e.g. Holiday, Absence) |
| ResourceAbsenceHolidayDayTotals_Account | ID of the resource (UserAccounts) this record belongs to |
ResourceDailyCapacity
This table stores capacity data per resource per day. Each row shows how much capacity a resource has on a given day, how much has been planned and booked against it, and the remaining capacity, along with used and available capacity as percentages. Use it for day-level utilization and capacity analysis.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the daily capacity record |
| ObjectID | Internal global identifier used by PSOhub's backend |
| Date | The calendar day this capacity record applies to |
| Month | Month number (1–12) of the date |
| Year | Calendar year of the date |
| Capacity | Total available capacity (in hours) for this resource on this day |
| RemainingCapacity | Capacity remaining after planned work is subtracted |
| PlannedHours | Hours planned for this resource on this day |
| BookedHours | Hours actually booked for this resource on this day |
| PlannedAmount | Planned value (in currency) for this day |
| CapacityUsedPercentage | Percentage of capacity used on this day |
| CapacityAvailablePercentage | Percentage of capacity still available on this day |
| ResourceDailyCapacity_Account | ID of the resource (UserAccounts) this capacity record belongs to |
ResourceMonthlyCapacities
This table stores capacity data per resource per month. Each row summarizes a resource's total capacity for a month, the hours planned and booked against it, and the remaining capacity, along with used and available capacity as percentages. It links to MasterDataWorkingDaysPerMonths for the working-days basis of the calculation. Use it for month-level occupancy and capacity analysis.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the monthly capacity record |
| ObjectID | Internal global identifier used by PSOhub's backend |
| Month | Month number (1–12) this capacity record applies to |
| Year | Calendar year this capacity record applies to |
| Capacity | Total available capacity (in hours) for this resource this month |
| RemainingCapacity | Capacity remaining after planned work is subtracted |
| PlannedHours | Hours planned for this resource this month |
| BookedHours | Hours actually booked for this resource this month |
| CapacityUsedPercentage | Percentage of capacity used this month |
| CapacityAvailablePercentage | Percentage of capacity still available this month |
| ResourceMonthlyCapacity_Account | ID of the resource (UserAccounts) this capacity record belongs to |
| ResourceMonthlyCapacity_MasterDataWorkingDaysPerMonth | ID of the working-days record used as the basis for this month's capacity |
RetainersAndInstallments
This table contains all installment or retainer-based billing entries created from contract lines set to "Installments" or "Recurring fixed fee."
| Field Name | Description |
|---|---|
| ID | Unique identifier for the installment/retainer entry |
| DueDate | Scheduled date for the installment to be invoiced |
| PercentageToInvoice | Percentage of the contract line to be invoiced in this installment |
| Amount | Amount to be invoiced for this installment |
| Invoiced | Actual amount that has already been invoiced |
| Description | Optional description for the installment |
| Currency | Currency symbol used in the quote/project |
| Edit | Indicates if this row is editable in the UI |
| AmountBase | Installment amount in the base currency |
| InvoicedBase | Amount invoiced from this installment in base currency |
| ContractGroupLine | Foreign key linking to the contract group line |
| Invoice | Foreign key linking to the actual invoice, if already generated |
| InstallmentAndRetainer_Project_OData | Foreign key linking to the associated project |
| InvoiceContractLine_InvoiceSchema | Foreign key linking to the invoice schema used |
SubTasks
The SubTasks table stores data for checklist items attached to tasks within a project plan in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the checklist item |
| Description | Text content of the checklist item |
| Finished | Boolean indicating if the checklist item has been marked as completed |
| createdDate | Date and time the checklist item was created |
| SubTask_Task | Foreign key linking the checklist item to the specific task it belongs to |
SubTotalGroups
The SubTotalGroups table summarizes financials and effort for each Contract Group in a project.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the subtotal group |
| SubTotalBudgetBase | Budgeted amount in base currency |
| SubTotalBudget | Budgeted amount in the quote or project currency |
| SubTotalAmountBase | Total planned amount in base currency |
| SubTotalAmount | Total planned amount in quote/project currency |
| SubTotalUsedBase | Total amount of effort or cost used so far, in base currency |
| SubTotalUsed | Total amount of effort or cost used so far, in quote/project currency |
| SubTotalInvoicedBase | Total invoiced amount in base currency |
| SubTotalInvoiced | Total invoiced amount in quote/project currency |
| SubTotalEstimatedProfitAmount | Expected profit amount based on budget vs cost |
| SubTotalEstimatedProfitAmountBase | Expected profit in base currency |
| SubTotalEstimatedMarginPercentage | Expected margin as a percentage |
| SubTotalActualProfitAmount | Actual profit earned to date |
| SubTotalActualProfitAmountBase | Actual profit in base currency |
| SubTotalActualMarginPercentage | Actual margin based on used vs invoiced amounts |
| SubTotalBudgetBasedOnCostRate | Budgeted cost calculated using cost rates |
| SubTotalBudgetBasedOnCostRateBase | Same as above, in base currency |
| SubTotalUsedBasedOnCost | Actual cost incurred based on logged time or expenses |
| SubTotalUsedBasedOnCostBase | Same as above, in base currency |
| SubTotalSalesBudgetAmount | Sales budget (planned revenue amount) |
| SubTotalSalesBudgetAmountBase | Sales budget in base currency |
| SubTotalPlannedHours | Total number of hours planned |
| SubTotalUsedHours | Total number of hours logged or used |
| SubTotalRemainingHours | Remaining hours (Planned - Used) |
| SubTotalBudgettedHours | Total budgeted hours |
| SubTotalDeltaBudgetUsed | Difference between budget and used |
| PercentageCompleted | Progress percentage for this subtotal group |
| ToBeInvoiced | Amount yet to be invoiced (project currency) |
| ToBeInvoicedBase | Amount yet to be invoiced (base currency) |
| ProfitAmount | Calculated profit (revenue - cost) |
| ProfitAmountBase | Profit in base currency |
| RecognizedRevenue | Revenue recognized for accounting purposes |
| RecognizedRevenueBase | Recognized revenue in base currency |
| SubTotalGroup_ContractGroup | Foreign key linking this group to a Contract Group |
Tags
The Tags table stores custom tags created by users to categorize and label different elements in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the tag |
| TagName | The name or label of the tag |
| TotalUsed | Number of times this tag has been applied in the system |
| changedDate | Date and time when the tag was last updated |
| createdDate | Date and time when the tag was originally created |
| Tags_Organisation | Reference to the organization the tag belongs to |
| owner | ID of the user who created the tag |
TaskLists
The TaskLists table stores the phase-level structure of a plan in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the task list |
| TaskListName | Name of the task list as it appears in the plan |
| Order | The position of the task list within the plan |
| IsSelected | TRUE if the task list is currently selected or active |
| createdDate | The date and time the task list was created |
| TaskList_TaskBoard | Internal reference linking the task list to a specific task board |
| TaskList_ContractGroupLine | Internal reference linking the task list to a contract line, if applicable |
Tasks
The Tasks table stores all individual tasks created within PSOhub projects.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the task |
| Title | Name of the task |
| DueDate | The date the task is due |
| Priority | Priority level of the task (e.g. High, Medium, Low, None) |
| Status | Current status of the task (e.g. To_Do, In_Progress, Done) |
| OrderNumber | Order of the task within its tasklist |
| StartDate | The planned start date of the task |
| Progress | Numeric percentage representing task completion (0–100) |
| Duration | Number of working days between start and due date |
| AssignedToDescription | Name(s) of user(s) assigned to the task |
| IsMileStone | TRUE/FALSE indicating whether the task is marked as a milestone |
| TotalTimeBooked | Total number of hours booked on this task |
| IsRecurring | TRUE/FALSE indicating whether the task is recurring |
| createdDate | The date the task was created |
| EffortInHours | Estimated effort in hours for the task |
| Task_TaskList | Linked ID to the TaskList the task belongs to |
| Task_KanbanLanes | Linked ID to the Kanban column for visual board representation |
| Task_Task_Dependency | Linked ID if this task is dependent on another task |
| Task_ProjectRole | Linked ID to the project role associated with the task |
| Task_BusinessUnit | Linked ID to the business unit associated with the task |
TaxCategories
The TaxCategories table stores tax rate configurations used across invoicing in PSOhub.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the tax category |
| Percentage | Tax rate percentage (e.g. 21 for 21%) |
| Category | Type of tax, such as VAT |
| DisplayName | How the tax category appears in PSOhub (e.g. VAT - 21%) |
| TaxCode | Internal or external tax code if used for accounting system integration |
| TaxCategory_Organisation | Reference to the organization the tax category belongs to |
TimeSheets
The TimeSheets table stores all logged time entries in PSOhub, including details such as duration, description, approval status, source, and billing amounts.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the timesheet entry |
| Description | Optional description or notes about the time entry |
| DateTimeFrom | Start date and time of the time entry |
| DateTimeTo | End date and time of the time entry |
| Source | Origin of the entry (e.g. Outlook, Chrome Extension, Mobile) |
| NumberOfHours | Total hours recorded |
| TotalAmount | Total amount billed (based on hourly rate) |
| Invoiced | TRUE if the time has been invoiced |
| TimesheetRate | Hourly rate applied to the entry |
| Currency | Currency used for billing this time entry |
| PublicHoliday | TRUE if the entry falls on a public holiday |
| TotalAmountCostRate | Total internal cost for this time entry |
| CostRate | Cost rate per hour for the user/resource |
| TotalAmountBase | Billed amount converted to the organization's base currency |
| TotalAmountCostRateBase | Internal cost in base currency |
| createdDate | Timestamp when the timesheet entry was created |
| ApprovedPM | TRUE if approved by the project manager |
| DateTimeApprovedPM | Date/time the entry was approved by the project manager |
| ApprovedByPM | ID of the user who approved the entry as project manager |
| ApprovedAdmin | TRUE if approved by an admin |
| DateTimeApprovedAdmin | Date/time the entry was approved by the admin |
| ApprovedByAdmin | ID of the user who approved the entry as admin |
| RejectReasonAdmin | Admin's reason for rejecting the entry |
| RejectReasonPM | Project manager's reason for rejecting the entry |
| DateTimeRejectedAdmin | Date/time the entry was rejected by the admin |
| DateTimeRejectedPM | Date/time the entry was rejected by the project manager |
| Project | ID of the related project |
| Account | ID of the related customer account |
| ProjectRole | ID of the role associated with the time entry |
| Company | ID of the company that owns this entry |
| Invoice | ID of the invoice the time entry is linked to |
| ContractLine | ID of the related contract line |
| TimeSheet_ProjectMember | ID of the project member who logged the time |
| TimeSheet_Task | ID of the task the time entry is linked to |
| TimeSheet_BusinessUnit | ID of the business unit associated with this entry |
TransactionClasses
The TransactionClasses table defines financial classification structures used to tag transactions in PSOhub, particularly for integrations with accounting platforms like QuickBooks.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the transaction class |
| Name | Name of the transaction class (e.g. Consulting, Marketing) |
| IsSubClass | Indicates whether this class is a subclass (TRUE/FALSE) |
| TransactionClasses_AccountingAuthorization | Linked field referencing the accounting authorization |
| TransactionClasses_Organisation | Linked field referencing the organization |
UserAccounts
This table contains information about each internal user in PSOhub, including personal details, account status, business unit associations, and default project roles.
| Field Name | Description |
|---|---|
| ID | Unique identifier for the user account |
| FullName | Full name of the user (First + Last Name) |
| Email address of the user | |
| Firstname | First name of the user |
| Lastname | Last name of the user |
| DaysOfHoliday | Number of allocated holiday days for the user |
| Working_hours | Number of working hours per week for the user |
| PercentageBillable | Expected percentage of billable hours for the user |
| TimesheetStartDate | Date the user began submitting timesheets |
| LastLogin | Timestamp of the user's last login |
| IsExternal | Whether the user is external to the organization (TRUE/FALSE) |
| Tags | Any tags associated with the user |
| AccountActive | Whether the account is active (TRUE/FALSE) |
| Account_Organisation | Linked organization the user belongs to |
| BusinessUnit_Account_TeamLead | Linked business unit where the user acts as a team lead |
| Account_BusinessUnit | Linked business unit the user is part of |
| Account_ProjectRole_Default | Default project role assigned to the user |