Payment details stay with processors
The product is designed to use Stripe-hosted payment flows and tokens. Card details are handled by Stripe, not stored by Takes A Village servers.
The site is structured around transparent costs, server-only secrets, private data controls, customer service access, and public policies for payment-related questions.
The product is designed to use Stripe-hosted payment flows and tokens. Card details are handled by Stripe, not stored by Takes A Village servers.
The app separates public website content from server-side customer records and uses database access controls for private information.
The service-role key is only read inside server route handlers and is never exposed through NEXT_PUBLIC variables.
Refunds, disputes, cancellations, fulfillment, restrictions, privacy, and promotion terms are published in the policy center.
The product is designed around traceability: clear fees, parent visibility, guest-friendly checkout, and a ledger that keeps balances attached to the child instead of a single campaign page.
Stripe and card networks expect customers to understand what is being sold, who to contact, and how refunds, disputes, cancellations, fulfillment, restrictions, and promotions work.
The donor experience should make the gift amount, processing cost, and amount credited to the child visible before payment. No mystery deductions after the fact.