Most places won't sell you a money order with a credit card, but a few routes exist

You cannot walk into most convenience stores, banks, or post offices and hand over a credit card to buy a money order. The vast majority of money order sellers — including the U.S. Postal Service, Western Union, MoneyGram, Walmart, and grocery store chains — accept only cash, debit cards, or bank transfers. A credit card will be declined at the register.

The reason is straightforward: money orders are meant to be a safer alternative to cash for people who don't have bank accounts or don't want to mail cash. Sellers treat them like cash themselves. Accepting credit cards would turn a money order into a credit transaction, which defeats the purpose and creates fraud risk for the seller.

That said, you do have a few workarounds if you need a money order and only have a credit card available. None of them are direct, but they exist.

Key Takeaways

  • The U.S. Postal Service, Western Union, MoneyGram, Walmart, and most banks will not accept a credit card to purchase a money order.
  • You can withdraw cash from an ATM using your credit card (usually with a cash advance fee), then use that cash to buy a money order.
  • Some banks and credit unions let you transfer money directly to another person's account, which may work instead of a money order for bill payments or rent.
  • A few online money order services accept credit cards, but they charge significantly more than in-person purchases and are slower.

Using a cash advance to get the money you need

The most direct route is to use your credit card to withdraw cash from an ATM, then use that cash to buy the money order. Most ATMs accept credit cards and will dispense cash on the spot. This is called a cash advance, and it costs you: your credit card issuer will charge a fee (usually 3 to 5 percent of the amount withdrawn, with a minimum of $2 to $10) plus interest that starts accruing when ready, often at a higher rate than your regular purchase APR.

If you need a $500 money order, a cash advance might cost you $15 to $25 in fees alone, plus interest. That makes it an expensive option, but it works if you have no other way to get cash in the moment.

Once you have the cash, you can buy a money order at any post office, Western Union location, MoneyGram agent, Walmart, or most grocery stores and convenience stores. The money order itself costs between $1 and $3 depending on the amount and the seller.

Bank transfers and bill pay as alternatives to money orders

Before you go through the cash advance route, ask yourself whether you actually need a physical money order. Many situations that used to require a money order can now be handled with a bank transfer or online bill payment, which you can often set up with a credit card.

If you're paying rent, a utility bill, or a contractor, ask whether they accept bank transfers, Venmo, PayPal, or online bill pay. Many landlords and service providers now have online payment portals where you can pay with a credit card directly. If the recipient has a bank account, you may be able to send them money through your bank's bill pay service without ever needing a money order.

A money order is still useful if the recipient doesn't have a bank account, if you need a paper receipt for legal reasons, or if you're sending money through the mail to someone you don't know well. But if the person or business can accept a digital payment, that's usually faster and cheaper than any money order route.

Online money order services that accept credit cards

A handful of online services will sell you a money order and accept a credit card, including MoneyGram online, some Western Union locations, and a few smaller platforms. These services are real, but they have significant drawbacks.

First, they cost more. An online money order typically costs $5 to $15 depending on the amount, compared to $1 to $3 at a physical location. Second, they are slower — you order online, the service prints and mails the money order to you, and then you mail it to the recipient. The whole process takes a week or more. Third, you still have to pay any credit card fees your issuer charges for the transaction, which may include a cash advance fee if the service codes it that way.

Use an online money order service only if you have time to wait and the recipient cannot accept a direct bank transfer or online payment.

What happens if you try to use a credit card at the register

If you walk into a post office, Walmart, or convenience store and try to pay for a money order with a credit card, the transaction will be declined. The register system straightforward will not process credit cards for money orders — it's a restriction built into their payment systems, not a judgment call by the cashier.

Some locations may offer to let you use a debit card instead, which works because a debit card pulls money directly from your bank account rather than creating a line of credit. If you have a debit card, that's your fastest option. If you don't, the cash advance route is your next best choice.

Why credit card companies and money order sellers avoid this

Money order sellers won't accept credit cards because they see themselves as serving people who need an alternative to credit. If someone is buying a money order, the seller assumes they either don't have a bank account or don't want to use one. Accepting credit cards would contradict that purpose and would also create liability — if a money order is purchased with a stolen credit card, the seller could be held responsible.

Credit card issuers also discourage this use. They view money orders as a form of cash-like transaction, similar to gambling or wire transfers, and many card agreements restrict or charge extra for these transactions. Even when a cash advance is technically allowed, the fees and interest rates are designed to discourage the behavior.

Comparing your options side by side

RouteCostSpeedWhere to do it
Cash advance at ATM + in-person money order$15–$25 in fees, plus interestSame dayATM, then post office or Walmart
Bank transfer or bill payFree to $31–3 business daysYour bank's website or app
Online money order service$5–$15 plus shipping7–10 business daysMoneyGram.com or Western Union online
Debit card at register$1–$3Same dayPost office, Walmart, convenience store

Frequently Asked Questions

Will the post office let me use a credit card if I explain my situation?

No. The restriction is in the payment system itself, not a policy the clerk can override. Even if you explain that you need the money order urgently, the register will decline a credit card. Your options are cash, a debit card, or a money order purchased through a different method.

Does a cash advance count as a purchase or a withdrawal?

A cash advance is treated as a withdrawal, not a purchase. You pay a separate fee (not the same as a purchase fee), and interest accrues when ready at a higher rate than your regular APR. It will show up on your statement as a cash advance, which may affect your credit utilization ratio.

Can I use a credit card to buy a money order online and have it mailed to me?

Yes, some online services accept credit cards for this. MoneyGram and Western Union both offer online ordering. However, the money order is mailed to your address, so you then have to mail it to the recipient — the whole process takes a week or more and costs significantly more than buying in person.

What if I use a prepaid credit card instead of a regular credit card?

Most prepaid cards are treated the same way as regular credit cards at the register — they will be declined for money order purchases. However, some prepaid cards are linked to a bank account and function like debit cards, in which case they may work. Check your card's documentation or ask the issuer whether it can be used as a debit card.

Is there any money order seller that accepts credit cards directly?

Not at physical locations. Online services like MoneyGram.com and some Western Union locations accept credit cards, but they charge more and take longer. No post office, Walmart, convenience store, or in-person Western Union or MoneyGram location accepts credit cards for money orders.