Skip to main content
Together
Sign in

NationBuilder sync

What flows from NationBuilder into Together, how often, and how it lands in the unified donor and donation lists.

The NationBuilder integration is poll-based: Together runs a sync every 15 minutes and pulls everything that changed since the last run. NationBuilder webhooks aren't used because they're not officially supported and are gated to Enterprise NationBuilder plans.

What syncs

Each sync pass pulls four kinds of record:

RecordDirectionMapped fields
PeopleNB -> TogetherFirst name, last name, email, phone, full address, employer, occupation. Phone is normalised to Australian format.
DonationsNB -> TogetherAmount, donation date, payment method, tracking code, NB recipient mapping, donation status, donation type (monetary or in-kind).
Tracking codesNB -> TogetherThe free-text labels NB stamps on donations. Together uses these for jurisdiction classification.
Custom fieldsNB -> TogetherSelected NB custom fields on the person record, including any compliance flags you've set up upstream.

The inbound direction (NB to Together) is always on. Write-back from Together to NB (segment tags and suggested ask amounts) is opt-in and configured at Intelligence > Write-back; it requires the Grow tier and above. Together recognises the donations it has already written back to NationBuilder, so they are never re-imported as duplicates on the next inbound sync.

Marketing contact preferences write back the same way. When write-back is on, marking a donor as do-not-contact (or a donor opting back in from their receipt) updates that person's contact permissions in NationBuilder — their email_opt_in and do_not_contact fields — so a donor who has asked not to be contacted stays suppressed in your CRM too. This is a one-way write: Together updates NationBuilder, but never reads NationBuilder's consent fields back into Together. The update usually lands within a couple of minutes of the change.

NationBuilder donations with an in-kind payment type (for example "In-Kind") are classified as in-kind donations in Together; all others are monetary. The NationBuilder amount is kept as the donation's fair value, so it counts toward compliance like any other donation. See In-kind donations and compliance.

Sync cadence

The sync watermark is the most recent update timestamp Together has seen on a NB record. A long pause in syncs (e.g., disconnected for a week) means the next sync covers everything that changed in that window, not just the most recent records.

Donor matching

When a NB person record arrives, Together looks for an existing donor by:

  1. NB person ID first (stored as an external ID on the Together donor record).
  2. Email match if the NB person ID isn't on file.
  3. Name + phone fuzzy match as a last resort.

If a match is found, the existing donor is updated. If not, a new donor is created with the Individual donor type. Together never auto-merges across donor types or across mismatched names; ambiguous cases land in the duplicate queue at Donors -> Duplicates.

Donation matching

NB donations sync with an external donation ID so a single NB donation is never imported twice. Edits to NB donations (amount corrected, date adjusted, tracking code added) flow through on the next sync.

Refunded or cancelled NB donations show up with a refund flag (or are removed); Together's compliance logic excludes them from active aggregates and, where the change drops the donor back below the disclosure threshold, automatically supersedes (or, for an already-filed return, flags for amendment) any outstanding disclosure obligations.

Donations deleted in NationBuilder

A donation deleted in NationBuilder (as opposed to cancelled or refunded) does not disappear from Together automatically. The scheduled sync only pulls updates, and a deleted donation leaves nothing behind upstream for the sync to act on, so the gift keeps counting toward the donor's cap and disclosure totals until you reconcile it.

To reconcile, open the donor's record and click Sync from NationBuilder (ADMIN). This re-checks that donor's full current NationBuilder donation history, removes any Together-side donation that is no longer present upstream, and recalculates their compliance totals. You can also delete a single donation from its detail dialog (see Read the donations list). Either way, the removal affects Together only; NationBuilder is not changed.

Tracking-code ingestion

NB stores a tracking code (free text) on each donation. Together ingests this as-is. Each code appears in your library at Settings -> Compliance -> Revenue codes where you assign it to a jurisdiction (Federal, Victoria, or Unregulated); see Set up revenue codes.

Donations without a tracking code retain the empty value and count as Unregulated. To have them count toward a jurisdiction, attach a tracking code upstream in NationBuilder and assign that code a jurisdiction.

Revenue codes when Together writes back

This applies when write-back is enabled (Grow tier and above). Together also sends its own donations - from donation forms, checkout links, and other Together sources - back into NationBuilder so they sit alongside the rest of your giving. The donation's revenue code goes with it, but only if NationBuilder already has a tracking code with that exact name. Together matches by name; it does not create new tracking codes in your NationBuilder. If there's no matching code, the donation still writes back - just without one.

This matters for codes that exist only in Together - for example, a code applied to a donation inside Together that was never created in NationBuilder. That code won't appear on the donation in NationBuilder until you create a tracking code with the same name there. Until then the donation lands in NationBuilder untagged, even though it's classified correctly inside Together.

What doesn't sync

Disconnecting

Disconnecting via Settings -> Integrations preserves all historical NB-sourced donors and donations in Together; only future syncing stops. Reconnect later to resume; Together back-fills the gap on the first post-reconnect sync.

What to do next