When does csr.application.submitted fire?
An applicant completes and submits the funding call application form. The application row exists with status='submitted', awaiting adjudication.
What developers build with it
- Route new applications into an external review tool
- Notify the assigned reviewer or committee
- Track application volume per funding call
- Trigger an acknowledgement email to the applicant NGO
Sample payload
The full envelope (with HMAC-SHA256 signature, delivery UUID and headers) is documented on the webhooks hub page. Below is the per-event data block for csr.application.submitted:
{
"application_id": 57,
"call_id": 9,
"call_title": "Community Health Fund 2026",
"applicant_ngo_id": 44,
"title": "Mobile clinics for two districts",
"requested_amount": 400000,
"submitted_at": "2026-07-01T09:15:00+05:30"
}
Subscribe to this event
From your NGO dashboard, head to System · Webhooks · Add new. Paste your HTTPS endpoint, copy the signing secret, tick csr.application.submitted in the events list, save. The first matching event fires within seconds. Verify the X-Donateazy-Signature header on every request.
// PHP example - drop into your webhook receiver
$raw = file_get_contents('php://input');
$expected = 'sha256=' . hash_hmac('sha256', $raw, $WEBHOOK_SECRET);
if (! hash_equals($expected, $_SERVER['HTTP_X_DONATEAZY_SIGNATURE'] ?? '')) {
http_response_code(401); exit;
}
$payload = json_decode($raw, true);
if ($payload['event'] !== 'csr.application.submitted') {
http_response_code(202); exit; // not for this handler
}
// $payload['data'] is the block documented above.
handleCsrApplicationSubmitted($payload['data'], $payload['id']);
http_response_code(200);