Esempio n. 1
0
    public static string CancelarNotaCredito(string Id, string Token, string UUID, string RefID, string RFC, string NoCertificado, string MotivoCancelacion)
    {
        JObject Respuesta    = new JObject();
        JObject Request      = new JObject();
        JObject Credenciales = new JObject();
        JObject Issuer       = new JObject();
        JObject Document     = new JObject();

        Credenciales.Add("id", Id);
        Credenciales.Add("token", Token);

        Issuer.Add("rfc", RFC);

        Document.Add("certificate-number", NoCertificado);

        Request.Add("credentials", Credenciales);
        Request.Add("issuer", Issuer);
        Request.Add("document", Document);
        string response = Conector.Cancelar(Request, UUID);

        Dictionary <string, object> Response = (Dictionary <string, object>)JSON.Parse(response);

        string date    = "";
        string message = "Error en el timbrado";
        int    Error   = 0;

        if (!Response.ContainsKey("message") || !Response.ContainsKey("error_details"))
        {
            try
            {
                message = "";

                date = (Response.ContainsKey("date")) ? (string)Response["date"] : "";
            }
            catch (Exception ex)
            {
                message = ex.Message;
                Error   = 1;
            }
        }
        else
        {
            if (Response.ContainsKey("error_details") && (string)Response["error_details"] == "[\"Document already cancelled\"]")
            {
                message = (string)Response["error_details"];
                Error   = 0;
            }
            else
            {
                message = (string)Response["message"];
                Error   = 1;
            }
        }

        Respuesta.Add("Error", Error);
        Respuesta.Add("message", message);
        Respuesta.Add("date", date);
        Respuesta.Add("ref_id", RefID);
        Respuesta.Add("request", Request);
        Respuesta.Add("response", response);
        Respuesta.Add("certificado", NoCertificado);
        Respuesta.Add("rfc", RFC);
        Respuesta.Add("motivoCancelacion", MotivoCancelacion);

        return(Respuesta.ToString());
    }
Esempio n. 2
0
 public static string Cancelar(string uuid)
 {
     return(Conector.Cancelar(uuid));
 }