How Transactions Affect Your Project Budget

  • Last Created On May 29, 2026
  • 25
0 0

Overview

When you create cost transactions — such as Purchase Orders, Expenses, Claim Requests, or Imprest Requests — and link them to a project, GTS Solution automatically records and updates the corresponding budget metrics in the Project Budget.

This article explains:

  • The conditions a transaction must meet to be counted toward a Project Budget
  • How to configure your Budget Enforcement policy
  • How each transaction type is recorded under each policy

Conditions for a Transaction to Count Toward the Project Budget

A transaction only affects a Project Budget when all 3 of the following conditions are met simultaneously:


#ConditionDescription
1Correct projectThe transaction must be linked to a project that has an active Project Budget
2Within the budget periodThe transaction date must fall within the budget's Start Date – End Date range
3Matching Budget CategoryThe cost category of the transaction must match one of the Budget Categories configured in the budget

If any condition is missing, the transaction will not be reflected in the Project Budget — even if the correct project is selected.

Configuring Budget Enforcement Policy

Step 1 — Enable Tracking for Each Transaction Type

Go to Accounting → Settings → General and find the Project Budget & Enforcement section and check the transaction types you want to track

  • Purchase Order: Displays the Project Budget Category field on the Purchase Order creation form. POs will be recorded in the Project Budget when all conditions are met.
  • Expense: Displays the Project Budget Category field on the Expense creation form. Expenses will be recorded in the Project Budget when all conditions are met.

Important: If a transaction type is not checked, the Project Budget Category field will not appear on its creation form — and costs from that transaction type will not be recorded in the Project Budget, even if the correct project is selected.

Note: Claim Requests and Imprest Requests do not need to be configured here — the Project Budget Category field is always visible on these two transaction types by default.

Click Save to apply your settings.


Step 2 — Choose a Policy for Handling Over-Budget Transactions

Go to Accounting → Settings → General and find the Project Budget & Enforcement section to select one of the 3 policies below to define what happens when a transaction exceeds the Remaining Budget:

There are 3 options:

Option 1 — Disable Request When Budget Exceeded (Hard Block)

When the transaction amount exceeds the Remaining Budget of the matching category:

  • The system displays a red warning directly on the form
  • The Save button is disabled — the transaction cannot be saved
  • The user must reduce the amount or change the category before saving

Use this when your organization requires strict budget control — no overspending is allowed under any circumstances.


Option 2 — Allow Request but Require Advanced Approval

When the transaction amount exceeds the Remaining Budget of the matching category:

  • The system displays a warning but still allows the transaction to be saved

  • A special approval request is automatically sent to the Director / Budget Approver configured in Settings
  • The transaction waits for a decision:
    • If approved → the cost is recorded in the budget according to the rules for that transaction type
    • If rejected → the transaction receives a Budget Rejected status and does not affect the Project Budget

Use this when your organization wants flexibility — overspending is permitted but requires sign-off from an authorized person on a case-by-case basis.

Option 3 — Only Notify (Warning Message)

When the transaction amount exceeds the Remaining Budget of the matching category:

  • The system displays a yellow warning on the form

  • The transaction can be saved normally — no additional approval needed
  • The cost is recorded in the budget according to the rules for that transaction type

Use this when your organization only wants visibility and alerts — without hard controls.

How Costs Are Recorded by Transaction Type

Purchase Order (PO)

PO StatusRecorded In
DraftAllocated/Committed
ApprovedMoves from Allocated → Actual Spent
RejectedDeducted from Allocated/Committed. Does not affect Actual Spent

Special case — "Allow request but require advanced approval":

If a PO exceeds the budget and requires special approval:

  • After the Budget Approver approves → the full PO amount is added to Allocated/Committed
  • After the PO passes its own approval workflow and is approved → moves from Allocated to Actual Spent
  • If the Budget Approver or PO approval workflow rejects → deducted from Allocated; Actual Spent is unaffected


Expense

WhenRecorded InNotes
Immediately upon successful creationActual SpentRecorded directly — does not pass through Allocated

Special case — "Allow request but require advanced approval":

  • Expense exceeds budget → waits for Budget Approver review
  • If approved → recorded in Actual Spent
  • If rejected → status becomes Budget Rejected; budget is unaffected


Claim Request

WhenRecorded InNotes
Immediately upon successful creationActual Spent

Recorded directly — does not pass through Allocated

Special case — "Allow request but require advanced approval":

  • Claim exceeds budget → waits for Budget Approver review
  • If approved → recorded in Actual Spent
  • If rejected → status becomes Budget Rejected; budget is unaffected


Imprest Request & Retirement

Imprests & Retirements is a two-step process: first an Imprest Request (advance payment) is created, then a Retirement (expense settlement) is created within that Imprest Request.

