

Ces services cesseront d'être disponibles à partir du 1er avril 2021 , la nouvelle version de l'API possède ces outils et plus qui faciliteront et économiseront beaucoup de temps dans les validations ou les pénalités des audits SAT, nous vous recommandons de réviser largement la nouvelle documentation à https://develers.facturoporti.com.
Les nouveaux services d'accès API sont publiés dans:
https://testapi.facturoporti.com.mx/
https://api.facturoporti.com.mx/
Selon l'environnement dans lequel vous devez utiliser du bac à sable ou de la production.
Avez-vous besoin d'aide ou avez-vous besoin d'embaucher des services? Envoyez-nous un e-mail à [email protected] [email protected], accédez à la page https://www.facturoporti.com.mx, dites-nous avec nous en ligne ou appelez-nous 555 546 2288 ou 558 421 767 Nous pouvons vous donner ce que vous avez besoin.
Ceci est l'exemple d'utilisation pour consommer le service Web en C # pour générer des factures, des billets, des reçus, de la paie, une lettre de roulement, un complément de paiement, etc.) .
Ce service est idéal lorsque vous générez déjà le XML par vos propres moyens et que vous n'avez besoin que d'embarquer. L'intégration est facile et rapide en 10 minutes, vous diffuserez dans notre environnement de test le CFDI la production en moins de 1 heure.
De plus, le service Web permettra d'annuler un ou plusieurs CFDI
Il est recommandé d'utiliser la communauté Visual Studio Development IDE 2017 ou plus. Toutes les versions communautaires sont gratuites et peuvent être téléchargées à partir de https://visualstudio.microsoft.com/es/vs/communch/
Obtenez la dernière version de Facturoporti C # dans:
git clone https://github.com/facturoporti/factura-electronica-Web-Service-C-Sharp.git
Téléchargez le référentiel qui contient ce qui est nécessaire pour effectuer le processus d'estampage.

Sélectionnez le fichier Appuyez sur Timbrar, le système effectuera les éléments suivants:
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 ;
} Au terme, le système indique que le résultat de l'estampage vous montrera également le timbre budgétaire:

Version C # utilisée
Visual Studio 2017 Community con Framework 4.5
Entrez dans le folio fiscal (UUID) pour effectuer l'annulation:

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" ) ;
}
} Exécutez le bouton Envoyer l'annulation, avant d'exécuter le code, vous devez mettre à jour les valeurs avec vos données fiscales; À la fin de l'exécution, vous obtiendrez la réponse:

Remarque: Le certificat numérique qui doit être envoyé est l'un des types de PFX si le bon enverra l'erreur d'annulation
Si vous souhaitez plus d'informations sur le service Web, téléchargez le guide d'intégration, il contient tous les attributs et sa description en plus des valeurs autorisées
Fourchez le référentiel
Clona le référentiel
Git clone [email protected]: yourUserName / facture-electronics-web-service-c-sharp.git
Créer une branche
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>
*** -
Développé au Mexique par Facturoporti. Utiliser la licence Voir plus.