DBS digibot: Check Merchant Category Codes (MCCs) before spending

DBS cardholders can check MCCs before spending a single cent, which means an end to rolling the dice on big ticket purchases.

One of the biggest headaches in the miles game is figuring out a transaction’s all-important Merchant Category Code (MCC). This can be the difference between earning a ton of miles, or walking away empty-handed.

The problem is: MCCs are often opaque to the customer, at least prior to spending. Cardholders therefore have to rely on community-sourced data points (which are far from comprehensive) or test small transactions (if that’s even possible). 

Opaque MCCs make spending a gamble. Should you try for 4 mpd with a specialised spending card and pray the MCC comes out right? Or play it safe with a general spending card and a more muted 1.2-1.6 mpd? Is the MCC even eligible for rewards in the first place?

For a while, the Visa Supplier Locator offered a taste of complete MCC transparency. Unfortunately, public access was shut off in November 2021, sending us back to square one. 

But there’s another way.

Checking MCCs through DBS

Does SKIRT code as a restaurant or hotel? Now you’ll know

I previously wrote about how the DBS digibot can be used to check MCCs for transactions charged to DBS cards. However, you can only do this after the fact. In other words, you have to spend first, then make an enquiry about the transaction.

Or do you? What if I told you there’s a way to confirm MCCs before paying?

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.

Now go to the merchant and swipe your locked card (or enter your details online, as the case may be). The transaction 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 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! You can match the description to the 4-digit code in this file if necessary. 

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

Here’s a recent use case: the MileLioness has a five-digit dental course to pay for. I was toying with the idea of using this to hit a sign-up bonus for a CIMB card, but now that I’ve confirmed the MCC belongs to Schools & Educational Services, I know I’ll need to use an American Express or Maybank card if I want to get any points.

Remember: this doesn’t just work for online transactions. You can do the same thing for a brick-and-mortar merchant, provided you don’t feel embarrassed when your card is declined the first time (oh, how did that happen?).

And, you know, step aside while you do your checks. Don’t hold up the queue. 


By using DBS Payment Controls and the DBS digibot, anyone with a DBS/POSB card can check MCCs without needing to spend a single cent, which should hopefully avoid any costly miles mistakes. Once you’ve confirmed the MCC, you can use whichever card you think is best.

It may not be worth doing all the steps for a small transaction, but I know I’d definitely make the effort for a big ticket purchase. 

(HT: Marc)

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

Somebody should crowdsource this information somewhere so we don’t have to keep guessing


how do you crowdsource every company in the world?


crowdsource is good, but how do you ensure the info is legit? who will maintain it? nothing is free, perhaps some app developer could devise and earn thru referrals/ads by downloading these free crowdsource apps, I don’t mind downloading them. winks


Yeah that was whatcard.sg but the developers seemed to have neglected it.


Hi Aaron

I want to thank you profusely for unlocking the MCC mystery. Such a brilliant solution to get around the current “charge first find out later” way

I am a huge fan of your site. Thank you for the time and effort you put into all your articles



“And, you know, step aside while you do your checks. Don’t hold up the queue.” 

Thank you for this reminder and a great “hack” for checking MCCs


Does this work with Amaze? PRVI has a mastercard version I believe but I’m not sure if Amaze changes an “overseas” transaction to a “local” transaction? If so there wouldn’t be bonuses correct?


Do you know if each bank has their own MCC or does it based on the payment companies (i.e. Visa, Mastercard, Amex). Curious as to whether we can use this method to determine the MCC and use it for OCBC Titanium Rewards. Thanks!


I just used this function to check Japan JR tickets from Osaka – Tokyo

JPY 0.00

The description matches MCC 4112 unfortunately.
Only MCC 4111 will qualify for 5%-8% cash rebates under transport some CC.


A couple of points to note from my recent failed experience in trying this.

  1. I don’t have a DBS/POSB Credit Card, so I used a DBS Debit Card
  2. When I selected “Pending Transactions”, digibot told me I had none. I then tried to select “Declined Transactions”, and the declined transaction appeared there
  3. The digibot only gave me the following information: Date, Amount, Description. No sign of MCC!

Anyone have any pointers?


reference the description using citibank’s MCC document.
go google it.


oh my, this method does not 100% work! it works on Shopee, but does not work on Dresort website. I am trying to reach out to Dresort and DBS and hope this transaction can be declined!



Featured Deals


Follow us