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()); }
public static string Cancelar(string uuid) { return(Conector.Cancelar(uuid)); }