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

# Setup Requirements

> Prerequisites and configuration steps for setting up the WeGive Blackbaud Raiser's Edge NXT integration

# Setup Requirements

This guide outlines the prerequisites and configuration steps needed to establish the WeGive integration with Blackbaud Raiser's Edge NXT.

## Prerequisites

### Blackbaud Requirements

* **Blackbaud Raiser's Edge NXT Subscription**: Active subscription with API access
* **Sky API Developer Account**: Access to Blackbaud's developer portal
* **Administrative Access**: Permissions to create and manage integrations in your Blackbaud environment
* **Data Management Permissions**: Ability to view and modify constituent, gift, and fund data

### WeGive Requirements

* **WeGive Account**: Active WeGive platform subscription
* **Administrative Access**: Permissions to configure integrations in WeGive
* **Technical Contact**: Designated person for integration setup and maintenance

## Blackbaud Configuration

### 1. Sky API Application Setup

1. **Access Developer Portal**
   * Log into the [Blackbaud Developer Portal](https://developer.blackbaud.com/)
   * Navigate to "My Applications"

2. **Create New Application**
   * Click "Create Application"
   * Choose "OAuth 2.0 Application"
   * Fill in application details:
     * **Application Name**: "WeGive Integration"
     * **Description**: "Integration between WeGive and Raiser's Edge NXT"
     * **Application Type**: "Public Client"

3. **Configure OAuth2 Settings**
   * **Redirect URIs**: Add your WeGive callback URL (provided by WeGive support)
   * **Scopes**: Request the following permissions:
     * `constituent:read`
     * `constituent:write`
     * `gift:read`
     * `gift:write`
     * `fundraising:read`
     * `fundraising:write`

4. **Obtain Credentials**
   * **Client ID**: Copy and securely store
   * **Client Secret**: Copy and securely store (if applicable)
   * **Subscription Key**: Obtain from your Blackbaud Sky API subscription

### 2. Environment Configuration

1. **Environment Selection**
   * **Sandbox Environment**: For testing and development
   * **Production Environment**: For live data synchronization

2. **Environment ID**
   * Locate your Environment ID in Raiser's Edge NXT
   * Navigate to Administration > Application Settings
   * Note the Environment ID for configuration

### 3. Data Permissions Setup

Ensure your application has access to the following data:

* **Constituents**: Read and write permissions for donor records
* **Gifts**: Read and write permissions for donation data
* **Funds**: Read permissions for fund information
* **Campaigns**: Read permissions for campaign data
* **Recurring Gifts**: Read and write permissions for recurring donations
* **Communication Lists**: Read permissions for segmentation data

## WeGive Configuration

### 1. Integration Setup

1. **Access Integration Settings**
   * Log into your WeGive dashboard
   * Navigate to Settings > Integrations
   * Select "Blackbaud Raiser's Edge NXT"

2. **Basic Configuration**
   * **Integration Name**: Descriptive name for your integration
   * **Environment**: Select development or production
   * **Status**: Initially set to "Inactive" during setup

### 2. Authentication Configuration

1. **OAuth2 Credentials**
   * **Client ID**: Enter from Blackbaud application setup
   * **Client Secret**: Enter if required (for confidential clients)
   * **Subscription Key**: Enter your Sky API subscription key
   * **Environment ID**: Enter your Raiser's Edge NXT environment ID

2. **Authentication Flow**
   * Click "Authorize with Blackbaud"
   * Complete OAuth2 flow in popup window
   * Verify successful connection

### 3. Sync Configuration

Configure what data should be synchronized:

#### Pull Settings (From Blackbaud to WeGive)

* **Pull Constituents**: ✓ Enabled
* **Pull Companies**: ✓ Enabled
* **Pull Households**: ✓ Enabled
* **Pull Campaigns**: ✓ Enabled
* **Pull Funds**: ✓ Enabled
* **Pull Gifts**: ✓ Enabled
* **Pull Recurring Gifts**: ✓ Enabled
* **Pull Communication Lists**: ✓ Enabled

#### Push Settings (From WeGive to Blackbaud)

* **Push Donors**: ✓ Enabled
* **Push Campaigns**: ✓ Enabled
* **Push Funds**: ✓ Enabled
* **Push Transactions**: ✓ Enabled
* **Push Scheduled Donations**: ✓ Enabled

## Security Considerations

### API Security

* **Token Management**: Tokens are automatically refreshed
* **Secure Storage**: All credentials are encrypted at rest
* **Access Logging**: All API calls are logged for audit purposes
* **Rate Limiting**: Automatic throttling to respect API limits

### Data Security

* **Encryption**: All data transmission uses HTTPS/TLS
* **Authentication**: OAuth2 with PKCE for enhanced security
* **Permissions**: Least-privilege access model
* **Audit Trail**: Complete logging of all data changes

## Network Requirements

### Firewall Configuration

If your organization uses network firewalls, ensure the following domains are accessible:

* `api.sky.blackbaud.com` - Sky API endpoints
* `oauth2.sky.blackbaud.com` - OAuth2 authentication
* `*.wegive.com` - WeGive platform services

### IP Allowlisting

Contact WeGive support for current IP ranges if your organization requires IP allowlisting.

## Testing and Validation

### Connection Testing

1. **API Connectivity Test**
   * Use the "Test Connection" button in WeGive
   * Verify successful authentication
   * Confirm API access to required endpoints

2. **Data Access Validation**
   * Test reading sample constituent data
   * Verify fund and campaign access
   * Confirm gift data accessibility

### Initial Sync Testing

1. **Limited Scope Test**
   * Start with a small subset of data
   * Monitor for errors or issues
   * Verify data accuracy and completeness

2. **Sync Validation**
   * Compare data between systems
   * Verify field mappings
   * Confirm proper data transformation

## Go-Live Checklist

Before enabling the integration in production:

* [ ] Blackbaud OAuth2 application configured and approved
* [ ] WeGive integration credentials entered and tested
* [ ] Authentication flow completed successfully
* [ ] Sync settings configured according to requirements
* [ ] Test sync completed with sample data
* [ ] Data mappings validated and confirmed
* [ ] Security settings reviewed and approved
* [ ] Support contacts identified and trained
* [ ] Monitoring and alerting configured

## Support and Troubleshooting

### Common Issues

**Authentication Failures**

* Verify OAuth2 credentials are correct
* Ensure redirect URIs match exactly
* Check subscription key validity

**Permission Errors**

* Confirm required scopes are requested
* Verify user has appropriate permissions in Blackbaud
* Check environment ID is correct

**Sync Issues**

* Review field mapping configurations
* Check for data validation errors
* Verify API rate limits are not exceeded

### Getting Help

* **WeGive Support**: [support@wegive.com](mailto:support@wegive.com)
* **Blackbaud Sky API Support**: [Developer Community](https://community.blackbaud.com/developer)
* **Documentation**: [Blackbaud Sky API Docs](https://developer.blackbaud.com/skyapi/)

## Next Steps

After completing setup:

1. Review [Configuration Options](/blackbaud/configuration-options) for advanced settings
2. Understand [Data Mapping](/blackbaud/data-mapping/overview) for field relationships
3. Monitor initial sync operations for any issues
4. Set up regular monitoring and maintenance procedures
