Autotask integration: Loading and syncing invoice lines
Introduction
This article explains how to load Invoice Lines from the Platform, complete line-level mapping, and post fully mapped lines to Autotask. The Invoices tab is the final step of the mapping workflow and the one you return to every billing period.
Before working with the Invoices tab, make sure Organizations, Products, and Contracts are fully mapped. An Invoice Line can't be posted to Autotask unless all three mappings are in place. For mapping instructions, see Autotask integration: Mapping organizations, products and contracts.
In this article
- Invoices tab overview
- Show invoices vs Load Invoices
- Invoices grid columns
- Edit invoice lines
- Sync invoices to Autotask
- What happens in Autotask after sync
Invoices tab overview
The Invoices tab is the final step of the workflow. It loads Invoice Lines from the Platform for mapping completion and posting to Autotask.
Caution: Only post invoices to the PSA system after all invoices for the given month have been received from the provider. Invoice Lines are posted to the PSA tool as Recurring charges.
Show invoices vs Load Invoices
Two different controls work with invoice periods. Understanding the difference is important:
- Show invoices (dropdown at top-left) — selects which period to display in the grid. Defaults to the current calendar month. Changing the selection reloads the invoice table for the chosen period.
- Load Invoices (button at top-right, outlined style) — retrieves fresh Invoice Lines from the Platform for the selected period and populates the table. The button shows a loading state during the fetch. You must click this button before the grid shows any data.
Load Invoices modal
Clicking Load Invoices opens a modal titled "Load Invoice Lines" with the subtitle "Select which periods to load invoice lines for."
- Current Month — the calendar month currently in progress.
- Previous Month — the preceding calendar month.
You can select either or both options. Click Load to execute, or Cancel to dismiss the modal without loading.
Invoices grid columns
The grid displays every Invoice Line from the selected period, one row per line. The table is horizontally scrollable. Each column header for Charge Start Date and Charge End Date also displays a secondary sub-label.
Platform-side columns (read-only)
- Invoice Date — the date the Invoice was created in the Platform.
- Organization Name — the Platform Organization name.
- Organization Reference # — the Platform Organization reference number.
- Contract ID — the Platform Contract ID associated with the line.
- Offer Name — the Offer name in the Platform.
- Offer ID — the Offer ID in the Platform.
- Vendor Name — the Vendor name.
- Billing Cycle — the Subscription billing period.
- Commitment Term — the Subscription commitment term length.
- Charge Start Date — the start of the charge period. Sub-label: Effective Date / Date Purchased. Read-only.
- Charge End Date — the end of the charge period. Sub-label: Cancellation Date / Billing Period End Date. Read-only.
- Charge Type — the Platform Charge Type for this line (Cycle Fee, Purchase Fee, Usage Fee, Correction, User Correction, Item Fee, or One Time Fee).
- Quantity — the Subscription Quantity.
- Cost — the Cost Price (the price the Seller pays to the Distributor).
- Revenue — the Customer Price (the price the Seller invoices to the Customer).
- Currency — the invoice currency.
Charge Start Date and Charge End Date are read-only on the Invoices tab. You can't edit them inline.
PSA-side columns (editable via Edit Mapping)
- PSA Organization ID — the Autotask Account ID this line will be posted to. Pre-filled from the Organizations tab if already mapped. Editable inline via the Edit Mapping action.
- PSA Organization Name — the Autotask Account name. Pre-filled from the Organizations tab if already mapped. Updating either PSA Organization field automatically updates the other.
- PSA Agreement Name — the Autotask Recurring Service Contract this line will be posted to. Pre-filled from the Contracts tab if already mapped. Displayed as a blue hyperlink for mapped rows; clicking opens the contract in Autotask in a new tab.
- PSA Agreement ID — the Autotask Recurring Service Contract ID. Updates automatically when PSA Agreement Name changes.
- PSA Product Name — the Autotask Service this line maps to. Pre-filled from the Products tab if already mapped.
- PSA Product ID — the Autotask Service ID. Updates automatically when PSA Product Name changes.
- PSA Material Code — the resolved Material Code name for non-recurring lines (e.g., "Miscellaneous"). Displays an em-dash (—) for unmapped rows or recurring lines that don't use a Material Code.
Status columns
- Mapping Status — rendered as a badge. Mapped (green) indicates the line has a resolvable Organization, Product, and Contract mapping. Unmapped indicates one or more required mappings are missing.
-
Sync Status — rendered as a badge. Possible values:
- Synced — the line was successfully posted to Autotask.
- Pending — the line is queued for posting.
- Skipped — the line wasn't posted for a known, non-error reason (e.g., zero Revenue, or the Excluded from Sync flag is set to Yes).
- Failed — the sync attempt failed. See System Logs for details.
- Excluded from Sync — rendered as a colored badge: green background for No, red background for Yes. Lines where this flag is Yes aren't posted even if fully mapped.
Actions column
- Edit Mapping (pencil icon) — opens the row for inline editing of the PSA-side mapping fields.
- Sync Invoice Line (upload icon) — triggers an immediate sync of this single line to Autotask. Disabled when the row's Mapping Status is Unmapped.
Search
The search field above the grid filters rows in real time. Accepted inputs:
- Organization Name
- Offer Name
- Contract ID
- Charge Type
Summary footer
Below the table, a summary line displays: "Total invoice lines: N | Mapped: N | Unmapped: N", updating dynamically as filters are applied. A pagination bar shows Items per page (default 20), the current range, and previous/next navigation.
Edit invoice lines
Invoice Lines arrive on the Invoices tab with their PSA-side fields pre-filled from the Organizations, Products, and Contracts tabs. If a line is missing a mapping — or if you need to override it for a specific line — use inline editing.
Edit a single Invoice Line step by step
- In the row's Actions column, click the Edit Mapping (pencil) icon.
- The PSA-side columns become editable inline: PSA Organization ID, PSA Organization Name, PSA Agreement Name, PSA Agreement ID, PSA Product Name, and PSA Product ID.
- Update the fields as needed. Updating PSA Organization Name automatically updates PSA Organization ID, and vice versa. The same applies to PSA Product Name / ID.
-
To save, click the green check button. To cancel, click the red X.
Inline edits on the Invoices tab apply only to that specific line. They don't update the mapping on the Organizations, Products, or Contracts tabs.
Sync invoices to Autotask
To post all eligible Invoice Lines to Autotask, click Sync Invoices to PSA (top-right, red primary button). The button shows a loading state during the operation and displays a result toast on completion summarising the counts of lines created, updated, skipped, and failed.
Note: Sync Invoices to PSA only processes lines with Sync Status = Not Synced. Lines with status Failed or Skipped aren't automatically retried by a general sync — use the per-row Sync Invoice Line icon to retry those individually. Lines already marked Synced are permanently excluded from all future sync runs.
What happens during sync:
- Each selected line is immediately marked In Progress before processing begins, preventing mapping edits while the sync is in flight. Only one sync run can execute at a time for a given connection.
- Each Invoice Line is processed individually based on its Charge Type:
-
Recurring Charge Types (Cycle Fee, Purchase Fee) → posted as Contract Service Adjustments on the mapped Autotask Recurring Service Contract. The system compares the desired quantity (from the Platform invoice line) against the current unit count on the Autotask Contract Service and posts only the difference. If the quantity, price, and cost already match what Autotask holds, no adjustment is sent and the line is marked Synced with no change in Autotask.
This means quantity reductions are handled the same way as increases. For example, if a customer drops from 10 seats to 5, the Platform posts a delta of −5 as the Contract Service Adjustment, and the Contract Service's unit count on the Autotask side updates to 5. A negative adjustment in Autotask is expected behavior in this scenario, not an error. - Non-recurring Charge Types (Usage Fee, Correction, User Correction, Item Fee, One Time Fee) → posted as Contract Charges on the mapped Autotask Recurring Service Contract. Each charge includes the billing code sourced from the Material Code Mappings in Settings → Configuration. Each Contract Charge is created once only — if a line has already been synced, re-running or retrying it doesn't push updated values. You must make any correction to an already-synced one-time charge directly in Autotask.
-
Recurring Charge Types (Cycle Fee, Purchase Fee) → posted as Contract Service Adjustments on the mapped Autotask Recurring Service Contract. The system compares the desired quantity (from the Platform invoice line) against the current unit count on the Autotask Contract Service and posts only the difference. If the quantity, price, and cost already match what Autotask holds, no adjustment is sent and the line is marked Synced with no change in Autotask.
Caution: A minimum interval of 60 minutes must elapse between sync runs of the same type for the same connection. If you click Sync Invoices to PSA again before 60 minutes have passed since the last run completed, the action is blocked. Wait for the cooldown to elapse and then retry.
A Correction or User Correction line is posted as an independent Contract Charge in Autotask. It isn't linked to the original Contract Service or Contract Charge it corrects — it stands entirely on its own. If you need to trace what a correction relates to, do so from the Platform invoice data, not from within Autotask.
- Lines with Mapping Status = Unmapped or Excluded from Sync = Yes are never selected and remain at Not Synced.
- Lines that fail update to Failed; the error reason is logged on the System Logs page and shown on the line. One line failing doesn't stop the rest of the run — each line is processed independently.
Note: If a Platform Contract is left unmapped on the Contracts tab, the system falls back at sync time to finding or creating one Recurring Service Contract per company in Autotask. This means two unmapped Platform Contracts for the same customer both land on the same Autotask contract unless they're explicitly mapped apart. To avoid unintended merging of billing data, map each Platform Contract to its own Autotask Recurring Service Contract on the Mapping → Contracts tab before syncing.
After every full sync run, the system automatically runs a cancellation sweep. It compares which recurring subscriptions had a line last month against which have one this month. Any subscription that billed last month but has no line this month is treated as cancelled: a negative unit adjustment is posted to Autotask, zeroing out that Contract Service's unit count effective the first day of the current month. The Contract Service record itself isn't deleted — it remains at zero units.
To retry a single failed line without re-syncing the entire batch, click the Sync Invoice Line (upload) icon in the Actions column for that row.
What happens in Autotask after sync
After a successful sync from the Platform, data appears in Autotask in two different locations depending on the Charge Type:
Recurring lines — Contract Services tab
Recurring Invoice Lines (Cycle Fee, Purchase Fee) are posted as Contract Service Adjustments, which update the unit quantity of the mapped Service on the Recurring Service Contract.
In Autotask, navigate to the Contracts module → Search Contracts → open the relevant Contract → Services tab.
On the Services tab, you'll see the mapped Service with its updated unit count and adjusted price reflecting the Platform's Invoice Line values.
Platform UI
Autotask UI
Non-recurring lines — Contract Charges / Approve & Post
Non-recurring Invoice Lines (Usage Fee, Correction, User Correction, Item Fee, One Time Fee) are posted as Contract Charges. These are billable cost items associated with the Recurring Service Contract.
To view the charges directly, in Autotask go to the Contracts module → Search Contracts → open the relevant Contract → Charges tab. Each row on the Charges tab is one Contract Charge created by the Platform sync. The Material Code configured in Settings → Configuration → Material Code Mappings appears as the Billing Code on each charge.
To approve and post the charges for invoicing, go to the Contracts module → Invoices & Adjustments → Approve & Post. Running Approve & Post is part of your standard Autotask billing workflow — it isn't triggered by the Platform.
Platform UI
Autotask UI
Contract Service Adjustments in Autotask are Create-only — they can't be queried back through the API once posted. To verify that a recurring line was posted correctly, open the Contract's Services tab in Autotask and confirm the unit count and price reflect the expected values.
To learn in detail how Invoice Lines are reflected in Autotask, see Invoice lines in Autotask.
Cancellation handling
There's no explicit cancellation signal in the data the integration reads. Cancellation is detected automatically at the end of every full sync run by comparing which recurring subscriptions had a line last month against which have one this month.
If a subscription billed in the previous month has no invoice line in the current month, the system treats it as cancelled:
- A Contract Service Adjustment is posted to Autotask, reducing the Contract Service's unit count to zero, effective the first day of the current month.
- The Contract Service record itself isn't deleted — it remains visible on the Contract's Services tab in Autotask at zero units.
- The subscription's mapping is marked cancelled internally. If a new invoice line for the same subscription appears in a future month, the cancelled marker is cleared and the subscription is treated as active again.
Note: The cancellation sweep only runs as part of a full sync (clicking Sync Invoices to PSA) that has at least one eligible line to process for that month. It doesn't run on a targeted single-line retry. A subscription that was never synced in the first place (for example, always skipped for zero revenue) has no Contract Service mapping to zero out, so no cancellation adjustment is posted for it.
Summary
This article covered the full Invoices tab workflow — loading Invoice Lines, completing line-level mapping via inline editing, and posting to Autotask with Sync Invoices to PSA. Recurring Charge Types are posted as Contract Service Adjustments (visible on the Contract's Services tab in Autotask) using a delta mechanism that only pushes changes. Non-recurring Charge Types are posted as Contract Charges (visible on the Contract's Charges tab) and are write-once — you must make corrections directly in Autotask. Failed and Skipped lines aren't retried by a general sync — use the per-row Sync Invoice Line icon for those. After every full sync, a cancellation sweep automatically zeros out Contract Services for subscriptions that no longer have a billing line. For details on diagnosing sync errors, see Autotask integration: System Logs and troubleshooting.
Related content
Was this article helpful?
Articles in this section
- Autotask integration overview
- How to obtain Autotask credentials
- Autotask Setup Guide
- First steps with the Autotask integration
- Autotask integration: Mapping organizations, products and contracts
- Autotask integration: Loading and syncing invoice lines
- Invoice lines in Autotask
- Autotask integration: System Logs and troubleshooting
Add comment
Please sign in to leave a comment.