

Diese Dienste werden ab dem 1. April 2021 nicht mehr verfügbar sein. Die neue Version der API enthält diese und mehr Tools, die viel Zeit in Validierungen oder Strafen des SAT in Audits erleichtern und sparen.
Die neuen API -Zugangsdienste sind in:
https://testapi.facturoporti.com.mx/
https://api.facturoporti.com.mx/
Abhängig von der Umgebung, in der Sie Sandbox oder Produktion verwenden sollen.
Benötigen Sie Hilfe oder müssen Dienstleistungen einstellen? Senden Sie uns eine E -Mail an [email protected] [email protected], wechseln Sie zu der Seite https://www.facturoporti.com.mx. Sagen Sie uns mit uns online oder rufen Sie uns an.
Dies ist das Beispiel für die Verwendung, um den Webdienst in C# zu konsumieren, um Rechnungen, Notizen, Quittungen, Gehaltsabrechnungen, Lagerschreiben, Zahlungen ergänzen usw.) zu generieren .
Dieser Service ist ideal, wenn Sie die XML bereits auf eigene Weise generieren und nur Stempeln benötigen. Die Integration ist einfach und schnell in 10 Minuten. Sie werden in unserer Testumgebung die Produktion in weniger als 1 Stunde übertragen.
Darüber hinaus ermöglicht der Webdienst die Stornierung eines oder mehrere CFDI
Es wird empfohlen, die Visual Studio Development IDE 2017 Community oder höher zu verwenden. Alle Community -Versionen sind kostenlos und können von https://visualstudio.microsoft.com/es/vs/communch/ heruntergeladen werden
Holen Sie sich die neueste Version von FactUporti C# in:
git clone https://github.com/facturoporti/factura-electronica-Web-Service-C-Sharp.git
Laden Sie das Repository herunter, das enthält, was erforderlich ist, um den Stempelprozess durchzuführen.

Wählen Sie die Datei aus. Drücken Sie Timbrar. Das System führt Folgendes aus:
if ( txtArchivoXML . Text . Trim ( ) . Length == 0 )
{
MessageBox . Show ( "Seleccione un archivo antes de continuar." , "Error al Timbrar Documento" ) ;
}
else
{
txtFechaInicio . Text = DateTime . Now . ToString ( ) ;
Cursor . Show ( ) ;
Cursor . Current = Cursors . WaitCursor ;
CertificarClient certificar = new CertificarClient ( ) ;
AutenticarPeticion autenticar = new AutenticarPeticion ( ) ;
TimbrarCFDIPeticion xml = new TimbrarCFDIPeticion ( ) ;
// Asigna los parametros de configuracion de conexion
autenticar . Usuario = "PruebasTimbrado" ;
autenticar . Contrasenia = "@Notiene1" ;
// abre el archivo XMl que fue seleccionado
FileStream resultado = null ;
resultado = new FileStream ( txtArchivoXML . Text , FileMode . Open , FileAccess . Read , FileShare . Read ) ;
using ( StreamReader contenidoArchivo = new StreamReader ( resultado ) )
{
xml . XMLEntrada = contenidoArchivo . ReadToEnd ( ) ;
contenidoArchivo . Close ( ) ;
}
TimbrarCFDIRespuesta respuesta = certificar . TimbradoMultiEmpresas ( autenticar , xml ) ;
certificar . Close ( ) ;
txtFechaTermino . Text = DateTime . Now . ToString ( ) ;
if ( respuesta . Estatus . Codigo == "000" )
{
txtXMLTimbrado . Text = respuesta . Timbrado . TimbreXML ;
}
MessageBox . Show ( respuesta . Estatus . Descripcion , "Generación CFDI" ) ;
Cursor . Current = Cursors . Default ;
} Auf dem Begriff zeigt das System an, dass das Ergebnis des Stempels Ihnen auch den fiskalischen Timbre zeigt:

