--- title: "Understand GL-Based Costing for document-based integration" slug: "understand-gl-based-costing-for-document-based-integration" updated: 2026-07-10T21:22:42Z published: 2026-07-10T21:22:42Z canonical: "help.servicetitan.com/understand-gl-based-costing-for-document-based-integration" stale: true --- > ## Documentation Index > Fetch the complete documentation index at: https://help.servicetitan.com/llms.txt > Use this file to discover all available pages before exploring further. # Understand GL-Based Costing for document-based integration ## Overview GL-Based Costing calculates job and project costs using the same General Ledger (GL) accounts that drive your financial statements. If your business exports transactions to your accounting system using the Batch, post, and export process (document-based integration), this article explains what GL-Based Costing provides, what to verify in your configuration, and what changes to expect. --- ### #### Who uses this feature - Administrators, accountants, bookkeepers, and managers - Applies to all business types - Applies to all trades #### Feature configuration - Account configuration is required to use this feature. Contact [Technical Support](http://go.servicetitan.com/ask) for details. - The *View Job Financials* and *Access Financial Dashboard* permissions are required to use this feature. Contact the account administrator on your team. ## Things to know - GL-Based Costing does not change your accounting integration method. You continue to export transactions (bills, invoices, and so on) to your accounting system using the batch, post, and export process you use today. - GL-Based Costing uses the General Ledger service and journal entries internally to drive job cost reporting. It does not require you to export journal entries. - The legacy Job Costing and Project Costing flyouts are replaced by the Job Financials and Project Financials views after GL-Based Costing is enabled. - Non-inventory materials on invoices only produce job costs when they are tied to purchase orders with receipts or bills. Inventory items consumed on jobs continue to produce cost. - Costs are tied to accounting periods. Job profitability aligns with your month-end financial statements. ## How GL-Based Costing differs from legacy costing With legacy (operational) costing, costs are created based on activity in the system, such as creating a purchase order, receiving materials, or entering a bill. The system calculates job cost from those actions, and the General Ledger is updated afterward. Accounting alignment is secondary. With GL-Based Costing, costs are created based on how transactions affect the General Ledger. Each job cost ties directly to a journal entry and a GL account. Costs follow accounting rules, respect accounting periods, and can be audited. Accounting is the source of truth. ## What you get with GL-Based Costing GL-Based Costing provides the following capabilities: - **Costs organized by GL account:** Job profitability is broken down the same way your accountant sees it, by the GL accounts transactions are assigned to. - **Period-based reporting:** Costs are tied to accounting periods, so job profitability aligns with month-end financial statements. - **Stronger Audit Trail:** Every cost ties back to a journal entry. - **Job Financials view:** A ledger-backed view on the job record that shows Budget vs. Actuals, revenue and expense breakdowns by GL account, and key financial KPIs. This replaces the legacy Job Costing flyout. - **Project Financials view:** An updated project-level financial view powered by GL account data. This replaces the legacy Project Costing flyout. - **Customer and Location Financial Summary:** A rollup view of lifetime revenue, expenses, and margin data from the customer or Location Record. - **Accounting Financials Dashboard:** A centralized view of Over/Under Billing (WIP), Customer Balances, and Project Financials with configurable columns, filters, and data grouping. ## Verify your configuration After GL-Based Costing is enabled on your account, verify the following areas are configured correctly. ### Verify permissions 1. Go to the top toolbar and click **Settings** ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/icon-gnav-settings-inactive.png). 2. In the side panel, go to **People > Role Permissions**. 3. Click **Edit** next to the role you want to update. 4. Verify that the following permissions are enabled for owners, administrators, and accounting roles: - *Access Financial Dashboard* - *View Job Financials* - *View Balance Fields* - *View Revenue Field* - *View Cost Fields* - *View Journal Entry Landing Page* 5. (Optional) Enable the following permissions for accounting workflows: - *Accounting Period Management* - *Journal Entry Action - Exclude From Syncing* - *Journal Entry Action - Include In Syncing* 6. When finished, click **Save**. ### Verify GL accounts 1. Go to the top toolbar and click **Settings** ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/icon-gnav-settings-inactive.png). 2. In the side panel, go to **Accounting > General Ledger Accounts**. 3. Review the default GL accounts that appear after GL-Based Costing is activated. 4. Edit them to match the equivalent accounts in your accounting platform. > [!TIP] > **Tip:** Aligning GL account names between ServiceTitan and your accounting platform makes reconciliation simpler and reduces mapping errors. ### Verify costing settings 1. Go to the top toolbar and click **Settings** ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/icon-gnav-settings-inactive.png). 2. In the side panel, go to **Accounting > Costing**. 3. From the *Calculation Source* dropdown, confirm your preferred costing calculation source is selected (Purchase Orders, Receipts, or Vendor Bills). Your existing preference carries forward. ## What changes after GL-Based Costing is enabled | Area | Before (legacy costing) | After (GL-Based Costing) | | --- | --- | --- | | Job Costing view | Job Costing flyout on the job record | Replaced by the Job Financials view with Budget vs. Actuals, revenue and expense breakdowns by GL account, and key financial KPIs | | Project Costing view | Project Costing flyout on the project record | Replaced by the updated Project Financials view, powered by GL account data | | Customer Record | Basic balance and revenue fields | Customer Financials summary with lifetime revenue, expenses, and margin data | | Non-inventory materials | Non-inventory items on invoices produce job costs automatically | Only non-inventory items tied to purchase orders with receipts or bills produce job costs | | Cost calculation | Costs are derived from system activity (POs, receipts, bills), and the GL is updated afterward | Costs are derived from how transactions affect the General Ledger, and each cost ties to a journal entry and GL account | | Accounting export | Document-based batch, post, and export | No change. Your document-based export workflow is unaffected | ## Want to learn more? - See [Understand Budget vs Actuals](/v1/docs/understand-budget-vs-actual) - See [Run job costing reports](/v1/docs/run-job-costing-reports) - See [Costing Settings](/v1/docs/costing-settings) A batch, or invoice batch, is a set of invoices that have been audited and are ready to post. You will use the Invoice screen in ServiceTitan to create invoice batches. On the Invoice screen, you'll have access to unbatched and batched invoices. [Learn more →](https://help.servicetitan.com/docs/servicetitan-glossary) · [See the full glossary →](https://help.servicetitan.com/docs/glossary-overview) The calculation of actual costs (labor, materials, overhead) against revenue for each job to determine true profitability. **What it does:** Shows which job types, technicians, or BUs are truly profitable after accounting for all costs, not just top-line revenue. **Also called:** Job profitability, Cost tracking **Tags:** Core [See the full glossary →](https://help.servicetitan.com/docs/glossary-overview) A downloadable log of who changed what record and when. **What it does:** Provides change history for accountability, error investigation, and compliance across teams. **Also called:** Change history **Tags:** Core [See the full glossary →](https://help.servicetitan.com/docs/glossary-overview) A physical service address associated with a customer, containing all jobs, equipment, and history for that property. **What it does:** Separates service history by property so businesses serving customers with multiple locations can track work at each site. **Also called:** Service address, Property record **Tags:** Core [See the full glossary →](https://help.servicetitan.com/docs/glossary-overview) The top-level account in ServiceTitan representing a property owner or account holder, containing all locations, jobs, and history. **What it does:** Serves as the single source of truth for all customer interactions, history, and financial data. **Also called:** Customer account, Client record **Tags:** Core [See the full glossary →](https://help.servicetitan.com/docs/glossary-overview)