Regional Configuration
ParishCRM defaults to Australian conventions (July–June financial year,
Sydney timezone, en-AU locale, AUD currency), but these are runtime
settings, not hardcoded — one published container image can serve a church
in any region by setting a few environment variables.
Using it
Section titled “Using it”Set these in your .env (see Installation), not in the app UI — regional
config is read once when the server process starts.
| Variable | Meaning | Default |
|---|---|---|
APP_FY_START_MONTH |
Financial-year start month, 1–12 (7 = July) |
7 |
APP_TIMEZONE |
IANA timezone name (e.g. America/New_York, Europe/London) |
Australia/Sydney |
APP_LOCALE |
BCP-47 locale for money/date formatting (e.g. en-US, en-GB) |
en-AU |
APP_CURRENCY |
ISO-4217 currency code — also the currency used for Stripe checkout, when card payments are enabled | AUD |
All four are optional; leave any unset to keep its default.
How it works
Section titled “How it works”- Values are validated at server start, not lazily: an out-of-range
APP_FY_START_MONTH, an unrecognisedAPP_TIMEZONE, a malformedAPP_LOCALE, or a non-3-letterAPP_CURRENCYthrows immediately at boot rather than surfacing as a confusing error later in a report or PDF. - The financial-year setting drives every FY-scoped view — dashboard
summaries, budgets, and financial reports all derive “current FY” and FY
date ranges from
APP_FY_START_MONTH(see Financial Reports and Budgets). - The timezone and locale drive date/time and money formatting consistently across server-rendered pages, generated PDFs, and emails, and are also injected into the browser at page load so client-rendered components format identically to the server — there’s no separate client-side timezone/locale config to keep in sync.
APP_CURRENCYis also the currency ParishCRM requests when creating a Stripe Checkout session for event ticket payments (see Card Payments (Stripe)).
Configuration
Section titled “Configuration”Set at deployment time in .env (or your platform’s environment variable
configuration) — see Environment Variables for the
complete list. A change to any of these four variables requires a container
restart to take effect.