

Эти услуги перестанут быть доступными с 1 апреля 2021 года , новая версия API имеет эти и больше инструментов, которые будут облегчить и сохранять много времени в проверке или штрафах SAT в аудитах, мы рекомендуем широко рассмотреть вам новую документацию по адресу https://develers.fateuroport.com.mx/reference/api-desarlo-facture.
Новые услуги API Access опубликованы в:
https://testapi.facturoporti.com.mx/
https://api.facturoporti.com.mx/
В зависимости от среды, в которой вы должны использовать песочницу или производство.
Вам нужна помощь или нужно нанять услуги? Отправьте нам электронное письмо на [email protected] [email protected], перейдите на страницу https://www.facturoport.com.mx, расскажите нам с нами онлайн или позвоните нам 555 546 2288 или 558 421 767 Мы можем с радостью дать вам то, что вам нужно.
Это пример использования для использования веб -службы в C# для генерации счетов, примечаний, квитанций, расчета заработной платы, письма с подшипником, дополнения платежей и т. Д.) .
Эта услуга идеальна, когда вы уже генерируете XML своими средствами, и вам нужна только штамповка. Интеграция проста и быстрая за 10 минут вы будете транслировать в нашей тестовой среде CFDI производство менее чем за 1 час.
Кроме того, веб -сервис позволит отменить один или несколько CFDI
Рекомендуется использовать сообщество Visual Studio Development IDE 2017 или выше. Все версии сообщества бесплатны и могут быть загружены с https://visualstudio.microsoft.com/es/vs/communch/
Получите последнюю версию FacturoPorti C# в:
git clone https://github.com/facturoporti/factura-electronica-Web-Service-C-Sharp.git
Загрузите репозиторий, который содержит то, что необходимо для выполнения процесса штамповки.

Выберите файл нажмите Timbrar, система выполнит следующее:
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 ;
} В терминке система указывает на результат штамповки, также покажет вам фискальный тембр:

Использовал C# версию
Visual Studio 2017 Community con Framework 4.5
Введите фискальный фолио (uuid), чтобы выполнить отмену:

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" ) ;
}
} Выполните кнопку отмены отправки, перед выполнением кода вы должны обновить значения с помощью ваших финансовых данных; В конце исполнения вы получите ответ:

Примечание. Цифровой сертификат, который должен быть отправлен, является одним из типов PFX, если правильный отправит ошибку отмены
Если вам нужна дополнительная информация о веб -службах, загрузите руководство по интеграции, он содержит все атрибуты и его описание в дополнение к разрешенным значениям
Вилка репозитория
Клона хранилище
Git clone [email protected]: yourusername/inkeice-electronics-web-service-charp.git
Создать ветвь
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>
***-
Разработано в Мексике FacturoPorti. Используйте лицензию. См. Больше.