miércoles, 25 de octubre de 2017

Tutorial como crear un CFDi 3.3 en 2 minutos con PHP



Tutorial como crear un CFDi en 2 minutos con PHP


Les presento este video que muestra como generar un CFDi en pocos minutos,  así como donde descargar el código fuente.








La librería se puede descargar desde www.multifacturas.com




martes, 17 de octubre de 2017

Como crear una factura electronica con C#

Creando una factura electrónica en C#

Existen varios métodos

Método 1 - Web Service

Primero generás un archivo XML el cual tiene toda la información de la factura,  este archivo debe de seguir las relglas del Anexo 20, posteriormente se envía el XML al SAT por medio de un PAC, cada PAC tiene su propia conexion, con sus propios paámetros y requisitos técnicos

Método 2 - Plantilla de texto

Se crea un archivo de texto que tiene toda la información de la factura,  este archivo de texto tiene sintaxis similar a:

xml=c:\mi_sistema\facturas\F100.xml
Calle=Juarez
numero=100
Ciudad=Monterrey
...
...

Una vez creado el archivo se manda a ejecutar el kit de desarrollo creando dos archivos: uno de respuesta que viene todo el detalle de la ejecucion y el XML ya generado, validado, sellado, timbrado y respaldado en c:\mi_sistema\facturas\F100.xml y en la nube.


Método 3 - DLL


Una librería DLL que por medio de funciones y parametros nos genera, valida, sella, timbra y respalda  la factura electrónica

Precio

La librería es GRATIS
Lo unico que tiene costo son los timbres a consumir, con precios desde 11 centavos a volumen bajo de timbrado.

Incluye panel de administración y sub-distribuidores

Ejemplos y códigos fuentes


mayores informes en  www.multifacturas.com






viernes, 13 de octubre de 2017

Como generar y timbrar un CFDi de Nómina 3.3

Creando el XML para recibo de nómina

Para crearlo hay dos metodos.

  1. Descargas e interpretas el documento del SAT llamado Anexo20 para después ver la documentación del PAC deseado y enviar a timbrar el XML
  2. Utilizas una librería que solo introduzcas los datos del recibo como parámetros y te genere el XML, lo valide, lo envíe al PAC, lo almacene local y genere un respaldo en la nube  todo al ejecutar una sola función.
Si deseas mas informes de esta librería contacta a www.multifacturas.com

Aqui un ejemplo de un recibo de nómina generado

