Skip to main content
Version: Current

Dates, periods, currencies and dependencies

A correct amount in the wrong school, currency, date or period is still wrong. Finance users must state context explicitly.

Audience: every Finance role
Learning time: 25 minutes

Learning outcomes

You will be able to:

  • distinguish tenant, school, academic and financial context;
  • identify the date that controls an object or statement;
  • recognise currency and exchange-rate dependencies;
  • explain why a closed or unconfigured period can block downstream work;
  • collect complete context when comparing balances.

Scope hierarchy

A tenant can contain multiple schools. School-scoped Finance requests use the selected school, an X-School-Id header or equivalent session context. APIs enforce tenant isolation.

Context types

ContextWhat it controlsExample
Tenantorganisational data-isolation boundaryMupfure Education Group
Schooloperational and accounting scopeMupfure Learning Academy
Academic yearteaching/billing year reference2026 academic year
Termoptional billing and due-date contextTerm 2
Financial yearaccounting reference where configuredFY2026
Financial periodposting and close windowMay 2026
Currencymonetary unit on the recordUSD
Timezoneinterpretation of timestamps and cut-offsschool or deployment timezone

Academic and financial calendars can overlap, but they answer different questions.

Date fields by object

School fee

FieldMeaning
academic_year_idacademic year the pricing belongs to
term_idoptional term; null can represent annual pricing
financial_year_idoptional accounting reference
due_dateexpected payment date
payment_deadlinehard deadline when configured
effective_fromdate the fee becomes effective
effective_untiloptional end of validity
early_payment_discount_deadlinedeadline for configured early discount
refund_deadlinepolicy deadline where configured

Current fee creation can default academic year, term, due date or effective date from school context. Review the resolved values instead of assuming the default was correct.

Invoice

FieldMeaning
invoice_datebilling issue date
billing_period_start / billing_period_endservice/charge coverage
due_datepayment deadline
sent_datecommunication evidence
late_fee_datedate late fee was applied
adjustment_datemanual adjustment date
refund_dateinvoice refund metadata date where used
approved_atapproval timestamp

Invoice date, billing period and due date are separate facts.

Payment

FieldMeaning
payment_datedate funds were recorded as received
created_atsystem creation timestamp
verified_atinternal verification time
reconciled_atreconciliation time
cheque datemethod-specific instrument date
refund metadatarefund control time and reference

A backdated payment date and a current creation timestamp can both be valid, but the difference must be visible and authorised.

Receipt

FieldMeaning
receipt_dateissuance date
created_atsystem creation timestamp
sent_datemost recent delivery timestamp
cancelled_atcancellation timestamp
template version datesdocument design lifecycle

Journal and statements

ObjectDate basis
Journal entryentryDate
Trial balanceas-of date
Balance sheetas-of date
Income statementfrom/to period
Cash flowfrom/to period

Date decision flow

Currency on core objects

ObjectCurrency behaviour
School feerequired currency; API does not universally normalise case
Invoicerequired ISO code plus optional base/foreign amount and exchange-rate metadata
Paymentrequired currency; current contract enumerates USD, ZWG, ZAR, EUR and GBP
Allocationcarries currency
Receiptrequired currency, with settings fallback when applicable
GL journalcarries currency
Statementaccepts a currency filter
Bank statement lineexternal currency evidence
Do not silently convert

Never change an amount’s currency merely to make totals agree. Record or use an authorised exchange rate, its source and effective date where the workflow supports it.

Exchange-rate questions

Before using a rate, identify:

  • source;
  • quote direction;
  • effective date and time;
  • base and transaction currency;
  • approval or certification requirement;
  • rounding rule;
  • whether the rate is for operational capture, accounting posting, settlement or presentation;
  • whether manual rate use requires a separate permission or approval.

P1 does not declare one universal rate source.

Multi-currency example

Mupfure issues a USD invoice and receives a configured local-currency payment.

The workflow may require:

  1. source invoice amount and currency;
  2. payment amount and currency;
  3. exchange rate and source;
  4. converted/base amount where supported;
  5. allocation rule;
  6. journal currency and mapping;
  7. provider or bank settlement currency;
  8. reconciliation difference and rounding evidence;
  9. approval for manual or exceptional rates.

The exact procedure is published in later phases after each route is verified.

Period controls

A financial period is a control boundary for accounting activity.

Possible controls include:

  • open/closed state;
  • allowed posting dates;
  • required tie-outs;
  • unresolved posting exceptions;
  • approval completion;
  • reconciliation readiness;
  • certification evidence.

The Period Close workspace and controls-readiness pages indicate that close is more than choosing a date. P5 documents the exact close procedure.

Configuration dependencies

Not every feature requires every node, but a downstream error can originate in upstream configuration.

Compare reports safely

When comparing two figures, record:

Comparison dimensionExample
TenantMupfure Education Group
SchoolMupfure Learning Academy
Statement/reporttrial balance
As-of or date range31 May 2026
CurrencyUSD
Status populationposted journals only
Included schools/accountsschool plus tenant defaults
Generated time1 June 2026 08:15
Exceptionstwo unresolved posting exceptions

Without the dimensions, “the totals differ” is not reproducible.

Localisation boundary

Makronexus fields can support:

  • country-specific currency;
  • regulator or ministry references;
  • tax metadata;
  • statutory receipt/invoice numbers;
  • local providers;
  • retention or reporting configuration.

A field is not compliance assurance. The school must confirm local requirements with qualified advisers and the applicable provider or regulator.

Troubleshooting table

SymptomLikely causeEvidence to inspectSafe action
Record appears in wrong schoolstale or incorrect school contextselected school, header, record school IDstop and escalate before further mutation
Totals differ by currencymixed currencies or rate basisobject currencies, rate, source and datecompare like-for-like or use authorised conversion
Statement differs from dashboarddifferent date/status/source populationreport parameters and posting statealign scope and regenerate
Posting date rejectedperiod or date controlperiod state, entry date, readiness exceptionrequest authorised period resolution
Fee defaults unexpected termcurrent school calendar defaultresolved academic year/term fieldscorrect before billing
Bank line cannot matchcurrency/date/reference mismatchstatement line and payment evidenceinvestigate; do not force a false match

Verification checklist

  • Correct tenant
  • Correct school
  • Correct academic year and term
  • Correct financial year and period
  • Correct operational date
  • Correct accounting date
  • Correct amount and currency
  • Correct rate, source and effective date where applicable
  • Correct timezone interpretation
  • Correct report parameters
  • Correct period and approval state

Knowledge check

  1. Is invoice date the same as due date?
  2. Does a USD payment automatically settle a local-currency invoice without rate evidence?
  3. Which statement types use an as-of date?
  4. Why can creation time differ from payment date?
  5. Does a tax field prove local compliance?

Answer guide

  1. No.
  2. No.
  3. Trial balance and balance sheet.
  4. The economic date can be backdated while system capture occurs later.
  5. No.