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
$1,915.25
Equals the Transfer and the bank line
Gross in
$1,959.87
5 gifts
Fees
$44.62
Processing and dispute fees
Entries
1 + 1
Journal entries + Transfer

Journal entry 1: STR-260415-01

Dated Wed 15 Apr 2026 (the gift business date). Stripe po_20260417 · business date 2026-04-15 CT · 5 charges

Balanced
Lines of journal entry STR-260415-01
AccountClass (fund)DebitCreditMemo
1060 Stripe Clearing—$1,915.25Net of po_20260417 for 2026-04-15
8910 Payment Processing FeesGeneral Fund
Location: Administration
$44.62Fees, 5 gifts
4010 Tithes & OfferingsGeneral Fund$1,703.944 gifts
4030 Building Fund GiftsBuilding Fund$255.931 gift
Totals$1,959.87$1,959.87Debits = credits
Request that would be sent (preview, not sent)
POST /v3/company/{realmId}/journalentry?minorversion=75&requestid={uuidv5(batchId+version)}

{
  "DocNumber": "STR-260415-01",
  "TxnDate": "2026-04-15",
  "PrivateNote": "Stripe po_20260417 · business date 2026-04-15 CT · 5 charges",
  "Line": [
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 1915.25,
      "Description": "Net of po_20260417 for 2026-04-15",
      "JournalEntryLineDetail": {
        "PostingType": "Debit",
        "AccountRef": {
          "value": "1060"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 44.62,
      "Description": "Fees, 5 gifts",
      "JournalEntryLineDetail": {
        "PostingType": "Debit",
        "AccountRef": {
          "value": "8910"
        },
        "ClassRef": {
          "value": "cls-general"
        },
        "DepartmentRef": {
          "name": "Administration"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 1703.94,
      "Description": "4 gifts",
      "JournalEntryLineDetail": {
        "PostingType": "Credit",
        "AccountRef": {
          "value": "4010"
        },
        "ClassRef": {
          "value": "cls-general"
        }
      }
    },
    {
      "DetailType": "JournalEntryLineDetail",
      "Amount": 255.93,
      "Description": "1 gift",
      "JournalEntryLineDetail": {
        "PostingType": "Credit",
        "AccountRef": {
          "value": "4030"
        },
        "ClassRef": {
          "value": "cls-building"
        }
      }
    }
  ]
}

Transfer

Dated Mon 20 Apr 2026 (the arrival date). Memo: “Stripe payout po_20260417”. The bookkeeper Matches the bank line to it.

Transfer lines
AccountDebitCredit
1010 Operating Checking$1,915.25
1060 Stripe Clearing$1,915.25

Contents (5)

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

Balance transactions in this payout
TypeDonorAmountFee
GiftJavier Willowby
Wed 15 Apr 2026 · card
$46.32−$1.32
GiftAvery Fuentesol
Wed 15 Apr 2026 · card
$25.00−$0.85
GiftDiego Demoson
Wed 15 Apr 2026 · card
$1,300.00−$28.90
GiftKendall Ashgrove
Wed 15 Apr 2026 · card
$332.62−$7.62
GiftHarper Juniper
Wed 15 Apr 2026 · card
$255.93−$5.93

Posting checks

Any failure blocks posting (FIN-008).

  • PassΣ allocations = amount5 events
  • PassΣ payout events = payout1915.25 vs 1915.25
  • PassSTR-260415-01 balancesDr 1959.87 · Cr 1959.87
  • PassEvery revenue and expense line has a ClassClass = Fund
  • PassClearing nets to zero after the TransferTransfer 1915.25 on 2026-04-20

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.