Verwendet C# Version
Visual Studio 2017 Community con Framework 4.5
Betreten Sie das fiskalische Folio (UUID), um die Stornierung durchzuführen:

if ( txtFolioFiscal1 . Text . Trim ( ) . Length == 0 && txtFolioFiscal2 . Text . Trim ( ) . Length == 0 )
{
MessageBox . Show ( "Ingrese al menos un Folio Fiscal antes de continuar." , "Error al cancelar el CFDI" ) ;
}
else
{
// Genera XMl con los Folios a enviar se pueden enviar uno o mas CFDI para cancelacion
// Solo se podran enviar CFDI timbrados con nuestro servicio no hay el limite de CFDI que se puean cancelar
Cursor . Show ( ) ;
Cursor . Current = Cursors . WaitCursor ;
CertificarClient certificar = new CertificarClient ( ) ;
AutenticarPeticion autenticar = new AutenticarPeticion ( ) ;
CancelarCFDIPACPeticion cancelar = new CancelarCFDIPACPeticion ( ) ;
// Asigna los parametros de configuracion de conexion
autenticar . Usuario = "PruebasTimbrado" ;
autenticar . Contrasenia = "@Notiene1" ;
cancelar . RFC = "AAA010101AAA" ; // RFC del emisor del CFDI;
cancelar . Password = "12345678a" ;
Archivos archivo = new Archivos ( ) ;
cancelar . PFX = archivo . ConvertirStreamToByte ( archivo . Abrir ( ObtieneDirectorioAplicacion ( ) + @"CertificadoAAA010101AAA.pfx" ) ) ; //"Se debe de enviar el certificado en formato PFX para realizar la cancelacion";
List < string > folios = new List < string > ( ) ;
if ( ! string . IsNullOrEmpty ( txtFolioFiscal1 . Text ) )
folios . Add ( txtFolioFiscal1 . Text . Trim ( ) ) ;
if ( ! string . IsNullOrEmpty ( txtFolioFiscal2 . Text ) )
folios . Add ( txtFolioFiscal2 . Text . Trim ( ) ) ;
cancelar . UUID = folios . ToArray ( ) ;
CancelarCFDIRespuesta respuesta = certificar . CancelarCFDICualquierPAC ( autenticar , cancelar ) ;
certificar . Close ( ) ;
txtFechaTermino . Text = DateTime . Now . ToString ( ) ;
Cursor . Current = Cursors . Default ;
// No hay limite para el envio de cancelaciones en el ejemplo solo en envian 3 pero pueden ser todos los que el usuario
// desee cancelar al mismo tiempo
for ( int contador = 0 ; contador < respuesta . FoliosRespuesta . Length ; contador ++ )
{
if ( respuesta . FoliosRespuesta [ contador ] . Estatus != null )
MessageBox . Show ( respuesta . FoliosRespuesta [ contador ] . Estatus . Descripcion , "Generación CFDI" ) ;
}
} Führen Sie die Schaltfläche Stornierung aus, bevor Sie den Code ausführen, müssen Sie die Werte mit Ihren fiskalischen Daten aktualisieren. Am Ende der Ausführung erhalten Sie die Antwort:

Hinweis: Das digitale Zertifikat, das gesendet werden muss
Wenn Sie mehr Webdienstinformationen wünschen, laden Sie den Integrationshandbuch herunter, sie enthält alle Attribute und ihre Beschreibung zusätzlich zu den zulässigen Werten
Geben Sie das Repository auf
Clona das Repository
Git clone [email protected]: yourusername/invoice-electronics-web-service-sharp.git
Erstellen Sie einen Zweig
git checkout desarrollo
git pull al original desarrollo
# Podrás escoger el nombre de tu rama
git checkout -b <feature/my_branch>
git add .
git commit -m "mis cambios"
git push origin <feature/my_branch>
***-
Entwickelt in Mexiko von FakteRoporti. Lizenz verwenden. Siehe mehr.