Inspiration

I’ve logged over 1,000 volunteer hours with disaster relief nonprofits. In the summer, that meant leaving behind my family, my cozy room, and late-night Minecraft sessions with my friends—trading them for weeks of sleeping in a cold tent, covered in mud and sweat.

I made those sacrifices for one simple reason: I genuinely love helping people, and I cannot watch them suffer.

Yet, at every single site, I watched the same heartbreaking pattern repeat. Volunteers were ready and willing to work, but forced to stand still.

Whenever I asked our campaign manager why we were waiting, the answer was always the same:

“We’re still searching for supplies.”

It genuinely hurt. I knew people were suffering just miles away, and there was nothing I could do about it.

I couldn't even blame the organizers. Behind the scenes, they were buried under an administrative mountain:

  • Identifying the right products

  • Comparing vendors and prices

  • Staying within strict budgets

  • Figuring out how to process payments

Together, these tasks form a bottleneck that no amount of goodwill can overcome. In a crisis, every minute of friction is another minute of suffering.

The path between intent and impact is broken.

What it does

Prova is an agentic commerce platform, powered by the PayPal developer ecosystem, that gives small disaster-relief nonprofits a built-in procurement team. It takes urgent supply needs from initial request to final receipt in minutes instead of days.

  • Plan: Describe the crisis in plain language (“Supply 200 flood victims for three days”) and set a budget. Prova’s AI generates a tailored supply list with recommended quantities and clear rationales for each item.
  • Purchase: Adjust the list and approve checkout via PayPal. The original request, selected items, and payment records stay unified in a single campaign.
  • Fund & Follow Through: A finance agent tracks PayPal payments, sends sponsor invoices via links or QR codes, and drafts supplier refunds—always requiring human approval before moving money.
  • Proactive Response: Set a location, response radius, and budget. When government APIs report a nearby disaster, Prova drafts a campaign in the background so teams start with a ready-to-review plan instead of a blank page.

Every decision and dollar is logged in a verifiable history for transparent donor reporting, giving frontline teams more capacity to focus on the communities they serve.

How we built it

System Architecture & Stack

  • Core Stack: Next.js, React, TypeScript (end-to-end type sharing and validation across UI, API routes, and agent services).
  • Infrastructure: Render Blueprint with isolated web and persistent worker services backed by managed PostgreSQL.
  • Concurrency & Audit: PostgreSQL acts as a durable job queue (using leases, heartbeats, deduplication, and bounded retries). Campaign state relies on optimistic concurrency (version checks), row locks for financial serialization, and an append-only SHA-256 evidence chain with optional Ed25519 checkpoints.

AI Use Cases & Orchestration

Prova bridges probabilistic AI recommendations with deterministic financial operations via custom TypeScript orchestration:

  • Discovery Pipeline: A server-controlled sequence handles disaster interpretation and supply discovery to guarantee predictable retrieval, validation, and budget allocation.
  • Finance Assistant: Operates on a bounded tool loop to dynamically chain conversational lookups and action prep based on prior tool outputs.
  • Catalog Grounding & Pricing: Models select products from the Channel3 catalog, while server code deterministically calculates quantities, shipping, and tax. Reviewed proposals are locked to checkout via signed price snapshots (24-hour TTL).
  • Provider Resilience: Routes through OpenRouter with a Gemini fallback, using strict server-side schema validation to normalize behavioral differences across models.

PayPal Integration & Financial Operations

PayPal powers the campaign's entire financial lifecycle through server-side execution:

  • Unified Surface: Combines Web SDK v6, Orders v2, Vault, Method Tokens, Invoicing, Payouts, Webhooks, and the Agent Toolkit to handle checkout, saved wallets, sponsor invoicing, supplier payouts, refunds, and verification.
  • Strict Write Boundary: The AI assistant can query records and stage draft operations, but financial mutations require explicit operator confirmation via signed, expiring review cards—reloading and locking campaign state before execution.
  • Idempotency & Recovery: Built for uncertain network states. The server persists stable request IDs before mutating calls, queries authoritative PayPal records post-capture to verify exact approved amounts, and uses webhooks/reconciliation loops to recover from timeouts without duplicate charges.

