Here is a business model that sounds broken: you buy an iPad at Best Buy for $349, ship it to a warehouse in Delaware, and get paid $349 back. Zero markup. Sometimes you even get paid less than you spent.

And yet some people report running tens of thousands of dollars a month through it, because the profit is not in the resale price. It is in everything stacked around the purchase: 2-5% credit card rewards, $750-ish business card sign-up bonuses that need $6,000 of spend you would otherwise never hit, cashback portals, discounted gift cards, store promos, and the occasional “retail plus $20” commission the buying group pays on hot items.

That is buying group arbitrage. It is legal. It is also a textbook beat-the-system play: card issuers price their rewards assuming you spend on groceries and gas, not that you push $40,000 of MacBooks through a 5% category every year. Retailers set “limit 2 per customer” for a reason. Issuers and retailers both fight back, and this guide is honest about how.

Timing matters too. It is late October. Black Friday through Christmas is the busiest, most profitable window of the year for buying groups, because retail promos are deepest and the groups need inventory. If you want to try this, the next eight weeks are the time.

Who this works for (read first)

  • US residents with good credit (roughly 700+). The whole model runs on credit lines and card rewards. No SSN, no game.
  • People who pay every statement in full. At 20-29% APR, one month of carried interest wipes out a year of margin. If you have ever carried a balance “just this once”, stop reading.
  • People with $10,000+ in available credit to start. You float the purchase for 1-4 weeks until the group pays. More credit = more volume = more money. There is no way around this.
  • Organised people. Every package needs a tracking number matched to a payout. Lose track and you lose money. That is what the Python ledger below is for.

Outside the US? The model barely exists elsewhere, mostly because card rewards are capped (EU interchange caps make 2-5% cards rare). Skip this one.

How the money works

A buying group is a company that buys new, sealed electronics (and some gift cards, appliances, toys) from individuals and resells them in bulk to wholesalers and exporters. Well known US groups include BFMR and USA Buying Group; there are dozens of smaller ones. The flow:

  1. The group posts a deal: “iPad 11-inch 128GB, we pay $349, limit 10, ship by Nov 30.”
  2. You commit to a quantity on their site (this reserves your spot at that price).
  3. You buy from Best Buy, Amazon, Walmart, Staples, Target, wherever it is cheapest after stacking.
  4. You ship to the group address (most large groups have warehouses in no-sales-tax states like Delaware, Oregon or New Hampshire, so shipping there online usually means no sales tax), and submit the tracking number.
  5. The group checks it in and pays you, typically by ACH or PayPal, usually within days to a couple of weeks.

The group price is typically one of: at retail, a bit below retail (they know you earn rewards), or above retail (“retail plus $10-$30”) when they need units badly. Your profit is the sum of the layers:

LayerTypical rangeNotes
Card rewards1.5% - 5%5% only in bonus categories with caps
Sign-up bonus (SUB)$200 - $900 per cardThe biggest lever early on
Group commission / above-retail0% - 5%Highly variable, best in Q4
Cashback portal0% - 3%Electronics often excluded or 1%
Discounted gift cards / store promos0% - 10%Requires effort, best margins
Losses (cancels, damage, price drops)-0.5% to -2%Always budget this

A worked example (illustrative, not a live deal)

Say a group pays $349 for an iPad that Staples sells for $349. You buy 10 with a Chase Ink Business Cash card, which earns 5% (5x Ultimate Rewards points) at office supply stores on the first $25,000 of combined category spend per account year:

  • Spend: $3,490, shipped to a Delaware address, no sales tax
  • Group payout: $3,490
  • Card rewards at 5%: $174.50
  • That $3,490 also counts toward the Ink Cash sign-up bonus (the public offer in 2026 has been $750 after $6,000 spend in 3 months; it has occasionally been $900 — check the current offer)

One afternoon, $174.50 on top of break-even, plus more than half of a $750+ bonus. Stack a 2% portal on top, or a retail promo like “$50 off with code”, and the margin doubles. Lose one unit to a damaged box and the margin halves. That is the whole game.

