एक API जो आपकी टीम को वाकई पसंद आएगा
अनुमानित REST, idempotency keys, साइन किए गए वेबहुक और सिम्युलेटेड रेल्स वाला सैंडबॉक्स, ताकि एक भी फ़्रैंक भेजने से पहले आप एंड-टू-एंड इंटीग्रेट कर सकें।
एक ही अनुरोध में आपका पहला कलेक्शन
साफ़-सुथरा REST, अनुमानित JSON एनवेलप और हर रिस्पॉन्स पर request id। सैंडबॉक्स प्रोडक्शन का दर्पण है: वही API, वही स्टेटस, वही वेबहुक।
- सैंडबॉक्स और प्रोडक्शन keys, हर ऐप के लिए अलग स्कोप
- रीप्ले सुरक्षा के साथ HMAC-साइन किए गए वेबहुक
- पैसा भेजने वाली हर कॉल पर idempotency keys
- टाइप्ड एरर जो ठीक-ठीक बताते हैं कि क्या सुधारना है
- OpenAPI विनिर्देश, Postman संग्रह और llms.txt, सभी प्रकाशित
- CRM, ERP और शॉप कनेक्टर के लिए होस्टेड चेकआउट सत्र और फ़्लैट कॉलबैक
curl https://api.capayglobal.com/v1/collections \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: 9f1c-collect-01" \
-H "Content-Type: application/json" \
-d '{
"amount": "2500",
"currency": "XAF",
"country": "CM",
"method": "mobile_money",
"msisdn": "2376XXXXXXXX",
"merchant_reference": "order-1042"
}'{
"status": "success",
"data": {
"id": "col_9xKQ2mD41Vb8",
"object": "collection",
"status": "pending",
"amount": "2500",
"currency": "XAF",
"country": "CM",
"method": "mobile_money",
"merchant_reference": "order-1042",
"fees": {
"platform_fee": "50",
"provider_fee": "0",
"total_fee": "50",
"bearer": "merchant"
},
"net_amount": null,
"livemode": false,
"created_at": "2026-08-30T12:04:11Z"
},
"request_id": "req_b0f3d2c1"
}आपका पहला संग्रहण
एक अनुरोध भुगतान आशय बनाता है, अनुरोध id लौटाता है और मोबाइल मनी में भुगतानकर्ता के फोन पर संकेत भेजता है। सैंडबॉक्स बिल्कुल उत्पादन की तरह व्यवहार करता है।
curl -X POST https://api.capayglobal.com/v1/collections \
-H "Authorization: Bearer sk_test_XXXXXXXXXXXX" \
-H "Idempotency-Key: col-order-10482-a1b2c3" \
-H "Content-Type: application/json" \
-d '{
"amount": "5000",
"currency": "XAF",
"country": "CM",
"method": "mobile_money",
"msisdn": "+237650000001",
"merchant_reference": "order-10482"
}'{
"status": "success",
"data": {
"id": "col_7Qm3k1Xa9Zr4",
"object": "collection",
"status": "pending",
"amount": "5000",
"currency": "XAF",
"auth_model": "STK_PROMPT",
"livemode": false
},
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}सर्वर SDK
उसी REST API पर पतले, टाइप किए हुए आवरण, जिनमें idempotency और हस्ताक्षर सत्यापन पहले से हैं।
import { Capay } from '@capay/sdk';npm पर अभी उपलब्ध नहीं है। ऊपर दी गई import लाइन अंतिम है, इसलिए प्रकाशित होने पर आपका इंटीग्रेशन नहीं बदलेगा।
गाइड पढ़ेंfrom capay import CapayPyPI पर अभी उपलब्ध नहीं है। ऊपर दी गई import लाइन अंतिम है, इसलिए प्रकाशित होने पर आपका इंटीग्रेशन नहीं बदलेगा।
गाइड पढ़ेंuse Capay\CapayClient;Packagist पर अभी उपलब्ध नहीं है। ऊपर दी गई import लाइन अंतिम है, इसलिए प्रकाशित होने पर आपका इंटीग्रेशन नहीं बदलेगा।
गाइड पढ़ेंहर webhook सत्यापित करें
हस्ताक्षर कच्चे बॉडी पर बनते हैं और स्थिर समय में मिलाए जाते हैं, और 300 सेकंड से पुरानी टाइमस्टैम्प अस्वीकार होती है। जिस webhook को आपने सत्यापित नहीं किया उस पर कभी भरोसा न करें।
# T is the t= value from X-Capay-Signature; delivery.json is the raw body as received.
T=1767225600
SECRET=whsec_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
{ printf '%s.' "$T"; cat delivery.json; } \
| openssl dgst -sha256 -hmac "$SECRET" -r | cut -d' ' -f1
# Compare the printed hex with each v1= value in the header (either may match
# during a secret rotation), and reject the delivery if |now - T| > 300 s.X-Capay-Signature: t=1767225600,v1=6f8b4c2d9e0a1b3c5d7e9f0a2b4c6d8e0f1a3b5c7d9e1f0a2b4c6d8e0f1a3b5c
X-Capay-Event-Id: evt_2n4Kq8Zr41Xa
X-Capay-Event-Type: collection.completedअसफल वितरण एक निश्चित क्रम में दोहराया जाता है: 1m, 5m, 30m, 2h, 6h, 12h, 24h, 24h। लगातार 8 बार असफल होने वाला endpoint बंद कर दिया जाता है और आपको बताया जाता है, ताकि मृत endpoint चुपचाप घटनाएं न निगले।
दो हस्ताक्षर रहस्य एक साथ सक्रिय रह सकते हैं, इसलिए आप बिना कोई घटना खोए बदल सकते हैं। 300 सेकंड की अवधि के बाहर सब कुछ अस्वीकार करें और घटना id सहेजें ताकि पुनरावृत्ति हानिरहित रहे।
बाकी सामग्री
मशीन पढ़ सके ऐसे विनिर्देश, आयात करने योग्य संग्रह, और उन्हें पढ़ने वाले उपकरण।
आज ही पूरे अफ़्रीका में भुगतान कलेक्ट करना शुरू करें
मुफ़्त खाता बनाएँ, सैंडबॉक्स पर बिल्ड करें और सत्यापन के बाद लाइव जाएँ।
कभी भी हमें अपने कॉरिडोर और वॉल्यूम के बारे में बताएँ।