What you get.

For businesses and nonprofits — one-time and recurring bank payments. Every screen below is the real thing, rendered with sample orders.

The checkout boxLite and Full

Card price and bank price side by side, your discount worked out — 0 to 90%, your call. The customer presses Pay from my bank, enters their routing and account number (their bank's name appears as they type), approves in one sentence, presses Buy. Under two minutes, on your page.

The form, with the repeat panel open and the authorization sentence.

Collect — your one jobLite and Full

Approved payments wait here. Download one bank file, upload it to your bank's ACH origination page, press "mark as sent." When the money shows in your account, press Received — the customer gets their receipt and the payment moves to the journal. Every morning there is something to collect, the file and the links come to you by email.

Two ready to collect, one sent and waiting to clear.

Setting this up with your bank is one phone call — the words to use are here. An Automatic option is coming for sellers who want no upload at all.

Anti-fraud/theft feature: every bank file on recordLite and Full

Every time you press Download, the file gets a number and a record: when it was made, how many payments, the total, and every reference inside it. The record then follows the file — when you marked it sent to the bank, how many of its payments cleared, how many came back. The Collect page always shows how many payments are not yet in any file. Any file can be downloaded again, identical.

It closes the gap where a file is downloaded and never uploaded, or a payment slips between two files. A bookkeeper can reconcile the bank statement to ACHplug file by file. On both the hosted dashboard and the WordPress plugin.

Team logins: owner, bookkeeper, auditorFull only

Invite the people who work on your money, each with their own login and their own password — you never see it. Bookkeeper can download the bank file, mark it sent, mark payments received; cannot change settings or close a site. Auditor is read-only: every site, every journal, every bank file, every CSV, and who signed each one. Owner does everything.

Every action that moves a payment's status asks for that person's password on the spot and records their name against it. Remove someone and their name stays on everything they signed.

Your dashboardLite and Full

Your code to paste at the top. What's ready to collect. Repeating payments and their status. Settings underneath. The header bar — Dashboard · Collect · Sales Journal · Settings · Help — is on every page.

The dashboard with a repeating payment three months in.

Sales Journal — ACH paymentsLite and Full

Last 7 days, this month, this year, all time. The card fees you did not pay. Totals by month and by product. Then every invoice under Unpaid / Paid / All with search, and a CSV for your accountant.

The journal with sample payments, opened on Unpaid.

One-time and recurring — a contract paid off, a service kept up, a monthly giftLite and Full

Switch it on and the customer can choose to repeat: every week, month or year — until they stop it, for a set number of payments, or until a date. They approve once. Each period the next payment appears on Collect by itself, the customer is told it is coming, and every email carries their Pause / Stop link. Nothing is ever collected that they did not approve, and they can end it without calling anyone.

Many sites, one loginFull only

Run more than one business? Each site you add is its own dashboard — its own payee name and bank account, its own discount and repeat rules, its own code lines, its own Collect and journal. Switch between them from the header. An All sites page puts every payment from every site in one journal with combined week, month and year totals and one CSV for your accountant.

A site that has ever taken a payment can be closed but never deleted — its journal and the customers' authorizations stay on record, as bank rules require. A site with no payments can be removed.

Your routing number is checked against the Federal Reserve directoryLite and Full

A mistyped routing number means a customer's money goes nowhere. So when you save, the number is looked up in the Federal Reserve ACH directory — 18,000 banks and credit unions — and the bank’s name is filled in for you. A number that is not in the directory is refused, and the dashboard tells you why. The same check runs on your customers’ routing numbers as they type.

What a wrong number gets.
Settings 5 to 7: how the money is collected, what your bank needs, repeating payments.

Two emails, your wordsLite and Full

The customer gets a confirmation the moment they press Buy — who they paid, how much, from which account, and their authorization for their records — and a receipt when you press Received. Both reply to your address. Standard wording is in each box; press Edit to make it yours.

The confirmation and the receipt.

Fits your siteLite and Full

The box has no font and no colours of its own. It takes your theme's type and text colour; four variables set the accent, background, line and corner radius, and the WordPress plugin reads them from your theme. It looks like it was always there.

Works with WordPress, Wix, Squarespace, Square Online, Drupal, Joomla, Shopify, Webflow, Weebly, GoDaddy, Carrd, Ghost, plain HTML — anything with a code block or embed.

$25, once

Both versions — the WordPress plugin, or the one line of code and a dashboard here for any other site. Updates for a year, email support from a person.

Get ACHplug $25