Skip to content

Expenditure Request ​

budget.expenditure_request · every change is kept in the audit log · numbered EXR-{YYYY}-{#####}

Fields ​

Every record also has id, created_at and updated_at.

FieldLabelTypeRules
financial_yearfinancial yearlink → budget.financial_yearrequired
departmentdepartmentlink → core.collegerequired
sub_departmentsub departmentlink → budget.sub_department
headheadlink → budget.budget_headrequired
sub_headsub headlink → budget.budget_sub_headrequired
request_amountrequest amountmoneyrequired; min 1
descriptiondescriptionlongtextmax 2000 characters
reference_numberreference numbertextmax 100 characters
requested_byrequested bylink → core.userrequired
request_daterequest datedate
statusstatusselectone of: Pending, Approved, Rejected, Post-facto Pending, Post-facto Approved, Post-facto Rejected; default "Pending"
approved_amountapproved amountmoneymin 0
approved_onapproved ondate
approved_byapproved bylink → core.user
post_facto_amountpost facto amountmoneymin 0
post_facto_descriptionpost facto descriptionlongtextmax 2000 characters
post_facto_datepost facto datedate
post_facto_approved_amountpost facto approved amountmoneymin 0
post_facto_approved_onpost facto approved ondate
post_facto_approved_bypost facto approved bylink → core.user
expense_closedexpense closedcheckdefault false
activeactivecheckdefault true

Permissions ​

RoleCan
budget:adminread, create, update, delete
budget:financeread, update
budget:hodread, update
budget:clerkread, create, update — only own rows (via requested_by)
budget:auditorread

API ​

http
GET    /api/budget/expenditure_request?<field>=<value>&limit=100&offset=0
POST   /api/budget/expenditure_request
GET    /api/budget/expenditure_request/:id
PATCH  /api/budget/expenditure_request/:id
DELETE /api/budget/expenditure_request/:id

Edulab Bench developer documentation