Skip to content
WinliumDocs

Expense Settings

Set the ledger accounts, default workflows, advance rules, budget rules, mileage rate and public submission link that Expense relies on.

LimitedChecked against the product 06 Oct 2026

What this is for

Expense Settings holds the company-wide choices Expense depends on. The most important are the five ledger accounts that approvals and payments post to. There is one set of settings for the whole company.

Before you begin

Before you begin

  1. Read the set-up order
  2. Create the ledger accounts in the Chart of Accounts Liability accounts for the three payable settings, an asset account for Staff Advance, a cash account for petty cash. See Accounting > Chart of Accounts.
  3. Create at least one currency Under Accounting > Configurations > Foreign Currency. The Default Currency list is empty without one.
  4. Build workflow templates (optional) Under Administration > Workflow Templates, with Document Type Expense or Advance Request, if you want default workflows.
  5. Create your categories first (only for the public form)

Open the screen

In the menu choose Administration, then under Module Settings choose Expense Settings. The page title is Expense Settings.

Screenshot pending

Expense Settings page showing General Settings and Advance Settings sections with the Save button at the top right

  1. 1Save (first time) or Update (after that).
  2. 2Settings are grouped in sections, one under the other.

The list

This screen has no list. It is one form of seven sections, then a Public Submission Link panel.

Create or edit

The first time, the form shows its starting values and the top button reads Save. After you have saved once, the form shows your saved values and the button reads Update. Only one settings record exists per company.

  1. Fill the sections

    Start with Default Currency, which is required, then the Default GL Accounts.
  2. Save

    Select Save (or Update) at the top right. You see "Creating expense settings..." then Expense settings created, or "Updating expense settings..." then Expense settings updated.
  3. Set up the public link (optional)

    Do this only after saving. See Public Submission Link below.

Field reference

General Settings

FieldTypeRequiredDetails
Default CurrencyDropdownYes
Lists your active currencies as code and description, for example NGN - Naira. Hover text: The currency new expenses are submitted in when the employee does not choose one.
Error if empty: "Default currency is required". If there are none the list says "No currencies found. Create one." Expense does not read this setting today: a new expense uses the currency on the expense itself, and NGN if none is given.
Require Policy AssignmentYes/No switchNo
When on, every expense must be linked to an expense policy. If no active policy matches the person, creating the expense fails (see Rules and error messages). It is checked for employee claims, not for external payee claims.
Default: Off
Receipt Required AboveNumberNo
Receipts are mandatory for any expense line above this amount. Leave blank to make receipts always optional. The line total including tax must be strictly greater than the amount. A policy's own Receipt Required Above overrides this.
Default: Blank (no threshold)
Placeholder: e.g. 5000.
Allow Multi-Currency ExpensesYes/No switchNo
Expense does not read this switch today, so it changes nothing.
Default: Off

Advance Settings

FieldTypeRequiredDetails
Allow Advance RequestsYes/No switchNo
Hover text: Employees can request cash advances before incurring expenses. When off, new advance requests are refused. A policy that turns advances off is checked first.
Default: Off
Maximum Advance AmountNumberNo
The maximum single advance any employee can request. Policies can set lower limits per role. A policy's own Max Advance Amount is used instead when it has one.
Default: Blank (no cap)
Placeholder: e.g. 100000.
Advance Clearance Period (days)NumberYes
Number of days after disbursement that the employee must submit receipts or return unused cash. The clearance due date is the payout date plus this many days. A policy's Advance Clearance Days overrides it.
Default: 30
Whole number, 0 or more. Placeholder: e.g. 30.
Block New Advance if Previous UnclearedYes/No switchNo
Prevents employees from requesting another advance while they have an outstanding one (paid out, partly cleared or overdue). A policy's own setting overrides it once it has been touched.
Default: Off
Overdue Reminder (days)NumberYes
Send a reminder to the employee X days before their advance clearance deadline. The reminder appears in the app only.
Default: 3
Whole number, 0 or more. Placeholder: e.g. 3.
Escalate After (days)NumberYes
Once an advance is this many days past its clearance due date, also notify the employee's manager (in addition to the employee, who is notified as soon as it becomes overdue). The manager is notified only if Winlium can find the employee's manager.
Default: 7
Whole number, 0 or more. Placeholder: e.g. 7.

Approval Settings