What you need

  • 2-4 rewards cards (details below). Business cards matter: most do not add to your Chase 5/24 count once open (though Chase still requires you to be under 5/24 to get approved for an Ink), and they carry the best spend categories.
  • Accounts at 2-3 buying groups. Free to join. Start with one large, long-running group and read recent payout complaints on Reddit before sending a single box.
  • Retailer accounts: Best Buy, Amazon, Walmart, Staples, Target. Best Buy membership tiers and Staples Rewards both help.
  • A cashback portal or two: Rakuten, TopCashback, Capital One Shopping. Check rates every time; electronics are often 0-1%.
  • A deal alert source: the groups themselves (email/Discord alerts), Slickdeals frontpage alerts, and your own price checks.
  • Python 3.10+ for the ledger below. No paid tools required.
  • A spreadsheet-hating attitude toward record keeping. You will log every order.

Cards that actually pull weight (offers change, check current terms)

  • Chase Ink Business Cash (no annual fee): 5% at office supply stores and on internet/cable/phone, 2% at gas and restaurants, first $25,000 combined per year in the 5% and 2% categories each. Staples and Office Depot sell Apple, Samsung and gift cards. This card is the engine of most setups.
  • Chase Ink Business Unlimited (no annual fee): flat 1.5%. Good for non-bonus purchases and its own SUB.
  • Amex Blue Business Plus (no annual fee): 2x Membership Rewards on everyday business purchases up to $50,000 per year.
  • Citi Double Cash (no annual fee): 2% flat (1% when you buy, 1% when you pay).
  • Rotating 5% cards like Chase Freedom Flex: 5% on up to $1,500 per quarter in that quarter categories. Small, but free money when the category matches a retailer.

A note on “business” cards: you do not need an LLC. Sole proprietors can apply using their name and SSN. Reselling electronics to a buying group genuinely is a business, so this is not a stretch. Do not invent revenue numbers on the application; misstating income to a lender is a federal crime. Use your real, honest figures.

Step 1: Pick your first deal (start small)

Join one group, turn on alerts, and for the first two weeks only take deals that meet all of these:

  • At or above retail payout (never “retail minus” until you know your real loss rate)
  • Popular, sealed, low-return-fraud items: Apple (iPad, AirPods, Watch), Nintendo, Samsung storage. Avoid fragile big-screen TVs.
  • Ship-by date at least 10 days out, so a delayed retailer shipment does not leave you holding inventory.
  • You can buy in a 5% or 2%+ category.

Commit for 2-5 units, not 20. Your first goal is to see the whole loop work once: buy, ship, check-in, payout.

Step 2: Stack every layer before you click buy

Run this checklist on every order:

  1. Is it cheaper elsewhere after stacking? A $10 cheaper price at Walmart beats a 2% portal at Best Buy.
  2. Portal: open the retailer through Rakuten/TopCashback in a clean browser session (no other coupon extensions, they can break tracking).
  3. Promo codes and store offers: Best Buy, Target Circle and Staples all run targeted promos. Q4 is when they stack.
  4. Gift cards: discounted retailer gift cards (grocery-store fuel-point promos, occasional warehouse club gift card deals) add a layer, but only if you pay for the gift card in a bonus category too. The Target Circle Card gives 5% off Target purchases, but Target GiftCards are excluded from that discount, and paying with it means you skip your rewards card.
  5. Card: use the card that maxes category earnings, or the one you are working a SUB on.
  6. Ship to the group warehouse directly when the retailer allows it. This saves you shipping and usually sales tax. Some retailers cancel orders shipped to known reshipper addresses; if that happens, ship to yourself and forward.

Step 3: Log everything with a Python ledger

The number one way people lose money here is not bad deals. It is untracked packages: a box goes missing, a group checks in 9 of 10 units, a payment never arrives, and nobody notices for six weeks. The script below is a tiny SQLite ledger that tracks every order, shows what you are still owed, how long your money has been floating, your real profit including card rewards, and progress toward each card SUB.

Save as bg.py:

#!/usr/bin/env python3
"""Buying group ledger: orders, payouts, float, real profit, SUB progress."""
import sqlite3, sys
from datetime import date

