# Saweria โ€” Zapi reference > Donasi QRIS ke kreator Saweria โ€” bikin tagihan, dapat QR siap-scan, dan cek status pembayaran secara real-time. Anonim, tanpa login. **Base URL:** `https://api.zpi.web.id` **Auth:** Send `x-api-key: YOUR_KEY` header on every request. Get a free key at https://zpi.web.id/dashboard/keys. **Response envelope:** `{ status, message, content }` **Rate limit:** 60 req/min on free tier. **Related:** - Detail page: https://zpi.web.id/api/finance/saweria - Endpoint catalog: https://zpi.web.id/category/finance - Concise index: https://zpi.web.id/llms.txt - Full reference: https://zpi.web.id/llms-full.txt --- ## Saweria **Category:** finance ยท **Slug:** `saweria` **Detail page:** https://zpi.web.id/api/finance/saweria Donasi QRIS ke kreator Saweria โ€” bikin tagihan, dapat QR siap-scan, dan cek status pembayaran secara real-time. Anonim, tanpa login. **Tags:** donation, qris, payment, saweria, indonesia ### Profil Kreator Info kreator Saweria: nama, avatar, deskripsi, nominal cepat, dan sosial media. - **Method:** `GET` - **Endpoint:** `https://api.zpi.web.id/v1/finance:saweria/profile/:username` - **Cache TTL:** 300s **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `username` | string | path | yes | Username Saweria kreator (boleh @username atau URL saweria.co/...) | **cURL:** ```bash curl "https://api.zpi.web.id/v1/finance:saweria/profile/:username" \ -H "x-api-key: YOUR_API_KEY" ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:saweria/profile/:username", { headers: { "x-api-key": process.env.ZAPI_KEY } }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.get("https://api.zpi.web.id/v1/finance:saweria/profile/:username", headers={"x-api-key": "YOUR_API_KEY"}) data = r.json() ``` **Example response:** ```json { "id": "0ed02b12-460e-4008-9dfc-501e320c986d", "plus": true, "avatar": "https://saweria-space.sgp1.cdn.digitaloceanspaces.com/prd/pp/0ed02b12-460e-4008-9dfc-501e320c986d-e2c0303a-2759-4b56-880a-8a5707e90c04.jpg", "socials": { "youtube": "zaadevofc", "instagram": "zaadevofc" }, "currency": "IDR", "provider": "saweria", "username": "zaadevofc", "verified": false, "profileUrl": "https://saweria.co/zaadevofc", "description": "thanks for support my work ^^", "hasWishlist": false, "minDonation": 10000, "quickAmounts": [ 5000, 25000, 50000, 100000 ] } ``` --- ### Buat Donasi QRIS Bikin tagihan donasi QRIS anonim ke kreator. Balikin QR string, gambar QR, link bayar, dan nominal yang harus dibayar. - **Method:** `POST` - **Endpoint:** `https://api.zpi.web.id/v1/finance:saweria/donate/:username` **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `username` | string | path | yes | Username Saweria yang mau didonasi (boleh @username atau URL) | | `amount` | number | body | yes | Nominal donasi dalam Rupiah (min 1.000, max 10.000.000) | | `message` | string | body | no | Pesan donasi (opsional, max 255 char) | | `name` | string | body | no | Nama donatur yang tampil (opsional, default Anonim) | | `email` | string | body | no | Email donatur buat kirim bukti (opsional) | **cURL:** ```bash curl -X POST "https://api.zpi.web.id/v1/finance:saweria/donate/:username" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "amount": "10000", "message": "Semangat terus berkarya!", "name": "Anonim", "email": "donatur@example.com" }' ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:saweria/donate/:username", { method: "POST", headers: { "x-api-key": process.env.ZAPI_KEY, "Content-Type": "application/json" }, body: JSON.stringify({ "amount": "10000", "message": "Semangat terus berkarya!", "name": "Anonim", "email": "donatur@example.com" }) }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.post("https://api.zpi.web.id/v1/finance:saweria/donate/:username", headers={"x-api-key": "YOUR_API_KEY"}, json={ "amount": "10000", "message": "Semangat terus berkarya!", "name": "Anonim", "email": "donatur@example.com" }) data = r.json() ``` **Example response:** ```json { "to": "zaadevofc", "from": "Anonim", "amount": 10000, "payUrl": "https://saweria.co/qris/snap/d5451d2c-3458-40f0-9478-567ef79354c9", "status": "pending", "message": "Semangat terus berkarya!", "qrImage": "https://api.qrserver.com/v1/create-qr-code/?size=320x320&data=00020101021226650013CO.XENDIT.WWW01189360084800000000020215WNtXtb6qmr4ZJBw0303UME51370014ID.CO.QRIS.WWW0215ID20253781998505204509953033605405100715802ID5922PT%20Harta%20Tahta%20Sukaria6013JAKARTA%20PUSAT61051034062290525N1IubOiVqCoMkRIWWFkTa8AgU630414E8", "currency": "IDR", "provider": "saweria", "qrString": "00020101021226650013CO.XENDIT.WWW01189360084800000000020215WNtXtb6qmr4ZJBw0303UME51370014ID.CO.QRIS.WWW0215ID20253781998505204509953033605405100715802ID5922PT Harta Tahta Sukaria6013JAKARTA PUSAT61051034062290525N1IubOiVqCoMkRIWWFkTa8AgU630414E8", "createdAt": "Fri, 12 Jun 2026 03:27:36 GMT", "donationId": "d5451d2c-3458-40f0-9478-567ef79354c9", "amountToPay": 10071, "paymentType": "qris" } ``` --- ### Cek Status Donasi Cek apakah donasi QRIS sudah dibayar (paid/pending/expired). Poll pakai donationId dari endpoint donate. - **Method:** `GET` - **Endpoint:** `https://api.zpi.web.id/v1/finance:saweria/status/:donationId` **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `donationId` | string | path | yes | ID tagihan donasi dari endpoint donate | **cURL:** ```bash curl "https://api.zpi.web.id/v1/finance:saweria/status/:donationId" \ -H "x-api-key: YOUR_API_KEY" ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:saweria/status/:donationId", { headers: { "x-api-key": process.env.ZAPI_KEY } }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.get("https://api.zpi.web.id/v1/finance:saweria/status/:donationId", headers={"x-api-key": "YOUR_API_KEY"}) data = r.json() ``` **Example response:** ```json { "to": "zaadevofc", "amount": 10071, "isPaid": false, "status": "pending", "currency": "IDR", "provider": "saweria", "qrString": "00020101021226650013CO.XENDIT.WWW01189360084800000000020215WNtXtb6qmr4ZJBw0303UME51370014ID.CO.QRIS.WWW0215ID20253781998505204509953033605405100715802ID5922PT Harta Tahta Sukaria6013JAKARTA PUSAT61051034062290525P2Y5NROondzrK6Hwj5Jxlu92V6304D73C", "createdAt": "Fri, 12 Jun 2026 03:27:59 GMT", "donationId": "0dc802ff-19ac-4558-a3c8-9f7d88aa04d4", "amountToPay": 10071 } ``` --- _Generated: 2026-08-02T14:26:02.400Z_