Now in Public BetaEarly adopter pricing

Abandoned carts recover themselves. Set up in 5 minutes, save your revenue.

REST API for abandoned cart recovery. Works with any language, any framework. SDKs for convenience, webhooks for automation.

Get Started FreeNo credit card required
See How It Works
5 minute setup
30-day money-back guarantee
GDPR Compliant
track-abandoned-cart.ts
import { Retake } from "@retake/js";

const retake = new Retake({ apiKey: "rk_live_..." });

// Track abandoned checkout
await retake.track({
  type: "checkout_abandoned",
  email: "customer@example.com",
  cart: {
    total: 129.99,
    items: [{ name: "Product", price: 129.99 }],
  },
});
// Recovery email scheduled automatically
Live Recovery
Cart abandoned
Email sent (2h later)
$129 recovered
Retake - Headless abandoned cart recovery for Next.js | Product Hunt
Works with
Next.jsNext.js
ShopifyShopify
StripeStripe
WooCommerceWooCommerce
TypeScriptTypeScript
VercelVercel
ResendResend
The Problem

Every Abandoned Cart Is Money Walking Away

You've already paid to acquire these customers. Without recovery, that investment is wasted.

70%

of Carts Are Abandoned

Your marketing brought them to checkout. Then they vanished.

Manual Follow-ups Don't Scale

You can't personally email every customer who left mid-purchase.

Enterprise Tools Are Overpriced

$500/mo for abandoned cart recovery? There's a better way.

What if you could automatically bring them back?

How It Works

Set up in 5 minutes

Simple integration. Powerful results. No complex configuration required.

01

Connect Your Store

Integrate with our JavaScript or Next.js SDK in 3 lines of code. Shopify & WooCommerce plugins coming soon.

Quick Start
// app/api/retake/route.ts
import { createRetakeHandler } from '@retakeapi/nextjs/server';
export const POST = createRetakeHandler(process.env.RETAKE_API_KEY!);
// PricingPage.tsx
import { useIntentTracking } from '@retakeapi/nextjs/client';
useIntentTracking({
type: "checkout",
userId: session.id,
email: user.email,
value: selectedPlan.price,
items: [{ id: selectedPlan.id name: selectedPlan.name, price: selectedPlan.price }]
});
02

Configure Recovery Flows

Choose from proven email templates. Set timing and frequency. Preview before going live. Use our presets or customize everything.

Recovery flow configuration
03

Watch Revenue Recover

See real-time analytics as abandoned carts convert to sales. Track opens, clicks, and recovered revenue in your dashboard.

Analytics dashboard
Why Retake

Show, don't tell

One API call. Automatic recovery. Real revenue — for e-commerce and SaaS alike.

Checkout AbandonedE-commerce & SaaS
retake.track({
  type: "checkout_abandoned",
  email: "customer@shop.com",
  cart: {
    total: 89.00,
    items: [{ name: "Pro Plan", price: 89.00 }],
  },
});

What happens next

Checkout started, not completed
1 hour later…
Recovery email with cart link sent
$89 recovered
Failed PaymentSaaS & subscriptions
retake.track({
  type: "payment_failed",
  email: "user@saas.com",
  subscription: {
    plan: "Growth",
    amount: 29,
  },
});

Or connect your Stripe webhook — Retake triggers automatically, zero extra code.

What happens next

Subscription payment failed
Dunning email sent immediately
"Update your card" link included
Churn prevented
Trial ExpiringConvert free users
retake.track({
  type: "trial_expiring",
  email: "user@prospect.com",
  metadata: {
    days_left: 3,
    plan_used: "Growth",
  },
});

What happens next

3 days before trial expires
"Upgrade now" nudge email sent
User converts to paid plan
Trial converted
AI Integration

Let your AI assistant do the integration

Copy one system prompt into Cursor, Windsurf, or Copilot. Your AI handles the full implementation — no docs needed.

System Prompt for AI Assistants
You are a Senior Full-Stack Engineer. Integrate Retake (Revenue Recovery) into the application.

## API Endpoint
POST https://retakeapi.com/api/v1/track
Header: X-API-Key: <YOUR_API_KEY>

## Intent Types
| Type           | When to Fire                          | Business Type   |
|----------------|---------------------------------------|-----------------|
| cart           | User adds items to cart               | E-commerce      |
| checkout       | User enters checkout / payment page   | E-commerce/SaaS |
| pricing        | User views pricing page               | SaaS            |
| upgrade        | User clicks "Upgrade"                 | SaaS            |
| trial_expiring | Free trial is ending                  | SaaS            |
| payment_failed | Recurring payment failed              | SaaS            |

