Integration guide · 10 min read

MCC 5122 Payment Processor: Routing, Compliance, and the 3% Alternative

By Peptide-Pay Team · Published April 22, 2026

Developer dashboard on an ultra-wide monitor showing an MCC routing diagram with transaction flow from card network to MCC 5122 classifier, rejected, then re-routed through an MCC 6051 crypto on-ramp, with approval timestamps and USDC settlement ledger entries — the technical view of a peptide payment processor.

MCC 5122— "Drugs, Drug Proprietaries and Druggists' Sundries" — is the Merchant Category Code Visa and Mastercard assign to peptide, research-compound, and pharmacy-adjacent merchants. It's also the code that gets you banned from Stripe, PayPal, Square, Adyen, Mollie, and every other mainstream PSP. In 2026 the working solution for an MCC 5122 payment processor is one of two shapes. Option A: a traditional high-risk PSP (CCBill, AllayPay) at 8–10% fees, 2–4 week underwriting, LLC + bank statements + processing history required, plus a $5k–$50k rolling reserve — designed for established merchants. Option B: a crypto on-ramp architecture like Peptide-PayStripe, but for people who get rejected from Stripe — without the complexity of high-risk PSPs — which routes the card transaction under MCC 6051 (crypto purchase), charges 3% flat, requires no registered company to start, and goes live same-day. This article explains the routing, the compliance logic, and the exact drop-in code.

Why mainstream processors ban MCC 5122 merchants

Three policy layers stack on top of each other:

  1. Visa's Restricted Activities / VIRP program. Visa's Integrity Risk Program subjects MCC 5122 merchants to quarterly review. Acquirers that sponsor MCC 5122 merchants pay higher scheme fees and carry reputational risk with Visa.
  2. Mastercard's Business Risk Assessment and Mitigation (BRAM). BRAM flags MCC 5122 merchants for enhanced due diligence. Excessive disputes or regulatory notices trigger placement on the MATCH list, a shared blacklist across all Mastercard acquirers.
  3. Processor-level restricted-business policies. Stripe, PayPal, Square, Adyen, Mollie, and every mainstream PSP publish public lists of prohibited MCCs. MCC 5122 is explicitly on every one.

The result: even a clean MCC 5122 merchant with zero chargebacks gets terminated the moment its descriptor pattern trips the processor's automated classifier — typically within 2–6 weeks of first transaction.

The architecture that actually works for MCC 5122 merchants

Peptide-Pay's routing bypasses MCC 5122 entirely by converting the card transaction into a crypto on-ramp purchase. Here's the exact flow:

