I had it working last December and January and stopped working on it and put it in Production. The people that use the POS tried it and they were happy with it. However, they were trying to start using this feature and they can't anymore. I noticed that on the response I'm getting
{ "paymentId": "FXX23YAAJKBX8", "result": "DECLINED", "failureMessage": "CRYPTO FAILURE" }
I'm using C# to make the encryption and the RSACryptoServiceProvider Class to make the encryption
byte[] modulus = m.ToByteArray(); byte[] exponent = e.ToByteArray(); var rsaServer = new RSACryptoServiceProvider(2048); var keyParameters = new RSAParameters{ Modulus = modulus, Exponent = exponent, }; rsaServer.PersistKeyInCsp = false; rsaServer.ImportParameters(keyParameters); using (var rsa = new RSACryptoServiceProvider(2048)) { try { // Encrypting data with public key issued rsa.FromXmlString(publickeyXml); var EncryptedUtf8CardNumber = rsa.Encrypt(utf8CardNumber, true); // converting encrypting to base64 string base64EncryptedCardNumber = Convert.ToBase64String(EncryptedUtf8CardNumber); return base64EncryptedCardNumber; } catch (Exception ex) { return "ERROR: " + ex.Message; } finally { rsa.PersistKeyInCsp = false; } }
Was something changed on the API regarding payment?
Tried to run the transaction on the sandbox and same issue
Sandbox MID (Currently in use to debug the problem) = 86DHG1WM70AP6
Thank you very much in advance,