For AI builders
The biggest barrier to AI product adoption is the fear of wasting money on something that doesn't work. Remove that barrier. Offer risk-free trials with instant refunds in exchange for structured feedback that makes your product better.
They purchase credits through the shared billing hub. No Stripe setup needed on your end — they pay once, use credits across your product.
They click "Request Refund" and complete a short structured feedback form: what they tried, what didn't work, what would bring them back.
Credits are returned instantly. You get the structured feedback in your dashboard. They leave satisfied. Everyone wins.
Customers who know they can get a refund are dramatically more likely to try your product in the first place.
Most churned customers just disappear. With feedback-for-refund, you learn exactly why they left and what would bring them back.
Happy refunds prevent angry chargebacks. Your Stripe account stays healthy, your reputation stays clean.
Integration
If you're on Cloudflare Workers, integration takes minutes. No Stripe keys needed on your side.
In your wrangler.json, add the portfolio billing service:
"services": [{ "binding": "PORTFOLIO_BILLING_SERVICE", "service": "riskfreetrial" }]
When a user wants to buy credits for your product, create a checkout session:
const checkout = await env.PORTFOLIO_BILLING_SERVICE.createCheckout({
domain: "yourproduct.com",
offeringId: "starter_3",
email: user.email,
successUrl: "https://yourproduct.com/success",
cancelUrl: "https://yourproduct.com/pricing"
})
When your product delivers value (AI generation, analysis, etc.), consume from the shared balance:
const result = await env.PORTFOLIO_BILLING_SERVICE.consumeCredits({
email: user.email,
domain: "yourproduct.com",
deltaCredits: -1,
actionType: "ai_generation",
referenceId: "gen_abc123"
})
When a customer requests a refund through our portal, credits are returned to their balance. You get the feedback via the API:
GET /api/refund/requests?domain=yourproduct.com
Authorization: Bearer YOUR_PORTFOLIO_BILLING_API_KEY
Coming soon
For builders who want their own Stripe relationship, we're building Stripe Connect support. You keep your own merchant account and payment relationship. We handle the refund flow, feedback collection, and credit orchestration.
Payments go directly to your Stripe account. When a customer requests a refund, our protocol handles the reversal and feedback collection on your behalf.
No waiting for us to settle. Funds land in your Stripe balance directly. The platform fee is deducted at checkout time.
See all refund requests, feedback, conversion metrics, and credit usage in a single dashboard — even across multiple products.
Deep dive
Our step-by-step article covers the psychology behind risk-free trials, integration patterns, pricing strategy, and a real case study with FleetRepair.us.
Domain catalog
Each domain gets its own catalog with custom pricing, credit packs, and messaging. Your customers see your brand, not ours. Contact us to add your domain to the catalog.
/api/billing/checkout to create sessions and /api/portfolio/credits/* endpoints with your API key for server-to-server operations.