Accounting · payout
po_20260121
Created Wed 21 Jan 2026, arrived Thu 22 Jan 2026.
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.
Journal entry 1: STR-260115-01
Dated Thu 15 Jan 2026 (the gift business date). Stripe po_20260121 · business date 2026-01-15 CT · 3 charges
| Account | Class (fund) | Debit | Credit | Memo |
|---|---|---|---|---|
| 1060 Stripe Clearing | — | $1,089.20 | Net of po_20260121 for 2026-01-15 | |
| 8910 Payment Processing Fees | General Fund Location: Administration | $6.85 | Fees, 3 gifts | |
| 4010 Tithes & Offerings | General Fund | $996.05 | 2 gifts | |
| 4020 Missions Gifts | Missions | $100.00 | 1 gift | |
| Totals | $1,096.05 | $1,096.05 | Debits = credits |
Request that would be sent (preview, not sent)
POST /v3/company/{realmId}/journalentry?minorversion=75&requestid={uuidv5(batchId+version)}
{
"DocNumber": "STR-260115-01",
"TxnDate": "2026-01-15",
"PrivateNote": "Stripe po_20260121 · business date 2026-01-15 CT · 3 charges",
"Line": [
{
"DetailType": "JournalEntryLineDetail",
"Amount": 1089.2,
"Description": "Net of po_20260121 for 2026-01-15",
"JournalEntryLineDetail": {
"PostingType": "Debit",
"AccountRef": {
"value": "1060"
}
}
},
{
"DetailType": "JournalEntryLineDetail",
"Amount": 6.85,
"Description": "Fees, 3 gifts",
"JournalEntryLineDetail": {
"PostingType": "Debit",
"AccountRef": {
"value": "8910"
},
"ClassRef": {
"value": "cls-general"
},
"DepartmentRef": {
"name": "Administration"
}
}
},
{
"DetailType": "JournalEntryLineDetail",
"Amount": 996.05,
"Description": "2 gifts",
"JournalEntryLineDetail": {
"PostingType": "Credit",
"AccountRef": {
"value": "4010"
},
"ClassRef": {
"value": "cls-general"
}
}
},
{
"DetailType": "JournalEntryLineDetail",
"Amount": 100,
"Description": "1 gift",
"JournalEntryLineDetail": {
"PostingType": "Credit",
"AccountRef": {
"value": "4020"
},
"ClassRef": {
"value": "cls-missions"
}
}
}
]
}Transfer
Dated Thu 22 Jan 2026 (the arrival date). Memo: “Stripe payout po_20260121”. The bookkeeper Matches the bank line to it.
| Account | Debit | Credit |
|---|---|---|
| 1010 Operating Checking | $1,089.20 | |
| 1060 Stripe Clearing | $1,089.20 |
Contents (3)
Simulated Stripe balance transactions: the only input to the entries.
| Type | Donor | Amount | Fee |
|---|---|---|---|
| Gift | Isaac Example Thu 15 Jan 2026 · ACH | $865.00 | −$5.00 |
| Gift | Caleb Mockford Thu 15 Jan 2026 · ACH | $131.05 | −$1.05 |
| Gift | Quinn Ashgrove Thu 15 Jan 2026 · ACH | $100.00 | −$0.80 |
Posting checks
Any failure blocks posting (FIN-008).
- Σ allocations = amount3 events
- Σ payout events = payout1089.20 vs 1089.20
- STR-260115-01 balancesDr 1096.05 · Cr 1096.05
- Every revenue and expense line has a ClassClass = Fund
- Clearing nets to zero after the TransferTransfer 1089.20 on 2026-01-22
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.