DB = "bg.db"
# card name -> (reward rate in the category you use it for, SUB spend target, SUB deadline)
CARDS = {
    "ink_cash":  (0.05, 6000, "2027-01-20"),
    "ink_unl":   (0.015, 6000, "2027-02-10"),
    "bbp":       (0.02, 0, None),
}

db = sqlite3.connect(DB)
db.execute("""CREATE TABLE IF NOT EXISTS orders (
    id INTEGER PRIMARY KEY, day TEXT, item TEXT, qty INT, cost REAL,
    card TEXT, cashback REAL, grp TEXT, tracking TEXT,
    expected REAL, paid REAL DEFAULT 0, paid_day TEXT)""")

def add(item, qty, cost, card, cashback, grp, tracking, expected):
    db.execute("INSERT INTO orders (day,item,qty,cost,card,cashback,grp,tracking,expected)"
               " VALUES (?,?,?,?,?,?,?,?,?)",
               (date.today().isoformat(), item, int(qty), float(cost), card,
                float(cashback), grp, tracking, float(expected)))
    db.commit()

def pay(tracking, amount):
    cur = db.execute("UPDATE orders SET paid = paid + ?, paid_day = ? WHERE tracking = ?",
                     (float(amount), date.today().isoformat(), tracking))
    db.commit()
    print("updated" if cur.rowcount else "tracking not found")

def report():
    today = date.today()
    rows = db.execute("SELECT day,item,qty,cost,card,cashback,grp,tracking,expected,paid"
                      " FROM orders").fetchall()
    owed = profit = 0.0
    spend = {}
    print("OPEN ORDERS (unpaid or short-paid):")
    for day, item, qty, cost, card, cb, grp, trk, exp, paid in rows:
        rate = CARDS.get(card, (0, 0, None))[0]
        spend[card] = spend.get(card, 0) + cost
        if paid + 0.01 >= exp:  # only count fully paid orders as realised
            profit += paid - cost + cost * rate + cb
        else:
            age = (today - date.fromisoformat(day)).days
            owed += exp - paid
            flag = "  <-- CHASE THIS" if age > 21 else ""
            print(f"  {day} {grp:10} {item[:28]:28} x{qty} owed ${exp - paid:,.2f} "
                  f"({age}d) {trk}{flag}")
    print(f"\nTotal still owed to you: ${owed:,.2f}")
    print(f"Realised profit so far (incl. rewards + cashback, excl. SUBs): ${profit:,.2f}")
    print("\nSUB PROGRESS:")
    for card, (rate, target, deadline) in CARDS.items():
        if target:
            done = spend.get(card, 0)
            days = (date.fromisoformat(deadline) - today).days
            print(f"  {card:9} ${done:,.0f} / ${target:,} ({days} days left)")

if __name__ == "__main__":
    cmd, args = sys.argv[1], sys.argv[2:]
    {"add": add, "pay": pay, "report": report}[cmd](*args)

Use it like this:

# bought 10 iPads at $349 on Ink Cash, $0 portal cashback, group pays $349 each
python3 bg.py add "iPad 11 128GB" 10 3490 ink_cash 0 BFMR 1Z999AA10123456784 3490

# group paid out
python3 bg.py pay 1Z999AA10123456784 3490

# see what is owed, profit, and SUB progress
python3 bg.py report

Run report every morning (or put it in cron and email it to yourself). Anything flagged CHASE THIS (unpaid after 21 days) gets a support ticket the same day with the tracking number and delivery proof. Groups resolve most missing check-ins if you raise them fast and have the proof; they get much less helpful after 30-60 days.

Step 4: Scale with SUBs, then with volume

Month 1-2: one group, one or two cards, $3,000-$10,000 volume. Prove your loss rate.

Month 3+: open a new card roughly every 2-3 months and route group purchases to whichever card is working a SUB. A $750 bonus on $6,000 spend is a 12.5% return on top of everything else. This is where year-one profits come from. Add a second group to compare payouts on the same item; the spread between groups on hot Q4 items is often $5-$20 per unit.

Honest cost breakdown

