Skip to main content

How to Buy a Money Order With a Credit Card

Most places won't sell you a money order with a credit card directly

When you walk into a store or post office to buy a money order, the cashier will ask for cash or a debit card — not a credit card. Money order sellers treat credit cards differently because they classify a money order as a cash advance, which comes with higher fees and different rules than a regular purchase.

That said, you have real options. You can use your credit card to get cash first, then buy the money order with that cash. You can also use certain payment apps that accept credit cards and let you send money directly. The route you choose depends on what fees you're willing to pay and how quickly you need the money order.

Key Takeaways

  • Most retailers and the post office will not accept a credit card to buy a money order because they treat it as a cash advance.
  • You can withdraw cash from an ATM using your credit card, then use that cash to buy a money order at a post office, grocery store, or check-cashing service.
  • Some payment apps like PayPal and Venmo let you send money using a credit card, which may work instead of a physical money order depending on what you're paying for.
  • Credit card cash advances come with immediate interest charges and higher fees than regular purchases, so compare the total cost before you decide.
  • If you need a money order for a landlord, utility company, or government agency, call first to confirm they accept money orders and whether digital payments work instead.

Getting cash from an ATM to buy a money order

The most straightforward path is to use your credit card at an ATM to withdraw cash, then use that cash to buy the money order. Walk into any bank, credit union, or ATM that displays your card's logo (Visa, Mastercard, American Express, or Discover). Insert your card, enter your PIN, and withdraw the amount you need plus a small buffer for the money order fee.

Know what this costs you. A credit card cash advance typically charges a fee of 3 to 5 percent of the amount withdrawn, and interest starts accruing immediately — not at the end of the billing cycle like a regular purchase. If you withdraw $500, you might pay $15 to $25 just to get the cash, plus interest from day one. Check your credit card's terms or call the number on the back to find out your exact cash advance fee and interest rate before you withdraw.

Once you have the cash, you can buy a money order at the post office, Walmart, grocery stores like Kroger or Safeway, or check-cashing services. Money order fees typically run $1 to $3 depending on the amount and where you buy it. Add that to your cash advance cost, and you're looking at $16 to $28 total for a $500 money order.

Using payment apps instead of a physical money order

If the person or business you're paying accepts digital payments, you may not need a physical money order at all. PayPal, Venmo, Square Cash, and Google Pay all let you send money using a credit card. The recipient gets the money in their account within one to three business days, and you avoid the cash advance fees entirely.

The catch: not every business or person accepts these apps. Landlords often don't. Utility companies usually don't. Government agencies almost never do. Before you go this route, contact whoever you're paying and ask if they accept PayPal, Venmo, or another app. If they do, you can send the money directly from your credit card without withdrawing cash or buying a money order.

If you do use an app, check whether they charge a fee for credit card payments. PayPal charges 2.2 percent plus $0.30 for credit card transfers. Venmo doesn't charge a fee to send money to a friend, but does charge 3 percent if you use a credit card to send to a business. Square Cash and Google Pay vary by transaction type. Compare these fees to the cost of a cash advance plus money order fee — sometimes the app is cheaper, sometimes it's not.

Buying a money order at different retailers

Once you have cash in hand, you have several places to choose from. The post office sells money orders up to $1,000 each and charges around $1.45 to $2.00 per money order, depending on the amount. Walmart sells money orders up to $1,000 for about $0.88 to $1.25. Grocery stores like Kroger, Safeway, and Albertsons typically charge $1 to $2. Check-cashing services charge more — often $2 to $5 — but are open longer hours and on weekends.

If you need a money order larger than $1,000, you'll have to buy multiple money orders. A $2,500 payment means buying three money orders: two for $1,000 and one for $500. This increases your total fee. Some check-cashing services sell larger money orders, so call ahead if you need more than $1,000 in a single money order.

What to bring when you buy a money order

Bring your cash and the information of who you're paying. You'll need to fill out a form with the recipient's name and address. If you're paying a landlord, have their name and mailing address ready. If you're paying a utility company, have the account number. The cashier will fill in the amount, you'll sign it, and you'll get a receipt. Keep the receipt until the money order clears — it's your proof of payment if something goes wrong.

Some retailers ask for ID when you buy a money order, especially for larger amounts. Bring a driver's license or state ID just in case. The post office always asks for ID.

Comparing your total cost

Before you commit to using a credit card to buy a money order, do the math. Add up the cash advance fee, the interest you'll pay (even for a few days), and the money order fee. For a $500 money order, you might pay $15 to $25 in cash advance fees, a few dollars in interest, and $1 to $2 for the money order itself — total around $18 to $27.

Compare that to other options. If you have a debit card, use that instead — no cash advance fee, no interest, just the money order fee. If you have a bank account, ask your bank about issuing a cashier's check instead, which often costs less than a money order. If the recipient accepts digital payment, use an app and avoid the cash advance entirely. The credit card route should be your last choice, not your first.

Frequently Asked Questions

Can I buy a money order with a credit card at Walmart?

No, Walmart requires cash or debit card for money orders. However, you can use your credit card at a Walmart ATM to withdraw cash, then buy the money order with that cash. The ATM fee plus cash advance fee will add to your total cost.

Will the post office let me use a credit card for a money order?

No, the post office only accepts cash, debit card, or check. Like other retailers, they treat credit card purchases of money orders as cash advances and won't process them at the counter.

Is there a limit to how much I can withdraw from an ATM with my credit card?

Yes, your credit card issuer sets a daily cash advance limit, which is usually lower than your credit limit. Call the number on the back of your card to find out your limit before you go to the ATM. You may not be able to withdraw your full money order amount in one transaction.

What happens if I lose a money order I bought with cash from a credit card advance?

Keep your receipt. If the money order is lost or stolen before it's cashed, contact the issuer (post office, Walmart, or wherever you bought it) with your receipt. They can issue a replacement, though the process takes time. Without the receipt, you have no proof you bought it.

Is it cheaper to use a payment app than to buy a money order with a credit card?

It depends on the app and the amount. PayPal charges 2.2 percent plus $0.30 for credit card transfers. Venmo charges 3 percent for credit card payments to businesses. A $500 money order via credit card cash advance might cost $18 to $27 total. A $500 PayPal transfer costs about $11. Compare the exact fees for your situation before you decide.