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()
{
"items": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": "NGN",
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"status": "successful",
"created_at": "2026-05-14T19:55:50+00:00",
"error": null,
"updated_at": "2026-05-14T20:02:13+00:00",
"amount": 500000,
"nzube_subscription_charge": 2500,
"refunded_amount": 0,
"charged_amount": 500000,
"next_action": {
"uid": "uac.VCvr.Rk4mZpQ7wLsD2vT8xNbHyCeU",
"action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"account_number": "1260881821",
"account_name": "PAYSTACK CHECKOUT",
"expires_at": "2026-05-14T20:10:50+00:00"
}
},
"status": "fulfilled",
"last_error": null,
"expires_at": "2026-05-14T20:10:50+00:00",
"created_at": "2026-05-14T19:55:51+00:00",
"updated_at": "2026-05-14T20:02:13+00:00"
},
"is_double_charge": false
}
],
"pagination": {
"next_cursor": null,
"prev_cursor": null
}
}
Activities
List activities
Every payment attempt made against an ugwo, newest first.
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()
{
"items": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": "NGN",
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"status": "successful",
"created_at": "2026-05-14T19:55:50+00:00",
"error": null,
"updated_at": "2026-05-14T20:02:13+00:00",
"amount": 500000,
"nzube_subscription_charge": 2500,
"refunded_amount": 0,
"charged_amount": 500000,
"next_action": {
"uid": "uac.VCvr.Rk4mZpQ7wLsD2vT8xNbHyCeU",
"action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"account_number": "1260881821",
"account_name": "PAYSTACK CHECKOUT",
"expires_at": "2026-05-14T20:10:50+00:00"
}
},
"status": "fulfilled",
"last_error": null,
"expires_at": "2026-05-14T20:10:50+00:00",
"created_at": "2026-05-14T19:55:51+00:00",
"updated_at": "2026-05-14T20:02:13+00:00"
},
"is_double_charge": false
}
],
"pagination": {
"next_cursor": null,
"prev_cursor": null
}
}
Returns a cursor-paginated list of the ugwo’s
activities, newest first. Use it to find the successful attempt to
refund, or to show a payment’s history.
Path parameters
string
required
The ugwo ID,
ugw.XXXX.YYYY....Query parameters
integer
default:"10"
Page size,
1 to 100.string
A
next_cursor or prev_cursor from a previous page.Response
Activity[]
object
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()
{
"items": [
{
"uid": "act.VCvr.qnbBJaElzSTHOcaTzxbuDlIs",
"activity_type": "charge",
"checkout": {
"uid": "chk.VCvr.vBtGwathtd99FpQGIGwIAATX",
"currency": "NGN",
"mediums": [{ "medium": "bank_transfer" }, { "medium": "ussd" }]
},
"ugwo_medium": null,
"psp": "paystack_ng",
"psp_external_id": "5kfxw34ugz",
"status": "successful",
"created_at": "2026-05-14T19:55:50+00:00",
"error": null,
"updated_at": "2026-05-14T20:02:13+00:00",
"amount": 500000,
"nzube_subscription_charge": 2500,
"refunded_amount": 0,
"charged_amount": 500000,
"next_action": {
"uid": "uac.VCvr.Rk4mZpQ7wLsD2vT8xNbHyCeU",
"action": {
"type": "user_action",
"instruction": "Transfer to bank",
"headers": {
"bank_name": "Test Bank",
"account_number": "1260881821",
"account_name": "PAYSTACK CHECKOUT",
"expires_at": "2026-05-14T20:10:50+00:00"
}
},
"status": "fulfilled",
"last_error": null,
"expires_at": "2026-05-14T20:10:50+00:00",
"created_at": "2026-05-14T19:55:51+00:00",
"updated_at": "2026-05-14T20:02:13+00:00"
},
"is_double_charge": false
}
],
"pagination": {
"next_cursor": null,
"prev_cursor": null
}
}