Interfund Grant (akoya_interfundgrants)¶
An Interfund Grant is an internal transfer of value between two funds. Unlike regular gifts and grants (which involve an external donor or grantee), interfund grants move money within the foundation — one fund gives, another fund receives. The record captures both sides of the double-entry: the gift side (source fund + GL account) and the grant side (destination fund + GL account).
At a glance
| Display name | Interfund Grant |
| Logical name | akoya_interfundgrants |
| Primary ID attribute | akoya_interfundgrantsid |
| Primary name attribute | akoya_interfundno |
| Entity set name (Web API) | akoya_interfundgrantses |
| Ownership | UserOwned |
| Change tracking | Enabled |
| Audit | Enabled |
Entity set name
Entity set is akoya_interfundgrantses (already plural logical name → "es" suffix). Verify against the live Web API.
Web API¶
GET {org}/api/data/v9.2/akoya_interfundgrantses
GET {org}/api/data/v9.2/akoya_interfundgrantses({interfundid})
POST {org}/api/data/v9.2/akoya_interfundgrantses
PATCH {org}/api/data/v9.2/akoya_interfundgrantses({interfundid})
Attributes¶
Core¶
| Display name | Logical name | Type | Required | Description |
|---|---|---|---|---|
| Interfund No | akoya_interfundno |
String | None | Auto-numbered ({SEQNUM:7}). Primary name. Read-only in UI. |
| Amount | akoya_amount |
Money | ApplicationRequired | Transfer amount. |
| Amount Sent To Accounting | akoya_amountsenttoaccounting |
Money | None | Amount actually routed to GL (may differ from akoya_amount for partial posts / reversals). |
| Interfund Date | akoya_interfunddate |
DateTime | None | Transaction date. |
| Posting Date | akoya_postingdate |
DateTime | None | GL posting date. |
| Reverse Date | akoya_reversedate |
DateTime | None | Date the transfer was reversed (if applicable). |
| Interfund Grants Source | akoya_interfundgrantssource |
Choice | None | See values. |
Lookups — gift side (source)¶
| Logical name | Target | Purpose |
|---|---|---|
akoya_donor |
akoya_donor |
Required. Donor (source of interfund gift). |
akoya_giftfund |
akoya_fund |
Required. Source fund. |
akoya_giftaccount |
akoya_account |
Required. Source GL account. |
Lookups — grant side (destination)¶
| Logical name | Target | Purpose |
|---|---|---|
akoya_grantfund |
akoya_fund |
Required. Destination fund. |
akoya_grantaccount |
akoya_account |
Required. Destination GL account. |
akoya_grantee |
(grantee) | Beneficiary of the transfer. |
akoya_payor |
(payor) | Payor (denormalized). |
akoya_program |
akoya_program |
Program classification. |
Related records¶
| Logical name | Target | Purpose |
|---|---|---|
akoya_folio |
akoya_folio |
Investment folio reference. |
akoya_interfundgift |
akoya_gift |
Linked gift record. |
akoya_interfundrequest |
akoya_request |
Source grant request (if this interfund serves a request). |
akoya_interfundrequestpayment |
akoya_requestpayment |
Source payment record. |
akoya_recreatedinterfund |
akoya_interfundgrants (self) |
Points to the prior reversed record that this one recreates. |
Choice values¶
akoya_interfundgrantssource values¶
| Label | Value |
|---|---|
| CRM User | 100000000 |
| GOfund | 100000001 |
Supported messages¶
| Message | Supported |
|---|---|
| Create | ✓ |
| Retrieve | ✓ |
| RetrieveMultiple | ✓ |
| Update | ✓ |
| Delete | ✓ |
| Upsert | — (no alternate keys; use GET then PATCH) |
Examples¶
Conventions
Examples assume ORG (env URL), access_token (valid bearer), headers (standard Dataverse headers dict), and service (a ServiceClient instance). See Authentication.
Recent interfund transfers¶
GET {org}/api/data/v9.2/akoya_interfundgrantses?
$select=akoya_interfundno,akoya_amount,akoya_interfunddate,akoya_postingdate&
$filter=statecode eq 0 and akoya_postingdate ge 2026-01-01&
$expand=akoya_GiftFund($select=akoya_fundname),akoya_GrantFund($select=akoya_fundname)&
$orderby=akoya_postingdate desc
Accept: application/json
OData-Version: 4.0
OData-MaxVersion: 4.0
curl "https://{org}.crm.dynamics.com/api/data/v9.2/akoya_interfundgrantses?\$select=akoya_interfundno,akoya_amount,akoya_interfunddate,akoya_postingdate&\$filter=statecode%20eq%200%20and%20akoya_postingdate%20ge%202026-01-01&\$expand=akoya_GiftFund(\$select=akoya_fundname),akoya_GrantFund(\$select=akoya_fundname)&\$orderby=akoya_postingdate%20desc" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Accept: application/json" \
-H "OData-Version: 4.0" \
-H "OData-MaxVersion: 4.0"
r = requests.get(
f"{ORG}/api/data/v9.2/akoya_interfundgrantses",
params={
"$select": "akoya_interfundno,akoya_amount,akoya_interfunddate,akoya_postingdate",
"$filter": "statecode eq 0 and akoya_postingdate ge 2026-01-01",
"$expand": "akoya_GiftFund($select=akoya_fundname),akoya_GrantFund($select=akoya_fundname)",
"$orderby": "akoya_postingdate desc",
},
headers=headers,
)
transfers = r.json()["value"]
var query = new QueryExpression("akoya_interfundgrants") {
ColumnSet = new ColumnSet("akoya_interfundno", "akoya_amount", "akoya_interfunddate", "akoya_postingdate"),
Criteria = {
Conditions = {
new ConditionExpression("statecode", ConditionOperator.Equal, 0),
new ConditionExpression("akoya_postingdate", ConditionOperator.GreaterEqual, new DateTime(2026, 1, 1))
}
},
Orders = { new OrderExpression("akoya_postingdate", OrderType.Descending) }
};
var transfers = service.RetrieveMultiple(query);
Change history¶
Schema extracted from the Akoyanet solution XML on 2026-04-24.