Merchant Partner Guide · 2026

Show shoppers their top 3 cards at checkout.

The Card-Recommendation Widget is 100% free for merchants — forever. No fees, no rev share, no contract. One <script> tag adds a smart top-3 cards widget to your checkout that surfaces the 3 best cards by reward rate for this purchase as stacked, individually-tappable rows — best first.

SuperPay sits in the decision layer between the cart and the card. When shoppers see real reward amounts at checkout — "$12.90 cash back with Chase Sapphire" — they buy with more confidence, reach for higher-value carts, and come back more often.

v2026.1 · ~12 min read · Questions? hello@superpayrewards.com
01 · Company & product

SuperPay in one paragraph

SuperPay is the AI-powered payment intelligence layer for the modern wallet. On the consumer side we tell shoppers which card to use at every merchant, surface unused perks, and forecast their best path to maximum rewards. On the merchant side, our Checkout API adds a smart card-recommendation widget to your checkout — surfacing the top 3 cards by reward rate for this purchase as stacked, individually-tappable rows (best first). No integration with your payment processor required.

$66K
Avg US household card spend / yr
$1.5K–$5K+
Rewards left on the table / yr
15 min
Median time to first integration

What you get as a partner

02 · The thesis

Reward visibility drives purchase confidence.

Shoppers with multiple credit cards face decision fatigue at checkout. Which card should I use? Am I missing rewards? That hesitation costs you conversions. SuperPay removes the question entirely.

WITHOUT SUPERPAY

Checkout uncertainty

Shopper hesitates, second-guesses their card choice, maybe abandons the cart to "think about it." You lose the sale — not because of price, but because of friction.

WITH SUPERPAY

Confident checkout

Shopper sees their top 3 cards stacked best-first — "Chase Sapphire — earn $12.90", "Amex Gold — earn $10.75", "Citi Custom Cash — earn $8.60". They tap the one in their wallet, feel smart, and buy with confidence.

One-line pitch: SuperPay shows your shoppers their top 3 cards for this purchase, with exactly how much they'll earn on each — turning checkout hesitation into purchase confidence.
03 · Who it's for

You're a great fit if…

Probably not a fit (yet)

04 · How it works

One call. That's the integration.

  1. Request a recommendation by passing the cart amount and category (or MCC) to /v1/recommend — server-side or directly from the widget.
  2. Render the recommendation on your checkout via the drop-in widget (one <script> tag), or your own UI built on the JSON response.
  3. Shopper picks up the recommended card and completes purchase through your existing processor. Their card issuer awards the reward directly, on the issuer's normal cycle.

Lifecycle of a single recommendation

StageWhoWhat happens
RecommendSuperPayWe rank our full ~320-card public catalog for the amount + category (or MCC) you send and return the top 3 by effective reward rate (popularity + lower-AF as tie-breakers).
RenderSuperPay widget on your checkoutShopper sees the top 3 cards as stacked rows, best first — each row "[Card] — earn ~$X back" and tappable to apply.
PayShopperPicks up the recommended card and completes purchase on your existing checkout (Shopify, Stripe, custom — we don't care).
EarnCard issuer → ShopperThe shopper's card issuer awards the reward directly, on the issuer's normal cycle. SuperPay is not in this loop.
Important: SuperPay is a recommendation-only platform. We never process payments, hold funds, mint rewards, or pay out shoppers. Your existing payment processor (Stripe, Adyen, Shopify Payments, etc.) handles the charge unchanged, and the shopper's card issuer awards rewards directly under their existing cardholder agreement.
05 · Integration walkthrough

Get to a working sandbox in under 15 minutes

Step 1 — Get your sandbox key

Visit /for-merchants, fill in your business name, contact email, and store origins (the domains where the widget will be embedded). You'll receive a verification email — click it and your sandbox key is provisioned immediately.

Step 2 — Get a recommendation

Call POST /v1/recommend with the cart amount and either an MCC or a category. You can call this server-to-server, or skip it entirely and let the widget call it for you (Step 3).

curl -X POST https://superpayrewards.com/v1/recommend \
  -H "Authorization: Bearer sp_test_..." \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 87.45,
    "mcc": "5411",
    "merchant_name": "Whole Foods Market"
  }'

