How to check Merchant Category Codes (MCCs) before making a purchase

No more guesswork. Here's how to verify the MCC of a particular merchant before spending a single cent.

The Merchant Category Code (MCC) is the all-important four-digit number that describes a merchant’s primary business activities. Banks offer bonus miles based on MCCs, so the right MCC can be all the difference between earning a ton of miles on a big ticket purchase, or walking away empty-handed.

Finding the MCC before making a purchase has always been the holy grail for miles chasers, and while the loss of the Visa Supplier Locator in 2021 was a big blow, we thankfully now have three superior options to choose from.

Method Ease of Use Reliability
HeyMax ●●●
📱 Instarem app ●● ●●
🤖 DBS digibot

Here’s how each of these works, as well as potential pitfalls to take note of.


✓  Key Advantages
  • Extremely simple UX
  • Can search for merchants without making test charges 
🞭 Key Disadvantages
  • Cannot provide definitive answer for merchants which process transactions under a range of MCCs
  • Provides MCCs based on Visa; there is a slight (though remote) chance that Mastercard codes differently

HeyMax is the most idiot-proof solution for looking up MCCs: just type in the merchant and hit enter. There’s no need to block a card, test a transaction, or even have access to the merchant. 

While it’s generally reliable, it’s less useful in situations where a merchant processes transactions under a range of MCCs (e.g. e-commerce sites like Amazon, Lazada, Qoo10, Shopee). It can list all the potential MCCs, but can’t tell you exactly which one will be used. 

HeyMax displaying all the potential MCCs for Lazada

In these cases, it’s better to use the Instarem or DBS digibot methods outlined below so you can be certain that whatever appears there is how the actual transaction will code. 

Also note that HeyMax taps the Visa API to look up MCCs. There is a slight (though remote) chance that Mastercard may use a different MCC. 

❓ Does that really happen?

It’s very rare you’ll have a situation where Visa and Mastercard throw up different MCCs, but it’s not impossible.

Cast your mind back to early 2020, when Mastercard classified GrabPay top-ups as MCC 6540 (POI Funding Transactions), but Visa classified it as MCC 7399 (Business Services Not Elsewhere Classified). This meant you could earn 4 mpd on GrabPay top-ups with the Citi Rewards Visa, but not the Mastercard!

That didn’t last forever, of course, but it’s just an example of how the two card networks can sometimes sing a different tune.

Instarem app

✓  Key Advantages
  • Fewer steps than digibot method
🞭 Key Disadvantages
  • Declined transactions will not show up in the Activity tab for some users
  • Provides MCCs based on Mastercard; there is a slight (though remote) chance that Visa codes differently

Amaze Cardholders can use the Instarem app to check the MCC of a merchant by first putting a temporary block on their Amaze Card (tap on Card > Lock Card).

💡 Alternative method
If you prefer not to block your card, you can also choose the Amaze Wallet as your funding source, provided it has an insufficient balance to carry through with the transaction.

After this, attempt to pay the merchant. The transaction will fail, of course, but you can then go back to the Instarem app, tap on Activity, and see the failed transaction’s details- including MCC.

Screenshot: Xris

If this method does not work, an alternative option is to disable in-store and online purchases via Card > Manage.

Then attempt the transaction, and after it fails you should see it under the Activity tab. 

Also note that Amaze is a Mastercard, and there is a slight (though remote) chance that Visa may use a different MCC. 

DBS digibot

✓  Key Advantages
  • 100% accuracy
🞭 Key Disadvantages
  • Relatively more steps than the HeyMax or Instarem methods

The DBS digibot requires relatively more steps than HeyMax or Instarem, but will also provide the most accurate information. Simply put: there is no chance you’ll get the wrong MCC if you follow the steps properly.

The first step is to temporarily block a DBS card via the DBS digibank app. You can do this by tapping More on the bottom right hand corner, then scrolling down until you see Payment Controls.

Select the card you wish to use, then toggle the card lock option. Ensure the card gets greyed out, with a lock symbol appearing on top.

Now go to the merchant and attempt to make the transaction. It will fail, since your card is locked- that’s exactly what we want to happen.

Return to the DBS digibank app or login to DBS ibanking and summon the digibot. 

  • For the app, tap the question mark on the top right corner and scroll down to tap “Ask digibot”
  • For desktop, click the digibot icon at the bottom right corner

Navigate to Check my Recent Transactions > Credit Cards > Select the card you used > View Transaction History > Declined Transactions.

You’ll then see your failed transaction, together with the MCC. 

Now that you know the MCC, you can proceed to unblock the card and make the transaction for real (or use a different bank’s card, whichever is more suitable).

Do remember that Visa and Mastercard may, in rare cases, use different MCCs. So if you’re blocking a Mastercard to make the test transaction, make sure the final card you use is also a Mastercard (and vice versa).


Opaque MCCs are a thing of the past now, with cardholders having multiple ways of verifying an MCC before spending a single cent.

While it might not be worth the hassle to do with a S$5 coffee, I would certainly make a point of checking before swiping any big ticket purchase. 

Aaron Wong
Aaron Wong
Aaron founded The Milelion to help people travel better for less and impress chiobu. He was 50% successful.

Similar Articles



Notify of

Inline Feedbacks
View all comments
Eugene L

One thing about the Heymax app is that it logs you out very frequently + insists on you logging in before using it. Really frustrating experience.


Yeap this.

I thought I am the only one facing this annoying issue


Does debit card work for the Digibot?


anyone experience if a merchant could have different MCC codes with different bank issuers ?
DBS, Maybank and Citibank have shown different codes at the same eatery, sometimes 5812 other times 5814, very odd

Just Passing by

It is possible for branches of franchises to have different MCC. Sometimes Mall A restaurant X is not having same MCC with Mall B Restaurant X . Maybe that contributes to the inconsistency


Doesn’t seems like Digibot and Amaze works anymore…


Since digibot gives the MCC description, how do you lookup the MCC code from the MCC description?