How Automatic Donation Recording Works
How donations from Stripe, PayPal, and other platforms land in your books automatically.
On this page
When you connect NP Ledger to a donation platform like Stripe or PayPal, donations are recorded in your books automatically — within seconds of each gift. This page explains what happens behind the scenes so you know what to expect.
Here's the short version: when someone donates through your fundraising platform, the platform sends a notification to NP Ledger saying "a donation just happened." NP Ledger receives that notification, creates a transaction in your books, and records the donor's information. You don't have to do anything.
The longer version involves three stages:
- A donor gives through your platform (Stripe, PayPal, Givebutter, or Donorbox)
- The platform notifies NP Ledger with the donation details (amount, donor name, email, date)
- NP Ledger records the transaction — debiting your Donations in Transit account and crediting your revenue account
The money doesn't actually move through NP Ledger. The platform collects the donation, holds it for a few days, then sends a payout to your bank. NP Ledger just keeps your books accurate in real time.
Understanding the flow helps you know what's normal and what needs attention:
- Donations appear immediately in your Recent Transactions and on the dashboard. This is the recording, not the money arriving.
- Money arrives later — platforms typically send payouts 2–7 business days after the donation. Until then, the donation sits in Donations in Transit (a transit account NP Ledger manages for you).
- Processing fees are tracked separately — when the payout arrives and you settle it, NP Ledger calculates the fees automatically.
- Refunds are handled automatically — if a donation is refunded through the platform, NP Ledger records the reversal.
- Supporter records auto-populate — each donation updates the donor's Supporter record with name, email, phone, and mailing address from the platform (see below).
When a donation arrives, NP Ledger either creates a new Supporter or updates the existing one using the contact details the platform provides:
- New donors — NP Ledger creates a Supporter with the donor's name, email, phone, and mailing address (street, city, state, ZIP), plus a default donor category (Individual, or Corporate if the platform flags the gift as coming from a company).
- Returning donors — each new donation refreshes the Supporter's phone and mailing address from the platform. A donor who updates their address in Stripe or Givebutter will have the new address reflected in NP Ledger after their next gift.
- Fields you've curated by hand are protected — NP Ledger never overwrites your notes, 1099 tracking, donor category once set, vendor details, or tax fields on a returning donor. It only refreshes the address/phone/email block that the donation platform owns.
- Anonymous donations — when a donor selects "Donate anonymously" on Givebutter or Donorbox, the donation is routed to a single per-organization "Anonymous Donor" Supporter record. No personal details are captured.
- Refunds don't rewrite history — when a refund arrives, NP Ledger looks up the original Supporter to mark the reversal but does not update their address or phone. The donor's contact info at refund time isn't relevant to the original gift.
Platform coverage
| Platform | Name + Email | Phone | Mailing Address |
|---|---|---|---|
| Stripe | Yes | Yes (when Stripe has it) | Yes (when billing address collection is enabled) |
| Givebutter | Yes | Yes | Yes |
| Donorbox | Yes | Yes | Yes |
| PayPal | Yes | — | — |
PayPal donations populate Supporter name and email only. Phone and mailing address enrichment for PayPal is not available today — most nonprofits using PayPal for donations don't collect billing address at checkout, so the data usually isn't there to populate.
If you need to correct an existing Supporter's address before their next donation arrives, go to Supporters, click the donor's name, edit the fields, and save. The next donation will still refresh the address/phone block from the platform — if you want to "freeze" the record, keep the platform-side profile current.
A donor gives $100 through Stripe on Monday. Here's what happens:
- Monday: Stripe notifies NP Ledger. A $100 donation is recorded — Donations in Transit is debited $100, Donation Revenue is credited $100.
- Wednesday: Stripe sends a payout of $96.80 to your bank (after 3.2% processing fees).
- You import your bank statement and settle the payout in NP Ledger. $96.80 moves from Donations in Transit to your checking account, and $3.20 is recorded as a processing fee expense.
After settlement, your books show: $96.80 in checking, $3.20 in processing fees, and $100 in donation revenue. Everything balances.
- Setting up for the first time — read Setting Up a Donation Connection for step-by-step instructions
- A donation wasn't recorded — see A Donation Came In But Wasn't Recorded for troubleshooting
- Your bank deposit doesn't match — see Payout Does Not Match Bank Deposit to understand why amounts differ
- You want to route donations to specific funds — see Donation Routing Rules
Accountant note: Under ASC 958-605, contribution revenue is recognized when the donor's unconditional promise is received, not when cash arrives. NP Ledger records donations on the notification date, which aligns with this recognition standard. The transit account tracks the receivable until settlement. Processing fees are recognized as expenses when the payout is settled.
Ready to try NP Ledger?
Native fund accounting, Form 990 support, and smarter bookkeeping for nonprofits.