Skip to main content

Siteline + Sage 100 Contractor - Overview

Siteline handles the billing. Sage 100 handles the books. Together, they eliminate double entry and accelerate cash flow.

Written by Bradley LaFave

Siteline integrates with Sage 100 Contractor to streamline construction billing workflows for specialty subcontractors. While Sage 100 remains your system of record, Siteline simplifies billing — helping teams work faster, reduce errors, and get paid sooner.

How Siteline works with Sage 100

Siteline connects to Sage 100 via a secure API integration. This allows users to import project and schedule data into Siteline and sync finalized pay apps back to Sage 100 for accounting.

This integration reads real-time data from Sage 100 and syncs billing values back via user-initiated push. Here's how it works:

  1. Import project data and SOVs from Sage 100 into Siteline

  2. Bill using Siteline's intuitive interface (e.g., progress billing)

  3. Sync invoices back to Sage 100 for financial tracking and reporting

The integration reads real-time data from Sage 100 and syncs billing values back via user-initiated push.

Key integration notes

  • Bidirectional API sync: Read/write access via secure integration

  • On-demand sync: Users initiate all data syncs; Siteline never auto-posts to Sage

  • SOV source: Schedule of Values are pulled from Sage 100's 6-9 Proposals module

  • Invoice sync: Invoices are pushed into Sage 100's AR module with values, retention, and income accounts

  • Invoice code handling: Siteline generates the next invoice number in sequence, based on what exists in Sage

  • Period sensitivity: Sage auto-assigns the posting period based on its current accounting period

  • Retention note: Retention-only pay apps are not currently supported by the integration

  • Change order sync timing: Approved COs in Sage may take 5–10 minutes to appear in Siteline

Integration details

  • Type: API-based

  • Data flow: On-demand, bidirectional (user-initiated syncs)

  • Security: Encrypted API communication; no direct database access

  • Posting rules: Sage 100 determines posting period based on current open period

Detailed field-level mapping: Siteline ↔ Sage 100

Project import

Direction: Sage 100 → Siteline Source module: 3-5 Jobs module

Sage 100 field

Siteline field

Job Name / Number

Project Name

Client

GC / Owner

Cost Codes

Cost Codes in SOV

Address

Project Address

Sales Tax District

Taxes

Contract #

Contract #

Retainage rate

Contract retention

Schedule of Values (SOV)

Direction: Sage 100 → Siteline Source: 6-9 Proposals module

Sage 100 field

Siteline field

Cost Code

Cost Code

Description

Name

Amount

Scheduled Value

Change Orders

COs appear in SOV view (if approved)

Invoices (progress billing)

Direction: Siteline → Sage 100 Target module: Accounts Receivable

Siteline field

Sage 100 field

Invoice #

Invoice # (auto-incremented)

Invoice Date

Invoice Date

Line Items*

AR Line Items*

Amounts*

Line Totals*

Retention

Included (except for retention-only pay apps)

Income Account

Selected during sync step

*While Line Items and Amounts aren't literal field names in either system, they represent the line-level billing details that Siteline syncs into Sage 100's AR module. This table reflects how your project billing data flows between the two platforms during invoice sync.

Vendor records

Direction: Sage 100 → Siteline Source module: Vendor records

Sage 100 field

Siteline field

Vendor Name

Vendor Name

Contact Info

Vendor Details

Vendors must be manually added to each project in Siteline to trigger waiver workflows.

Did this answer your question?