I would like to generate QRcode for merchant Erlang-app.
Currently, I can combine the QRCode by mVISA Technical Specifications 20.05.2017
I generate a Tag63(CRC) by predefined standarts(CRC-16/CCITT-FALSE ,CRC-16/ARC ,CRC-16/AUG-CCITT,CRC-16/BUYPASS,CRC-16/CDMA2000,CRC-16/DDS-110,CRC-16/DECT-R,CRC-16/DECT-X,CRC-16/DNP,CRC-16/EN-13757,CRC-16/GENIBUS,CRC-16/MAXIM,CRC-16/MCRF4XX,CRC-16/RIELLO,CRC-16/T10-DIF,CRC-16/TELEDISK,CRC-16/TMS37157,CRC-16/USB,CRC-A ,CRC-16/KERMIT,CRC-16/MODBUS,CRC-16/X-25,CRC-16/XMODEM), but it seems that the CRC is not correct.
Could you please help provide a method to calculate CRC by Erlang (or Java/Go/PHP)?
Solved! Go to Solution
We are looking into the below request. Will keep you posted.
I solved this problem
crc16(<<>>, CRC) ->
crc16(<<B:8, Else/binary>>, CRC) ->
crc16(Else, ((CRC bsl 8) band 16#ffff) bxor
element(((CRC bsr 8) bxor B) + 1, ?CRC16Table)).
<<"16#", QrCodeCRC/binary>> = list_to_binary(io_lib:format("~.16#",[crc:crc16(QrCodeBody)]))
variable QrCodeCRC contains 4 bytes of checksum for tag63
This is great @gadina. Thanks for sharing the solution with the community members.
I'm trying to generate "CRC calculated to ISO/IEC 3309 compliant 16 bit CRC" for generating a merchant QR code.
But the CRC generated by my approach is incorrect as per verified from below QR validation URL -
Can anyone please help with Java representation of generating the CRC tag?
I'm happy to help you resolve the issue that you're experiencing. Can you please confirm the API product that you are using for this project? Are you using Visa Direct?
To provide you with further assistance, please provide the following information:
2. Request Header
3. Request Body
4. Response Header (include the x-correlation-id)
5. Response Body
Using SoapUI, you can find the x-correlation-id in the Raw Tab of the response header.