<?xml version="1.0" encoding="UTF-8"?>
<cfdi:Comprobante xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:nomina12="http://www.sat.gob.mx/nomina12" xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital" xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd http://www.sat.gob.mx/TimbreFiscalDigital http://www.sat.gob.mx/sitio_internet/TimbreFiscalDigital/TimbreFiscalDigital.xsd       http://www.sat.gob.mx/nomina12 http://www.sat.gob.mx/informacion_fiscal/factura_electronica/Documents/Complementoscfdi/nomina12.xsd" version="3.2" sello="FTUb7BhBbHShmdCDf24749zga4Tg7Bskr7s8SpAGcK589aACluJU15JRE/Scl8HeYQi7XmU2Pa+2UGpRdyoDE2SnGsoSPjqFsxUswRIXx4BaYB3jNeu4uGY3BXf7oarmgFP14F30XqlUBYWwyycFk4JMOeMluiUokF6JZ5cGlL1fJbd0KGFEV6KE1kDA59WzUSLWHzr97VyDhado9zWzOAEZeX5V4AOWbrsadurDYfYLM5stoq25DmcNV7YSdlnDtZdJtbW4WWCYT4PiwnzPQXSbfDUmUKZrOb5dOSuvErhXVpInln/KhqsSQjVcIWHM9YkbTRKicHYPY4NZaleQyQ==" serie="O" folio="762" fecha="2017-10-12T11:54:46" formaDePago="PAGO EN UNA SOLA EXHIBICION" noCertificado="20001000000100005867" certificado="MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTUwDQYJKoZIhvcNAQELBQAwggFmMSAwHgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMuc2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNVBBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UEBwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3BvbnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTUyMTFaFw0yMDEwMjUyMTUyMTFaMIGxMRowGAYDVQQDExFDSU5ERU1FWCBTQSBERSBDVjEaMBgGA1UEKRMRQ0lOREVNRVggU0EgREUgQ1YxGjAYBgNVBAoTEUNJTkRFTUVYIFNBIERFIENWMSUwIwYDVQQtExxMQU43MDA4MTczUjUgLyBGVUFCNzcwMTE3QlhBMR4wHAYDVQQFExUgLyBGVUFCNzcwMTE3TURGUk5OMDkxFDASBgNVBAsUC1BydWViYV9DRkRJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgvvCiCFDFVaYX7xdVRhp/38ULWto/LKDSZy1yrXKpaqFXqERJWF78YHKf3N5GBoXgzwFPuDX+5kvY5wtYNxx/Owu2shNZqFFh6EKsysQMeP5rz6kE1gFYenaPEUP9zj+h0bL3xR5aqoTsqGF24mKBLoiaK44pXBzGzgsxZishVJVM6XbzNJVonEUNbI25DhgWAd86f2aU3BmOH2K1RZx41dtTT56UsszJls4tPFODr/caWuZEuUvLp1M3nj7Dyu88mhD2f+1fA/g7kzcU/1tcpFXF/rIy93APvkU72jwvkrnprzs+SnG81+/F16ahuGsb2EZ88dKHwqxEkwzhMyTbQIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAJ/xkL8I+fpilZP+9aO8n93+20XxVomLJjeSL+Ng2ErL2GgatpLuN5JknFBkZAhxVIgMaTS23zzk1RLtRaYvH83lBH5E+M+kEjFGp14Fne1iV2Pm3vL4jeLmzHgY1Kf5HmeVrrp4PU7WQg16VpyHaJ/eonPNiEBUjcyQ1iFfkzJmnSJvDGtfQK2TiEolDJApYv0OWdm4is9Bsfi9j6lI9/T6MNZ+/LM2L/t72Vau4r7m94JDEzaO3A0wHAtQ97fjBfBiO5M8AEISAV7eZidIl3iaJJHkQbBYiiW2gikreUZKPUX0HmlnIqqQcBJhWKRu6Nqk6aZBTETLLpGrvF9OArV1JSsbdw/ZH+P88RAt5em5/gjwwtFlNHyiKG5w+UFpaZOK3gZP0su0sa6dlPeQ9EL4JlFkGqQCgSQ+NOsXqaOavgoP5VLykLwuGnwIUnuhBTVeDbzpgrg9LuF5dYp/zs+Y9ScJqe5VMAagLSYTShNtN8luV7LvxF9pgWwZdcM7lUwqJmUddCiZqdngg3vzTactMToG16gZA4CWnMgbU4E+r541+FNMpgAZNvs2CiW/eApfaaQojsZEAHDsDv4L5n3M1CC7fYjE/d61aSng1LaO6T1mh+dEfPvLzp7zyzz+UgWMhi5Cs4pcXx1eic5r7uxPoBwcCTt3YI1jKVVnV7/w=" subTotal="1463.78" descuento="82.67" total="1381.11" metodoDePago="NA" tipoDeComprobante="egreso" TipoCambio="1" Moneda="MXN" LugarExpedicion="86040">
       
                  <cfdi:Emisor rfc="LAN7008173R5" nombre="MIGUEL ANGEL SOSA HERNANDEZ">
                   
                   
                    <cfdi:RegimenFiscal Regimen="601"/>
                  </cfdi:Emisor>
               
                  <cfdi:Receptor rfc="COSG771212GH9" nombre="GUADALUPE CORTAZAR SUAREZ">
                   
                  </cfdi:Receptor>
               
                  <cfdi:Conceptos>
        <cfdi:Concepto cantidad="1" unidad="ACT" descripcion="Pago de nómina" valorUnitario="1463.78" importe="1463.78"/>
                           
                  </cfdi:Conceptos>
                 
                  <cfdi:Impuestos>
                  </cfdi:Impuestos>
    <cfdi:Complemento>
        <nomina12:Nomina Version="1.2" TotalPercepciones="1463.78" TotalDeducciones="82.67" TotalOtrosPagos="0.00" TipoNomina="O" FechaPago="2017-10-05" FechaInicialPago="2017-09-21" FechaFinalPago="2017-10-05" NumDiasPagados="15">
        <nomina12:Emisor Curp="BADD110313HCMLNS09" RegistroPatronal="E7555935104"/><nomina12:Receptor ClaveEntFed="TAB" Curp="COSG771212MTCRRD05" NumEmpleado="1" PeriodicidadPago="04" TipoRegimen="02" TipoContrato="01" FechaInicioRelLaboral="2011-04-08" Antigüedad="P338W" NumSeguridadSocial="83017707585" TipoJornada="01" RiesgoPuesto="1" SalarioBaseCotApor="85.00" SalarioDiarioIntegrado="81.32" Departamento="ADO CARDENAS"/>
            <nomina12:Percepciones TotalGravado="1463.78" TotalSueldos="1463.78" TotalExento="0.00">
            <nomina12:Percepcion TipoPercepcion="001" Clave="001" Concepto="SUELDO QUINCENAL" ImporteGravado="1219.80" ImporteExento="0.00"/><nomina12:Percepcion TipoPercepcion="010" Clave="002" Concepto="Premios por asistencia" ImporteGravado="121.99" ImporteExento="0.00"/><nomina12:Percepcion TipoPercepcion="010" Clave="003" Concepto="Premios por puntualidad" ImporteGravado="121.99" ImporteExento="0.00"/>
            </nomina12:Percepciones>
           
            <nomina12:Deducciones TotalImpuestosRetenidos="82.67">
            <nomina12:Deduccion TipoDeduccion="002" Clave="002" Concepto="ISR" Importe="82.67"/>
            </nomina12:Deducciones>
        </nomina12:Nomina>
    </cfdi:Complemento>

                </cfdi:Comprobante>

