For accounting firms

Every payout reconciled. Nothing posted unnamed.

themassis turns a settlement into balanced QuickBooks journal entries — gross sales, refunds, gateway fees, shipping and tax split out, cash taken from the bank feed — and holds anything that doesn’t tie out for a named accountant to approve.

Eleven settlement rails. One review queue. Every entry balanced before it can post.

One payout, three columns, no argument

The screen an accountant actually works in: what the store says it earned, what the bank actually credited, and the entry proposed in between. Every number here is read from what processing stored — the screen computes no money of its own.

PP-AUG-77PayPalException

Store split

Sales
$2,000.00
Refunds
-$150.00
Fees
-$70.00
Net
$1,780.00

Bank line

Credited
$1,761.60
Expected
$1,780.00
Difference
$18.40

No matching credit inside the window: held, with the nearest credit the bank sent named on the exception.

Proposed journal entry

  • 1210 PayPal HoldingCr$2,000.00
  • 4010 SalesDr$2,000.00
  • 5090 FeesDr$70.00
  • 6610 Bank VarianceDr$18.40

Held for review — 1 open exception.

The Friday list, across every client

Not a dashboard to read — a list to work. Every client’s settlements in one place, exceptions first, with the difference against the bank in red when it isn’t zero and the rail named on every row.

Every rail your clients actually settle through

A holding account per rail, because a PayPal balance is not a Shopify balance — and the fee a gateway takes at source belongs on its own line rather than hidden in the deposit.

Shopify Payments and Shop Pay are Shopify’s own checkout; a Shop Pay settlement arrives inside a Shopify Payments payout, so the product holds it for you to confirm rather than counting the same sales twice. The other nine are gateways and wallets with their own payout runs. Report import works for all eleven today, with no credentials; Shopify Payments can also be pulled live, and the app tells you which keys are missing for the rest.

Built for work you have to defend

Balanced by construction

Every journal entry's clearing side equals the sum of the lines actually written, and the payout cannot reach QuickBooks until the clearing account nets to zero.

The cash line is the bank's number

The bank feed decides what landed. When the deposit differs from the settlement, the difference is named in its own account — never absorbed into revenue.

Nothing posts unnamed

A named accountant approves. The entry records who, and to the second. A void releases the signature; a later approval never overwrites it.

Decimal, never float

Money is exact to the cent from the adapter to the journal line. No rounding drift accumulates quietly across a month of settlements.

From connection to posted entry

Four steps, and the money is in the books with a name on it.

  1. 01

    Add the client

    One roster for the firm. Connect their Shopify store, bank feed and QuickBooks, and map accounts once — the mapping is per client, not per payout.

  2. 02

    Bring in the settlements

    Pull Shopify Payments live, or import a settlement report for any other rail. Unknown fee types park in suspense instead of guessing an account.

  3. 03

    Work the exceptions

    The Friday List puts what needs a human first: a variance above tolerance, an unmapped account, a payout the bank hasn't posted.

  4. 04

    Approve and post

    Approve to post balanced journal entries to QuickBooks, or hold with a written reason. Export the audit trail — payout, bank line, journal, approver.

Questions firms ask first

How is this different from a payout-splitting tool?

Splitting is the easy half. The work is what happens when the money doesn't land as expected — a settlement bridging month end, a gateway fee taken at source, a deposit that is $18.40 short. Those become named exceptions a person resolves, and the books stay tied out while they wait.

Do I need API keys for every provider?

No. Every rail reconciles today from an imported settlement report, so you can pilot a client before a single credential exists. Keys unlock the live pull, and the app names exactly which ones are missing per rail.

Which payment methods are supported?

Eleven: Shopify Payments, Shop Pay, PayPal, Stripe, Klarna, Square, Adyen, Mollie, Braintree, Amazon Pay and Authorize.Net. Adding another is a configuration row and a transaction-type map, not a new pipeline.

What happens when the bank credits a different amount?

Nothing is forced. Inside your tolerance the difference is booked to a variance account and the real credit lands on the cash line. Beyond it the payout holds with a mismatch exception that names the nearest credit the bank sent.

Can a client approve their own payouts?

No. A client's login is read-only for their own store. Approving, posting and mapping belong to the firm — and the merchant role cannot reach those endpoints.

Where does the data live?

In your own deployment's database. The app runs where you run it, connections are encrypted at rest, and no payout data leaves the deployment unless you configure an AI suggestion endpoint.

Run one client’s month through it

Sign in with the account your firm was set up with, or ask us to walk your first client through onboarding.