DEV Community

Brittany Bonds
Brittany Bonds

Posted on

The pre-issue checklist I use so a credits and refunds tracker still matches what left the bank

Mid-period honesty is necessary. Pre-issue is different. The morning you decide "I will issue / send / settle from this sheet today" is when a Stripe+bank double-refund is still sitting in the totals, store credit still looking like cash out, an Issued row with no invoice, an orphan credit quietly deleted so the sheet looks complete, last month's chargeback still hitchhiking into this period, and a raw Slack dump quietly hitchhiking into the share.

I am a freelancer admin helper. I turn messy refund dumps into a clean credits and refunds tracker. I am not a CPA, bookkeeper, lawyer, or tax advisor — and this is not financial, tax, legal, or accounting advice. It is the checklist I run the week I am about to treat the sheet as what we still owe (the final pass before anyone issues, settles, or sends it) so double-refunds, store-credit-as-cash theater, orphan credits, chargeback ghosts, and period blur do not become the bank story.

This is complementary to my earlier posts — not a rewrite. For the full messy refund dump → clean credits and refunds tracker workflow, see How I turn a messy refund dump into a clean credits and refunds tracker. For the mid-period honesty pass while dumps are still arriving, see The mid-period checklist I use so a credits and refunds tracker stays honest. This third pass is the pre-issue check: mid-period honesty is not enough once someone else will treat the sheet as done.

What "honest enough to issue" looks like

  • Open-credit filter shows real money still owed or still open — not theater, duplicates, or refunds already settled twice
  • Issued vs open credit vs pending vs disputed are still separated — nothing looks settled that is still unclear
  • Every complete-looking row has a source (processor refund export, bank line, chargeback notice) — "I remember it" is not a source
  • Each amount has a client + type from a named list or Needs-confirm — orphan labels do not ship as ready
  • Missing invoice/payment refs and unknown clients are visible and named — not silently deleted so the sheet looks tidy
  • Period that matters is named on the sheet — older noise stays out or flagged
  • Raw dump artifacts (CSV leftovers, unfinished notes, named complainers) are out of the share view
  • You can answer "what do we still owe this period, by client?" without reconstructing six exports

If the only issue plan you have is a sticky labeled "mark all issued?" pre-issue honesty has already slipped.

The pre-issue checklist (run it before anyone hits issue / settle / send)

Use this against the near-final credits and refunds tracker and the live artifacts (Stripe/PayPal refund exports, chargeback notices, credit memo drafts, bank lines, prior AR or invoice lists) before anyone treats the sheet as this period's owe truth.

1. Kill double-refund before the sheet leaves

  • [ ] Same date+client+amount twice (processor + bank, or PayPal + bank) → still flagged double-refund — not silently summed in cash-out totals
  • [ ] Duplicate paste across CSV + Slack + Notion is one row or one labeled duplicate — not two credits out
  • [ ] Soft "I think we refunded twice" folklore is Needs-confirm or cut — vibe is not cash out
  • [ ] Currency mixes are labeled — do not silently sum USD + "local" into one client owe total
  • [ ] Skim test: sorting by amount shows one credit per refund, not a museum of doubles

2. Separate open credit / pending / disputed from issued before anyone trusts Out

  • [ ] Status is issued / open credit / pending / disputed / ask — not mood words or a single Issued checkbox for everything
  • [ ] Store-credit rows stay in a separate filter so they do not inflate cash-out totals
  • [ ] Ask rows name what is blocking a call — not "waiting on stuff"
  • [ ] Issued rows have a client + invoice/payment ref a human could skim — "misc" is not a client
  • [ ] Skim test: you can answer "what do we actually still owe this period?" without reconstructing six exports

3. Lock sources, clients, and the period

  • [ ] Each amount has a source note (which export, which bank line, which chargeback notice) — orphan amounts without a source are Needs-confirm
  • [ ] Clients match a named list or are marked Needs-confirm — floating labels that look unique are folklore
  • [ ] Period that matters is named (this month, this quarter, custom) — older noise stays out or flagged
  • [ ] Chargebacks from six weeks ago are labeled window unverified until the period is confirmed — pretty columns do not renew stale dumps
  • [ ] Skim test: sorting by client shows a real owe list for this period, not a museum of March chargebacks from three years ago

4. Catch orphan credits and issued theater

  • [ ] Rows marked issued that still need an invoice move back to ask or pending
  • [ ] Fake greens (all Issued, no ask section) get a forced missing-ref pass before the sheet ships
  • [ ] Issued theater ("settled" for everything) is broken into real invoice/payment refs or Needs-confirm
  • [ ] Threads titled "quick refund note" without a usable amount are labeled artifact thin
  • [ ] Skim test: missing-ref filter shows real gaps, not theater

5. Honesty tripwires (before you treat the sheet as issue-ready)

  • [ ] You did not promote vibes to "all issued" because the Issued column looked empty of red
  • [ ] Orphan credits buried in a wall of chat paste are lifted — not left under an out headline
  • [ ] Incomplete sections stay Needs-confirm — not silently promoted to "ready" because the sheet looked sparse
  • [ ] Raw dump artifacts (unfinished CSV paste, named complainers, draft notes) are out of the share view
  • [ ] Skim test: a stranger can answer "what do we still owe this period, by client?" from the sheet alone

Soft CTA

If you have a messy refund dump and want a clean credits and refunds tracker in 24 hours: creditssheet on Gumroad ($12). Code ADMIN12 for $2 off. Full shop: brittanybonds.gumroad.com. Catalog mirror: brittany-bonds.github.io.

Not a CPA. Not financial, tax, legal, or accounting advice — just admin cleanup so the owe story matches what actually left the bank.

Top comments (0)