## Events to Track

### INTENT
{ "event": "INTENT", "type": "checkout",
  "userId": "u_123", "email": "user@example.com",
  "value": 49.00 }

### CONVERSION (stop recovery when user converts)
{ "event": "CONVERSION", "userId": "u_123", "value": 49.00 }

## Rules
1. Keep API key server-side only.
2. Capture email as early as possible.
3. Silently fail — never block user flow.
...
1

Copy the prompt

One click — full context for your AI coding assistant.

2

Open IDE chat

Cursor, Windsurf, GitHub Copilot, or any AI assistant.

3

Paste & ship

"Implement Retake tracking for my checkout page."

Works with Cursor, Windsurf, GitHub Copilot, Claude Code, and any AI coding assistant.

Features

Everything You Need to Recover Revenue

From tracking to recovery, Retake handles the entire customer journey automatically.

Multi-Intent Recovery

Cart abandonment, checkout drop-off, pricing page visits, failed payments, trial expiring - track and recover all intent types.

6 intent types

Smart Email Timing

Configurable delays with smart suppression. Send the right email at the right moment without spamming customers.

Configurable delays

Beautiful Templates

Professional, high-converting email templates. Preview before sending. Customize colors and branding to match your store.

Preview in dashboard

Full Analytics

Conversion funnel, email opens, clicks, unsubscribes. See exactly how much revenue you're recovering in real-time.

Real-time dashboard

Webhook Integration

Receive real-time notifications for all events. Connect to your CRM, Slack, or any system via webhooks.

Event-driven

Flexible Integration

Simple REST API works with any language or framework. Optional SDKs for JS/TS. Supports 5+ email providers with BYOK.

Universal API
Integrations

Works with any stack

REST API with optional SDKs. Drop in from Next.js, Shopify, plain JS, Python, PHP, Ruby, Go — wherever your checkout lives.

Next.js
Next.js
Shopify
Shopify
Stripe
Stripe
WooCommerce
WooCommerce
TypeScript
TypeScript
Vercel
Vercel
Resend
Resend
Python
Python
PHP
PHP
Pricing

Simple, transparent pricing

💸 Pays for itself after recovering just 3–4 carts

Risk-free: 30-day money-back guarantee on all plans.

Starter

For small stores getting started

$9/month
  • 5 Projects
  • Unlimited Recoveries
  • Basic support
Get Started
⭐ Best Value

Growth

For growing businesses

$29/month
  • 20 Projects
  • Unlimited Recoveries
  • White-label
  • Priority support
Get Started

Agency

Unlimited projects with resell rights

$99/month
  • Unlimited Projects
  • Unlimited Recoveries
  • Team seats
  • Resell rights
  • White-label
  • Priority support
Get Agency
30-day money-back guarantee. Cancel anytime.

💡 Traditional tools (Klaviyo etc.) cost $300–$800/mo. Retake starts at $9/mo.

FAQ

Let's address your concerns

Honest answers to every question you might have.

Not at all! A step-by-step setup video is coming soon. For now, follow our documentation to integrate in under 5 minutes.

Perfect timing! Setting up cart recovery before you scale means you'll capture revenue from day one. Our Starter plan is designed specifically for early-stage stores.

Fair question. Retake is in public beta which means: you get early adopter pricing locked in forever, our SDKs are open-source on GitHub, and we respect your data privacy. You're not locked in—cancel anytime.

We offer a 30-day money-back guarantee. If Retake doesn't help you recover at least one cart within 30 days, we'll refund you—no questions asked. Just email us at support@retakeapi.com.

Yes. Every email includes an unsubscribe link. We only track users who have started a checkout (legitimate interest for transaction completion). For data export or deletion requests, contact us at privacy@retakeapi.com.

Yes! Retake works with Shopify, WooCommerce (plugins coming soon), Next.js, and any custom stack. It's a universal REST API that works with any tech stack or language that can make an HTTP request.

Zero impact. Our tracking is ultra-lightweight and loads asynchronously. It's lighter than a Facebook pixel and doesn't block your page rendering.

We support Resend, Mailgun, SendGrid, AWS SES, and custom SMTP. Bring your own API keys—credentials are encrypted before storage.

Fully. We provide high-converting templates, but you can customize every word, color, and logo to match your brand perfectly. Preview before sending.

Stop Leaving Money on the Table

Every abandoned cart is revenue you've already earned. Start recovering it today.

30-day money-back guarantee
5 minute setup
Cancel anytime
Retake - Cart Recovery API for Developers | Retake