jueves, 12 de octubre de 2017

Ejemplo XML Nómina CFDi 3.3

Recibo de Nómina 1.2 para CFDi 3.3


Les comparto un ejemplo de un CFDi de nómina

<?xml version="1.0" encoding="UTF-8"?>
<cfdi:Comprobante xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:nomina12="http://www.sat.gob.mx/nomina12" xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital" xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd http://www.sat.gob.mx/TimbreFiscalDigital http://www.sat.gob.mx/sitio_internet/TimbreFiscalDigital/TimbreFiscalDigital.xsd       http://www.sat.gob.mx/nomina12 http://www.sat.gob.mx/informacion_fiscal/factura_electronica/Documents/Complementoscfdi/nomina12.xsd" version="3.2" sello="BwUZJSNO2K5jIAcim2/YxipVCcrmSifnh94zByg40tU51X9L2bIKVz12e7CuzTjKEfyzBRb7S0bq1kN5HssEfNQmg0T7/Y/n+LvAjALbm5ToNcsKvXHHlJJL4K5kkjqIRWmRz/b379TzNl2SOwgr/M+A0UheQNIBfLICUtwhkq6WBorjZidOZzdYXWj6D8IYcfX9l9siUSB0tJlfUxcPZjHPeZuevrhGJcJdlnLvJaL/tAU/4fFoOnctmkyGzDvRTQtiFjm0iPY0NqVNPvJVueJ43eUc/JYUX6Sep45N/LcpTm2z7HRit8zk/yeThUIYiq657Q+p/jlJymtQfs0c0A==" serie="O" folio="761" fecha="2017-10-12T11:53:29" formaDePago="PAGO EN UNA SOLA EXHIBICION" noCertificado="20001000000100005867" certificado="MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTUwDQYJKoZIhvcNAQELBQAwggFmMSAwHgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMuc2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNVBBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UEBwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3BvbnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTUyMTFaFw0yMDEwMjUyMTUyMTFaMIGxMRowGAYDVQQDExFDSU5ERU1FWCBTQSBERSBDVjEaMBgGA1UEKRMRQ0lOREVNRVggU0EgREUgQ1YxGjAYBgNVBAoTEUNJTkRFTUVYIFNBIERFIENWMSUwIwYDVQQtExxMQU43MDA4MTczUjUgLyBGVUFCNzcwMTE3QlhBMR4wHAYDVQQFExUgLyBGVUFCNzcwMTE3TURGUk5OMDkxFDASBgNVBAsUC1BydWViYV9DRkRJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgvvCiCFDFVaYX7xdVRhp/38ULWto/LKDSZy1yrXKpaqFXqERJWF78YHKf3N5GBoXgzwFPuDX+5kvY5wtYNxx/Owu2shNZqFFh6EKsysQMeP5rz6kE1gFYenaPEUP9zj+h0bL3xR5aqoTsqGF24mKBLoiaK44pXBzGzgsxZishVJVM6XbzNJVonEUNbI25DhgWAd86f2aU3BmOH2K1RZx41dtTT56UsszJls4tPFODr/caWuZEuUvLp1M3nj7Dyu88mhD2f+1fA/g7kzcU/1tcpFXF/rIy93APvkU72jwvkrnprzs+SnG81+/F16ahuGsb2EZ88dKHwqxEkwzhMyTbQIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAJ/xkL8I+fpilZP+9aO8n93+20XxVomLJjeSL+Ng2ErL2GgatpLuN5JknFBkZAhxVIgMaTS23zzk1RLtRaYvH83lBH5E+M+kEjFGp14Fne1iV2Pm3vL4jeLmzHgY1Kf5HmeVrrp4PU7WQg16VpyHaJ/eonPNiEBUjcyQ1iFfkzJmnSJvDGtfQK2TiEolDJApYv0OWdm4is9Bsfi9j6lI9/T6MNZ+/LM2L/t72Vau4r7m94JDEzaO3A0wHAtQ97fjBfBiO5M8AEISAV7eZidIl3iaJJHkQbBYiiW2gikreUZKPUX0HmlnIqqQcBJhWKRu6Nqk6aZBTETLLpGrvF9OArV1JSsbdw/ZH+P88RAt5em5/gjwwtFlNHyiKG5w+UFpaZOK3gZP0su0sa6dlPeQ9EL4JlFkGqQCgSQ+NOsXqaOavgoP5VLykLwuGnwIUnuhBTVeDbzpgrg9LuF5dYp/zs+Y9ScJqe5VMAagLSYTShNtN8luV7LvxF9pgWwZdcM7lUwqJmUddCiZqdngg3vzTactMToG16gZA4CWnMgbU4E+r541+FNMpgAZNvs2CiW/eApfaaQojsZEAHDsDv4L5n3M1CC7fYjE/d61aSng1LaO6T1mh+dEfPvLzp7zyzz+UgWMhi5Cs4pcXx1eic5r7uxPoBwcCTt3YI1jKVVnV7/w=" subTotal="1469.69" descuento="83.04" total="1386.65" metodoDePago="NA" tipoDeComprobante="egreso" TipoCambio="1" Moneda="MXN" LugarExpedicion="86040">
                  <cfdi:Emisor rfc="LAN7008173R5" nombre="MIGUEL ANGEL SOSA HERNANDEZ">
                    <cfdi:RegimenFiscal Regimen="601"/>
                  </cfdi:Emisor>
                  <cfdi:Receptor rfc="ZAMA9107291Y8" nombre="ADAN ZAPATA MAYO">
                  </cfdi:Receptor>
                  <cfdi:Conceptos>
        <cfdi:Concepto cantidad="1" unidad="ACT" descripcion="Pago de nómina" valorUnitario="1469.69" importe="1469.69"/>
                  </cfdi:Conceptos>
                  <cfdi:Impuestos>
                  </cfdi:Impuestos>
    <cfdi:Complemento>
        <nomina12:Nomina Version="1.2" TotalPercepciones="1469.69" TotalDeducciones="83.04" TotalOtrosPagos="0.00" TipoNomina="O" FechaPago="2017-10-05" FechaInicialPago="2017-09-21" FechaFinalPago="2017-10-05" NumDiasPagados="15">
        <nomina12:Emisor Curp="BADD110313HCMLNS09" RegistroPatronal="E7555935104"/><nomina12:Receptor ClaveEntFed="TAB" Curp="ZAMA910729HTCPYD06" NumEmpleado="11" PeriodicidadPago="04" TipoRegimen="02" TipoContrato="01" FechaInicioRelLaboral="2017-07-07" Antigüedad="ND" NumSeguridadSocial="83109108601" TipoJornada="01" RiesgoPuesto="1" SalarioBaseCotApor="85.34" SalarioDiarioIntegrado="81.65" Departamento="ADO CARDENAS"/>
            <nomina12:Percepciones TotalGravado="1469.69" TotalSueldos="1469.69" TotalExento="0.00">
            <nomina12:Percepcion TipoPercepcion="001" Clave="001" Concepto="SUELDO QUINCENAL" ImporteGravado="1224.75" ImporteExento="0.00"/><nomina12:Percepcion TipoPercepcion="010" Clave="002" Concepto="Premios por asistencia" ImporteGravado="122.47" ImporteExento="0.00"/><nomina12:Percepcion TipoPercepcion="010" Clave="003" Concepto="Premios por puntualidad" ImporteGravado="122.47" ImporteExento="0.00"/>
            </nomina12:Percepciones>
            <nomina12:Deducciones TotalImpuestosRetenidos="83.04">
            <nomina12:Deduccion TipoDeduccion="002" Clave="002" Concepto="ISR" Importe="83.04"/>
            </nomina12:Deducciones>
        </nomina12:Nomina>
    </cfdi:Complemento>
                </cfdi:Comprobante>




