Internal control room.
Demo - prefilled, just press Log in
The whole platform at a glance. Every "needs attention" number opens the queue it counts.
Member name, email or code; business or cause name or code; WooCommerce order number; payment reference; payout bank reference; correction id. Press Enter to search.
Leave both blank for the last 30 days. The comparison is the equivalent period immediately before.
Loading.
Plain numbers only, never percentages.
Every queue that is waiting on an admin decision, in one place. The sections below are live - counts appear in each heading.
Approve or reject new business sign-ups.
Per cause: 65% base allocation, plus 10% first-payment bonus, less refunds and reversals, equals net payable. Marking paid needs a real bank reference.
The held-then-distribute pipeline, refunds, disputes and risk - all audited.
verify → reconcile → approve → distribute. Distribution needs your PIN + a reference.
Duplicate-phone alerts awaiting review:
One order or payment reference, every layer of it: the purchase, the 65% allocation, the first-paid-purchase bonus, reversals, corrections, payouts, exceptions and the net that is left.
Corrections are appended, never overwritten. The original figure is always recoverable. Amount and payout corrections must carry the evidence they came from (BPOINT reference, bank reference or support ticket).
Required for amount and payout corrections.
Whole-system view. Use drill-down for a specific member, business or cause.
Search by member code or email. Corrections are audited with reason, before and after values.
Every correction needs a reason and is written to the audit log.
Internal - never visible in member, business or cause portals. Author and time are recorded.
Activate, suspend or reject a cause, and correct a cause profile. Every change needs a reason and is audited.
Every source order behind a cause total: order number, member, 65% allocation, first-paid-purchase bonus, reversals and corrections. The net here is the same number the payout screen shows.
Internal - never visible in member, business or cause portals. Author and time are recorded.
Eligibility evidence, bank-details status, referring member. Approve to activate, or reject with a reason.
Loading.
Owner, manager and staff accounts for a business, with their login codes and status.
Internal - never visible in member, business or cause portals. Author and time are recorded.
Search the whole correction history. Leave a box blank to ignore that filter.
Press Search to list corrections.
High-risk items first (claimed reward, member objection, unusually high quantity, repeated corrections). Approving reverses the original; declining restores it. They can never both stay active.
Loading.
Low-risk fields save straight away in the cause portal. Protected fields wait here, still showing the old value to everyone, until an admin approves them.
Loading.
Money records that do not agree with each other. Resolving or dismissing one always needs a note.
Scanning is safe to repeat - it never opens the same item twice.
Loading.
Duplicate-phone alerts awaiting review. Risk actions are applied in Finance & Reconciliation.
Loading.
Act as a member/business/cause to troubleshoot. Re-enter your PIN and a reason. The session is short, audited, and cannot reach money, payout or admin actions.
The app does not move money. Record what was paid through ACFP banking: period, amount, bank reference, date and status.
Businesses and causes submit short blocks; you approve or reject before members see them. Approved blocks show in the app and can join the weekly digest. Recipients are resolved by the system - no email lists are ever exposed. Where a block carries a link, check the full address below before approving - members only ever see the link wording.
Each block shows its Active from date, Expires date, Priority and whether it may be shown to members who join after it was published. Changing the schedule does not re-open approval - the approved words are unchanged.
How many messages may interrupt a member when they open the app, and how many cards Home may show. Changing these needs no code change.
ACF Club messages go live immediately (no approval needed).
Builds one ACF Club email per member from approved digest blocks, respecting every opt-out. Emails are queued here; the send runs through the external email provider at launch.
The blocks that are eligible for the weekly email right now, exactly as the email will read them. Linked blocks show the wording members will click and the address it opens.
Who it would reach, when it would go, and every block it would carry - using the same active-date, audience and consent rules the send itself uses.
Give a business trial access to reward slots, or lock premium slots for free-tier businesses (still visible to them as a paid upgrade).
Set how ACF Points are awarded without changing code. Today only the active global visit rule actually awards points - the other triggers are stored and ready, but nothing consumes them yet.
Loading.
Editing replaces the whole rule, so every box below is sent every time. Points entries are never deleted - to stop a rule, set its status to inactive.
Always set an "active from" date when you set a cap, so the cap counts from a known point.
A reason is required and goes to the audit log with the balance before and after.
Reversals are linked opposite entries. Nothing is ever deleted, and a reversal cannot itself be reversed.
What members can spend points on. Nothing shows in the member app until a reward here is active.
Needs an ACTIVE promotion rule above (trigger "admin promotion"). Points, caps and dates come from the rule; you choose who receives it.
Start a 60-day full-feature trial, extend, end early, or convert to paid. When a trial ends, advanced metrics, reports and message targeting lock automatically until the business upgrades.
Senior administrators only. Every export is checked against your PIN and recorded in the audit log.
The list your email provider needs. Choose the whole list, or only what changed since the last export.
Leave both blank to use the last-export watermark. The "to" date includes the whole day. The full list ignores dates.
A filtered member list. Leave a box blank to include everyone.
Named accounts replace shared credentials. Roles decide which areas an account can reach; the server enforces it, so an account can never do more than its role allows. Only a super admin can manage this list.
Loading.
Source records only. Nothing here is an entry, no member can see any of it, and there is no activation control in this app.
Audit trail (latest first).