En este video te mostrare como puedes hacer una solicitud por el protocolo Post a un servicio enviando un objeto serializado como Json.
Etiqueta: serialización
¿Cómo crear el XML para cfdi 3.3 facturación electrónica C# .Net? – implementando anexo 20 – SAT #3
Te muestro como crear el xml según la documentación del SAT establecida en el anexo 20.
Clase para crear el XML: clic aquí
Video 1: https://www.youtube.com/watch?v=XlTz0NRQLm4
Video 2: https://www.youtube.com/watch?v=HjfqdTspnio
Catálogos SAT mysql: https://hdeleon.net/catalogos-para-facturar-3-3-sat-en-mysql/
class Program
{
static void Main(string[] args)
{
//Llenamos la clase COMPROBANTE--------------------------------------------------------
Comprobante oComprobante = new Comprobante();
oComprobante.Version = "3.3";
oComprobante.Serie = "H";
oComprobante.Folio = "1";
oComprobante.Fecha = DateTime.Now;
oComprobante.Sello = "faltante"; //sig video
oComprobante.FormaPago = "99";
oComprobante.NoCertificado = "12312312313112121212"; //sig video
oComprobante.Certificado = ""; //sig video
oComprobante.SubTotal = 10m;
oComprobante.Descuento =1;
oComprobante.Moneda = "MXN";
oComprobante.Total =9;
oComprobante.TipoDeComprobante = "I";
oComprobante.MetodoPago = "PUE";
oComprobante.LugarExpedicion = "20131";
ComprobanteEmisor oEmisor = new ComprobanteEmisor();
oEmisor.Rfc = "POWE870601DM7";
oEmisor.Nombre = "Una razón rh de cv";
oEmisor.RegimenFiscal = "605";
ComprobanteReceptor oReceptor = new ComprobanteReceptor();
oReceptor.Nombre = "Pepe SA DE CV";
oReceptor.Rfc = "PEPE080801JH1";
oReceptor.UsoCFDI = "P01";
//asigno emisor y receptor
oComprobante.Emisor = oEmisor;
oComprobante.Receptor = oReceptor;
List<ComprobanteConcepto> lstConceptos = new List<ComprobanteConcepto>();
ComprobanteConcepto oConcepto = new ComprobanteConcepto();
oConcepto.Importe = 10m;
oConcepto.ClaveProdServ = "92111704";
oConcepto.Cantidad = 1;
oConcepto.ClaveUnidad = "C81";
oConcepto.Descripcion = "Un misil para la guerra";
oConcepto.ValorUnitario = 10m;
oConcepto.Descuento = 1;
lstConceptos.Add(oConcepto);
oComprobante.Conceptos = lstConceptos.ToArray();
//SERIALIZAMOS.-------------------------------------------------
string pathXML = @"C:\Users\Bioxor\source\repos\XSDToXML\miPrimerXML.xml";
XmlSerializer oXmlSerializar = new XmlSerializer(typeof(Comprobante));
string sXml = "";
using (var sww= new StringWriter())
{
using (XmlWriter writter = XmlWriter.Create(sww))
{
oXmlSerializar.Serialize(writter,oComprobante);
sXml = sww.ToString();
}
}
//guardamos el string en un archivo
System.IO.File.WriteAllText(pathXML,sXml);
}
}
