-
-
Home dashboard with AI natural language intake & case cards
-
AG Grid enterprise audit ledger with sorting, filtering & CSV export
-
KERNEL cloud browser merchant policy crawler & clause extractor
-
Verified PayPal Sandbox refund settlement receipt
-
Bryntum 72h/180d SLA schedule & Astropods multi-agent container
-
Zapier-backed two-phase refund authorization guardrail modal
Inspiration
Refund cases can be confusing for both customers and merchants: customers may not know what evidence to provide, and merchants need a clear way to review what happened. I wanted to explore how AI could make that process easier while keeping payment decisions grounded in verified information.
What it does
RefundPilot AI turns a customer’s description of a purchase problem into an organized case. It can classify the issue, identify missing information, help draft a message to the merchant, and keep customer claims separate from payment details and AI guidance.
The app can look up PayPal capture details and submit a refund through PayPal Sandbox when configured. Refunds require a human confirmation step. The sample case uses a demo fixture, so its refund is simulated.
How we built it
I built the frontend with React and Vite, and the backend with Express, Prisma, and SQLite. Google Gemini 3.5 Flash Lite helps analyze complaint text, draft merchant messages, inspect uploaded images, and review policy text. Deterministic rules handle case transitions and identify missing information.
For PayPal, the backend uses OAuth 2.0 credentials to access the PayPal REST API v2 in Sandbox mode. A confirmation token is required before a refund action can proceed.
Challenges we ran into
A key design challenge was keeping AI-generated guidance separate from customer claims and verified payment details. Another was making the demo useful without credentials while being clear about when it uses sample data instead of a live PayPal Sandbox call.
Accomplishments that we're proud of
I’m proud that RefundPilot brings intake, evidence, merchant communication, payment status, and case history into one workflow. I also built in a human confirmation step for refunds, so an AI suggestion alone cannot authorize the action.
What we learned
Building this project gave me experience connecting AI-assisted intake with a structured case workflow and PayPal Sandbox APIs. It also highlighted how important it is to show where information came from and distinguish a demo fixture from a verified payment record.
What's next for RefundPilot AI
A natural next step is to test the live PayPal Sandbox flow with real Sandbox credentials and connect any optional integrations that are currently running with fixtures or local fallbacks. I’d also like to gather feedback from people trying the case workflow and use it to improve the experience.
Built With
- ag-grid
- express.js
- gemini
- javascript
- node.js
- paypal
- prisma
- react
- rest-api
- sqlite
- vite