Hire Purchase Portal

Hire Purchase Portal
1Your Details
2Vehicle Details
3Finance Details
4Your Quote

Your Details

+263
1Personal Details
2Income Details
3Vehicle & Finance
4Financial Details
5Review & Submit

HP Application β€” no quote selected

1. APPLICANT TYPE 2. PERSONAL INFORMATION
Your photo *
3. IDENTITY VERIFICATION
Upload a certified copy of your National ID. The certification must be valid and not more than 3 months old.
Drag & drop file here
or Browse Files
Accepted formats: PDF, JPG, PNG  |  Max size: 10 MB
Upload a clear copy of your driver's licence.
Drag & drop file here
or Browse Files
Accepted formats: PDF, JPG, PNG  |  Max size: 10 MB
Additional licence & tax details
Very large files? Email them to your IFS branch quoting your application number.
4. CONTACT DETAILS
Use for:
Use for:
5. RESIDENTIAL INFORMATION
Current address
Proof of Residence *
Upload one of the following: Utility Bill, Lease Agreement, Bank Statement, Employer Letter, or other accepted proof of residence.
Drag & drop file here
or Browse Files
Accepted formats: PDF, JPG, PNG  |  Max size: 10 MB
Previous addresses
Defaults to 0 (no previous address). Enter how many previous addresses you have had β€” the count only, no address details are required.
6. NEXT OF KIN

Pipeline β€” Quotes, Applications & Granted Agreements






Quote NoDeal NoDateName PhoneVehicleDealer PriceIFS PriceMonthly StatusActions
All saved quotes and applications live here in the portal's shared database β€” this is your follow-up list. QUOTED = has not applied yet (chase by email/WhatsApp/call). View opens the full quote for checking/printing; Approve (MD/FM/Admin) grants the hire purchase, assigns a Deal number and locks the schedule for receipting and journals.

Receipting

The payment credits the client account. Anything already due or overdue is settled on the spot (oldest first); the rest is held as credit and applied automatically as future instalments fall due. The cashier does not allocate to instalments.
Pick a payment type, find the client (for account payments), enter the amount and post. A printable receipt opens and a copy is sent to the client.

Reports & Exports

Invoice 1: vehicle + total finance charges Β· Invoice 2: upfront costs β€” for manual import now, API later.
Default Notice: statutory demand under the Hire-Purchase Act [Chapter 14:09] for a facility in arrears.

The reference vehicle list (make/model/variant, IFS code, body, condition, engine cc, weight band) for feeding an external system β€” not the transactional "Vehicles Sold" report below.


One PDF per facility, one combined print run β€” for branch-wide or province client statement mailouts.

  

Recovery & Repossession

HP-Act-compliant recovery worklist for facilities on the book. Buckets are driven by days past due (DPD) on the schedule.

Loading…

πŸ’¬ AI Assist β€” help desk

Ask AI Assist how to use the system, or look up a live record β€” a deal by reference, an account's arrears or next payment, or a portfolio total. Every figure is read from the account itself, and lookups follow your access. Powered by Claude when an API key is set (Settings β†’ Email/WhatsApp/SMS & AI); otherwise AI Assist answers from the built-in guide.
Try: "how do I create a quote" Β· "arrears on <reference>" Β· "how many accounts are in arrears" Β· "which deals are awaiting handover".

Quick start

  1. Quote β€” Get a Quote β†’ client, vehicle, price & term β†’ Save. The instalment shows on the right.
  2. Apply β€” Apply carries the quote in β†’ complete the sections β†’ Review & Submit (the client gets a one-time code).
  3. Approve β€” Pipeline β†’ open the deal; it moves up the approval chain to the MD.
  4. Offer & sign β€” View Letter of Offer β†’ client signs on the tablet β†’ handover once paid & released.
  5. Receipt β€” Receipting β†’ capture payments against instalments.
  6. Recovery β€” Recovery β†’ work overdue accounts, send HP-Act letters, manage repossession.

About

Loading…

Guides & manuals

For everyday users
  • User Manual β€” quoting, applying, processing, approval, granting, receipting, recovery
For administrators
For developers
  • Technical Manual β€” architecture, data model, security, logging, deployment
