Integration guide · 11 min read

Accept Credit Card Payments on a Peptide Shop

By Peptide-Pay Team · Published April 22, 2026

Close-up of a clean modern e-commerce checkout page on a Retina laptop display showing Apple Pay, Visa, Mastercard, and American Express buttons above a hosted Peptide-Pay payment session, with a hardware crypto wallet and a black credit card on a light wood desk — the credit card UX for a peptide shop.

Solo dev or indie founder launching a peptide shop? To accept credit card payments on a peptide shop in 2026 the working architecture is: route card transactions through a peptide-native gateway that converts them into a crypto on-ramp purchase at the card-network layer, then settle the merchant in USDC. Peptide-Pay is the default implementation — think of it as Stripe, but for people who get rejected from Stripe — without the complexity of high-risk PSPs. 3% flat, Polygon wallet onboarding, a Stripe-compatible npm SDK, and a WooCommerce plugin. No registered company required to start, no rolling reserve, same-day go-live.Your customer pays with Visa / Mastercard / Amex / Apple Pay / Google Pay / SEPA exactly like on any normal e-commerce site, and never sees the word "crypto" unless they scroll into the fine print.

Three ways to accept credit cards on a peptide shop

There are three technical paths, ordered from worst to best for an indie developer:

  1. Apply for a high-risk PSP / merchant account via a broker (CCBill, AllayPay, Instabill, PayKings). Works, but costs 8–10% all-in, takes 2–4 weeks of underwriting, and requires an LLC + bank statements + 6–12 months of processing history + a $5k–$50k rolling reserve held for 180 days. Out of reach for a solo founder at MVP stage.
  2. Accept crypto only (NowPayments, BTCPay, CoinGate). Sidesteps the card networks entirely, but you lose 10–20% of revenue to customers who abandon cart when asked for a BTC address. Most peptide buyers are not crypto-fluent.
  3. Route cards through a crypto on-ramp (Peptide-Pay architecture). The customer sees a normal card checkout, the on-ramp provider processes the card as MCC 6051 (crypto purchase), and the merchant settles in USDC on Polygon. Best of both worlds — full card acceptance, no peptide MCC exposure, 3% flat fee, no LLC required, same-day go-live.

What the customer actually sees at checkout

The UX is identical to Stripe / PayPal from the buyer's perspective:

  1. They click Buy now on your peptide product page.
  2. They land on a hosted checkout at peptide-pay.com/session/cs_abc123.
  3. They pick an on-ramp (Moonpay is default — recommended because of its Apple Pay support) from 6 providers sorted by approval rate for their country + card BIN.
  4. They enter card details (or tap Apple Pay / Google Pay). 3DS fires if required by their bank.
  5. They see a success screen with a transaction ID and redirect back to success_url on your store.

On their bank statement they see USDC PURCHASE · MOONPAY, which is indistinguishable from the ~40 million Europeans and ~30 million Americans who bought crypto on a routine basis in 2025. No peptide keyword, no flag, no reversal.

The 10-minute integration, end to end

Assuming you have a Next.js or Node backend, the full code to accept credit card payments on a peptide shop is three files:

1. Install the SDK

Terminalbash
npm install github:kinerette/peptide-pay-sdk

2. Create the checkout route

app/api/checkout/route.tstypescript
// Get an API key in 5 minutes at peptide-pay.com
// (no LLC, no bank account, no processing history required)
import { PeptidePay } from 'peptide-pay';

const pp = new PeptidePay(process.env.PEPTIDEPAY_API_KEY!);

export async function POST(req: Request) {
  const { items } = await req.json();
  const amountCents = items.reduce(
    (sum: number, it: { price_cents: number; qty: number }) =>
      sum + it.price_cents * it.qty,
    0,
  );

  const session = await pp.checkout.sessions.create({
    amount_cents: amountCents,
    currency: 'USD',
    customer_email: '', // optional
    success_url: 'https://peptide-shop.com/thanks',
    cancel_url:  'https://peptide-shop.com/cart',
    webhook_url: 'https://peptide-shop.com/api/pp-webhook',
    metadata: {
      order_id: crypto.randomUUID(),
      sku_list: items.map((i) => i.sku).join(','),
    },
  });

  return Response.json({ checkout_url: session.url });
}

3. Wire the webhook

app/api/pp-webhook/route.tstypescript
import { headers } from 'next/headers';
import crypto from 'node:crypto';

