Emv About visa paywave - chuwuwang/ReadingNote GitHub Wiki

  • DF21 CMV required Limit, 6 bytes

  • DF20 Terminal Contactless Transaction Limit, 6 bytes


  • If card return 9F6C, you don't need care the CVM Required Limit(DF21), just follow the 9F6C to select the CVM, but both(9F66, 9F33) and card(9F6C) needs support the CVM.

  • Otherwise you need to compare the transaction amount.

    • If smaller than the CVM Required Limit(DF21), No CVM required.

    • If greater than the CTL offline amt(DF19), go online.

    • After the tag 9F66 Byte 2 bit 7 and bit 8 will be set. If greater than RCTL(DF20), it will not allow to trade.


  • First check DF20 to determine this transaction permission.

  • Second examine the Application Program ID to determine the Reader Limit Set to apply according to 9F5A(DRL) from select app command.

  • Third parse GPO, check whether go online or offline according to 9F10.

  • Last perform CVM from 9F6C, then assign each bit of 9F66 byte 2.