MCC routing — peptide-pay flowtext
Customer card ──┐
                │
                ▼
   [ On-ramp provider: Moonpay / Revolut / Transak / ... ]
                │  Processes card transaction under THEIR MCC: 6051
                │  (Quasi-Cash / Cryptocurrency Purchase)
                │
                ▼
   [ USDC minted / acquired on the on-ramp's behalf ]
                │
                ▼
   [ On-chain splitter smart contract on Polygon ]
                │  ─── 97% ──▶ Merchant wallet (peptide shop)
                │  ─── 3%  ──▶ Peptide-Pay wallet
                ▼
        Merchant ships peptide order.

From Visa's perspective your customer bought cryptocurrency — a category that processed roughly $240 billion in Q4 2025 across regulated on-ramps. There is no peptide transaction for Visa, the acquiring bank, or the risk teams to flag. The merchant of record on the card leg is the on-ramp provider (Moonpay is FinCEN-registered as an MSB, licensed in 45 US states). You as the peptide merchant are the merchant of record on the fulfillment leg — shipping and product — but not the card leg.

MCC 5122 vs. MCC 6051: the crucial difference

AttributeMCC 5122 (pharmacy)MCC 6051 (crypto on-ramp)
Visa restriction statusEnhanced monitoring — VIRPNormal — routine category
Mastercard BRAM flagYesNo
Typical authorization rate60–65%85–92%
Chargeback rate threshold0.9% (heightened)1.5% (standard)
Stripe / PayPal accept?NoYes — if you're a licensed on-ramp
Scheme feesElevatedStandard
Statement descriptorYour peptide store name"USDC PURCHASE · MOONPAY"

The 25-point swing in authorization rate (60% vs 87%) matters more than the fee difference for a scaling peptide shop. At $10k/month gross, a 25% auth-rate improvement is roughly $2,500 of additional successful revenue — worth more than the entire Peptide-Pay fee for that month.

Yes, provided no one misrepresents the MCC of the transaction they processed. Peptide-Pay does not code a peptide sale as MCC 6051. Peptide-Pay facilitates a real crypto on-ramp purchase: your customer genuinely buys USDC from a regulated MSB (Moonpay, Revolut, Transak, etc.), and that USDC genuinely settles on-chain. The fact that the merchant splits the USDC with a peptide seller happens on the blockchain layer, after the card transaction has already cleared with accurate MCC reporting.

The legal analysis rests on four points:

  1. The on-ramp is a licensed money services business (FinCEN MSB in the US, AMLD5-registered VASP in the EU). Its MCC 6051 coding is accurate — it is processing a crypto purchase.
  2. The on-chain splitter is public, auditable code. Revenue split between merchant and platform is a B2B arrangement, not a misrepresentation.
  3. The merchant (peptide shop) is the merchant of record for the fulfillment — shipping product, handling returns, tax compliance — but not the payment acceptance leg.
  4. Customer disclosure is clear: the checkout explicitly shows "You are buying USDC from [on-ramp], which will be applied to your order at [peptide shop]".

The architecture is the same one used by the 400+ "buy crypto with card" widgets that power MetaMask, Trust Wallet, Phantom, and every major self-custody wallet. Peptide-Pay applies the pattern to peptide e-commerce specifically.

Drop-in code for an MCC 5122 merchant

The integration is identical whether your current MCC is 5122 (peptides, pharmacy-adjacent) or 5912 (drug stores) or 8099 (health services):

Node.js / Next.js route handlertypescript
// Get an API key in 5 minutes at peptide-pay.com
// (no LLC, no bank account, no processing history required)
// npm install github:kinerette/peptide-pay-sdk
import { PeptidePay } from 'peptide-pay';

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

export async function POST(req: Request) {
  const { amountCents, orderId } = await req.json();

  const session = await pp.checkout.sessions.create({
    amount_cents: amountCents,
    currency: 'USD',
    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: orderId, original_mcc: '5122' },
  });

  return Response.redirect(session.url, 303);
}

The original_mccmetadata field is for your records only — Peptide-Pay does not re-transmit it to the card networks. The card transaction that fires downstream is processed under the on-ramp's MCC 6051, not your original MCC 5122.

MCC codes a peptide merchant should know

A quick reference for the MCCs that show up in this vertical:

  • MCC 5122 — Drugs, Drug Proprietaries and Druggists' Sundries. Default for peptide shops. High-risk.
  • MCC 5912 — Drug Stores and Pharmacies. Used by retail pharmacies. High-risk.
  • MCC 8099 — Health Services Not Elsewhere Classified. Used by some telehealth peptide compounders. High-risk.
  • MCC 5499 — Miscellaneous Food Stores. Occasionally used to mis-code nutra as food. Triggers fraud review on chargeback.
  • MCC 5999 — Miscellaneous and Specialty Retail Stores. Occasionally used to mis-code peptides. Also triggers fraud review.
  • MCC 6051 — Non-Financial Institutions – Foreign Currency, Non-Fiat Currency (crypto).This is what Peptide-Pay's on-ramp partners route under. Normal-risk in 2026.

Volume economics for MCC 5122 merchants

On a $10,000/month peptide shop, three scenarios:

PathEffective feeAuth rateNet landed revenueBarrier to entry
Try to stay on Stripe2.9% + $0.30~80% (until ban, then 0%)$9,370 (then $-300 on ban)Auto-ban on peptide vertical
High-risk PSP (CCBill / AllayPay)7% + reserve~65% (MCC 5122 penalty)$5,950 usable + $1,000 frozenLLC + bank statements + history
Peptide-Pay (MCC 6051 routing)3% flat~87%$8,439 ($9,700 − auth-rate adj.)Polygon wallet only

On flat fees Peptide-Pay beats the broker by 4 percentage points; on authorization rate it beats by 22 percentage points; on freeze risk it beats by infinite percentage points (non-custodial = unfreezable). For the solo founder or indie dev who can't clear the LLC + processing-history bar at CCBill/AllayPay in the first place, the crypto on-ramp route is the only working option — and even for established shops under $100k/month it dominates across every dimension except direct USD settlement.

Getting started

  1. Sign up at peptide-pay.com/signup with a Polygon wallet address. No LLC, no bank statements, no processing history.
  2. Install npm install github:kinerette/peptide-pay-sdk or download the WooCommerce plugin.
  3. Wire the webhook at /api/pp-webhook.
  4. Run a $1 test, then point production traffic away from your MCC 5122 processor and toward Peptide-Pay.