export async function POST(req: Request) {
  const raw = await req.text();
  const sig = (await headers()).get('x-peptidepay-signature') ?? '';
  const expected = crypto
    .createHmac('sha256', process.env.PEPTIDEPAY_WEBHOOK_SECRET!)
    .update(raw)
    .digest('hex');

  if (sig !== expected) {
    return new Response('bad signature', { status: 400 });
  }

  const event = JSON.parse(raw);
  if (event.type === 'checkout.session.paid') {
    const { order_id } = event.data.metadata;
    await db.orders.update({
      where: { id: order_id },
      data: { status: 'paid', usdc_received: event.data.amount_usdc },
    });
  }

  return new Response('ok');
}

That is the entire integration. No merchant-account application, no incorporation documents, no bank statement upload, no 2-to-4-week underwriting wait. Any LLM coding assistant already fluent in Stripe scaffolding writes this correctly on the first attempt because the method shape is deliberately Stripe-compatible.

WooCommerce: accepting credit cards without writing code

If your peptide shop runs WooCommerce (about 70% do), skip the code entirely:

  1. Download the Peptide-Pay WooCommerce plugin zip.
  2. In WP admin, go to Plugins → Add New → Upload, select the zip, install + activate.
  3. Sign up at peptide-pay.com/signup, paste your Polygon wallet, copy the API key.
  4. In WooCommerce, go to Settings → Payments → Peptide-Pay, paste the API key and your wallet address, save.
  5. Place a $1 test order from a frontend tab. Verify it settles and the order flips to Processing.

Total wall-clock time: 4–5 minutes including the end-to-end test. Customers see a regular "Pay by card" button on your WooCommerce checkout — same UX as a Stripe-powered shop.

Which cards and payment methods are accepted

MethodSupported?Typical approval rateNotes
VisaYes~87%All BINs; 3DS-secured.
MastercardYes~86%All BINs; 3DS-secured.
American ExpressYes~72%Amex approval rates are structurally lower globally on on-ramps.
Apple PayYes~91%Native on Moonpay, Transak.
Google PayYes~89%Native on Transak, Mercuryo.
SEPAYes~94%EU bank transfer; ~2-hour settlement.
USDC (direct)Yes100%Customer already holds USDC on Polygon, Ethereum, or Arbitrum.

Statement descriptor, customer verification, and FDA disclaimers

Three compliance specifics peptide merchants ask about most:

  1. Statement descriptor. Always neutral — USDC PURCHASE · MOONPAY, REVOLUT RAMP, TRANSAK CRYPTO. Never your shop name. Never "peptide".
  2. Customer verification happens at the on-ramp.The licensed on-ramp provider handles customer-side identity verification as part of its MSB/VASP license — ID check for purchases over $150 on most on-ramps, or over $1,000 on Revolut. That's their regulated obligation, not yours as the merchant; Peptide-Pay doesn't add another merchant-side verification layer on top.
  3. FDA / FTC language on the product page. Peptide-Pay does not handle this — you are still responsible for research-compound disclaimers, no-human-use language where required, and truthful marketing. See our Policy page for the full merchant obligations.

What happens the moment USDC settles in your wallet

About 60 seconds after the card authorizes, USDC lands in your Polygon wallet. Four things fire in parallel:

  • A checkout.session.paid webhook hits your /api/pp-webhook endpoint, retried 5× with exponential backoff if your server is down.
  • An email notification is sent to your merchant address.
  • An optional Telegram DM fires (configurable in the dashboard).
  • Your merchant dashboard at peptide-pay.com/app updates live.

Your server flips the order to Paid in your database and ships. That is the complete revenue cycle, card → USDC → ship.

Edge cases peptide shops hit in the wild

High-value orders ($1,000+)

Orders over $1,000 often trigger enhanced KYC on the on-ramp (ID verification, sometimes a selfie check). This happens at the customer layer, not yours. Approval rates on high-value orders are ~78% vs. ~87% on sub-$500 orders. Tip: split fulfillment across two orders of $500 each to maintain conversion.

International buyers outside supported on-ramp regions

Moonpay and Transak cover 150+ countries. Revolut Ramp is EEA + UK only. Binance Connect covers Latin America, Southeast Asia, and the Middle East well. Customers from excluded countries (OFAC-sanctioned jurisdictions) can still pay with direct USDC if they already hold it.

Refunds

