Practice sandboxTry anything: add, edit, record and send. Do not enter real people, children, gifts or contact details until we move to the launched production system. Changes stay in this browser only, and nothing sends, charges or posts.Practice only. No real data.
Legacy ChurchStaff Sandbox

Sandbox: nothing is posted to QuickBooks.

Entries are built from simulated Stripe balance events and the cash and check gifts recorded in this browser, by the same pure posting rules (@church/domain/ledger) the real poster will use. Real posting asserts the realm allowlist, pins minorversion 75 and goes through @church/outbound. Here a sync only writes to this browser's sync history.

Payout
$2,614.52
Equals the Transfer and the bank line
Gross in
$2,633.39
9 gifts
Fees
$18.87
Processing and dispute fees
Entries
1 + 1
Journal entries + Transfer

Journal entry 1: STR-260101-01

Dated Thu 1 Jan 2026 (the gift business date). Stripe po_20260107 · business date 2026-01-01 CT · 9 charges

Balanced
Lines of journal entry STR-260101-01
AccountClass (fund)DebitCreditMemo
1060 Stripe Clearing—$2,614.52Net of po_20260107 for 2026-01-01
8910 Payment Processing FeesGeneral Fund
Location: Administration
$18.87Fees, 9 gifts
4010 Tithes & OfferingsGeneral Fund$2,383.398 gifts
4030 Building Fund GiftsBuilding Fund$250.001 gift
Totals$2,633.39$2,633.39Debits = credits
Request that would be sent (preview, not sent)
POST /v3/company/{realmId}/journalentry?minorversion=75&requestid={uuidv5(batchId+version)}

{
  "DocNumber": "STR-260101-01",
  "TxnDate": "2026-01-01",
  "PrivateNote": "Stripe po_20260107 · business date 2026-01-01 CT · 9 charges",
  "Line": [
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 2614.52,
      "Description": "Net of po_20260107 for 2026-01-01",
      "JournalEntryLineDetail": {
        "PostingType": "Debit",
        "AccountRef": {
          "value": "1060"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 18.87,
      "Description": "Fees, 9 gifts",
      "JournalEntryLineDetail": {
        "PostingType": "Debit",
        "AccountRef": {
          "value": "8910"
        },
        "ClassRef": {
          "value": "cls-general"
        },
        "DepartmentRef": {
          "name": "Administration"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 2383.39,
      "Description": "8 gifts",
      "JournalEntryLineDetail": {
        "PostingType": "Credit",
        "AccountRef": {
          "value": "4010"
        },
        "ClassRef": {
          "value": "cls-general"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 250,
      "Description": "1 gift",
      "JournalEntryLineDetail": {
        "PostingType": "Credit",
        "AccountRef": {
          "value": "4030"
        },
        "ClassRef": {
          "value": "cls-building"
        }
      }
    }
  ]
}

Transfer

Dated Thu 8 Jan 2026 (the arrival date). Memo: “Stripe payout po_20260107”. The bookkeeper Matches the bank line to it.

Transfer lines
AccountDebitCredit
1010 Operating Checking$2,614.52
1060 Stripe Clearing$2,614.52

Contents (9)

Simulated Stripe balance transactions: the only input to the entries.

Balance transactions in this payout
TypeDonorAmountFee
GiftQuinn Del Prado
Thu 1 Jan 2026 · ACH
$30.24−$0.24
GiftHarper Brightwater
Thu 1 Jan 2026 · ACH
$131.05−$1.05
GiftJamie Cedarvale
Thu 1 Jan 2026 · ACH
$110.00−$0.88
GiftGrace (Gra) Underhill
Thu 1 Jan 2026 · ACH
$250.00−$2.00
GiftParker Testwell
Thu 1 Jan 2026 · ACH
$260.00−$2.08
GiftValeria Underhill
Thu 1 Jan 2026 · ACH
$65.00−$0.52
GiftSkyler Willowby
Thu 1 Jan 2026 · ACH
$262.10−$2.10
GiftHarper Juniper
Thu 1 Jan 2026 · ACH
$870.00−$5.00
GiftCasey Alderidge
Thu 1 Jan 2026 · ACH
$655.00−$5.00

Posting checks

Any failure blocks posting (FIN-008).

  • PassΣ allocations = amount9 events
  • PassΣ payout events = payout2614.52 vs 2614.52
  • PassSTR-260101-01 balancesDr 2633.39 · Cr 2633.39
  • PassEvery revenue and expense line has a ClassClass = Fund
  • PassClearing nets to zero after the TransferTransfer 2614.52 on 2026-01-08

Real posting also checks the realm allowlist, the close date and the exactly-once request id, then goes through @church/outbound. Post it from QuickBooks sync; sign the bank match off in Reconciliation.