Behavior, Content, Money – 3 Things you should never give away for free!!!

BCmoney MobileTV

Unboxing the MintChip

Posted by bryan on April 15, 2012 in E-Business, E-Commerce, JavaScript, JSON, Mobile, Web Services with 4 Comments

No Gravatar
Royal Canadian Mint

Royal Canadian Mint (Photo credit: Wikipedia)

The Royal Canadian Mint(RCM) has sponsored the MintChip Challenge 2012 in an effort to attract developers to the idea of developing software for the MintChip and giving away their best financial application ideas, basically, for free (on the long-shot that you are one of the few who win).

Starting April 1st, 2012, they began mailing out physical MintChip developer kits for up to 500 contestants (which will likely be an order of magnitude more actual developers involved when you count those who will inevitably work on larger teams).

Since Digital Currencies and related technologies have long been on my radar as a major business opportunity area, as well as a personal interest of mine in terms of how they work, it was only natural to apply for a kit. Today, mine finally arrived!


Contained in the package:

  • USB-microSD reader with MintChip software pre-installed
  • 2 MintChip MicroSD cards (aka. the MintChips themselves)
  • 2 SD-microSD card readers (paired with MintChips; one can act as sender, one as receiver)
  • Brief instructions on how to find your $100 balance for each MintChip (but no URLs, of course!)
  • The package itself has a punch-out Door Hanger on the back


The container:



The MintChip:

microSD card (x2)


MintChip reader:

USB microSD card reader

VIDEO (the Images above are mine, taken with my PC’s webcam… however the following video of an unboxing is not):

The code (the JavaScript API requires a browser-plugin, while Java and .Net libraries do not):

 <!DOCTYPE html>
   <meta charset="utf-8" />
   <title>MintChip JavaScript API - sample code</title>
   <script type="text/javascript" src=""></script>
   <!--[if lt IE 9]>
    <script src=""></script>
  <style type="text/css">
    header, section, footer, aside, nav, article, figure, audio, video, canvas  { display:block; }
  <div id="wrapper">
   <!-- MintChip Browser Plugin -->
    <object id="mintChipApiPlugin" type="application/x-mintchipplugin">
      <param name="onload" value="pluginLoaded" />
 <script type="text/javascript">


The API:

  1. mintChip.createValueMessage(request)
    • valueMessage.amount
    • valueMessage.annotation
    • valueMessage.challenge
    • valueMessage.createdTime
    • valueMessage.currencyCode
    • valueMessage.mintChipVersion
    • valueMessage.payeeId
    • valueMessage.payerId
  2. mintChip.getLastCreatedValueMessage(annotation)
  3. mintChip.getStatus()
    • mintChipStatus.balance
    • mintChipStatus.creditLogCount
    • mintChipStatus.creditLogCountRemaining
    • mintChipStatus.debitLogCount
    • mintChipStatus.debitLogCountRemaining
    • mintChipStatus.maxCreditAllowed
    • mintChipStatus.maxDebitAllowed
  4. mintChip.isValidId(mintChipId)
  5. mintChip.loadValueMessage(valueMessage)
  6. mintChip.readTransactionLog(logType, startIndex, numOfEntries)
    • logEntry.amount
    • logEntry.challenge
    • logEntry.index
    • logEntry.logType
      • CREDIT – 0 – Represents a credit transaction, a deposit.
      • DEBIT – 1 – Represents a debit transaction, a withdrawal.
  7. logEntry.payeeId
  8. logEntry.payerId
  9. logEntry.transactionTime The date and time (accurate to the minute) this log entry occurred.
  10. mintChip.version
  11. mintChip.currencyCode
    • CHF – 0 – Swiss franc
    • CAD – 1 – Canadian dollar
    • USD – 2 – US dollar
    • EUR – 3 – Euro
    • GBP – 4 – British pound
    • JPY – 5 – Japanese yen
    • AUD – 6 – Australian dollar
    • INR – 7 – Indian rupee
    • RUB – 8 – Russian ruble


There’s also a Hosted Web Service API to further abstract the API details. It can be reached at the following URL:

Example JSON response (if using the Hosted Web Service version of the API):


What is it?
MintChip came out of some of the ongoing R&D efforts of the RCM and its primary goal is to provide the digital equivalent of the minted coins we use every day. I’ve picked out some of the main points listed on their website about the features and goals of MintChip, which are as follows:

  • MintChip brings the familiar properties and benefits of cash into the era of the digital economy, enhanced by the simplicity and speed of e-commerce.
  • Like coins, MintChip can be used by anyone. There is no age, demographic, banking or credit requirements. MintChip is available to all enabling anyone to transact.
  • MintChip allows everyone to pay just like cash. No personal data is exchanged in the transaction, everyone can participate regardless of age or financial status, it is secure and it is instant.
  • Unburdened by the need for a proprietary network, MintChip offers a cost effective solution to consumers and merchants and enables easy person-to-person payments.
  • Value can be stored and moved quickly, easily and safely over email, software applications, or by physically tapping devices together.
  • The MintChip digital currency works on the Internet, in the physical store, on mobile devices, and enables easy person-to-person transactions.
  • MintChip payments are instantaneous and irrevocable
  • MintChip is designed to facilitate the payment of low value (e.g. less than $10) payments