Open in a new tab; printable. All guides live in the Guides folder of your install. (browse all)

Administrator / technical

  • Install β€” one pip line + Tesseract for OCR (INSTALL_AND_SETUP.txt).
  • 2FA β€” mandatory for staff; the QR needs the segno library (2FA_SETUP_NOTE.txt).
  • Messaging β€” set SMTP / WhatsApp / SMS in Settings to enable real sending.
  • AI Assist β€” add an Anthropic API key in Settings to power AI Assist with Claude.
  • Backups β€” keep a nightly copy of the database. A transactions-only clear (keeping settings) is run by the database administrator using the supplied SQL script.

Back office

Operations hub β€” facility tasks, collections, accounting exports and messaging in one place.

Loading…

Facility back-office tasks

Restructure / Settlement, the final disbursement Release sign-off, the Vehicle Handover Sheet, the Statutory invoice (ZWG), Confirm Supplier Paid and Vehicle Service Tracking are handled here.

1 Find the contract
or enter the deal number directly
2 Choose a task

Operations

Collections & reminders

Accounting exports (Klipboard / Palladium)

Compliance & audit

Penalty finance charge

Rate, grace period and on/off switch are in Settings β†’ β€œPenalty finance charge on overdue accounts”. Charged automatically once a day; use the button below to run it on demand (e.g. after changing the rate).
Loading…

Users & Roles

UsernameNameRole EmailStatusActions

Add user

New users get a one-time invite code; the invite email opens in your mail app. On first login they enter the code as their password and are forced to set their own. In the hosted version, invite and login-alert emails send automatically.

Login activity

WhenUserEvent
Every login and key action is recorded here. The hosted version also emails the Administrator a notification on each staff login.

My Security β€” Two-factor authentication

Two-factor adds a 6-digit code from an app (e.g. Zoho OneAuth) at login.
Settings / Company Profile
Business

Company Profile β€” your business details & logo

These details brand every document your customers receive (quotations, receipts, applications, contracts, statements). The ECB logo stays on the portal and manuals only.

Receiving bank accounts (printed on every contract)

Add all the company accounts customers may pay into. These appear on the agreement.

Mobile money options


⚠ No logo uploaded yet β€” customer documents print without one.
⚠ No signature uploaded yet β€” the Offer Letter and other documents print with blank space where it would go.

Version history

Every save is kept as a numbered version β€” the same protection the Scoring Engine's model editor has. Restoring an earlier version (including the receiving bank accounts and mobile-money options as they stood then) does not delete anything; it is recorded as a new version, so the history only ever grows.

Loading…

Change register

Every change to the company profile is recorded here β€” especially the bank accounts and mobile-money options that print on your contracts. Shows what changed, who changed it, when, and the reason given when a banking detail is removed.

Loading…
Business

Billing Model β€” Admin & MD only

Phase 1 of the Monthly Billing Model build (see docs/specs/BUILD_SPEC_monthly_billing_model.md). Switching to Monthly here has no effect yet β€” the schedule engine itself (Phase 2) hasn't shipped. This screen exists so the settings are in place ahead of that. Nothing already granted is ever affected by anything on this screen, at any phase β€” only a schedule computed for the first time AFTER the engine ships is affected.
Switching to Monthly is a single Admin/MD action. Switching back to Anniversary, once Monthly is active, requires two different Administrator-role users to approve β€” this is a deliberate policy control, not a bug, per the Monthly Billing Model handover note Β§1.
Business

Finance Rate & Tax

Business

Tenor Markup & Cost of Credit

IFS selling price β€” tenor markup & cost-of-credit cap
The markup is applied to the entered dealer price to give the IFS selling price (the price of record for the deal). Set a markup per tenor band so shorter repayment periods can be priced with a lower markup as a promotional incentive. Each tenor below is the upper bound of its band: its rate applies to every tenor above the previous band up to and including it (e.g. a 5-month deal takes the ≀ 6-month rate, an 11-month deal takes the >9–12-month rate). The longest band also covers anything longer. A band left at 0 β€” and cash deals, which have no tenor β€” attract no markup. Every quote still discloses the effective all-in cost of credit and is checked against the cap below.
Staged β€” remember to Save & push.
Business