WhenRecorded InNotes
When a Retirement is created and the Imprest Request reaches Completed statusActual SpentRecorded once the settlement is finalized

Special case — "Allow request but require advanced approval":

  • Imprest Request exceeds budget → waits for Budget Approver review
  • If approved → recorded in Actual Spent once the Retirement is created and the Imprest Request reaches Completed status
  • If rejected → status becomes Budget Rejected; budget is unaffected

Budget Status on Transactions

In the Detailed Transaction Logs section of the Project Budget Details page, each transaction displays two status badges: the transaction status and the budget status.


  • Budget Pending: Transaction exceeds budget and is awaiting Budget Approver review (only appears with the Advanced Approval option)
  • Budget Rejected: Budget Approver has declined — the transaction is not recorded in the budget
  • (No badge): Normal transaction, already recorded in the budget according to standard rules or approved by Budget Approver.

Transactions with Budget Rejected status do not affect any Project Budget metric (Allocated, Actual Spent, or Remaining).

Guide to Creating Transactions Recorded into Project Budget


Purchase Order (PO)

  1. Go to Purchase → Purchase orders , then click New 
  2. Fill in the purchase order information as usual
  3. Find the Order date field → select the transaction date. This date is used to match the correct budget period
  4. Find the Project field → select the correct project that has a Project Budget
  5. Find the Project Budget Category field → select the appropriate category (for example: Civil Works, Fuel/Transport...)
  6. Click Save

Important Note About Date: If the Order Date falls outside the budget period of all Project Budgets under that project, the transaction will not be recorded into any budget even if the correct project and category are selected.

Important Note: The Project Budget Category field is only displayed when the Purchase Order checkbox is enabled in: Accounting → Settings → General → Enforce Budget Constraints on


Expense

  1.  Go to Expenses, then click New Expense
  2. Select the Expense Category and enter the Amount
  3. Find the Expense Date field → select the actual expense date. This date is used to match the budget period
  4. Find the Project field → select the correct project that has a Project Budget
  5. Find the Project Budget Category field → select the appropriate category
  6. Click Save

Important Note About Date: The Expense Date must fall within the budget period (Start Date – End Date) of the corresponding Project Budget. Otherwise, the expense will not be recorded into the budget even if the correct project and category are selected.

Important Note: The Project Budget Category field is only displayed when the Purchase Order checkbox is enabled in: Accounting → Settings → General → Enforce Budget Constraints on


Claim Request

  1. Go to Accounting → Imprests & Retirements → Claim Requests, then click New Claim
  2. Fill in the claim information
  3. Find the Claim Date field → select the actual claim date. This date is used to match the budget period
  4. Find the Project field → select the correct project that has a Project Budget
  5. Find the Project Budget Category field → select the appropriate category
  6. Click Save

Important Note About Date: The Claim Date must fall within the budget period (Start Date – End Date) of the corresponding Project Budget. Otherwise, the expense will not be recorded into the budget.

Important Note: The Project Budget Category field is always displayed on the Claim Request form — no additional configuration is required in Settings.


Imprest Request & Retirement

Create an Imprest Request
  1. Go to Accounting → Imprests & Retirements, then click New Imprest Request
  2. Fill in the imprest information
  3. Find the Request Date field. This date is used to match the budget period
  4. Find the Project field → select the correct project that has a Project Budget
  5. Find the Project Budget Category field → select the appropriate category
  6. Click Save

Important Note: The Project Budget Category field is always displayed on the Imprest Request form — no additional configuration is required in Settings.

Create a Retirement
  1. Open the corresponding Imprest Request
  2. Create a Retirement inside that Imprest Request
  3. When the Imprest Request reaches Completed status → the system uses the Request Date as the transaction date to match the budget period
  4. The expense is automatically recorded into the Actual Spent of the corresponding Project Budget

Important Note About Date: The date used for budget matching is the date when the Imprest Request was created — not the Retirement creation date. 

For example: There are 2 Project Budgets: May Budget (01/05/2026 – 31/05/2026), June Budget (01/06/2026 – 30/06/2026)
Imprest Request created on 28/05
Retirement completed on 03/06
The expense will still be recorded into the May Budget, not the June Budget.

Important Note: Expenses are only recorded into the Project Budget after the Retirement is created and the Imprest Request status changes to Completed. No budget impact occurs at the initial Imprest Request creation stage.


Views: 25

Recent Articles

  • Convert to Invoice or Expense & Create I...
    20
  • Service Appointment in Field Service
    26
  • Work Orders in Field Service
    23
  • Estimates in Field Service
    24
  • Requests in Field Service
    21

Popular Articles

  • Warehouse
    2488
  • Item Settings
    2011
  • Plaid environment & Setup Your Bank Acco...
    1794
  • General Accounting Settings
    1689
  • Mapping Setup
    1580