Example sites are available to show you how to use MintChip either in the MicroSD card format or in the ‘Cloud’ variety, as provided at registration time.

  1. DEMO #1 – Merchant site (sample store where you can use MintChip to make small purchases < $10 in value)
  2. DEMO #2 – Broker site (sample account manager where you can send money, WesternUnion or Interact E-Transfer style to your local or hosted MintChip accounts)

Here are the steps for those who have received their MintChips for testing (note that this simple test works with Windows only):

1. Once kit arrives, open it up and take out one of the MicroSD cards

2. On your system (I am assuming you have a card reader. If not use the USB dongle that is a card reader via USB) insert the card into the SD Card slot or USB slot depending on if you are using the MicroSD to SD Converter or the MicroSD to USB Dongle.

3. When Windows shows you a message to scan/fix (If this comes up) just ignore it, dont fix it unless you want to risk a possible format of the MicroSD in which case you’ll have to mail back the Mint Chip again to get them to reset it.

4. Download the following 2 apps:
a. Go to downloads page:
b. Go to windows section and download “Windows MintChip Sample” (It should be a zip file) and unzip it to a folder on your system where you will be doing all your mintchip work
c. Go down in the downloads list and select “Windows Browser Plugin (For JavaScript API deployments)” and double click the msi file when it downloads. It will install a program.
d. IN YOUR EMAIL you should have received 2 other MintChips (You get a total of 4 mintchips, 2 for the web (HOSTED) and 2 physical chips) so simply download those from your email and save them into the same working folder you are using for everything. Then in windows double click on one of them and follow the instructions. TAKE NOTE of the passwords from the email they sent you as you will need that to setup each key. Process each key using the wizard and then restart your browser.

5. After Unzipping the app and installing the hosted keys you have now setup your environment for testing. Begin by running the Windows program which will allow you to track your PHYSICAL MintChips (Run program located at YOURMINTCHIPFOLDER/WindowsMintChipSample/Setup/MintChipSample.exe). You should see your mintchip listed there with $100 loaded into it and a transaction list of debits and credits (500/499). Its 499 due to them LOADING $100 credit on it and you should have 500 debit transactions remaining on your mintchip.

6. Now lets complete our first sample transaction so you know how the process works. Make sure you have restarted your browser after the above steps before you continue. Go to and go down to the MintChip Developer Challenge video for $0.10.

7. Select “Pay with Local MintChip” and a popup window should come up showing you the following:

Pay by your MintChip: YOUR_MINTCHIP_ID

Please confirm payment of: $0.10

to: 1210-0000-0000-0004


8. Hit OK and you will be taken to a website to watch the video. If you now go to your MintChipSample.exe app and check you should see the balance as $99.90.

Since the two most common use-cases (Merchant Store and E-Transfer) are already implemented, I’ll have to rack my brain to come up with an even better use-case of the MintChip.


While I shouldn’t be too facetious, I must say that they didn’t give us a whole lot to work with. That was probably done intentionally, and at least the documentation at the developer site seems to supplement the lack of information in the kit well enough. Some have asked why the RCM doesn’t just use BitCoins instead of creating a new technology. Well Bitcoins (usually represented in the Bitcoin market as currency code BTC) is only one possible currency. We can argue about whether or not BTCs should be a supported currency, however I strongly believe it should not be the only one. Just like we have (or at least should have, some countries may not) freely competing currencies in which to invest our money, we should also be able to perform transactions in any digital currency of our choice.

So it’s definitely a cool initiative, and I certainly appreciate being chosen as one of the developers who get a physical kit. That said, I’m still skeptical about what exactly the intentions are of the Mint. Perhaps Aaron Russo was right when he said the bankers control everything and their ultimate goal is a global government, single religion, unified global currency and micro-chipped population. The so-called “mark of the beast” required to buy and sell. Could the MintChip be a (whether intentional or not) Trojan Horse for the New World Order conspiracy many joke and/or debate about? If Craig Ferguson’s coverage of the project is any indication, maybe we don’t want to find out (see 03:55 into the video):

Either way, I’ll definitely proceed with caution and ensure that there are no sinister applications of anything I’m developing, such as using MintChips to deny a service (i.e. health care) or right (i.e. to buy & sell).