---
schema_version: "1"
id: f2143763f93ecaf4698f73dbac2b4bbef8394b3693d49609bedd535fcfdfe18d
title: Gift Validations in Education
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/sfdo/264-0-0/ec_fundraising_gift_validations.md
canonical_url: https://help.salesforce.com/s/articleView?id=sfdo.ec_fundraising_gift_validations.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: d682e98aacc4a7b2620209050b2f0c792860d3c82de91afe7233a7bf9a1e2632
description: To complete bulk data migrations as quickly and smoothly as possible, pause some gift validations. Pausing checks on gift transactions, gift commitments, and gift commitment schedules decreases friction during the migration process. Use these tables to review gift validations and see which checks are available to pause within Fundraising Settings.
products:
  - Education Cloud
release: "264"
---
# Gift Validations in Education

To complete bulk data migrations as quickly and smoothly as possible, pause some gift validations. Pausing checks on gift transactions, gift commitments, and gift commitment schedules decreases friction during the migration process. Use these tables to review gift validations and see which checks are available to pause within Fundraising Settings.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition">
      <colgroup>
        <col style="width:100%">
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e39">REQUIRED EDITIONS</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="REQUIRED EDITIONS" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e39 ">Available in: Lightning Experience</td>

        </tr>
        <tr class="">
          <td data-label="REQUIRED EDITIONS" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e39 ">
            <p style="margin-bottom:0;">Available in: <strong>Enterprise</strong>, <strong>Performance</strong>, <strong>Unlimited</strong>,
              and <strong>Developer</strong> Editions with Education Cloud</p>
          </td>

        </tr>
      </tbody>
    </table> <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
      <colgroup>
        <col style="width:50%">
        <col style="width:50%">
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e88">User Permissions Needed</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e91">&nbsp;</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e88 ">To configure Fundraising settings:</td>

          <td data-label="" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e91 ">
            <p style="margin-bottom:0;"><a href="https://help.salesforce.com/s/articleView?id=sfdo.ec_fundraising_editions_and_permissions.htm&amp;release=264.0.0&amp;type=5" title="Review the supported products and editions for Fundraising. Then check out how your product handles permissions and how to assign them.">Modified Education Cloud
                Full Access permission set</a></p>
          </td>

        </tr>
      </tbody>
    </table>