Key Trade-offs

  • Custom Orchestration vs. Frameworks: Building custom TypeScript loops required writing retries, state machines, and provider adapters from scratch, but gave exact control over validation boundaries and tool permissions without fighting framework abstractions.
  • Postgres as Queue vs. Dedicated Broker: Using PostgreSQL for background job leasing added database load, but kept infrastructure lean by avoiding an external Redis/RabbitMQ dependency on Render.

Challenges we ran into

Thanks to the DevRel team for their webinar sessions, which helped me navigate a steep learning curve as someone new to fintech and PayPal’s developer tools.

  • Solving Multi-Retailer Payments: My biggest hurdle was connecting PayPal Checkout with the Payouts API to split a single payment across multiple retailers. I initially treated this as one transaction, only to learn that capturing a buyer's payment and executing payouts are separate lifecycles with unique failure states.

  • Building Financial Resilience: To prevent duplicate transfers during timeouts or pending states, I learned to track payouts individually, reuse request IDs for idempotency, and write reconciliation logic with automated tests to recover dropped updates. Mastering these edge cases completely changed how I build financial software.

  • Ensuring Tamper-Evident Trust: Because this platform handles relief funds, accountability was non-negotiable—leading me down a rabbit hole into applied cryptography. I never really worked with cryptography in a project, but I was fascinated by the math. I implemented SHA-256 event chaining, added Ed25519 digital signatures, and built a standalone tool to verify exported records.

Accomplishments that we're proud of

I feel like this could actually help people and not just become a discarded hackathon project. I remembered the frustration I felt during my volunteer days when building this.

One of my proudest accomplishments in this project was learning how fintech solutions can be incorporated in a product, specifically how PayPal can connect relief planning to purchasing supplies, paying suppliers, and collecting sponsor funding. Building these workflows taught me that moving money is only part of the challenge—making every transaction reliable, transparent, and easy to track matters just as much.

I’m also proud that we kept the human in control: AI helps prepare supply plans and financial actions, but a person reviews and approves payments. Seeing those pieces come together made Prova feel like something my org would use to help people faster.

What we learned

Before writing a single line of code (or prompting AI, if we’re being honest), I wanted to understand the operational side of the NGOs I’d spent so much time volunteering with. A quick conversation with the founder of a local disaster response organization revealed three key takeaways about their multi-day procurement process:

  1. Behind-the-scenes complexity: Disaster response is far more complicated logistically than it looks from the outside.
  2. Scarce resources: Most organizations operate on tight budgets and lean teams.
  3. Intent vs. impact: There is a massive gap between wanting to help someone and actually getting supplies into their hands.

These insights made one thing clear: the biggest hurdle in disaster relief isn't a lack of willing hands, but the slow, manual processes required to procure supplies. That realization shaped Prova’s core mission—helping organizations turn good intentions and limited resources into fast, tangible impact.

Technical Takeaways

  • Beyond the Payment Button: Building AI agents to source budget-friendly supplies and connecting PayPal checkout, supplier payouts, sponsor invoices, and refunds showed me just how complex financial infrastructure is behind the scenes.
  • Guardrails for Autonomy: Giving AI agents more responsibility requires strict safeguards—validating outputs, preventing duplicate payments, and always requiring human approval before moving money.

What's next for prova

After speaking with local organizations, I am moving Prova into a dedicated repository to build a production-ready application.

  • Expanding Beyond Procurement: Many disaster-relief nonprofits still rely on an uncoordinated mess of spreadsheets and paper records. Long-term, I plan to expand Prova into a unified operational suite to replace those fragmented workflows.

  • Going Global: To support relief teams worldwide, I will be adding multi-currency support so international organizations can manage local budgets, payouts, and sponsors seamlessly.

Built With

Share this project:

Updates

Submission history