Abakola pulogulaamu

API ttiimu yo gy'ejja okwagala

REST etegeerekeka, idempotency key, webhook eziriko omukono, ne sandbox erimu amakubo ag'okugezesa osobole okuyunga byonna nga tonnatambuza ne ssente emu.

Kola akawunti
Yakolebwa ku lw'abakola pulogulaamu

Okukungaanya kwo okusooka mu kusaba kumu

REST ennyangu, JSON ekwatagana buli kiseera, ne request id ku buli kuddamu. Sandbox efaanana ne production: API y'emu, embeera z'emu, ne webhook ez'emu.

  • Ebisumuluzo bya sandbox n'ebya production, buli kimu ku app yaakyo
  • Webhook eziriko omukono gwa HMAC nga ziriko n'obukuumi ku replay
  • Idempotency key ku buli kusaba okutambuza ssente
  • Ensobi ezinnyonnyoddwa obulungi ezikubuulira ddala ky'olina okutereeza
  • Ennyinyonnyola ya OpenAPI, ekikuŋŋaanya kya Postman ne llms.txt, byonna bifulumiziddwa
  • Sessioni z'okusasula ezikwatiddwa ne callback entereevu ez'ebiyunga bya CRM, ERP n'amaduuka
POST /v1/collections
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"
  }'
201 Created
{
  "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"
}

Okukung'aanya kwo okusooka

Okusaba kumu kutonda ekigendererwa ky'okusasula, kuzzaayo id y'okusaba era, ku ssente za ssimu, kusindika okusaba ku ssimu y'asasula. Sandbox ekola nga bwe kityo ddala nga production.

Funa ebisumuluzo byo eby'okugezesaTondawo akawunti era ebisumuluzo bya sandbox birabika amangu ku lupapula lwo olw'omukubi wa pulogulaamu. Ebisumuluzo by'okukola byegulwawo oluvannyuma lw'okukakasa bizinensi.
POST /v1/collections
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"
  }'
Okuddamu
{
  "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"
}
201 Created
Ssente ze mistring gya desimo ku nsalo ya API era bitundu bitono mu kitabo, n'olwekyo tewali kibula. Buli kuyita okutambuza ssente kutwala ekisumuluzo kya idempotency era buli kuddamu kutwala id y'okusaba gy'osobola okubuulira obuyambi.

SDK za sseva

Ebibikka ebitono ebirina ebika ku API ya REST y'emu, nga birimu idempotency n'okukakasa omukono.

TypeScript and NodeBijja kufulumizibwa mangu@capay/sdk
Okuyingiza
import { Capay } from '@capay/sdk';

Terinnaba ku npm. Olunyiriri lwa import oluli waggulu lwe lwa nkomerero, era okwegatta kwo tekujja kukyuka nga bagifulumizza.

Soma obulagirizi
PythonBijja kufulumizibwa mangucapay
Okuyingiza
from capay import Capay

Terinnaba ku PyPI. Olunyiriri lwa import oluli waggulu lwe lwa nkomerero, era okwegatta kwo tekujja kukyuka nga bagifulumizza.

Soma obulagirizi
PHPBijja kufulumizibwa mangucapay/capay-php
Okuyingiza
use Capay\CapayClient;

Terinnaba ku Packagist. Olunyiriri lwa import oluli waggulu lwe lwa nkomerero, era okwegatta kwo tekujja kukyuka nga bagifulumizza.

Soma obulagirizi

Kakasa buli webhook

Emikono gibalirwa ku mubiri omubisi era gigeraageranyizibwa mu budde obutakyuka, era akabonero k'ekiseera akasukka sikonda 300 kagaanibwa. Toyinza kwesiga webhook gy'otakakasizza.

X-Capay-Signature
# 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.
Omutwe gw'omukono
X-Capay-Signature: t=1767225600,v1=6f8b4c2d9e0a1b3c5d7e9f0a2b4c6d8e0f1a3b5c7d9e1f0a2b4c6d8e0f1a3b5c
X-Capay-Event-Id: evt_2n4Kq8Zr41Xa
X-Capay-Event-Type: collection.completed
Okutuusa n'okugezaako nate

Okutuusa okugaanye kugezebwako nate ku nteekateeka etakyuka: 1m, 5m, 30m, 2h, 6h, 12h, 24h, 24h. Endpoint eremererwa emirundi 8 egiddiriŋŋana ezikizibwa era okimanyisibwa, n'olwekyo endpoint efudde temira bintu mu kasirise.

Ebyama bibiri eby'okuteeka omukono bisobola okukola mu kiseera kye kimu, n'olwekyo osobola okubikyusa nga tofiiriddwa kintu. Gaana buli kintu ekiri ebweru w'eddirisa lya sikonda 300 era tereka id y'ekintu okusobozesa okuddamu obutaba na kabi.

Ebikozesebwa ebirala

Ennyinyonnyola ezisomebwa ekyuma, ekikuŋŋaanya ky'osobola okuyingiza, n'ebikozesebwa ebibisoma.

llms.txtEbiwandiiko byonna nga bitegekeddwa eri abayambi ba koodi, AI yo esobole okuddamu ku API yaffe ng'ekozesa ebiwandiiko byaffe.Ennyinyonnyola ya OpenAPIEndagaano ejjuvu, ekolebwa okuva mu API. Giyingize okuzimba kiraayanti mu lulimi lwonna.Ekikuŋŋaanya kya PostmanBuli endpoint n'emibiri egy'okulabirako n'ebikyukakyuka by'obutonde, nga bimaze okwetegeka okukola ku sandbox.
Olunyiriri lw'ebiragiroKijjaTondawo okusasula okw'okugezesa, goberera ebibaddewo era ddamu okukuba webhook ku kyuma kyo.@capay/cli
Sseva ya MCPKijjaWa omuyambi wo owa koodi olukusa okusoma sandbox yo asobole okuddamu n'ebikwata ku ggwe ebituufu.@capay/mcp
Sikulipuuti y'okusasulaKijjaGgulawo olupapula lw'okusasula mu ddirisa ku lupapula lwo mu kifo ky'okusindika omuntu awalala.https://pay.capayglobal.com/capay.js

Tandika okukungaanya ssente okubuna Afirika leero

Kola akawunti eya bwereere, ozimbire ku sandbox, otandike okukola ng'omaze okukakasibwa.

Kola akawunti

Tubuulire ku korido zo n'obungi bwa ssente ze mutambuza ekiseera kyonna.