Gift Fee (akoya_giftfee)¶
A Gift Fee defines a reusable fee structure that can be applied to gift payments. A fee has a calculation method (flat rate, percent of gift, or both), a paying fund, a receiving fund, and GL accounts for expense/income posting. Gift Payment records reference up to 4 gift fees simultaneously — see akoya_giftpayment.
At a glance
| Display name | Gift Fee |
| Logical name | akoya_giftfee |
| Primary ID attribute | akoya_giftfeeid |
| Primary name attribute | akoya_feeid |
| Entity set name (Web API) | akoya_giftfees |
| Ownership | UserOwned |
| Change tracking | Enabled |
| Audit | Enabled |
Web API¶
GET {org}/api/data/v9.2/akoya_giftfees
GET {org}/api/data/v9.2/akoya_giftfees({feeid})
POST {org}/api/data/v9.2/akoya_giftfees
PATCH {org}/api/data/v9.2/akoya_giftfees({feeid})
Attributes¶
| Display name | Logical name | Type | Required | Max length | Description |
|---|---|---|---|---|---|
| Fee ID | akoya_feeid |
String | Recommended | 10 | Short human-readable identifier. Primary name. |
| Fee Name | akoya_feename |
String | ApplicationRequired | — | Display label for the fee. |
| Description | akoya_description |
Memo | None | 2000 | Purpose / policy note. |
| Fee Calculation | akoya_feecalculation |
Choice | ApplicationRequired | — | See values. |
| Fee Percent | akoya_feepercent |
Decimal | None | — | Percentage (e.g. 2.5 for 2.5%). |
| Fee Percent As Decimal | akoya_feepercentasdecimal |
Decimal | None | — | Computed (akoya_feepercent / 100). Read-only. |
| Flat Fee Amount | akoya_flatfeeamount |
Money | None | — | Fixed dollar amount. |
| Fee Type | akoya_feetype |
Choice | None | — | Classification of fee purpose. |
| Fund Paying the Fee | akoya_fundpayingthefee |
Choice | None | — | See values. |
| Other Fund Paying the Fee | akoya_fundpayingthefeeother |
Lookup → akoya_fund |
None | — | Required when akoya_fundpayingthefee = Other. |
| Fund Receiving the Fee | akoya_fundreceivingthefee |
Lookup → akoya_fund |
None | — | Fund that collects the fee. |
| Expense Account | akoya_expenseaccount |
Lookup → akoya_account |
None | — | GL expense account (typically 5xxx). |
| Income Account | akoya_incomeaccount |
Lookup → akoya_account |
None | — | GL income account (typically 4xxx). |
Choice values¶
akoya_feecalculation values¶
| Label | Value |
|---|---|
| Flat Rate | 100000000 |
| Percent | 100000001 |
| Non-calculated | 100000002 |
| Flat Rate & Percent | 100000003 |
Non-sequential values
100000003 (Flat Rate & Percent) is out of numeric order relative to the other values. Always look up by the integer exactly.
akoya_fundpayingthefee values¶
| Label | Value |
|---|---|
| Gift Fund | 100000000 |
| Operating Fund | 100000001 |
| Other | 100000002 |
When the value is Other (100000002), akoya_fundpayingthefeeother must be populated.
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.
Active fee definitions¶
GET {org}/api/data/v9.2/akoya_giftfees?
$select=akoya_feeid,akoya_feename,akoya_feecalculation,akoya_feepercent,akoya_flatfeeamount&
$filter=statecode eq 0&
$expand=akoya_FundReceivingTheFee($select=akoya_fundname),akoya_ExpenseAccount($select=akoya_accountnum)&
$orderby=akoya_feeid asc
Accept: application/json
OData-Version: 4.0
OData-MaxVersion: 4.0
curl "https://{org}.crm.dynamics.com/api/data/v9.2/akoya_giftfees?\$select=akoya_feeid,akoya_feename,akoya_feecalculation,akoya_feepercent,akoya_flatfeeamount&\$filter=statecode%20eq%200&\$expand=akoya_FundReceivingTheFee(\$select=akoya_fundname),akoya_ExpenseAccount(\$select=akoya_accountnum)&\$orderby=akoya_feeid%20asc" \
-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_giftfees",
params={
"$select": "akoya_feeid,akoya_feename,akoya_feecalculation,akoya_feepercent,akoya_flatfeeamount",
"$filter": "statecode eq 0",
"$expand": "akoya_FundReceivingTheFee($select=akoya_fundname),akoya_ExpenseAccount($select=akoya_accountnum)",
"$orderby": "akoya_feeid asc",
},
headers=headers,
)
fees = r.json()["value"]
var query = new QueryExpression("akoya_giftfee") {
ColumnSet = new ColumnSet("akoya_feeid", "akoya_feename", "akoya_feecalculation", "akoya_feepercent", "akoya_flatfeeamount"),
Criteria = {
Conditions = {
new ConditionExpression("statecode", ConditionOperator.Equal, 0)
}
},
Orders = { new OrderExpression("akoya_feeid", OrderType.Ascending) }
};
var fees = service.RetrieveMultiple(query);
Change history¶
Schema extracted from the Akoyanet solution XML on 2026-04-24.