You can pause gift validations for data migrations from Fundraising Settings. To pause gift validations on a payload by payload basis, use the [Fundraising Business Process API](https://developer.salesforce.com/docs/atlas.en-us.nonprofit_cloud.meta/nonprofit_cloud/npc_fundraising_business_api_rest_reference.htm).

## Gift Transaction Validations

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e142"><strong>Validation</strong></th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e146"><strong>Description</strong></th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d32939e150"><strong>Can Be Paused?</strong></th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">
              <p style="margin-bottom:0;">Original amount positive</p>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Confirms that the original amount of the gift transaction is greater than or
              equal to zero.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Update Original Amount restricted</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts updates to the gift transactions Original Amount field because the
              Status is Paid.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">
              <p>Yes.</p>
              <p style="margin-bottom:0;">If the Accounting Subledger is active, it prevents users from pausing
                this validation.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Update Currency ISO Code restricted</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts updates to the gift transactions Currency ISO Code field because the
              Status is Paid or Fully Refunded.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Update Donor restricted</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts updates to the gift transactions Donor field because the Status is
              Paid or Fully Refunded.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">Yes</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Update Transaction Completion Date restricted</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts updates to the gift’s Transaction Completion Date field because the
              Status is Paid.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">
              <p>Yes. </p>
              <p style="margin-bottom:0;">If the Accounting Subledger is active, it prevents users from pausing
                this validation.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Transaction Status final</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Prevents invalid changes to the Gift Transaction Status field.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Transaction Completion Date required</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">If changing the gift transaction’s Status field value to Paid or Fully
              Refunded, set the Transaction Completion Date field.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Updating the Gift Commitment</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts editing the Gift Commitment field because the Status field value is a
              value other than Unpaid or Pending.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">Yes</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Updating the Gift Commitment Schedule</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Restricts editing the Gift Commitment Schedule field because the Status is a
              value other than Unpaid or Pending.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">Yes</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Transaction Due Date required</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Validates that the Transaction Due Date field is complete.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Due Date vs. Schedule Start Date</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Validates that the Transaction Due Date is on or after the Gift Commitment
              Schedule Start Date.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Due Date within schedule range</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Validates that the Transaction Due Date is between the Start Date and End Date
              of the Gift Commitment Schedule.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Gift Commitment Schedule match</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Validates that the Gift Commitment Schedule belongs to the associated Gift
              Commitment.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Single transaction for custom schedule</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Validates that a Custom Gift Commitment Schedule is linked to only one gift
              transaction.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
          <tr class="">
            <td data-label="Validation" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e142 ">Campaign and outreach source match</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e146 ">Makes sure that the gift transaction’s Outreach Source Code field value is
              valid for the selected campaign.</td>

            <td data-label="Can Be Paused?" class="slds-cell-wrap" style="vertical-align:top;" headers="d32939e150 ">No</td>

          </tr>
        </tbody>
      </table>

## Gift Commitment Validations

  
| **Validation** | **Description** | **Can Be Paused?** |
| --- | --- | --- |
| Expected total amount not negative | Validates that the gift commitment’s Expected Total Commitment Amount is greater than or equal to zero. | No |
| End Date greater than Start Date | Prevents the gift commitment’s Expected End Date from being before the Expected Start Date. | No |
| Prevent Schedule Type updates when Gift Commitment Schedule exists | Prevents updating the gift commitment’s Schedule Type field value because the Commitment has an associated Gift Commitment Schedule. | No |
| Update Status to draft restricted | Prevents changing a gift commitment’s Status field value back to Draft after it’s set to Active and has associated gift transactions. | Yes |
| Update Status to closed restricted | Prevents changing a gift commitment’s Status field value from Closed to any status other than Active because it has associated gift transactions. | Yes |
| Update Status to paused restricted | Prevents updating the gift commitment Status field to Paused because Pause Transactions is the Current Gift Commitment Schedule Type. | No |
| Update paused status restricted | Prevents updating the gift commitment Status field from Paused to any value other than Lapsed, Failing, or Active because the Current Gift Commitment Schedule Type is Create Transactions. | No |
| Update Currency ISO Code restricted | Restricts updates to the gift commitment’s Currency ISO Code field value because Gift Commitment Schedule records exist. | No |

## Gift Commitment Schedule Validations

  
| **Validation** | **Description** | **Can Be Paused?** |
| --- | --- | --- |
| Transaction interval positive | Validates that the gift commitment schedule’s Transaction Interval field value is greater than zero. | No |
| Transaction Amount not negative | Validates that the gift commitment schedule’s Transaction Amount field value is greater than or equal to zero. | No |
| End Date greater than Start Date | Validates that the gift commitment schedule’s End Date isn’t earlier than the Start Date. | No |
| Transaction Day required for monthly | Validates that the gift commitment schedule’s Transaction Day field value is greater than zero because the Transaction Period is monthly. | No |
| Transaction interval less than 100 | Validates that the gift commitment schedule’s Transaction Interval field value is less than or equal to 100. | No |
| Transaction period required for recurring | Validates that the gift commitment schedule’s Installment Period field is populated for recurring schedules. | No |
| Prevent editing when schedule has transactions | Prevents updating fields because a gift commitment schedule has associated gift transactions. | Yes |
| Schedule Start Date before transaction due date | Validates that the gift commitment schedule’s Start Date is before an associated earliest gift transaction’s due date. | No |
| Schedule End Date should be after latest Transaction Due Date | Validates that the gift commitment schedule’s End Date is after the latest associated gift transaction’s due date. | No |
| Require Gift Commitment for custom schedules | Validates that custom Gift Commitment Schedules are associated with a Gift Commitment ID. | No |
| Custom schedules can’t be paused | Validates that if the user creates a custom schedule, the gift commitment schedule’s Type field isn’t set to Pause Transactions. | No |
| Custom schedules can only be created on Gift Commitment with a custom Schedule Type | Validates that only custom gift commitment schedules are created and associated with gift commitments that have a Schedule Type field set to Custom. | No |
| Limit of 50 custom schedules | Validates that each request creates no more than 50 custom gift commitment schedules. | No |
| Prevent overlapping schedules | Validate that the Gift Commitment Schedule doesn’t overlap with other schedules. | No |
| Prevent schedule creation when Gift Commitment Schedule Type is blank | Validates that the Gift Commitment Schedule is only associated with a Gift Commitment that has a set Schedule Type. | No |
| Prevent mismatched schedule types | Validates that the gift commitment schedule’s Type field value (Recurring or Custom) matches the Schedule Type of the Gift Commitment. | No |

- **[Pause Gift Validations](https://help.salesforce.com/s/articleView?id=sfdo.ec_fundraising_pause_gift_validations.htm&release=264.0.0&type=5)**  
    Minimize friction during bulk data migrations by pausing validations on gift transactions, gift commitments, and gift commitment schedules.