Walmart will not sell you a money order with a credit card

Walmart's money order service accepts cash and debit cards only. If you try to pay with a credit card at the money services desk, the transaction will be declined. This is Walmart's policy across all U.S. locations.

The restriction exists because money orders are a cash-equivalent product. Walmart treats them the same way most financial institutions do: as a method to move money that requires immediate, may provide payment. A credit card creates a delayed payment obligation, which introduces risk that the card issuer might decline the charge or the cardholder might dispute it after the money order is already in someone else's hands.

If you need a money order and only have a credit card available, you have other routes. Understanding which ones work and which ones don't will save you a trip.

Key Takeaways

  • Walmart money order counters accept only cash and debit cards, not credit cards.
  • You can withdraw cash from an ATM using your credit card (though fees apply), then use that cash to buy the money order.
  • Banks, credit unions, and post offices also sell money orders and may have different payment rules than Walmart.
  • Money order fees at Walmart range from about $0.70 to $1.25 depending on the amount, plus any ATM withdrawal fee if you need cash first.
  • If your credit card has a cash advance feature, using it to get cash for a money order typically costs more in fees than other options.

Why Walmart and other retailers won't take credit cards for money orders

Money orders are treated as cash products by federal regulation and by merchant policy. Once Walmart sells you a money order, the transaction is final—the money is out of their hands and into yours. If they accepted a credit card and the card was later disputed or declined by the issuer, Walmart would have already handed over the money order with no way to recover it.

This is different from buying a physical item. If you buy a TV with a credit card and dispute the charge, Walmart can take the TV back. A money order cannot be recovered once it leaves the counter. That's why Walmart, Target, CVS, and most other retailers that sell money orders require cash or debit payment only.

The same logic applies to wire transfers, prepaid cards, and gift cards sold at retail. These are all cash-equivalent products, and retailers protect themselves by requiring immediate, irreversible payment.

Getting cash from your credit card to buy a money order

If you have a credit card but no cash or debit card, you can withdraw cash from an ATM using your credit card, then use that cash at Walmart's money services desk. This works, but it costs money.

A credit card cash advance typically charges a fee of 3% to 5% of the amount withdrawn, with a minimum fee of $3 to $5. If you withdraw $200 to buy a $200 money order, you might pay $6 to $10 just to get the cash. On top of that, most credit cards charge interest on cash advances immediately—there is no grace period like there is for purchases. Interest accrues from the day you withdraw until you pay it back.

For a $200 money order, this route costs significantly more than the money order fee itself (which is under $1.25 at Walmart). It makes sense only if you have no other way to access cash.

Money order options outside Walmart

If you want to avoid the cash withdrawal fee, check whether your bank or credit union sells money orders. Many do, and some allow you to pay with a debit card or even a credit card tied to your account. Call ahead to confirm their payment methods before you visit.

The U.S. Postal Service also sells money orders and accepts cash and debit cards at post office counters. USPS money orders cost $1.45 for amounts up to $500 and $1.95 for amounts from $500.01 to $1,000. Like Walmart, USPS does not accept credit cards.

If you have a checking account, another option is to write a check instead of buying a money order. A check costs nothing and can be written with any payment method you have access to. Some recipients prefer checks, though money orders are more secure because they cannot bounce.

When a debit card is easier than a credit card

If you have a debit card linked to a checking account, use that at Walmart instead of trying to convert your credit card to cash. Debit transactions are instant and carry no fees beyond what your bank charges for the card itself.

If you don't have a debit card but have a credit card, opening a checking account at a bank or credit union is usually faster and cheaper than paying cash advance fees. Many banks offer accounts with no minimum balance and no monthly fee. You can open one online and receive a debit card within 5 to 10 business days.

Money order fees and limits at Walmart

Walmart's money order service has clear limits and pricing. You can buy a single money order for up to $1,000. The fee structure is: $0.70 for money orders up to $1,000. This is one of the lowest fees available—USPS charges $1.45 to $1.95, and many banks charge $1 to $3.

Walmart money orders are available at the money services desk during store hours. You'll need the recipient's name and address, and you'll need to provide your name and address as well. The process takes about 5 to 10 minutes.

Frequently Asked Questions

Can I use a prepaid card to buy a money order at Walmart?

Yes, if the prepaid card is branded as a Visa or Mastercard debit card. Walmart's money services desk treats prepaid cards the same as regular debit cards. If the prepaid card is a store-specific card (like a Walmart gift card), it will not work for money orders.

What if I need a money order after Walmart's money services desk closes?

Most Walmart locations have money services available during regular store hours, typically 8 a.m. to 8 p.m. If you need a money order outside those hours, check whether a 24-hour grocery store or pharmacy in your area sells them. Some do, though availability varies by location.

Will my credit card issuer charge me a cash advance fee if I withdraw cash to buy a money order?

Yes. Any cash withdrawal from an ATM using a credit card is treated as a cash advance and incurs both a fee (usually 3% to 5%) and immediate interest charges. This is separate from the money order fee itself.

Can I buy a money order online with a credit card and pick it up at Walmart?

No. Walmart does not offer online money order purchases. Money orders must be bought in person at the money services desk with cash or a debit card.

Is there a limit to how many money orders I can buy at once?

Walmart allows you to buy up to one money order per transaction at the money services desk, with a maximum value of $1,000 per order. If you need multiple money orders, you can buy them in separate transactions.