Skip to main content
Payment reconciliation checks a payout or settlement report from your payment processor against the adoption payments recorded on your adoptions. It answers two questions: is there money the processor paid out that nobody recorded, and is there money recorded that the processor never paid out? It is not in the sidebar: open the search palette (the Search box at the top of the page, or Ctrl K, ⌘ K on a Mac) and type “Reconciliation”. Anyone whose role can See Animals can read the batches. Importing a file, matching, ignoring, verifying and closing need Change on Animals.
A match is evidence, not confirmation. Importing a file never marks money as received, and neither does matching a line. Only Verify does, and you press it yourself.

The batches

Each file you import is a batch. The page lists them newest first. Across the top: Each batch shows its name, its processor, its period (or the day it was imported), and whether it is Closed. Under that: how many lines and how much money are unmatched and matched, how many are ignored, and how many are matched but unverified. The Batch filter shows Open or Closed batches. Under Views, + Save current view keeps a filter to come back to.

Importing a file

Export a payout or settlement report from your processor as a CSV file first. Any processor works: Stripe, Square, Zeffy, or anywhere else that gives you a CSV.
1

Choose the file

Press Import a file, then Choose a CSV file. The file is read in your browser and is never uploaded; only the columns you map are sent. The number of rows appears beside it.
2

Describe the batch

Fill in Name this batch (it starts as the file’s name), the Processor, and, if you can, Period start and Period end.
3

Say which column is which

Under Which column is which?, choose the column for each. The choices are filled in by guessing from the column headings. Check them.
4

Check the preview

What will be imported shows the first five lines as they will be read. If any rows will be skipped, it says how many and why.
5

Import

Press the import button, which says how many lines will be imported (for example Import 42 lines). Then press Open the batch to work through it.
Choose Not in this file for a column the file does not have.
A wrong column does not fail. It imports the wrong numbers. Check the preview against the file before pressing Import.
Rows whose amount cannot be read, or is zero, are skipped. One import can hold up to 5,000 lines; split a longer file by date.

Matched on import

A line whose Reference id is exactly the processor’s id recorded on an adoption payment is matched as soon as it is imported, and says matched by reference id. That id is the Processor’s id entered when a payment is recorded on an adoption’s ledger. Payments taken with a payment link carry theirs already. A payment already matched to a line, in this batch or any other, is never matched again. Every other line starts as not matched.

Working through a batch

Open a batch to see its lines, grouped.

Not matched

“The processor settled this money. Nothing in the ledger accounts for it yet.” Each line shows its amount (marked refund if it was one), its date, its reference and its description.
  • Find the payment lists payments of the same amount, and the same kind, recorded within three days of the line’s date and not already matched. Each shows the animal, the adopter, the day and the method, and pending if it is not yet verified. Check the adopter: two identical fees look the same here. Press This one to match. If nothing is listed, the money probably arrived and was never recorded: record it on the adoption, then come back.
  • Not an adoption payment asks What is this line, then? (a processing fee, a donation, a transfer). Press Ignore this line. The line stays on the batch with your reason.

Recorded here, not in the file

Shown only for a batch with a period. These are payments recorded between Period start and Period end that no line in this batch accounts for: through the batch’s processor if it named one, or through any processor if not. Payments with no processor, such as cash, are never listed. Usually this is a mistyped reference; sometimes a payment that failed after it was recorded.

Matched

Each matched line links to its adoption and says whether it was matched by reference id or matched by hand, and whether the payment is verified or still pending. Unmatch puts the line back under Not matched. Unmatching never un-verifies a payment.

Ignored

Each ignored line shows its reason. Put back returns it to Not matched.

Verifying

When matched lines point at payments still only recorded, the batch shows Matched, but not yet counted as paid. Press the button that reads, for example, Verify 3 matched payments, then Yes, verify 3 to confirm. Each of those payments is marked verified, by you, now. It counts toward its adoption’s paid amount and balance from then on. Voided payments are skipped.
Verifying says the money arrived, and it is not undone by unmatching the line or closing the batch. Verify only when the processor’s lines are the reason to believe it.

Closing a batch

Close this batch marks it finished with. A batch can be closed with lines still unmatched: that is a decision, and its leftover lines move from Unmatched to Left in closed batches. Reopen opens it again. Batches are kept. There is no way to delete one in the app.