Platform, Architecture & Foundations
7. Internationalization, Settings and Integrations
i18n
The application ships 22 locales with 22 namespaces per locale, including auth, common, dashboard, errors, hr, sales, inventory, settings, accounting, admin, gst, payroll, support and vendor. A no-fallback policy means every locale-by-namespace combination has native content. Right-to-left support is provided via applyDir() and an <html dir="rtl"> toggle for Urdu, with bundled Indic fonts (Noto Sans Indic, Noto Nastaliq Urdu, Noto Sans Ol Chiki, Noto Sans Meetei Mayek). ICU MessageFormat is supported via i18next-icu. A CI gate, make i18n-gate, enforces a per-locale coverage floor, and translation tooling lives at cmd/i18n/ with export, import, status, audit and gate sub-commands.
Settings and configuration
The Settings page covers organization details (name, slug, website domain, logo), functional currency, language, region and timezone, date and time formats, SMTP email configuration (with examples for Amazon SES, Gmail, Outlook and SendGrid using STARTTLS or SSL), a theme picker (Light, Dark, Follow System), session timeout, maximum login attempts, notification preferences, magic-link and invitation expiration, and customer and vendor portal settings.
Integrations
Built-in integrations include the Razorpay payment gateway, Mailgun and SMTP email via pkg/email/, S3-compatible file storage with a local filesystem fallback (pkg/storage/), and PDF generation. These are the external touchpoints the ERP relies on for billing, notifications, document storage and output.