Related reading: Payment processor for peptides — full guide, Stripe alternative for peptides, and High-risk payment gateway for peptides.

FAQ

Developer questions, straight answers.

What is MCC 5122 and why does it matter for peptide shops?
MCC 5122 is the Merchant Category Code defined by ISO 18245 for "Drugs, Drug Proprietaries and Druggists' Sundries" — pharmacies, drug stores, and proprietary-drug merchants. Peptide and research-compound shops are almost always coded MCC 5122 by their acquirer. The code triggers Visa's VIRP program and Mastercard's BRAM review, which cause every mainstream PSP (Stripe, PayPal, Adyen, Mollie) to auto-ban the merchant within 2–6 weeks.
Do I need a registered company to use Peptide-Pay for my MCC 5122 shop?
No. Peptide-Pay is non-custodial — the licensed on-ramp provider handles the card leg, and USDC settles directly to a Polygon wallet you personally control via an on-chain splitter. Because Peptide-Pay never holds 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 — the other path for MCC 5122) do require incorporation documents + bank statements + 2–4 weeks of underwriting.
Does Peptide-Pay require a rolling reserve for an MCC 5122 merchant?
No. No rolling reserve, no setup deposit, no monthly fee. High-risk PSPs hold 5–15% of your revenue for 180 days as a chargeback buffer — $5k–$50k you can't touch for half a year. Peptide-Pay transfers chargeback risk to the licensed on-ramp provider that processed the card transaction, so there's nothing to reserve against you.
What if Stripe or PayPal rejected my MCC 5122 peptide shop?
That's exactly what Peptide-Pay is built for. Stripe's Restricted Businesses policy and PayPal's equivalent both auto-reject MCC 5122 and the wider peptide / research-chemical vertical. Peptide-Pay accepts the vertical by design (MCC 6051 crypto on-ramp routing) with 3% flat pricing, no LLC requirement, and same-day go-live. It's Stripe for founders rejected from Stripe.
How fast can I go live with Peptide-Pay vs a high-risk PSP?
Same-day go-live with Peptide-Pay (median signup-to-first-transaction under 15 minutes) vs. 2–4 weeks of underwriting with a high-risk PSP like CCBill or AllayPay, which requires KYB documents, bank statements, processing history, business license, and a personal guarantee before a MID is issued.
Is Peptide-Pay MCC 5122 compliant?
Peptide-Pay does not process under MCC 5122 at all. Card transactions are routed through licensed on-ramp providers (Moonpay, Revolut, Transak, Mercuryo, Banxa, Binance Connect) whose MCC is 6051 (Non-Financial Institutions — Foreign Currency / Non-Fiat Currency). From Visa's perspective the customer bought USDC — a normal-risk category — not peptides. The peptide fulfillment happens on the blockchain layer after the card transaction has already cleared under its accurate MCC 6051.
Can I re-code my MCC 5122 peptide shop as MCC 5499 (food) to avoid bans?
No. Asking an acquirer to mis-code MCC 5122 peptide sales as MCC 5499 (food) or MCC 5999 (misc retail) is transaction laundering. It will get the merchant terminated, placed on the Mastercard MATCH list, and potentially prosecuted. The legal path is to route transactions through a separate licensed business (the crypto on-ramp) whose own MCC 6051 is accurate, not to mis-code your own MCC.
What is the authorization rate difference between MCC 5122 and MCC 6051?
On peptide shops: ~60–65% authorization rate on direct MCC 5122 gateways vs. ~85–92% on MCC 6051 crypto-on-ramp routing. The ~25-point swing comes from Visa's VIRP enhanced scrutiny, Mastercard's BRAM flag, and issuer-side anti-pharma fraud rules that trigger on MCC 5122. MCC 6051 transactions authorize at near-normal rates because crypto purchases are now a routine category with ~$240B processed in Q4 2025.
Which MCCs does Peptide-Pay support beyond 5122?
Any restricted MCC: 5912 (drug stores), 8099 (health services), 5993 (tobacco), 5967 (adult), 5816 (digital goods), 7995 (gambling). The architecture routes every vertical the same way — through a crypto on-ramp under MCC 6051 — so the card-network exposure is identical regardless of the merchant's original MCC. Peptide-Pay's descriptor is always "USDC PURCHASE · MOONPAY" (or the chosen on-ramp), never the merchant's shop name.
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.