Pledges
Record a pledge against a collection account or a fundraiser, change it, and read what is still owed. A pledge is a promise: no money moves until the member pays.
Payments the member later makes into the pledged account are applied to the open pledge automatically, once they are verified (payment verification). The church can also send pledge reminders by SMS. The word "pledge" in the response messages is the church's own label for pledges, so a church that calls them vows says vow.
Accounts that accept pledges
The collection accounts of type temporary (projects and appeals) that members can pledge to.
{
"status": true,
"message": "Success",
"count": 4,
"accounts": [
{ "uuid": "00000000-0000-4000-8000-0000000000f2", "name": "Building Fund", "account": "BUILDING", "tithe_offering": 0 }
]
}count is the number of all active accounts of the church, as it always was.
Record a pledge
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| amount | integer | Yes | The amount pledged, at least 1. |
| frequency | integer | No | 1 once (default), 2 weekly, 3 monthly, 4 annual. |
| frequency_time_value | string | No | When the pledge falls due: the weekday for weekly, the day of the month for monthly, the month (1 to 12) for annual. Drives the reminder SMS. |
| is_family | integer | No | 2 for a family pledge, shared with the spouse; anything else is personal. |
curl -X POST https://uat-api.mychurch.co.ke/api/v2/record-pledge/00000000-0000-4000-8000-0000000000f2 \
-H "Authorization: Bearer 11111111-2222-4333-8444-555555555555" \
-H "Content-Type: application/json" \
-d '{"amount": 20000, "frequency": 3, "frequency_time_value": "5"}'{"message": "Your Pledge is being recorded. You will receive an sms shortly", "status": true}The member receives a confirmation SMS (the account's own pledge message when the church set one). When the member already has an open pledge on that account, the same answer is returned and the SMS says so instead; no second pledge is created.
Change a pledge
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| amount | integer | Yes | The new amount pledged. A pledge already paid up to this amount becomes complete. |
| frequency | integer | No | 1 once (default), 2 weekly, 3 monthly, 4 annual. |
| frequency_time_value | string | No | When the pledge falls due: the weekday for weekly, the day of the month for monthly, the month (1 to 12) for annual. Drives the reminder SMS. |
| is_family | integer | No | 2 for a family pledge. |
{"message": "Your Pledges is being updated. You will receive an sms", "status": true}The member's pledges
The member's own pledges, family pledges of their spouse or parent, and open pledges of departments they belong to, newest first.
{
"message": "Success",
"status": true,
"pledges": [
{
"uuid": "00000000-0000-4000-8000-000000000401",
"account": "BUILDING",
"accountUUID": "00000000-0000-4000-8000-0000000000f2",
"name": "Building Fund",
"frequency": 3,
"frequency_time_value": "5",
"is_family": 0,
"amount_pledged": "20000.00",
"status": 0,
"percentage": 25,
"balance": "15000.00",
"total_pledged": "20000.00",
"total_paid": "5000.00"
}
],
"total": "15,000.00"
}status is 0 open, 1 complete. total is the balance still owed across all listed pledges. On /api/v1, balance, total_pledged and total_paid are formatted ("15,000.00").
Fundraiser pledges
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| amount | integer | Yes | The amount pledged, at least 1. |
| type | integer | Yes | 1 a set amount; 2 the whole remaining target (the fundraiser closes to others). |
| frequency | integer | No | 1 once (default), 2 weekly, 3 monthly, 4 annual. |
| frequency_time_value | string | No | When the pledge falls due: the weekday for weekly, the day of the month for monthly, the month (1 to 12) for annual. Drives the reminder SMS. |
| phone | string | No | Required on the noauth route: the pledger's phone. If it belongs to a member of the church the pledge is linked to them. |
{"message": "Pledge recorded successfully", "status": true}An existing open pledge for the same phone gets the same answer and an SMS saying it is already recorded.
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| amount | integer | Yes | The new amount, at least 1. |
| type | integer | No | 1 or 2, as above. |
| frequency | integer | No | 1 once (default), 2 weekly, 3 monthly, 4 annual. |
| frequency_time_value | string | No | When the pledge falls due: the weekday for weekly, the day of the month for monthly, the month (1 to 12) for annual. Drives the reminder SMS. |
{"message": "Your pledge has been updated", "status": true}Only the member who made the pledge can edit it.
Pledges on one fundraiser by the member, their departments and their cell groups.
{
"message": "Success",
"status": true,
"pledges": [
{
"uuid": "00000000-0000-4000-8000-000000000501",
"amount_pledged": "50000.00",
"total_paid": "10000.00",
"source": "Individual Pledge-254712345678",
"frequency": 3,
"frequency_time_value": "28",
"type": 1,
"status": 0,
"phone": "254712345678",
"date_pledged": "2026-09-14 18:20:00"
}
]
}source is the department or cell group name for a group pledge.
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| fundraising | uuid | Yes | The fundraiser. |
| phone | string | Yes | The pledger's phone. |
Same response as above, for the phone's own and department pledges in that church.
curl -X POST https://uat-api.mychurch.co.ke/api/v2/my-fundraising-pledges/noauth/00000000-0000-4000-8000-000000000001 \
-H "Content-Type: application/json" \
-d '{"fundraising": "00000000-0000-4000-8000-000000000201", "phone": "0712345678"}'