FieldTypeRequiredDetails
Default Claim WorkflowDropdownNo
A fallback only. A workflow template whose conditions match the expense always wins. Only templates with Document Type Expense appear here. If it is blank and no template matches, submitting is blocked until a matching template exists.
Does not apply to external payee claims.
Default Advance WorkflowDropdownNo
The same, for advance requests. Only templates with Document Type Advance Request appear here.
Auto-Approve BelowNumberNo
Claims below this amount are approved automatically without going through the workflow. Leave blank to always require approval. In practice an expense whose total (including tax) is equal to or lower than this amount is approved when it is submitted and posts to the ledger straight away. It applies to every expense type and to external payee claims, but not to advances. Budget and monthly limit checks still run first.
Default: Blank (always needs approval)
Placeholder: e.g. 2000.

Budget Settings

FieldTypeRequiredDetails
Warn When Expense Exceeds BudgetYes/No switchNo
Shows a warning when submitting an expense that would exceed the budget for that category. The person must confirm to carry on.
Default: Off
Block Submission When Over BudgetYes/No switchNo
Prevents submission when the expense would exceed the budget. Only applies if budget tracking is configured. See Budget checks.
Default: Off
Allow Up To (%)NumberYes
Shown only when Block Submission When Over Budget is on. Blocks only once the overage itself exceeds this percentage of the budgeted amount for that account. Example: 20 blocks once you go a fifth of the budget over. 100 blocks only once total spend is more than double the budget. Lower it to block sooner.
Default: 100
0 or more. Placeholder: e.g. 20. At 0, any overrun is blocked.

Default GL Accounts

Each list shows accounts as code, a dash and name. If a list is empty you see "No ... found. Create one." with a link to the Chart of Accounts. Winlium does not check at save time that the account is right. A wrong account is found only when something posts.

FieldTypeRequiredDetails
Employee Payable AccountDropdownNo
Lists liability accounts. Hover text: The liability account used when an expense is approved — Dr Expense / Cr this account. Credited when a claim is approved. Debited when Finance pays the claim.
Staff Advance AccountDropdownNo
Lists asset accounts. Hover text: The asset account used when an advance is disbursed — Dr this account / Cr Bank. Also credited when an advance is cleared by an expense or unused cash is returned.
Corporate Card PayableDropdownNo
Lists liability accounts. Hover text: The liability account used when a corporate card expense is recorded — Dr Expense / Cr this account.
Default Petty Cash AccountDropdownNo
Lists cash accounts. Hover text: The cash account debited or credited for petty cash expense reimbursements. It is used for a petty cash expense that has no fund, and as the paying account for an advance when no bank account is chosen.

The External Payee Payable Account is in the Public Submission section below.

Mileage

FieldTypeRequiredDetails
Standard Mileage Rate (₦ per km)NumberNo
Used for mileage-based expense categories (e.g. travel reimbursement). A policy's Mileage Rate Per Km is used first when it has one. The label shows the naira sign whatever your currency.
Default: Blank
Placeholder: e.g. 250.
Allow Employee Rate OverrideYes/No switchNo
When disabled, all mileage expenses use the standard rate regardless of what the employee enters. When on, the rate the employee enters wins.
Default: Off

Public Submission

These settings control the public claim form for people outside the company. How the form works for them is on the public submission page.

FieldTypeRequiredDetails
Public Claim SubmissionYes/No switch (locked)No
You cannot click this switch. It shows whether the link is on. It changes only when you use Generate Link, Rotate Link or Disable Link below. This is normal, not a fault.
Default: Off
Brand Name Shown on the Public FormTextNo
The name at the top of the public form. If blank, the company's registered name is shown.
Placeholder: e.g. Golden Crunch Farms.
Logo Shown on the Public FormFile upload (image)No
Shows a small preview named Logo preview, and a file picker for an image. The file uploads at once, before you save. You see Logo uploaded or Failed to upload logo.
Categories a Public Visitor May SelectMulti-selectNo
Only these categories appear on the public form — keep sensitive categories internal-only here. The list shows every category, including inactive ones, but inactive ones are left out of the public form. If you choose none, the public form refuses all submissions.
External-Payee Workflow (fallback)DropdownNo
Fallback only, tried when no condition-matched template exists. To match automatically, build a template with a payeeType = EXTERNAL_PAYEE condition. Hover text: Never falls back to the Default Claim Workflow above — an external payee has no manager to resolve.
Max Submissions Per DayNumberNo
A second anti-abuse layer beyond the gateway's own rate limiting — counted per tenant, not per visitor. Counts every submission in the last 24 hours, from all visitors together. When the limit is reached, visitors see a message asking them to try again tomorrow.
Default: 20
Placeholder: e.g. 20.
External Payee Payable AccountDropdownNo
Lists liability accounts. Hover text: The liability account credited for an external-payee claim — never the Employee Payable account above.

