Expense object. Optionally include a JournalTransaction array to split the amount across chart-of-accounts accounts, a CostCenterTransaction array for cost-center allocation, and a RecurringExpense object to set up recurrence.amount and date are required. Most other fields are optional and are defaulted automatically when omitted (see each field). Server-managed fields such as the record type, the recording staff member, and the status are set automatically and cannot be assigned from the request.unique_id to safely retry. If a previous request with the same unique_id already created an expense, the response echoes that expense (result = duplicated) instead of creating a duplicate.curl --location --globoff 'https://.daftara.com/api2/expenses' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer ' \
--header 'apikey: ' \
--header 'Content-Type: application/json' \
--data '{
"Expense": {
"amount": 1500,
"date": "2026-06-09",
"currency_code": "EGP",
"vendor": "AWS",
"category": "Hosting",
"note": "Monthly hosting"
}
}'{
"result": "successful",
"code": 202,
"id": 2415,
"expense_number": "00051"
}