How to Troubleshoot a CDA Failure

How to Troubleshoot a CDA Failure

Issue: Which CAPK Does the Reader Need?

Check the card brand: Using the LIST OF CA PUBLIC KEYS, identify the card brand (Visa, Mastercard, American Express, Discover, and so on) and set the filter accordingly.

Confirm the CAPK is for Test or Live: Determine if the card is a test card or a live card. Test cards are usually printed with identifying text on the front of the card. Live cards typically do not have that text. Search the CAPK list for Test or Live and choose the first matching CAPK that is not expired.

Example Filter

The filtered list should show CAPKs for the selected brand and card type. Use the screenshot below as a visual reference.

Pull the CAPK Index from a Contact-Capable Device

If you have a contact-capable reader, use the SDK Demo app to run a contact EMV transaction and retrieve the CAPK index directly from the card data.

  1. Connect the reader to the SDK Demo app and confirm the app correctly recognizes the device

  2. Make sure the reader has the required terminal data and AIDs loaded so it can start a contact EMV transaction.

  3. Insert the card and run a contact EMV transaction.

  4. After the transaction finishes, promptly use EMV > Retrieve Tags to retrieve the transaction Tags. Transaction data is typically available only briefly after the transaction.

  5. Look for Tag 8F or 9F22. This one-byte value is the CAPK index requested by the card.

  6. Combine the card brand RID with the CAPK index to identify the required CAPK. For example, if the RID is A000000025 and Tag 8F is 2F, the required CAPK is A0000000252F.

 

If the transaction fails before you can retrieve the Tag data, use any available card or terminal interaction log or TLV output and search for Tag 8F or 9F22.

Load the CAPK

After you identify the required CAPK, load it to the reader using one of the procedures below:

Use the attached CAPK file as needed: