> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wegive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration Options

> Configuration settings for the WeGive Bloomerang integration

# Configuration Options

## Authentication Settings

| Setting | Type | Required | Description |
| - | - | - | - |
| **API Key** | String | Yes | Your Bloomerang API key, generated from Bloomerang Settings → API Access. Encrypted at rest. |
| **Enabled** | Boolean | Yes | Master toggle for the integration |

## Data Type Toggles

Unlike some other CRM integrations, Bloomerang genuinely has independent per-object toggles — these are real, functioning settings:

| Setting | Default | Description |
| - | - | - |
| **Push Donors** | on | Send WeGive donors to Bloomerang as Constituents |
| **Pull Donors** | on | Import Bloomerang Constituents to WeGive as donors |
| **Push Transactions** | on | Send successful WeGive donations to Bloomerang |
| **Pull Transactions** | on | Import Bloomerang transactions to WeGive |
| **Push Funds** | on | Send WeGive funds to Bloomerang |
| **Pull Funds** | on | Import Bloomerang funds to WeGive |

<Note>
  Only successful transactions push — a failed, refunded, or still-processing transaction is never sent to Bloomerang. Updates to an already-pushed transaction only happen for WeGive-originated transactions (transactions with a `correlation_id`); a transaction Bloomerang created and WeGive later pulled in isn't pushed back on change.
</Note>

## Default Fund

| Setting | Type | Required | Description |
| - | - | - | - |
| **Default Fund ID** | String | No | Bloomerang fund used when a transaction's fund hasn't been pushed to Bloomerang yet |

This is a real fallback, not a hard requirement — if a transaction's fund already has a `bloomerang_id`, that fund is pushed and used directly; the default only applies as a fallback.

## Payment Method Mapping

Payment method on push is derived automatically from the transaction's source, not separately configurable:

| WeGive `source_type` | Bloomerang `Method` |
| - | - |
| `card` | `CreditCard` |
| `bank` | `Eft` |
| anything else | `None` |

## Matching and Duplicate Prevention

Constituent/transaction/fund creation is protected by a Redis lock per record — matching is by `bloomerang_id` only, not by email or name. On pull, a record already linked by its Bloomerang ID is updated rather than re-created.

<Note>
  If Bloomerang reports a transaction's ID no longer exists (e.g. after a constituent merge in Bloomerang deleted it), WeGive clears the stale link and re-pushes it as new — but only when Bloomerang's error message specifically confirms *that* transaction ID is gone. Any other 404 (a stale fund or donor ID embedded in the same request) is treated as a real failure rather than silently "healed," to avoid creating a duplicate gift.
</Note>

## Getting Help

* **WeGive Support**: [support@wegive.com](mailto:support@wegive.com)
* **Bloomerang API Documentation**: [bloomerang.co/features/api](https://bloomerang.co/features/api/)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.