Donations and Finance
Understand payment setup, transactions, refunds, disputes, bank transfers, reports, and Givebear billing.
This is the highest-trust area of Givebear. If a finance answer is vague, donors lose confidence and staff lose time. Use this guide when you need to know whether the organization can accept money, where payments are created, how fees are applied, and where to reconcile activity.
How money flows
Givebear uses Stripe Connect. Donation and event payments are created on the organization's Stripe connected account, not as anonymous platform payments. Givebear attaches an application fee to eligible payments or subscriptions based on the organization's plan.
| Payment type | Stripe object pattern | Givebear fee behavior |
|---|---|---|
| One-time online donation | PaymentIntent on the connected account | application_fee_amount is calculated from the current plan fee percentage. |
| Recurring online donation | Stripe subscription on the connected account | application_fee_percent is applied to the subscription. |
| Kiosk donation | Stripe Terminal card-present payment | The kiosk uses the synced organization fee percentage. Very old sync payloads fall back to the Free plan percentage. |
| Event registration payment | Connected-account payment path | Event payments should be reconciled with event registrations and transaction records. |
Givebear does not publish a universal payout schedule because payouts depend on the connected Stripe account and Stripe rules. Use the embedded Stripe payout controls and Stripe account information for payout timing.
Can this organization accept payments?
Two checks must pass:
- Stripe Connect readiness: the connected account exists and onboarding is complete.
- Givebear billing readiness: the organization has a selected plan and, for paid plans, an active or trialing platform subscription.
Free plan organizations are billing-ready without a platform subscription. Plus and Growth require the subscription state to be active or trialing.
Current plan fees
The plan table comes from apps/web/src/lib/billing/plans.ts. Since the launch-pricing simplification there is one flat platform fee per plan that applies the same way to online donations, kiosk donations, and membership dues.
| Plan | Subscription | Platform fee (online, kiosk, membership) | Included contacts | Included emails |
|---|---|---|---|---|
| Free | $0 | 4.9% | 50 | 100 |
| Plus | $29/mo billed annually or $39 month-to-month | 2.9% | 2,500 | 10,000 |
| Growth | $39/mo billed annually or $54 month-to-month | 1.9% | 15,000 | 75,000 |
When the organization enables donor tipping, the platform fee drops to 0% on tipped one-time donations and the listed percentage applies only when a donor declines to tip (and to recurring gifts). The same plan percentage is the kiosk fee and the membership-dues fee, so there is only one rate to reason about per plan. Stripe card processing (2.9% + $0.30 online, 2.7% + $0.05 in person) is passed through at cost on every plan.
Plus and Growth also define overage rates. Billing pages should be used for the live subscription, usage, and invoice state because Stripe subscription data can change over time.
Transactions
Transactions are where finance details come together. A completed donation can include:
- Gross amount.
- Stripe fee.
- Givebear application fee.
- Refunded amount.
- Disputed amount.
- Net amount.
- Payment method context.
- Stripe identifiers.
- Recurring donation context, when present.
Use transaction-level data when reconciling a specific donor, gift, refund, dispute, or accounting question. Use Reports when you want summarized trends.
Refunds
Refunds are synced from Stripe and update donation financial summaries. A refund can change the refunded amount and net amount associated with the donation event.
Before refunding, staff should answer:
- Which donor and transaction is involved?
- Is this a full or partial refund?
- Is the donor expecting a receipt or written confirmation?
- Does the finance lead need to know before the refund is issued?
- Is the gift connected to an event registration or campaign report?
Disputes
Disputes are synced from Stripe with amount, reason, status, evidence due date, financial impact, and whether funds were withdrawn or reinstated. Treat disputes as time-sensitive finance work.
When reviewing a dispute, collect:
- Donor name and email.
- Transaction id and Stripe identifiers.
- Date and amount.
- Event, fund, campaign, or kiosk context.
- Any communication with the donor.
- Any evidence deadline shown by Stripe.
Reports, exports, and bank transfers
Use Reports for board updates, campaign summaries, and trend review. Use transactions when the answer depends on exact payment state. Use Stripe or embedded Stripe surfaces for payout and bank-transfer timing because the connected account owns payout behavior.
Common finance questions
Why did a donation fail? Check payment readiness first, then the donor payment path, then Stripe details.
Why does the net amount not equal the gross amount? Review Stripe fees, Givebear application fees, refunds, and disputes.
Where do recurring charges show up? Recurring online gifts create Stripe subscriptions and later charges that should appear as donation events or related transaction records.
Can we promise when money lands in the bank? Not universally. Use connected Stripe account payout information.