ItemCost
Buying group membership$0
Cards listed above$0 annual fees
Python, SQLite$0
Shipping (when not drop-shipping to the group)$10-$25 per box, many groups provide prepaid labels for larger shipments
Capital / floatYour credit lines; plan for 1.5-2x your monthly volume
Interest$0 if you pay in full. Non-negotiable.
Your time5-15 hours/week at $10k-$30k/month volume

Realistic earnings

Assume roughly 3.25% net margin at low volume (3% card, 0.75% portals/promos, 0.5% group commission, minus 1% losses), dropping as you blow through the 5% caps, plus SUBs averaged over the year. SUBs are limited by how many cards you can get approved for, not by volume, so they do not scale with spend:

Monthly volumeCredit neededMargin (~3.25%)SUBs (avg)Net / month
$10,000~$15k-$20k$325 (~3.25%)$250~$575
$30,000~$45k-$60k$750 (~2.5%)$300~$1,050
$100,000~$150k+$2,000 (~2%)$300~$2,300

These are estimates before your time and before any shutdown or clawback. Your first months will likely be lower while you learn your real loss rate.

People claiming $5k/month and up reportedly run $100k-$200k of monthly volume across many cards (often several household members cards), have every 5% cap maxed by early in the year, and treat it as a full-time job with mistakes measured in thousands. Also note: the 5% categories cap fast. Ink Cash 5% stops at $25,000 per year, so at high volume your blended rate drifts toward 1.5-2%, and Q4 commissions do the heavy lifting.

Risks: shutdowns, clawbacks, and groups that vanish

Card issuer shutdowns. This is the big one. Chase and Amex both shut down customers for “abuse” of rewards. Amex can trigger a financial review (they ask for tax returns; if you refuse, they close all accounts and may claw back points). Chase has closed entire relationships for heavy, resale-pattern spend. Mitigation people use: never run 100% of a card limit, pay before the statement closes, keep normal organic spend on every card, and spread volume across issuers.

Rewards clawbacks. Issuers can revoke points earned on transactions they deem not “purchases”, and have done it with gift card spend in particular. Redeem points regularly instead of hoarding a 500k balance.

Retailer bans. Best Buy, Walmart and Amazon all cancel orders over quantity limits and close accounts tied to reseller patterns (same warehouse address across many accounts is the classic tell). Opening a pile of fake retailer accounts to get around limits is where this stops being grey and starts being a ToS violation that gets everything closed; do not build your volume on it.

Buying group risk. You are an unsecured creditor until they pay. Small groups have gone under owing members money. Diversify across groups, never let one group owe you more than you can lose, and chase late payments immediately.

Taxes. The profit, commissions, and arguably some rewards are reportable income. You may get a 1099 from a group or a 1099-K from a payment processor like PayPal; even if you get nothing, report it. Talk to a tax preparer once you pass a few thousand dollars.

Interest and float. A delayed payout that crosses your statement date means paying the card from your own cash. If you do not have that cash, you are carrying a balance at 25%. Keep a cash buffer equal to at least two weeks of volume.

Reality check: what does not work

  • Chasing “retail minus” deals for rewards alone with a 1.5% card. After losses, you are working for free.
  • Starting big. Your first $20,000 has the highest error rate. Lost boxes, wrong colours, missed ship-by dates.
  • Ignoring the ship-by date. Miss it and you may be stuck with 10 units at a lower price or none at all.
  • Using one card for everything. Concentration is exactly what triggers reviews and burns through your 5% cap by February.
  • Hoarding points. One shutdown and they are gone.
  • Treating payouts as profit. Payouts are just your money back. Profit is only the stacked layers; the ledger exists so you see that number honestly.
  • Lying anywhere. On card applications, on retailer accounts, to the group about item condition. Every real loss story in this niche starts there.

Start today

  1. Check your available credit and score. Under ~$10k available or a carried balance: do not start.
  2. Join one established buying group and read the last month of payout complaints about it.
  3. Set up bg.py and log your first deal before you buy it.
  4. Take one at-or-above-retail deal, 2-5 units, paid with your best category card.
  5. Wait for the payout, run report, and look at your real profit number.

If that loop works once without drama, you have eight weeks of Q4 promos ahead of you. If it does not, you found out for the price of a few iPads at break-even.