Response (abridged):

{
  "recommendation_id": "9f8...",
  "top_cards": [
    {
      "rank": 1,
      "name": "Blue Cash Preferred® Card from American Express",
      "reward_rate": 6,
      "estimated_reward_cents": 524,
      "estimated_reward_display": "$5.24",
      "reason": "6% on groceries",
      "apply_url": "https://..."
    },
    { "rank": 2, "name": "Citi Custom Cash", "reward_rate": 5, ... },
    { "rank": 3, "name": "Amex Gold",         "reward_rate": 4, ... }
  ],
  "top_card":   { /* DEPRECATED — same as top_cards[0]. Removed one release after this one. */ },
  "alternates": [ /* DEPRECATED — top_cards[1..] in lighter shape. */ ],
  "display": {
    "headline": "Top 3 cards for this purchase",
    "subline": "Top pick: Blue Cash Preferred · 6% back"
  }
}

Migrating? Read top_cards[] instead of top_card + alternates — every entry has the same shape and includes rank, image_url, and apply_url. The deprecated fields will be removed one release after this one ships.

Step 3 — Embed the widget on your checkout

Drop a mount <div> with the cart context, then load /v1/widget.js once anywhere on the page. The widget calls /v1/recommend for you and renders the top-3 cards (stacked rows, best first, each row tappable to apply).

<div data-superpay-recommend
  data-amount="87.45"
  data-mcc="5411"
  data-merchant="Whole Foods Market"
  data-superpay-effective-cost-target="#sp-effective-cost"></div>

<!-- Optional: empty target the widget fills with
     "Effective cost with SuperPay: $X.XX — after $Y.YY rewards".
     Place it directly under your Pay / Place Order button. -->
<div id="sp-effective-cost"></div>

<script src="https://superpayrewards.com/v1/widget.js"
  data-key="sp_test_..." async></script>

Effective-cost line. The data-superpay-effective-cost-target attribute is opt-in — leave it off and nothing extra renders. When set, the widget fills the referenced element with a single muted line showing the cart total minus the top pick's estimated rewards. The line is gated so it never lies to a shopper: it only renders when the top pick is a cashback card with a positive estimated reward, a known cart total, and the resulting effective cost is non-negative (rewards never shown as exceeding the order total). Points/miles cards, $0 reward estimates, missing amounts, or a negative effective cost all suppress the line silently.

Step 4 — That's it. The shopper does the rest.

The shopper picks up the recommended card and pays through your existing processor. Their card issuer awards the reward directly under their cardholder agreement — there's no SuperPay-side confirmation, no webhook, no payout to wire up. SuperPay never holds funds or settles rewards.

Step 5 — Promote to production

Email hello@superpayrewards.com with your sandbox merchant ID and the production domain(s). We'll issue a live sp_live_ key and walk through your first 100 live transactions together.

06 · Widget

One script tag. Your branding. Our reward affordance.

The SuperPay widget renders as a non-intrusive badge or button on your checkout. It's framework-agnostic — works inside Shopify themes, custom React/Vue checkouts, BigCommerce, WooCommerce, and bare HTML.

Customization options

AttributeDefaultPurpose
data-keyYour merchant API key (sp_live_ for production, sp_test_ for sandbox).
data-amountCart total in USD (e.g. 87.45).
data-mccISO 18245 4-digit MCC. Preferred over data-category.
data-categoryFallback category (e.g. groceries) when MCC is unknown.
data-merchantDisplay name (e.g. "Whole Foods Market").
data-themeautolight · dark · auto
data-superpay-effective-cost-targetOptional CSS selector for an empty element the widget will fill with "Effective cost with SuperPay: $X.XX — after $Y.YY rewards". Renders only when top pick is cashback, reward > 0, cart amount known, and effective cost ≥ 0; otherwise silent.
CSP friendly: the widget loads from superpayrewards.com, no inline scripts, no third-party trackers. Add the host to script-src and connect-src.
07 · Code samples

Reference snippets

Node.js (Express) — server-side recommendation

import express from "express";
const app = express();

