Skip to content
Current

What Current writes back to ConnectWise (and when)

Every action in Current that writes to ConnectWise, the gates in front of them, verify-after-write, and what a push can never touch.

Updated 6 min read
On this page · 7 sections

Current pulls a lot from ConnectWise, but it also writes back, task schedules, status changes, comments, time entries, and CRM activity all flow the other direction once you allow them. This page lists exactly what triggers a push, the gates in front of every write, and the hard boundaries Current never crosses. For the full pull-side field reference, see "ConnectWise sync: the complete field-mapping reference".

The gates, in order

  1. 1
    Only ConnectWise-synced projects ever push
    A Current-native project makes no ConnectWise calls at all, and a project synced to a since-disconnected PSA is frozen, the engine refuses cross-provider operations outright.
  2. 2
    The two-way sync switch governs task fields
    Integrations → ConnectWise PSA → Manage. It controls the task-field pushes and field-by-field conflict resolution. Its position is per workspace, check it deliberately as part of your go-live plan.
  3. 3
    CRM write mode governs every CRM write
    Off by default, no CRM writes at all. Test mode allows writes only against companies whose ConnectWise name starts with "ZZ-Current Test"; live mode is an explicit admin action, taken after test writes have landed correctly.

What triggers a push, by entity

Your action in CurrentWhat's written to ConnectWise
Drag a task to a new date on the Timeline or ScheduleThe project ticket's new start and end dates
Change a task's status (Kanban or task drawer)The ticket's board status, through your status mapping
Edit a task's synced fields (with two-way sync on)That field's new value, if your edit is newer than ConnectWise's last change to it
Comment on a taskA note on the project ticket
Save a time entryA new ConnectWise time entry charged to the project ticket, with the work role, work type, and agreement you picked
Create or edit a CRM company, add a contact, or log a noteThe matching ConnectWise record (gated by CRM write mode)
A new lead arrives (website form or added by hand)A new ConnectWise company typed as a Prospect, plus its contact. Unless the lead matched a company you already have, in which case it's linked and nothing new is created. A lead imported from a saved list is never pushed
Create an opportunity or move it to a new pipeline stageA new or updated opportunity, through your stage mapping
Convert a won quoteThe project or ticket build, product charges, and the opportunity's move to your Converted stage
Click "Build in ConnectWise" on a Current-native project or playbookA brand-new ConnectWise project, with its phases and project tickets

How Current writes: precise patches, never blanket updates

Every update Current sends to ConnectWise is a surgical patch naming only the fields that changed, never a full-record replacement. That's a safety property, not a detail: a full-record write can blank fields the sender didn't know about, and Current's patches physically can't. Creates return the new record, and Current stores the id mapping immediately, so a retry can never create a duplicate.

Verify-after-write: no silent successes

After every push, Current reads the record back from ConnectWise and compares what landed against what it sent. A write that ConnectWise accepted but quietly adjusted (a clamped date, a defaulted field) is reported as a residual, not swallowed. And if a push fails, the error surfaces ConnectWise's real message, never a generic "sync failed."

Time entries and billing

  • Time entries are create-only: Current writes a new entry and never edits or deletes one that already exists in ConnectWise.
  • An invoiced time entry is untouchable. ConnectWise rejects any edit to an entry that's on an invoice, and Current treats that rejection as final. It will not retry, because no retry can succeed.
  • After a push, the entry's billing and invoice status is read back on a cycle, and Current only ever promotes an entry toward approved and invoiced, never demotes one.

Retry and dead-letter behavior

  • Retryable failures (throttling, timeouts, temporary ConnectWise errors) retry automatically with increasing delays.
  • After 5 failed attempts, a job is marked dead-letter and stops retrying on its own. It needs a person to look at it.
  • Validation errors and permission errors are never auto-retried. These need a fix, not a delay.
  • CRM pushes notify your sales leadership once a push has dead-lettered, so it doesn't sit silently.
Heads up
Building a project in ConnectWise is permanent
Converting a Current-native project into a ConnectWise-synced one creates a real ConnectWise project, and ConnectWise can't un-create it. Current requires an explicit confirmation before the build and will never do it as a side effect of another action.

What a push can never touch

  • Agreements, additions, and anything else in your billing structures, read-only in every direction.
  • Invoiced time entries, and hours already approved and posted.
  • The product catalog, charges reference catalog items; they never create or reprice them.
  • Records outside the API Member's security-role scope. ConnectWise's own permissions are the final gate.
  • Anything at all while the relevant gate (two-way sync, CRM write mode) is closed.

This boundary is intentional: billing accuracy depends on ConnectWise staying the single source of truth for anything that touches an invoice. See "Reading the sync health dashboard (and fixing a stale sync)" for where failures surface.

Was this helpful?