DOCS

Sync logging

> Requires: Fundations Pro

Sync logging records the outcome of every integration action: CRM syncs, webhook calls, and automation rule executions. When something fails, the log shows you what was sent, what went wrong, and lets you retry with one click.

Why use this

Integrations fail silently without a log. A webhook might time out, a CRM API key might expire, or a rule might fire with missing data. Sync logging gives you visibility into what happened and the ability to recover from failures without reprocessing data manually.

What it does

Every time an integration fires, a log entry is created with:

  • The integration and trigger that fired
  • The data that was sent
  • The response from the external service
  • A status: pending, success, or error
  • A timestamp

Failed entries can be retried. Retrying re-sends the original payload to the integration without creating a new automation rule execution.

How to use it

  1. Go to Fundations → Integrations and open the Logs tab.
  2. Use the filters to narrow by integration, status, or date.
  3. Click a log entry to see the full payload and response.
  4. For failed entries, click Retry to resend.
Sync logging list

Settings & options

FilterOptions
IntegrationSelect a specific integration or view all
StatusAll, pending, success, error
PagePagination, 20 entries per page

What you can and cannot do

  • You can filter logs by integration, status, and page.
  • You can retry individual failed log entries.
  • Log entries do not contain personal data beyond what was sent in the payload. The payload itself may contain donor data depending on your field mappings.
  • You cannot bulk-retry all failed entries at once.
  • You cannot export logs to CSV directly from this view.

Troubleshooting

No log entries appear for a rule I know fired. Confirm the rule is enabled and that the trigger condition was met (for example, marketing consent for donation_received). If the rule fired but the external service was unreachable, an error entry should still exist.

Retrying a failed entry does not help. If the retry also fails, check whether the external service API key is still valid. Go to the integration settings and re-save the credentials. If the payload was malformed, the underlying rule mapping needs to be corrected before retrying will succeed.

The log shows success but data did not arrive at the CRM. A 200 OK response from the external API does not always mean the data was accepted. Check the CRM interface directly. Some APIs return success codes even for rejected data. Review the full response body in the log entry.

Developer reference

Log states

StateMeaning
pendingScheduled or in progress (used for delayed rules)
successThe external service accepted the payload
errorThe request failed or the service returned an error

Integration Manager logger methods

MethodDescription
update_log( $log_id, $status, $message )Update a log entry status and message
retry_sync( $log_id, $manager )Re-fire a failed log entry through the integration manager

AJAX actions (require manage_options)

ActionDescription
get_fund_get_sync_logsRetrieve log entries. Accepts: integration_id, page, per_page (default 20)
get_fund_retry_syncRetry a single log entry. Accepts: log_id

Both require the get_fund_integrations_nonce nonce.