curl -G https://api.kwugwo.africa/v1/ugwo/ugw.VCvr.7K2qPmRtV9xLnQ8sD1cYwHfE/activities \
-H "Authorization: Bearer $KWUGWO_SECRET_KEY" \
--data-urlencode "limit=20"
const params = new URLSearchParams({ limit: "20" });
const page = await fetch(
`https://api.kwugwo.africa/v1/ugwo/${ugwoUid}/activities?${params}`,
{ headers: { Authorization: `Bearer ${process.env.KWUGWO_SECRET_KEY}` } }
).then(r => r.json());
<?php
$ch = curl_init("https://api.kwugwo.africa/v1/ugwo/{$ugwoUid}/activities?limit=20");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('KWUGWO_SECRET_KEY')],
]);
$page = json_decode(curl_exec($ch), true);
curl_close($ch);
import os, requests
page = requests.get(
f"https://api.kwugwo.africa/v1/ugwo/{ugwo_uid}/activities",
headers={"Authorization": f"Bearer {os.environ['KWUGWO_SECRET_KEY']}"},
params={"limit": 20},
).json()
url := fmt.Sprintf("https://api.kwugwo.africa/v1/ugwo/%s/activities?limit=20", ugwoUid)
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KWUGWO_SECRET_KEY"))
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
{
"data": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"status": "requires_action",
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": ["NGN", "Nigerian Naira (NGN)"],
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"next_action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"expires_at": "2026-05-14T20:10:50+00:00",
"account_name": "PAYSTACK CHECKOUT",
"account_number": "1260881821"
}
},
"error": null,
"created_at": "2026-05-14T19:55:50+00:00",
"updated_at": "2026-05-14T19:55:51+00:00"
}
],
"next_cursor": null
}
Payments (Ugwo)
List activities
Page through activities run against an ugwo.
GET
/
v1
/
ugwo
/
{ugwoUid}
/
activities
curl -G https://api.kwugwo.africa/v1/ugwo/ugw.VCvr.7K2qPmRtV9xLnQ8sD1cYwHfE/activities \
-H "Authorization: Bearer $KWUGWO_SECRET_KEY" \
--data-urlencode "limit=20"
const params = new URLSearchParams({ limit: "20" });
const page = await fetch(
`https://api.kwugwo.africa/v1/ugwo/${ugwoUid}/activities?${params}`,
{ headers: { Authorization: `Bearer ${process.env.KWUGWO_SECRET_KEY}` } }
).then(r => r.json());
<?php
$ch = curl_init("https://api.kwugwo.africa/v1/ugwo/{$ugwoUid}/activities?limit=20");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('KWUGWO_SECRET_KEY')],
]);
$page = json_decode(curl_exec($ch), true);
curl_close($ch);
import os, requests
page = requests.get(
f"https://api.kwugwo.africa/v1/ugwo/{ugwo_uid}/activities",
headers={"Authorization": f"Bearer {os.environ['KWUGWO_SECRET_KEY']}"},
params={"limit": 20},
).json()
url := fmt.Sprintf("https://api.kwugwo.africa/v1/ugwo/%s/activities?limit=20", ugwoUid)
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KWUGWO_SECRET_KEY"))
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
{
"data": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"status": "requires_action",
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": ["NGN", "Nigerian Naira (NGN)"],
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"next_action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"expires_at": "2026-05-14T20:10:50+00:00",
"account_name": "PAYSTACK CHECKOUT",
"account_number": "1260881821"
}
},
"error": null,
"created_at": "2026-05-14T19:55:50+00:00",
"updated_at": "2026-05-14T19:55:51+00:00"
}
],
"next_cursor": null
}
Returns a cursor-paginated list of every activity that
has been recorded against this ugwo, newest first.
Path parameters
string
required
The ugwo ID,
ugw.XXXX.YYYY....Query parameters
string
Pagination cursor from the previous page.
integer
default:"10"
Page size, between
1 and 100.Response
Activity[]
Activities, matching the shape returned by Charge an
ugwo.
string | null
Cursor for the next page, or
null on the last page.curl -G https://api.kwugwo.africa/v1/ugwo/ugw.VCvr.7K2qPmRtV9xLnQ8sD1cYwHfE/activities \
-H "Authorization: Bearer $KWUGWO_SECRET_KEY" \
--data-urlencode "limit=20"
const params = new URLSearchParams({ limit: "20" });
const page = await fetch(
`https://api.kwugwo.africa/v1/ugwo/${ugwoUid}/activities?${params}`,
{ headers: { Authorization: `Bearer ${process.env.KWUGWO_SECRET_KEY}` } }
).then(r => r.json());
<?php
$ch = curl_init("https://api.kwugwo.africa/v1/ugwo/{$ugwoUid}/activities?limit=20");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('KWUGWO_SECRET_KEY')],
]);
$page = json_decode(curl_exec($ch), true);
curl_close($ch);
import os, requests
page = requests.get(
f"https://api.kwugwo.africa/v1/ugwo/{ugwo_uid}/activities",
headers={"Authorization": f"Bearer {os.environ['KWUGWO_SECRET_KEY']}"},
params={"limit": 20},
).json()
url := fmt.Sprintf("https://api.kwugwo.africa/v1/ugwo/%s/activities?limit=20", ugwoUid)
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KWUGWO_SECRET_KEY"))
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
{
"data": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"status": "requires_action",
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": ["NGN", "Nigerian Naira (NGN)"],
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"next_action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"expires_at": "2026-05-14T20:10:50+00:00",
"account_name": "PAYSTACK CHECKOUT",
"account_number": "1260881821"
}
},
"error": null,
"created_at": "2026-05-14T19:55:50+00:00",
"updated_at": "2026-05-14T19:55:51+00:00"
}
],
"next_cursor": null
}

