API Reference
Integrate Akauntify Pay into your application. Our API is organized around REST, returns JSON-encoded responses, and uses standard HTTP response codes.
Authentication
The Akauntify Pay API uses API keys to authenticate requests. You can view and manage your API keys in the Developers Dashboard.
Authentication to the API is performed via HTTP Basic Auth. Provide your API key as the basic auth username value. You do not need to provide a password.
curl https://api.akauntify.com/v1/deposits \
-u ak_prod_X89...:
Endpoints
Creates a new deposit object. This will trigger a USSD push prompt on the customer's mobile phone.
Parameters
- amountintegerrequiredA positive integer representing how much to charge, in the smallest currency unit.
- phone_numberstringrequiredThe customer's mobile number in international format (e.g., +256770000000).
- referencestringAn arbitrary string attached to the object. Often useful for displaying to users.
Example Request
curl https://api.akauntify.com/v1/deposits \
-u ak_prod_X89...: \
-d amount=50000 \
-d phone_number="+256770000000" \
-d reference="INV-2026"Example Response
{{ '{' }}
"id": "dep_1MowQ",
"object": "deposit",
"amount": 50000,
"currency": "UGX",
"status": "pending",
"phone_number": "+256770000000",
"reference": "INV-2026",
"created_at": 1679090999
{{ '}' }}Sends funds from your Akauntify balance to a customer's mobile wallet or bank account.
Parameters
- amountrequired
- destinationrequiredThe mobile number or bank account routing string.
Example Request
curl https://api.akauntify.com/v1/payouts \
-u ak_prod_X89...: \
-d amount=20000 \
-d destination="+256770000000"When you refund a charge, the funds are returned to the customer's mobile wallet or account. You can refund the entire amount or a partial amount.
Parameters
- deposit_idrequiredThe ID of the deposit to refund (e.g.,
dep_1MowQ). - amountintegerA positive integer representing how much to refund. If not provided, defaults to the entire remaining original deposit amount.
- reasonstringString indicating the reason for the refund (e.g.,
requested_by_customer).
Example Request
curl https://api.akauntify.com/v1/refunds \
-u ak_prod_X89...: \
-d deposit_id="dep_1MowQ" \
-d reason="requested_by_customer"Retrieves the details of a transaction (deposit, payout, or refund) that has previously been created. Supply the unique transaction ID.
Path Parameters
- idrequiredThe ID of the transaction to retrieve (e.g.,
dep_1MowQ).
Example Request
curl https://api.akauntify.com/v1/transactions/dep_1MowQ \
-u ak_prod_X89...:Example Response
{{ '{' }}
"id": "dep_1MowQ",
"object": "deposit",
"amount": 50000,
"currency": "UGX",
"status": "successful",
"created_at": 1679090999
{{ '}' }}