Skip to content
  • There are no suggestions because the search field is empty.

Pushing and Linking Labour Applications for Payment

This article explains how to push labour applications from Chalkstring to Xero, how nominal codes are used during this process, and what to expect when reviewing labour costs in Xero after sync.

In this article

Requirements before pushing

For CIS-registered subcontractors, Xero automatically calculates the CIS deduction based on the subcontractor's CIS settings and the accounts used.

To push a labour application to Xero:

  • The subcontractor must be linked to a Xero supplier
  • All nominal codes used in the application must be linked to Xero accounts
  • Tax codes must be assigned and linked to Xero
  • The invoice must be in Approved status in Chalkstring.

Labour applications don't have a due date field in Chalkstring. When pushed to Xero, the due date defaults to the application date. You may need to update this in Xero if your payment terms differ.

⚠️ Chalkstring can only push data to Xero — Xero does not send any data back. If you need to make a correction, either void the record in Xero and repush from Chalkstring, or manually adjust both systems.

> Back to top 

 

Pushing a labour application to Xero

  1. In Chalkstring, you can push invoices from a projects Labour>Labour applications page or from the  Accounts > Labour applications page.
  2. Click into the application you want to push.
  3. The Accounting platform section can be viewed at the bottom of the invoice page.
  4. If any required links for the application are missing, you’ll see a warning. Click Link next to each one or navigate to the relevant sections of the Settings > Accounts menu to complete the setup.

5. Once the application is ready, click Push.

6. A confirmation screen will appear with the option to mark the invoice as paid in Chalkstring as the data is pushed to Xero..

7. Click Push and Chalkstring will push the application to Xero.

After clicking push:

  • A confirmation message will appear in the bottom right corner.
  • The application will appear in Xero as a bill under the linked subcontractor with the status "Awaiting Payment"


What gets pushed

The bill in Xero includes:

  • Subcontractor (from the linked Xero contact)
  • Application date (used as both invoice date and due date)
  • Application number (shown as the bill reference in Xero)
  • Line items for each trade, showing the application number and trade name (e.g. "Labour application 910 - Drylining")
  • The Xero account for each line item (based on the nominal code assigned to that trade)
  • VAT tax rate (from the subcontractor record, not the project settings)
  • Retention as a separate line item if applicable (e.g. "Application 910 - Retention")

The bill is marked as received through the Xero API from Chalkstring Integration in the History & Notes section.

After pushing

Once pushed, the Accounting platform section shows:

  • Application link status: Pushed
  • Pushed on: date and time the application was sent to Xero



NOTE
- If you edit the application in Chalkstring after pushing, a warning appears: "Edited in Chalkstring - please check/update in Xero".

Changes made in Chalkstring are not automatically synced to Xero. You will need to either manually correct the entry in Xero and update Chalkstring to match, or void the Xero entry, fix in Chalkstring, and push again.

> Back to top 

 

Linking to an existing Xero bill

If a bill has already been created manually in Xero for this application, the integration allows you to link a Chalkstring application to an existing Xero bill instead of pushing a new one.

This connects the Chalkstring application to the existing Xero bill without creating a duplicate.

Applications in Held status can be linked to existing Xero bills, but cannot be pushed until approved.

Selecting ‘Link with existing’ will show relevant items from Xero’s bills for you to match the application to

 > Back to top 

 

Unlinking an invoice

If you need to break the connection between a Chalkstring application and its Xero bill, click Unlink.

This removes the link in Chalkstring but does not delete the bill from Xero.

You might use this if you need to delete and recreate the bill in Xero, or if the wrong records were linked.

 > Back to top 

 

Viewing push status

The push status for all applications can be view via the Accounts > Labour applications menu. The 'Accounting status' column displays the status for each invoice.

Invoices show as:

Pushed - Invoice has been sent over to Zero.

Unlinked - Invoice has not yet been pushed or has been unlinked from the invoice in Xero.

Linked - Invoice has been linked to an existing invoice in Xero.

 > Back to top 

 

Setting up CIS

If you work with CIS-registered subcontractors, you'll need to configure settings in both Chalkstring and Xero before pushing labour applications. CIS-related fields cannot be pushed from Chalkstring, so they must be set up manually in each system.

Setting up subcontractors in Chalkstring and Xero

See article 'Configuring CIS for Xero Integration' for details on setting up subcontractors for CIS in Chalkstring and Xero.

 

Setting up nominal codes for CIS labour

See section 'Setting up nominal codes for CIS labour' within article 'Configuring CIS for Xero Integration' for details on setting up nominal codes for CIS labour. 

Alternative setup for non-CIS labour

If you have labour that shouldn't attract CIS deductions (for example, directly employed staff), you have two options:

  • Set the subcontractor to Gross payment (0%) in both Chalkstring and Xero, or
  • Create separate trades for non-CIS labour and assign them to a different nominal code (such as Direct Wages - 320) instead of CIS Labour Expense

> Back to top 

 

How CIS and retention are handled

When labour applications are pushed to Xero, CIS deductions and retention are handled in a specific way to ensure correct calculations.

CIS deductions

Xero automatically calculates CIS deductions at the bill level based on two factors: the subcontractor's CIS settings in Xero, and whether the line items are posted to an account flagged for CIS (such as CIS Labour Expense).

The CIS deduction appears as a separate line at the bottom of the bill in Xero, below the total. It is not pushed as a line item from Chalkstring - Xero calculates it automatically.

For example:

  • A labour application of £2,835.00 with 20% VAT (£567.00) gives a gross total of £3,402.00.
  • Xero then calculates the CIS deduction at 20% of the labour value (£567.00),
  • Showing an Amount Due of £2,835.00.

Retention

When an application includes retention, it is pushed as a negative line item (e.g. "Application 910 - Retention") posted to the CIS Labour Expense account. This ensures the CIS deduction is calculated on the net amount after retention, which is the correct treatment.

For example, if labour is £1,067.77 and retention is 5% (£53.39), the bill shows:

  • Labour lines totalling £1,067.77
  • Retention line of -£53.39
  • Subtotal of £1,014.38
  • CIS calculated on £1,014.38

This approach means retention won't appear as a separate liability on the balance sheet in Xero. If you need to report on total retention held across subcontractors, you'll need to track this in Chalkstring rather than Xero.

When retention is released

When retention becomes due (for example, at practical completion), the subcontractor will raise a new invoice for the retention amount. Create a new bill directly in Xero for this amount - do not try to adjust the original pushed bill.

This keeps a clear audit trail of when retention was released and paid.

 > Back to top 

 

Important considerations

  • This integration is one-way only — Chalkstring pushes data to Xero.
  • If you push a transaction with incorrect nominal codes, you must:
    • Manually correct the entry in Xero and update Chalkstring to match, or
    • Void the Xero entry, fix in Chalkstring, and push again
  • Re-pushing does not overwrite existing records — it creates a new transaction in Xero
 
 
 
  Want to know more?