Este XML fue generado con el KIT de desarrollo de multi facturas, este funciona con PHP, .net, VB6, C#, harbor, entre otros..

Lo unico que hay que hacer  es capturar parametros y automaticamente genera, valida, timbra y respalda el CFDi

mayores informes en www.multifacturas.com



miércoles, 11 de octubre de 2017

Cambiar mi saldo de timbres a otro PAC

Como cambiar de PAC sin perder mi saldo de timbres

Varios se preguntarán como cambiar de proveedor PAC y conservar el saldo que tengo ya que no deseo perderlo.

El 99% de proveedores te dira que vuelvas a comprar timbres y los antiguos los tires.

Pero en multifacturas.com se te repone el saldo actual + tu nuevo saldo adquirido.

solo hay que contartarlos para que te expliquen.

www.multifacturas.com

Como generar un XML de nómina para CFDi 3.3

Como generar un XML de nómina  para CFDi 3.3

Para generar un XML hay que ver todas las reglas del documento llamado Anexo 20 que esta publicado en el portal del SAT.

http://sat.gob.mx/informacion_fiscal/factura_electronica/Paginas/Anexo_20_version3.3.aspx

Ahí explica nodo por nodo como se forma el XML,  aparte de un proceso para generar la cadena original, el sellado del documento y por ultimo enviarlo al PAC para que le agrege el timbrado (cada PAC tiene su propio método).

Sellar el documento es como un sello de autenticidad que se realiza por medio de los certificados CSD entregados por el SAT.

Modos de generar el XML de nómina
  1. Se interpretar la documentación del SAT para generar yo mismo el XML y enviarlo al webservice del PAC, ya solo es cuestion de tiempo para programar lo necesario.
  2. Usas una función de PHP, en la cual pones los valores de la nómina como variables y al ejecutar una función me regresa el XML generado, validado, sellado y timbrado.
  3. En windows creas un archivo de texto con la información de la factura, ejecutas un programa y te regresa el XML generado, validado, sellado y timbrado.
  4. Para los amantes del .net cargan una DLL y al ejecutar una función regresa el XML generado, validado, sellado y timbrado.
Lo mas fácil son los puntos 2, 3 y 4;  ya que es una librería que se encarga de todo  y esta la puedes descargar en www.multifacturas.com

Como bloquera archivos adjuntos que son virus en postfix o plesk

   Como bloquear adjuntos del correo en Plesk/Postfix   1- edita el archivo  /etc/postfix/main.cf   2- busca el parametro mime_header_checks...