Deposits & Admin Fee

Deposits & admin fee

Business

Fees & Stamp Duty

Establishment, fees & stamp duty

The sales officer can still switch this per deal at the approval step regardless of this default.
Business

Insurance & Life Cover

Insurance & life cover

Business

Vehicle Tracking

Vehicle tracking

Arrears: the customer's tracking subscription is not charged at signing β€” every instalment, including the last, carries its own month's tracking. Advance: one month is collected upfront at signing, so the final instalment carries no tracking. Either way the monthly tracking-subscription invoice to the vendor is raised automatically on each instalment's due date, worded for the period this setting describes. Applies to the tracking subscription only β€” the once-off tracking installation fee above is always charged at signing.
The recurring monthly tracking-subscription invoice always goes to accounts. This only controls whether the client also gets a copy β€” the once-off invoice at signing (installation + first period) is unaffected and always goes to both.
Monthly Billing Model only: the recurring monthly finance-charge invoice always goes to accounts (for Klipboard posting). This controls whether the client also gets a copy β€” the amount and due date already appear on the client's own Instalment Schedule either way.
Business

ZINARA, ZBC & Statutory Terms

ZINARA β€” vehicle weight bands

Charged by vehicle weight band (per ZINARA's published schedule), not by body type. Bands are fully editable β€” add, rename or remove one β€” and every catalogue vehicle must have a weight band selected (Dealerships & Suppliers β†’ Manage Vehicle Catalogue) or it silently carries no ZINARA charge. USD only β€” convert any ZWG billing outside the system and keep these as the USD figures that flow into every quote and contract.

Change register
Every save that actually changes a figure is recorded automatically below (band, old β†’ new, who, when). Nothing to click separately.
Loading…

ZBC radio & TV licence

Same band-per-term layout as ZINARA above β€” one row per payment term, one column each for Individual and Corporate. Business Rules β–Έ Statutory Payment Terms (below) decides which of these are actually offered on a quote.

12 months (yearly)
4 months
6 months
8 months
10 months

Statutory payment terms

Which ZINARA/ZBC payment-term options are offered at all. Comprehensive insurance is not part of this table β€” it's value-based (a % of the vehicle price), so it simply pro-rates automatically by whichever term is selected (term Γ· 12); there's nothing to configure for it. A quote can only choose a ZINARA/ZBC term that's both enabled here AND evenly divides its own loan tenure (e.g. an 8-month loan can only offer 4mo or 8mo, never 6mo or 10mo) β€” if only one enabled term qualifies, it's locked; if more than one does, the client/officer picks.

ZWG / RBZ mid-rate

RBZ mid-rate is entered manually here (and per quote on the quote screen). There is no automatic daily fetch. Each change to the rate above is recorded in the auditable register below β€” who set it, when and the rate used.
RBZ / ZWG mid-rate register
Loading…
Business

Financed amount limits

A quote outside these limits is flagged on the quote screen. End-users (not logged in) use the public maximum; logged-in staff use the staff maximum (0 means unlimited).
Business

Credit & guarantor

Applications outside the applicant age range are a hard stop on the public application (the Personal Details step and submit are both blocked). The vehicle age limit controls both the "Year of manufacture" choices offered on the Quote/Application screens and the credit score's hard decline for an over-age vehicle β€” the two can no longer drift out of sync.
When FCB search is On, Preliminary Vetting fires the bureau check automatically as soon as Policy Vetting (APF1) is signed off β€” no button click needed (staff can still re-run it manually if needed). Once it completes, the reference, rating and comment fields are filled in automatically and locked. If it hasn’t completed yet when the sales officer reaches this step: No lets them enter the FCB/CRB rating manually instead (the application is flagged, and this is visible on the pipeline and in the approval trail, so approvers know it wasn’t the automatic result); Yes blocks sign-off until the automatic result actually lands.
A Poor Performance or Condition rating on the AA inspection (pre-owned) / CBCA fitness report (new) is always a fail β€” the vehicle must be changed before the contract can be signed or the vehicle handed over. A Fair rating on either axis follows that axis's own policy above β€” Performance and Condition can be set differently. The AA rep is notified (coordination only, not a request to inspect) alongside the Commercial Manager whenever the dealer is instructed to deliver a vehicle for inspection.
During Preliminary Vetting the sales officer enters the FCB/CRB rating. If it is below this minimum, the application is flagged as requiring a guarantor: the guarantor section then appears on the application form (on reopen) and guarantor details/documents are required before hand-off to Credit Analysis. When the v7 credit score returns Amber (REVIEW), the cure follows the policy above: with require guarantor = Yes the client is sent a guarantor link and the deal is held; with No, the amber deal proceeds to Credit Analysis with an audit note for the Credit Manager β€” it is not treated as a pass. The additional-deposit cure engages only when the guarantor cure is off: on an amber score the system computes the smallest deposit top-up that would lift the score to green, emails/SMSs the client a link to agree to it, and holds the deal; once they confirm, it drops back to the Sales Officer to re-quote and recompute β€” the hold clears when the amber does. If no deposit can clear the amber, the deal proceeds with the same audit note.
Business

Industry risk classifier

Classify each Employer Industry as Low-risk or High-risk β€” this drives the Industry factor in the v7 credit score. Add your own industries; every industry listed here also becomes selectable in the Employer Industry dropdown on the application form. Nothing is hardcoded.
Update, Add and Remove each require a second Administrator/MD to approve before the change is pushed to clients β€” see Settings β–Έ Pending Approvals.
Business

Income Nature β€” stability classifier

Map each Nature of Income option to an income-stability band (Stable or Irregular) β€” this drives the Income Stability factor in the v7 credit score (the points each band earns are set in the Scoring Engine editor). Tag each option for Employed, Self-employed or Both; it becomes selectable in the matching Nature of Income dropdown on the application form. Anything not listed here is treated as unmapped and flagged rather than scored. Nothing is hardcoded.
Update, Add and Remove each require a second Administrator/MD to approve before the change is pushed to clients β€” see Settings β–Έ Pending Approvals.
Business

Scoring Engine β€” v7 model editor

Retune the Invarium 5-Cs credit model: segment & factor weights, the points each rating band earns, the decision bands (grade thresholds), and the hard knock-out rules. Changes need a different Administrator/MD to approve before they take effect (see the Pending Approval panel below) — once approved, they're saved as an override and take effect on the next score/recompute. Every approved change is kept as a numbered version with a summary of what changed — you can propose restoring any earlier version (including the built-in v7 default) from the history at the bottom of this panel. Weight groups should each total 1.00 (shown live).
Loading…
Business

Penalty finance charge on overdue accounts

Charged automatically at end-of-day, daily, on top of the normal finance charge, on any instalment still overdue once the grace period has lapsed. Posted to a penalty ledger per facility, emailed to Accounts and exported as XML for Klipboard posting β€” see Back Office β†’ Penalty finance charge.
Business

Vehicle service follow-up

The financed vehicle must be serviced every interval below. The system reminds the assigned sales officer by email to confirm with the client that the vehicle has been serviced, for as long as the facility is on the book β€” see the Vehicle Service Tracking panel on each Hire Purchase facility.
Business

Business rules

Insurance providers

The list the Insurance Officer (and vehicle-handover capture) picks from. Choose one as the default β€” it is pre-selected on the Insurance section. The email against each insurer auto-fills "Insurer email" on the Stage 1 vetting screen β€” no profile/login needs to be created for the insurer, this is just where their referral inbox is kept.
Controls the row of Finance/Admin/Establishment/ZINARA/ZBC/Life-cover pills on the customer Finance step of the quote. Staff always see the full breakdown on the pipeline.
Insurance, tracking, ZINARA and ZBC are confirmed after approval and verified on the electronic vehicle handover sheet β€” not at approval.
Business

Hire Purchase Terms & Conditions

Shown to applicants when they click the "Hire Purchase Terms & Conditions" link on the declaration step. Leave blank to use the built-in default wording.
Business

Document Templates β€” Contract & Offer Letter

Customise the wording of the two documents a client signs. Leave any box blank to use the built-in default wording. Figures, dates, names and the payment schedule are always filled in automatically β€” only the surrounding wording is editable here.

Hire Purchase Agreement (the full contract)

This is the complete on-screen/printable agreement signed at Handover. Use the placeholders below anywhere in the text β€” each is replaced with the real value when the contract is opened for a specific deal.
Available placeholders (click to expand)
{{SELLER_NAME_UPPER}} {{SELLER_SHORT}} {{SELLER_REG}} {{SELLER_ADDR}} {{SELLER_REP}} {{SELLER_REP_UPPER}} β€” your company
{{BUYER_NAME}} {{BUYER_ID}} {{BUYER_ADDR}} β€” the client
{{START}} {{END}} {{TERM}} {{PLACE}} {{SDATE}} β€” dates & term
{{CASH}} {{DEPOSIT}} {{BALANCE}} {{FINCHG}} {{TOTALHP}} {{MONTHLY}} {{NINST}} β€” figures
{{UPFRONT_BLOCK}} {{RECURRING_BLOCK}} {{SCHEDULE}} {{ACC_BLOCK}} β€” auto-built tables (upfront costs, recurring charges, payment schedule, banking details)
{{MAKE}} {{MODEL}} {{YEAR}} {{COLOUR}} {{BODY}} {{VIN}} {{ENGINE}} {{ODO}} β€” vehicle
{{SIG_SELLER}} {{SIG_BUYER}} {{SIG_W1}} {{SIG_W2}} β€” signature images (or a blank line if unsigned)

Acknowledgement of Debt

Signed alongside the Hire Purchase Agreement (same on-screen sign/print flow). Use the placeholders below anywhere in the text.
Available placeholders (click to expand)
{{DEBTOR_NAME}} {{DEBTOR_DOB}} {{DEBTOR_ID}} {{DEBTOR_RES_ADDR}} {{DEBTOR_BUS_ADDR}} {{DEBTOR_PERSONAL_TEL}} {{DEBTOR_BUS_TEL}} β€” the debtor
{{SELLER_NAME_UPPER}} β€” your company
{{AGR_DAY}} {{AGR_MONTH}} {{AGR_YEAR}} {{PLACE}} {{SDATE}} β€” dates
{{AGGREGATE_FIGURE}} {{BANK_DETAILS}} {{SCHEDULE}} β€” figures & auto-built tables
{{SIG_DEBTOR}} {{SIG_W1}} {{SIG_W2}} β€” signature images (or a blank line if unsigned)

Letter of Offer

The single window, from the Offer Issuance Date, within which the Applicant must both sign and pay the deposit & upfront fees in full. This same figure also drives when a granted-but-unsigned facility is auto-flagged OFFER EXPIRED (Back Office β–Έ Facility back-office tasks) and the reissue window it recomputes against (Settings β–Έ Billing Model β–Έ Commencement offset shares this figure by convention, but is a separate setting).
The Letter of Offer is always sent to the client the moment a facility is granted β€” this is no longer optional, since the Offer Issuance Date is the anchor for both the Validity Period and the Contract Commencement Date (Settings β–Έ Billing Model).

Facility Lifecycle Expiry

A quote left with no application submitted for this many days is auto-flagged EXPIRED (terminal β€” the officer starts a fresh quote; there is no reissue or reinstate for a plain quote).
A granted facility whose offer isn't signed within the Offer validity window above is auto-flagged OFFER EXPIRED β€” dormant and view-only, interest accrual stops. Staff may reissue the offer from the facility screen, which recomputes the schedule from today. (This is distinct from "Reinstate" under Recovery β€” the Section 15 statutory reinstatement of an already-disbursed, repossessed facility.)
Both checks run as a background job (the same cycle as reminders/penalties) and email/WhatsApp both the client and accounts when either fires.
The full Letter of Offer wording β€” facility summary, conditions precedent, validity, statutory rights, acceptance β€” is editable below. Leave blank to use the built-in default. Figures (deposit, charges, schedule) and the banking/acceptance-signature blocks are always filled in automatically at the matching {{BLOCK:...}} marker; only the surrounding wording is free text.
Available placeholders (click to expand)
{{ASSET}} {{CASE_REF}} {{APP_DATE}} {{SELLER_NAME}} {{OFFICER_NAME}} {{CUSTOMER_CODE}} β€” text fields
{{VALIDITY_DAYS}} {{VALIDITY_DAYS_ORDINAL}} β€” from the day count above (e.g. "3" and "3rd")
{{BLOCK:FACILITY}} {{BLOCK:UPFRONT}} {{BLOCK:RECURRING_MONTHLY}} {{BLOCK:RECURRING_ANNUAL}} {{BLOCK:RECURRING_ONCE}} {{BLOCK:DISCLOSURE}} {{BLOCK:BANK}} {{BLOCK:ACCEPTANCE}} β€” auto-built tables/sections, each must be alone on its own line/paragraph

Insurance Referral (sent to the insurer at Stage 1 vetting)

The wording of the referral emailed/downloaded from the Stage 1 vetting screen's "Send to insurer" button is editable below. Leave blank to use the built-in default. The applicant, vehicle and captured-insurance tables are always filled in automatically at the matching {{BLOCK:...}} marker; only the surrounding wording is free text.
Available placeholders (click to expand)
{{CASE_REF}} {{PREPARED_BY}} {{PREPARED_DATE}} β€” text fields
{{BLOCK:APPLICANT}} {{BLOCK:PREVINSURER}} {{BLOCK:COVER}} {{BLOCK:VEHICLE}} {{BLOCK:OTHERVEH}} {{BLOCK:DRIVERS}} {{BLOCK:QUESTIONS}} {{BLOCK:INSURANCE}} β€” auto-built tables, each must be alone on its own line/paragraph. Fields the application doesn't capture show as "β€”" for the insurer to confirm directly with the applicant.
Business

Vehicle registration / excise (once-off on signing)

Pre-owned uses the ZIMRA special-excise grid by age & engine capacity; new vehicles use the flat figure. All editable. Every catalogue vehicle must have a CC band set (Settings β†’ Dealerships & Suppliers β†’ Manage Vehicle Catalogue) β€” this is the exact same band list used below, so a quote can never miss this charge through a typo or mismatch.

Business

Dealerships & Suppliers β€” vehicle price lists & codes

Maintain the dealers / suppliers you source vehicles from, each supplier's vehicle price list, and the stock / vehicle codes. Vehicles added here appear in the “Dealership / supplier” picker on the quote screen and auto-fill the price and code.
Business

Vehicle catalogue

Every vehicle in the shared catalogue, independent of any dealer β€” edit a model/variant/condition in place, remove one outright, or add a new one. A dealer separately ticks which of these it offers under Dealerships & Suppliers.

+ Add a new vehicle

People & Access

Staff session security

Staff are signed out automatically after this many minutes of no activity (no mouse, keyboard, or screen taps) β€” to stop a logged-in screen being left open and unattended.

Customer AI Assist β€” verified session

After a customer verifies with a one-time code on the public assistant, their secure session lasts this long. It ends at the absolute limit, or sooner after inactivity.
People & Access

Approval Process β€” levels, positions & limits

A facility needs sign-off from every level up to the band its amount falls into. Rename a position to your own title; it stays linked to a built-in role that controls permissions. "Notify" levels are emailed on grant but don't gate.


People & Access

Roles β€” rename & create

Rename any existing role, or create your own roles and choose exactly what each one can do. Custom roles appear immediately in the Add User and Edit User role lists. Approval-chain positions are still configured under Approval Process above.

People & Access

Password policy

Item/account codes are used on the invoice and journal CSV exports so they import cleanly into Klipboard (Palladium); the same mapping will drive the API integration.
Data & Lookups

Klipboard / Palladium mapping (for exports & future API)

Data & Lookups

Account codes

Vehicle purchase orders β€” vehicles post to Klipboard under one code per condition (individual stock codes stay in the HP system for reports). The tracking vendor and dealers are the AP vendors the POs are raised against.
Dealer vendor codes are set per dealer under Manage Dealerships. Vendor POs can only be sent by the Finance Manager.
Data & Lookups

Towns & Provinces β€” address lookup

The town β†’ province list used to auto-fill Province on the quote and application. Edit the provinces (one per line), add towns, and reclassify a town by changing its province. A town not on this list still works β€” the applicant can type it and Province falls back to "Other".
Messaging

Email (SMTP) β€” set up sending

Enter these once and the system writes its own config file β€” no editing files by hand. Until completed, messages wait safely in the Outbox.
Add an Anthropic API key to power the AI Assist help desk with Claude. Without a key, AI Assist still answers from the built-in guide.

Messaging

WhatsApp β€” set up sending

Enter these once and the system writes its own config file β€” no editing files by hand. Until completed, messages wait safely in the Outbox.

Messaging

SMS β€” gateway set up

Enter these once and the system writes its own config file β€” no editing files by hand. Until completed, messages wait safely in the Outbox.
Form POST sends to/message/sender/apikey as body fields β€” most older Zimbabwean bulk-SMS gateways accept this. JSON + Bearer sends a JSON body (phone/message/senderId) with the API key as an Authorization: Bearer header instead β€” use this for modern REST providers like OmniFlex.

Messaging

FCB Credit Bureau β€” subscriber credentials

Credentials for the Financial Clearing Bureau individual search. Held server-side only (never sent back to the browser). Once set and enabled, staff can run an applicant bureau check from the Processing screen. Company search is not yet available.
The base URL only needs changing to point at a sandbox. Leave blank to use the live FCB endpoint.

Integrations

Signature Pad β€” Wacom licence key

Lets clients sign in the office on a physical Wacom STU signature pad instead of the mouse/touch pad. Requires SigCaptX installed on the PC the pad is attached to (a free local bridge β€” see static/vendor/wacom/README.txt) and a Wacom-issued licence key, pasted below. Without a licence, or without SigCaptX running, signing still works exactly as before on-screen β€” this only adds the pad as an option. This field goes through the same second-approval check as other sensitive Settings changes.
Messaging

Reminders & messaging

Choose which channels carry reminders and when they go out. Messages are queued to the Outbox and sent by the channels configured above. Placeholders: {fn} {sn} {company} {deal} {amount} {due} {code} {dpd}.

Messaging

Notifications β€” enable / disable sending

Turn whole channels on or off, and switch individual notification points on or off. Anything left on continues to send (to the Outbox, then out via the channels configured above). A disabled item is simply skipped β€” the rest of the workflow is unaffected.
When on, the system flushes the Outbox on a timer while the server is running, so notifications go out without pressing "Send queued".

Display

Footer

Text shown in the footer on every screen, next to the ECB International badge (bottom-right).
Display

Quote display, products & receipting

Display

Quick estimate calculator

Choose which sections appear in the Quick Estimate calculator on the quote screen. The summary cards (monthly payment, on-signing, financed, first due) always show.
Display

Completed quote display (Your Quote screen)

Choose which sections appear on the client's Your Quote screen when a quote is completed. The summary cards (monthly payment, on-signing, financed, first due), the Your Quote document and the Get-my-quote / Apply actions always show.
Cost of credit: when a selling-price markup is active, hiding this panel still keeps the headline effective all-in rate and the cap notice on screen β€” only the detailed rows collapse β€” so the finance cost is never concealed inside the price. With no markup, Hide removes the panel entirely.

System

Logging

Every event is written as structured JSON to its own daily file under logs/ (e.g. logs/access_2026-07-30.jsonl) β€” browsable by date, never capped or silently dropped. The level below is a threshold: TRACE shows everything (most verbose), ERROR shows only failures (least verbose) β€” each level includes everything more severe than it.
Internal events, business transactions, warnings and errors.
HTTP/API interactions β€” path, response code, timing, client IP.
Authentication, authorisation changes, and audit events β€” also recorded durably in the database.
Takes effect immediately, no restart required.

Audit trail

Who changed what, and when β€” company profile, rates & settings, roles & permissions, approval process, receipting banks, messaging/integration config, and user accounts. Password hashes and other secrets are never shown, only that they changed. Administrator only.

Loading…
SOFTWARE REGISTRATION

IFS Hire Purchase Portal

Licence keys and enforcement are designed but not yet active (see LICENSING_DESIGN.md). This screen displays registration details only. Β© ECB International 2026 Β· support@ecbinternational.biz Β· +263 242 744 608 Β· 11 Earls Road, Alexandria Park, Belgravia, Harare, Zimbabwe.
© 2026 ECB
ECB International