API Docs

Embed crypto donations on your own site

A lightweight REST API for nonprofits and partners who want to collect crypto donations without redirecting donors away.

Overview

The Donations API lets an approved nonprofit or partner create a donation intent, receive a deposit address for the donor's chosen coin, and get notified when the transaction confirms on-chain. It's the same flow that powers the donation form on this site.

Authentication

API access is issued per approved partner — see For Nonprofits to apply. Once approved, requests are authenticated with a bearer token in the Authorization header.

Create a donation

POST https://api.cryptokasih.xyz/v1/donations

{
  "fund": "clean-water-initiative",
  "coin": "USDC-SOL",
  "amount": "25.00",
  "donor": {
    "email": "donor@example.com",
    "name": "Jane Donor"
  }
}

Response:

{
  "id": "don_8f2a1c",
  "status": "pending",
  "network": "solana",
  "deposit_address": "YOUR_SOLANA_ADDRESS_HERE",
  "expected_amount": "25.00",
  "coin": "USDC-SOL"
}

Webhooks

Once a donation confirms on-chain, we send a signed donation.confirmed event to your configured webhook URL so you can update your own records in real time.

Get API access

This API is currently available to approved nonprofit partners. Email support@cryptokasih.xyz to request access.