app.post("/cart/recommendation", async (req, res) => {
  const rec = await fetch("https://superpayrewards.com/v1/recommend", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.SUPERPAY_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      amount: req.body.subtotal,
      mcc: req.body.mcc,           // preferred
      category: req.body.category, // fallback
      merchant_name: req.body.merchantName,
    }),
  }).then(r => r.json());

  res.render("checkout", { recommendation: rec });
});

Python (Django/Flask) — server-side recommendation

import os, requests

def get_recommendation(subtotal, mcc, merchant_name):
    r = requests.post(
        "https://superpayrewards.com/v1/recommend",
        headers={
            "Authorization": f"Bearer {os.environ['SUPERPAY_KEY']}",
        },
        json={
            "amount": subtotal,
            "mcc": mcc,
            "merchant_name": merchant_name,
        },
        timeout=5,
    )
    r.raise_for_status()
    return r.json()

Shopify (Liquid theme) — drop-in widget

<!-- in your cart.liquid or checkout.liquid -->
<div data-superpay-recommend
  data-amount="{{ cart.total_price | divided_by: 100.0 }}"
  data-merchant="{{ shop.name }}"
  data-category="shopping"></div>
<script
  src="https://superpayrewards.com/v1/widget.js"
  data-key="{{ settings.superpay_api_key }}"
  async></script>
08 · Pricing

Free, forever.

The Card-Recommendation Widget is 100% free for merchants. No fees, no rev share, no contract minimums. SuperPay treats the widget as a value-add at checkout and a shopper-acquisition channel.

INSTALL

$0

One script tag, one div. No SDK, no build step, no processor change. Works on Shopify, Magento, and custom carts.

MONTHLY

$0

No monthly fees, no per-call charges, no usage caps. Unlimited recommendation calls (300/min per key).

CONTRACT

None

No contract, no rev share, no commitments. Use the widget as long as it's helping your checkout — cancel any time.

Questions about the API or want to discuss a custom integration? Email hello@superpayrewards.com.

09 · Security & compliance

What we do, what we don't

What we do

  • Issue scoped, revocable sp_live_ API keys per merchant; sandbox keys use the sp_test_ prefix.
  • Enforce origin allowlists per key — the widget refuses to load on unlisted hosts.
  • TLS 1.2+ everywhere. PCI scope is limited to your existing processor.
  • Rate-limit every recommendation request (300/min per key by default).
  • Log every key issuance, revocation, and admin action with audit trail.

What we don't

  • Touch your shopper's PAN, CVV, or any cardholder data.
  • Sit in your payment flow — your processor still handles the actual charge.
  • Hold funds, mint rewards, or pay out shoppers — the shopper's card issuer awards the reward directly.
  • Resell shopper data. Ever.
  • Ship customer email or order details to third parties without an explicit data-processing agreement.

Need our security policy or to start a vendor review? View our security policy or email security@superpayrewards.com.

10 · FAQ

Common questions

Does this replace my loyalty program?

No. SuperPay sits alongside it. The widget surfaces the top 3 cards for the purchase; your loyalty program continues to handle deeper LTV mechanics.

Can shoppers stack the SuperPay recommendation with promo codes?

Yes — the recommendation is informational. The shopper still pays through your existing checkout and applies whatever promo codes you allow.

What if no card in our catalog matches the purchase?

The widget silently no-ops and never blocks the buy button. The endpoint returns HTTP 404 NO_RECOMMENDATION for server callers.

Is this a credit card? Do shoppers need to apply for anything?

No. SuperPay only recommends a card the shopper already has (or could apply for separately at their issuer). The shopper's card issuer awards the reward directly under their existing cardholder agreement. SuperPay never holds funds, mints rewards, or pays out shoppers — see our Terms of Service.

How long until I'm in production?

Sandbox in 15 minutes. Production keys typically issued within 1 business day after a quick review of your domain and use case.

Do you offer co-marketing?

Yes — once you're live, ask about featured placement in the SuperPay consumer app, push notification slots, and category sponsorships.

Can I revoke a key?

Instantly, from your merchant dashboard or by emailing us. New keys are provisioned in seconds.

11 · Launch checklist & contact

Ready to ship?

Pre-launch checklist

Need help? Talk to a human.
Email hello@superpayrewards.com with your sandbox merchant ID, the URL of your checkout, and a one-liner about what you're trying to test. We typically reply same business day.

Useful links