Most money order sellers won't take credit cards, but a few workarounds exist
Most places that sell money orders — post offices, grocery stores, check-cashing shops, Walmart — do not accept credit cards. They want cash or a debit card because money orders are meant to be a safe way to send money without revealing your bank account, and credit card transactions create a paper trail that defeats that purpose. However, you have a few options if you want to use a credit card to get a money order.
The most straightforward path is to use your credit card to withdraw cash at an ATM, then use that cash to buy the money order. This works at any ATM that accepts your card. Some credit card issuers charge a cash advance fee (often 3 to 5 percent of the amount) and start charging interest when ready, so check your cardholder agreement first. A debit card withdrawal costs nothing and is faster, if you have one.
A second option is to buy a money order online through a service like MoneyGram or Western Union, which do accept credit cards for online purchases. You then pick up the physical money order at a retail location, or in some cases have it mailed to you. This route costs more — online fees run higher than in-person fees — but it works if you cannot get to a store.
Key Takeaways
- Post offices, Walmart, grocery stores, and check-cashing shops that sell money orders in person almost never accept credit cards directly.
- You can withdraw cash from an ATM using your credit card, then buy a money order with that cash, but most credit card issuers charge a cash advance fee and interest.
- MoneyGram and Western Union allow you to purchase money orders online with a credit card and pick them up at a retail location.
- Using a debit card or paying cash avoids fees and interest charges that come with credit card cash advances.
Why credit cards are rarely accepted for money orders
Money orders exist partly because they do not require you to share your bank account number with the recipient. A credit card transaction creates a record that links you to the purchase, which undermines that privacy benefit. Retailers also know that people who use credit cards for money orders are often in financial difficulty, and they want to avoid the liability of processing a transaction that might later be disputed or reversed.
Additionally, money order sellers operate on thin margins. A money order fee is typically $1 to $3, and credit card processing fees would eat into that profit. Accepting only cash and debit cards keeps their costs down.
Using an ATM cash advance to buy a money order
This is the simplest method if you have a credit card and access to an ATM. Find an ATM that displays your card's logo (Visa, Mastercard, American Express, or Discover), insert your card, select "Withdraw Cash," and take out the amount you need plus a little extra for the money order fee. Then go to any money order seller and pay with the cash.
The catch is cost. Most credit card issuers treat ATM withdrawals as cash advances, which means you pay a fee upfront (usually 3 to 5 percent of the amount withdrawn) and interest starts accruing when ready at a higher rate than your regular purchase APR. If you withdraw $500, you might pay $15 to $25 in fees alone, plus interest from day one. Check your cardholder agreement or call the number on the back of your card to confirm whether your issuer charges a cash advance fee and what that rate is.
If you have a debit card, use that instead. Debit card ATM withdrawals are not cash advances and do not trigger fees or interest.
Buying money orders online with a credit card
MoneyGram and Western Union both let you order a money order online using a credit card. You create an account, enter the recipient's information, choose the amount, and pay with your credit card. The money order is then available for pickup at a participating retail location (usually within hours) or can be mailed to the recipient.
Online money order fees are higher than in-person fees. A typical in-person money order costs $1 to $3, but buying online through MoneyGram or Western Union often costs $5 to $15 depending on the amount. You are paying for the convenience of not having to visit a store and for the credit card processing.
This method works well if you cannot reach a money order seller during business hours or prefer not to carry cash. Read the terms carefully — some online orders take 1 to 3 business days to process, so plan ahead if you have a important date.
Using a prepaid card or gift card as an alternative
If you have a prepaid card or a gift card with a Visa or Mastercard logo, you can use it to buy a money order in person at most retailers. Prepaid cards function like debit cards and are accepted where regular debit cards are. This avoids the cash advance fees and interest that come with a credit card, and it works when ready without needing to visit an ATM first.
The downside is that you need to have already loaded money onto the prepaid card. If you do not have one, setting one up takes time and may involve fees of its own.
What happens if you try to use a credit card anyway
If you walk into a post office, Walmart, or grocery store and try to pay for a money order with a credit card, the cashier will tell you they cannot process it. Their system straightforward will not accept credit cards for that transaction. You will be asked to pay with cash, a debit card, or a prepaid card instead. There is no way around this at the point of sale.
Some check-cashing shops or smaller retailers may have different policies, so it is worth asking, but expect to be turned down. The safest assumption is that you need cash or a debit card.
Comparing your options side by side
| Method | Cost | Time to Complete | Requires |
|---|---|---|---|
| ATM cash advance + in-person purchase | 3–5% cash advance fee + money order fee ($1–$3) + interest | 15–30 minutes | Credit card, ATM access, nearby money order seller |
| Online MoneyGram or Western Union | $5–$15 online fee | Hours to 1–3 business days | Credit card, internet access, retail pickup location |
| Debit card at in-person seller | Money order fee only ($1–$3) | 10–15 minutes | Debit card, nearby money order seller |
| Prepaid or gift card | Money order fee only ($1–$3) | 10–15 minutes | Prepaid card with funds loaded, nearby money order seller |
Frequently Asked Questions
Will the post office take my credit card for a money order?
No. The U.S. Postal Service does not accept credit cards for money order purchases at the counter. You can pay with cash, a debit card, or a prepaid card. If you want to use a credit card, you must withdraw cash at an ATM first or order online through MoneyGram or Western Union.
Can I use a credit card to buy a money order at Walmart?
Walmart's money order service does not accept credit cards in-store. You can use cash, a debit card, or a prepaid card. Walmart does not offer online money order purchases through its own system, but you can use MoneyGram or Western Union online and pick up at a Walmart location.
Is there a fee for using a credit card cash advance to get a money order?
Yes. Most credit card issuers charge a cash advance fee of 3 to 5 percent of the amount withdrawn, plus interest that starts accruing when ready at a higher rate than regular purchases. A $500 withdrawal could cost $15 to $25 in fees alone. Check your cardholder agreement for your specific rates.
What is the cheapest way to buy a money order with a credit card?
The cheapest way is to withdraw cash at an ATM and pay in person, but only if your credit card issuer does not charge a cash advance fee — which most do. If you have a debit card or prepaid card, use that instead. If you must use a credit card, online MoneyGram or Western Union is often cheaper than paying a cash advance fee, depending on the amount.
Can I order a money order online and have it mailed to me?
Yes. MoneyGram and Western Union both offer mailing options. You order online with your credit card, and the money order is mailed to the recipient or to you. Mailing takes longer — usually 5 to 10 business days — and costs more than in-person pickup, so confirm the timeline before ordering if you have a important date.