Most money order sellers will not take credit cards directly
You cannot buy a money order with a credit card at most locations. Banks, post offices, grocery stores, and check-cashing services typically accept cash, debit cards, and sometimes traveler's checks — but not credit cards. A few exceptions exist, and some workarounds are possible, but they come with costs and limitations you should understand before you try them.
The reason is straightforward: money orders are a payment method themselves, and sellers treat them like cash sales. Accepting a credit card to sell you a money order creates a chain of debt that the seller wants to avoid. You would be borrowing from your credit card company to buy a may provide payment instrument, and the seller bears the risk if your card is disputed or declined after the transaction.
Key Takeaways
- Post offices, banks, and most retail locations do not accept credit cards to purchase money orders, though they accept cash and debit cards.
- Some online money order services and wire transfer platforms allow credit card payment, but they charge higher fees than in-person purchases.
- You can withdraw cash from a credit card at an ATM using a cash advance, then use that cash to buy a money order, but cash advances carry interest charges that start when ready.
- A debit card is the simplest alternative if you have one, since most money order sellers accept debit cards at the same price as cash.
- Wire transfers and bank transfers may cost less than money orders and credit card fees combined, depending on the amount and destination.
Where you might find credit card acceptance
A small number of online money order services will accept credit cards, including Visa, Mastercard, and American Express. These services typically charge between $3 and $10 per money order, compared to $1 to $2 at a post office or bank. You pay the credit card processing fee on top of the money order fee, so your total cost rises quickly.
Some wire transfer platforms like Western Union also accept credit cards for certain transactions, though they frame these as wire transfers rather than money orders. The fees are similar to online money order services — $5 to $15 depending on the amount and destination — and you still pay credit card processing costs.
Before you use an online service, confirm that the recipient can cash the money order where they are located. Not all retailers accept money orders from online sellers, and some online services have geographic limits on where their money orders can be cashed.
Using a cash advance to buy a money order
You can withdraw cash from your credit card at an ATM using a cash advance, then use that cash to buy a money order at a post office, bank, or retail location. This method works, but it is expensive. Most credit card companies charge a cash advance fee of 3 to 5 percent of the amount withdrawn, plus interest that begins accruing when ready — not at the end of your billing cycle like regular purchases.
The interest rate on cash advances is typically higher than the rate on regular purchases. If you withdraw $500 as a cash advance at a 5 percent fee plus 25 percent annual interest, you pay $25 upfront and then $10.42 per month in interest if you do not pay it back when ready. Add the $2 money order fee, and your total cost is $37.42 for a $500 money order.
This method only makes sense if you have no other payment option and need the money order urgently. For most situations, a debit card or alternative payment method is cheaper.
Debit cards as a simpler alternative
If you have a debit card linked to a bank account, use it instead. Post offices, banks, grocery stores, and check-cashing services accept debit cards at the same price as cash — typically $1 to $2 per money order. There are no additional fees, no interest charges, and no processing delays.
A debit card works because the money comes directly from your account, just like cash. The seller has no risk of a chargeback or dispute, so they treat it the same way they treat cash payments. If you do not have a debit card, you can open a basic checking account at most banks or credit unions with minimal requirements.
When a wire transfer or bank transfer might be cheaper
For larger amounts, a wire transfer or ACH bank transfer may cost less than a money order plus credit card fees combined. A domestic wire transfer through a bank typically costs $15 to $30, but if you are sending $1,000 or more, that is cheaper than a $5 online money order fee plus a 3 percent credit card processing fee ($30 total).
ACH transfers are slower — they take one to three business days — but many banks offer them free or for $1 to $3. If the recipient can wait a few days and has a bank account, an ACH transfer is often the cheapest option. Wire transfers are faster (same day or next day) but cost more.
Ask the person you are paying whether they can receive a wire transfer or ACH transfer instead. If they can, compare the total cost against a money order purchase. For amounts under $500, a money order is usually cheaper; for amounts over $1,000, a wire transfer often is.
What to do if you have no debit card and no cash
If you cannot use a debit card and do not have cash, your options narrow. A cash advance is the most direct route, but it is expensive. Before you use one, explore these alternatives: ask the person you are paying if they accept a check, bank transfer, or payment app like Venmo or PayPal; visit a bank or credit union and ask if they offer a short-term loan or line of credit at a lower rate than a cash advance; or ask a friend or family member to lend you the cash to buy the money order, then repay them from your credit card or account later.
If none of those work, a cash advance followed by a money order purchase is your fallback. Calculate the total cost (cash advance fee plus interest plus money order fee) before you proceed, so you know exactly what you are paying.
Frequently Asked Questions
Can I buy a money order online with a credit card and have it mailed to me?
Yes, some online money order services accept credit cards and mail the money order to you or the recipient. Fees are higher than in-person purchases — typically $5 to $10 per money order plus credit card processing costs. Delivery takes three to seven business days, so this method is slower than buying in person.
Will the post office let me use a credit card if I ask?
No. The U.S. Postal Service does not accept credit cards for money order purchases at any location. They accept cash, debit cards, and traveler's checks only. This policy is consistent across all post offices.
What if my credit card has a rewards program — do I earn points on a money order?
If you use an online money order service that accepts credit cards, you may earn rewards points on the purchase. However, the higher fees (often $5 to $10 per money order) usually outweigh the value of the rewards. A $1 to $2 money order at a post office with a debit card is almost always cheaper than earning points on a $7 online purchase.
Is there a limit to how much I can withdraw as a cash advance?
Yes. Your credit card company sets a cash advance limit, which is often lower than your regular credit limit. It may be $500, $1,000, or higher depending on your card and account history. Check your card's terms or call the number on the back of your card to find out your limit before you visit an ATM.
Can I use a prepaid credit card to buy a money order?
Most prepaid cards work like debit cards at the point of sale, so post offices and banks should accept them for money order purchases. However, some prepaid cards are flagged as credit cards in the system, and sellers may decline them. Call the prepaid card company or test it at a post office before you rely on it for a money order purchase.