A panel under the form. It reads: "Save the categories/GL account above first, then generate the link. Rotating replaces the previous link — anyone still holding the old one loses access immediately."

Button or itemWhat it does
Generate LinkShown when no link exists. Creates the link and turns the public form on. Toast: Link generated. The button reads Generating… meanwhile.
Rotate LinkShown once a link exists. Replaces the link with a new one. Anyone using the old one loses access. It also turns a disabled link back on.
Disable LinkShown only while the link is on. Turns the public form off. Toast: Public submission link disabled. The button reads Disabling… meanwhile.
Copy button (icon)Copies the link. Toast: Copied.
Active or DisabledA small badge next to the heading, shown once a link exists.

The link is shown every time you open the page, so you can copy it again. Generate and Rotate need saved settings first, otherwise you get "Expense settings must be saved before enabling public submission".

Buttons and actions

ButtonWhat it does
SaveFirst time only. Creates the settings.
UpdateAfter that. Saves your changes.
Generate Link, Rotate Link, Disable LinkSee the table above. They act at once and do not need Save.

Rules and error messages

What breaks when a setting is missing. These messages are exact.

Employee Payable account is not configured in Expense Settings

Appears: Approving or auto-approving a claim; paying a claim

Why it happens
Employee Payable Account is empty.
How to fix it

Choose a liability account in Employee Payable Account and save. When the approval came from the workflow, the claim can stay at Awaiting Approval, so fix the setting first.

Staff Advance account is not configured in Expense Settings

Appears: Paying out an advance; approving an Advance Clearance; returning cash

Why it happens
Staff Advance Account is empty.
How to fix it

Choose an asset account in Staff Advance Account and save.

Corporate Card Payable account is not configured in Expense Settings

Appears: Approving a Corporate Card expense

Why it happens
Corporate Card Payable is empty.
How to fix it

Choose a liability account in Corporate Card Payable and save.

External Payee Payable account is not configured in Expense Settings

Appears: Approving or paying an external payee claim

Why it happens
External Payee Payable Account is empty.
How to fix it

Choose a liability account in External Payee Payable Account and save.

No disbursement account provided or configured

Appears: Paying out an advance

Why it happens
No bank account was chosen and Default Petty Cash Account is empty.
How to fix it

Choose a bank account when paying, or set Default Petty Cash Account.

This claim has no Petty Cash fund selected and no default Petty Cash account is configured

Appears: Approving a Petty Cash expense that has no fund

Why it happens
Default Petty Cash Account is empty.
How to fix it

Set Default Petty Cash Account, or choose a fund on the expense.

No approval workflow matches this expense and no default workflow is configured. Please contact your administrator.

Appears: Submitting an expense

Why it happens
No workflow template matched and Default Claim Workflow is empty.
How to fix it

Create a matching template or choose a Default Claim Workflow. Advances show the same text with "advance request". External payee claims say "no approval workflow matches this external-payee claim and no external-payee workflow is configured".

An expense policy is required — none matched this submitter

Appears: Creating an expense

Why it happens
Require Policy Assignment is on and no active policy matched.
How to fix it

Create an active policy for the person, or switch Require Policy Assignment off. See Policies.

Cash advance requests are disabled for this company

Appears: New advance request

Why it happens
Allow Advance Requests is off.
How to fix it

Turn Allow Advance Requests on.

Expense settings must be saved before enabling public submission

Appears: Generate Link or Rotate Link

Why it happens
No settings have been saved yet.
How to fix it

Select Save, then generate the link.

This form has no categories configured yet — contact the organization

Appears: Public form

Why it happens
Categories a Public Visitor May Select is empty.
How to fix it

Choose at least one category and save.

This link is invalid or has been disabled

Appears: Public form

Why it happens
The link was rotated, disabled or mistyped.
How to fix it

Generate or rotate the link and share the new one.

Also, a missing financial period stops posting: "No active financial period found for date: <date>". See Financial years and periods.

Who can do this

Administrator Reading and saving need admin:expense-settings:create and admin:expense-settings:update. The Public Submission Link buttons need the link, rotate and deactivate permissions listed in this page's header. Employees also need admin:expense-settings-me:read, because the expense and advance forms read these settings. See Roles and permissions.

What this affects in other modules

  • Accounting: the five accounts decide where approvals and payments post. See Ledger impact.
  • Workflow: default workflows apply when no template matches. See Approvals.
  • Budget Planning: see Budget checks.

Next