Expenses
Create expense
POST
/api/v1/expensesRecords a new expense, pending admin approval.
Requires Authorization
ACCOUNTANT only
Authenticated action
Form fields
titlestringrequired | |
descriptionstring | |
categorystringrequired | One of the categories from GET /meta. |
amountnumberrequired | |
currencystringrequired | |
incurredAtstringrequired | ISO date the expense was incurred. |
vendorNamestringrequired | Payout beneficiary name. |
vendorPhonestringrequired | Payout mobile money number. |
countryCodestringrequired | |
providerNamestringrequired | Mobile money provider code. |
customerMessagestring | 4–22 alphanumeric characters, shown on the payout. |
receiptfile | Receipt image or PDF. |
Request
curl --request POST \
--url https://api.swiftgoma.com/api/v1/expenses \
--header 'Authorization: Bearer <access_token>' \
--form 'title=<title>' \
--form 'description=<description>' \
--form 'category=<category>' \
--form 'amount=<amount>' \
--form 'currency=<currency>' \
--form 'incurredAt=<incurredAt>' \
--form 'vendorName=<vendorName>' \
--form 'vendorPhone=<vendorPhone>' \
--form 'countryCode=<countryCode>' \
--form 'providerName=<providerName>' \
--form 'customerMessage=<customerMessage>' \
--form 'receipt=@/path/to/file.jpg'201Example response
{
"success": true,
"data": {
"id": "exp_1a2b3c",
"reference": "SWG-EXP-2026-0014",
"title": "Renouvellement hébergement serveur",
"description": "Facture mensuelle du fournisseur d'hébergement.",
"category": "UTILITIES",
"amount": "150.00",
"currency": "USD",
"status": "PENDING",
"incurredAt": "2026-02-10T00:00:00.000Z",
"vendorName": "CloudHost SARL",
"vendorPhone": "243812345678",
"countryCode": "CD",
"providerName": "MTN_MOMO_COD",
"createdBy": {
"id": "9f8e7d6c",
"name": "Marie Kanku"
},
"approvedBy": null,
"createdAt": "2026-02-10T08:00:00.000Z"
}
}