es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Sigo recibiendo el código de respuesta 500 en la llamada a la API de Cardpointe.

Sigo recibiendo un código de respuesta 500 en una llamada API a la pasarela Cardpointe (cardconnect), cualquier aporte será de ayuda.
(Pude verificar las credenciales de prueba simplemente enviando la URL sin el punto de enlace “auth”).

Aquí está mi código en un script de Google Apps:

function myFunction() {

  var messagesUrl = "https://fts-uat.cardconnect.com/cardconnect/rest/auth";
  var cred = "testing:testing123";

  var payload = JSON.stringify({
  "merchid" : "496160873888",
  "account": "4788250000121443",
  "expiry": "1218",
  "cvv2": "123",
  "amount": "100",
  "phone": "15558889999",
  "capture": "y"
  });


  var options = {
    "method" : "put",
   "payload" : payload
  };

  options.headers = {    
    "Authorization" : "Basic " + Utilities.base64Encode(cred)
    },{
    "Content-Type" : "application/json"
    }
  var res = UrlFetchApp.fetch(messagesUrl, options);

  Logger.log(res);

}
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El problema parece estar relacionado con el punto de autenticación (auth) del API de la pasarela Cardpointe. El hecho de que las credenciales de prueba hayan sido verificadas solo al enviar la URL sin el punto de autenticación sugiere que el problema puede estar en el proceso de autenticación.

    En el código, el encabezado Authorization se establece con las credenciales de prueba codificadas en base64. Sin embargo, el encabezado Content-Type se establece fuera del objeto headers, lo que provoca un error de sintaxis.

    Para solucionar el problema del código de respuesta 500, podemos seguir los siguientes pasos:

    1. Verificar nuevamente las credenciales de prueba y asegurarse de que sean correctas.
    2. Verificar que los valores merchid y account sean correctos y coincidan con los detalles de la cuenta de prueba en la plataforma de Cardconnect.
    3. Verificar si existen restricciones o limitaciones en el API de la pasarela Cardpointe que puedan causar una respuesta de error 500.
    4. Confirmar que la URL del punto final (messagesUrl) sea correcta y esté actualizada con la última versión del API de Cardpointe.
    5. Revisar la documentación del API de Cardconnect y asegurarse de que el formato de carga útil de la solicitud sea correcto.

    En cuanto al problema con el encabezado Content-Type, podemos moverlo dentro del objeto headers para corregir el error de sintaxis. Aquí está el código corregido:

    function myFunction() {
    
      var messagesUrl = "https://fts-uat.cardconnect.com/cardconnect/rest/auth";
      var cred = "testing:testing123";
    
      var payload = JSON.stringify({
      "merchid" : "496160873888",
      "account": "4788250000121443",
      "expiry": "1218",
      "cvv2": "123",
      "amount": "100",
      "phone": "15558889999",
      "capture": "y"
      });
    
    
      var options = {
        "method" : "put",
        "payload" : payload,
        "headers" : {    
          "Authorization" : "Basic " + Utilities.base64Encode(cred),
          "Content-Type" : "application/json"
        }
      };
    
      var res = UrlFetchApp.fetch(messagesUrl, options);
    
      Logger.log(res);
    
    }
    

    Espero que esto ayude!

Comments are closed.