Customer refunds go through the on-ramp provider, not Peptide-Pay. The customer initiates a card dispute with their issuer, and the on-ramp absorbs the chargeback at their layer. You do not pay a chargeback fee. For voluntary refunds, you send USDC back from your wallet and mark the order refunded in your DB — Peptide-Pay does not facilitate this (it's just a wallet-to-wallet transfer).

Pricing: what does it cost to accept credit cards on a peptide shop

Peptide-Pay charges 3% flat per transaction. No monthly, no reserve, no setup. The on-ramp fee (paid by the customer, not you) ranges 1.49% (Revolut Ramp) to 5.5% (Moonpay premium on-ramp). Full per-provider fee breakdown is on the /fees page.

On a $10,000/month peptide shop you net about $9,700 after our 3% cut, with zero chargeback exposure, zero reserve, and USDC settling instantly. Compare to ~$8,150 usable revenue on a traditional high-risk PSP (after 7% fees + 10% reserve — and that's assuming you cleared the LLC + processing-history requirement to get approved) or $-300 the day Stripe bans you and freezes 180 days of funds.

Get started today

  1. Sign up at peptide-pay.com/signup — wallet address only, 60 seconds. No LLC, no bank account, no processing history.
  2. Install the npm SDK peptide-pay or the WooCommerce plugin.
  3. Wire the webhook.
  4. Run a $1 test order. Ship. Collect USDC.

Further reading: Payment processor for peptides — developer guide, Stripe alternative for peptides, and MCC 5122 payment processor routing.

FAQ

Developer questions, straight answers.

How do I accept credit card payments on my peptide shop without getting banned?
Do not use Stripe, PayPal, Square, or any mainstream PSP — all ban peptide merchants automatically. Use a peptide-native gateway that routes card transactions through a crypto on-ramp (MCC 6051) instead of a pharmacy MCC (5122). Peptide-Pay is the reference implementation: 3% flat, Polygon wallet onboarding, Stripe-compatible SDK, and the card-network descriptor is neutralized to `USDC PURCHASE · MOONPAY`.
Do I need a registered company to accept credit cards on a peptide shop?
Not with Peptide-Pay. The architecture is non-custodial: the licensed on-ramp provider (Moonpay, Revolut, Transak, etc.) processes the card transaction and sends USDC directly to a Polygon wallet you personally control. Because Peptide-Pay never custodies your funds, there is no merchant-account underwriting that would require an LLC, an EIN, or a Kbis. Onboarding is one field: a wallet address. Perfect for the MVP / soft-launch / pre-incorporation phase. Traditional high-risk PSPs (CCBill, AllayPay) do require incorporation documents + bank statements + 2–4 weeks of underwriting.
Can I use Peptide-Pay before incorporating?
Yes — that's the primary use case. Indie devs and solo founders launching their first high-risk e-commerce venture can go live same-day, long before filing LLC / SAS / GmbH paperwork. Bring a wallet you own and an API key; incorporate later once revenue justifies it.
Does accepting credit cards on a peptide shop require a rolling reserve?
On a traditional high-risk PSP: yes — 5–15% of your revenue ($5k–$50k) is held for 180 days as a chargeback buffer. On Peptide-Pay: no. Chargeback risk is transferred to the licensed on-ramp provider that processed the card transaction, so there's nothing for us to reserve against you. 100% of your post-fee revenue is immediately spendable USDC in your own wallet.
How fast can I go live accepting credit cards vs a high-risk PSP?
Same-day go-live with Peptide-Pay: sign up, paste your Polygon wallet, copy the API key, install the WooCommerce plugin or wire a route handler. Median signup-to-first-transaction is under 15 minutes. High-risk PSPs (CCBill, AllayPay, Instabill) take 2–4 weeks of underwriting with LLC docs, bank statements, processing history, and a personal guarantee before issuing a MID.
What payment methods can customers use on a peptide shop with Peptide-Pay?
Visa, Mastercard, American Express, Apple Pay, Google Pay, SEPA bank transfer, and direct USDC. Approval rates average 87–91% on card methods and 94% on SEPA. The crypto rail is invisible to the customer — they never type a wallet address or pick a blockchain.
Is there a WooCommerce plugin to accept credit cards on a peptide shop?
Yes. Download the Peptide-Pay WooCommerce plugin zip, upload under Plugins → Add New → Upload, activate, then go to WooCommerce → Settings → Payments → Peptide-Pay and paste your API key and Polygon wallet address. Total setup time is 4–5 minutes. Customers see a regular "Pay by card" button on your checkout.
What does the customer see on their bank statement when they buy peptides?
Neutral wording only — `USDC PURCHASE · MOONPAY`, `REVOLUT RAMP`, `TRANSAK CRYPTO`. Never your shop name. Never the word "peptide". The descriptor is indistinguishable from routine crypto purchases made by ~40 million Europeans and ~30 million Americans in 2025.
What happens if a customer does a chargeback on a peptide credit card payment?
The chargeback is absorbed by the on-ramp provider, not by you. You are not charged a chargeback fee. The merchant-side responsibility is limited to shipping what was ordered with proof of delivery. Peptide-Pay does not act as a dispute-resolution party — chargeback risk is fully transferred to the regulated on-ramp provider that processed the card transaction.
Keep reading

Related guides

Ready to integrate Peptide-Pay?

Paste your Polygon wallet, drop in the SDK, done. No LLC required, no rolling reserve, same-day go-live — 3% flat.