Línea de Producto: | Microsiga Protheus. | ||||||||||||||||||||||||||
Segmento: | Mercado Internacional | ||||||||||||||||||||||||||
Módulo: | Facturación. | ||||||||||||||||||||||||||
Rutina: |
| ||||||||||||||||||||||||||
Archivo Iniciales: |
| ||||||||||||||||||||||||||
Parámetro(s): |
| ||||||||||||||||||||||||||
Punto de Entrada: |
| ||||||||||||||||||||||||||
Llamados vinculados: |
| ||||||||||||||||||||||||||
Requisito/Story/Issue: | |||||||||||||||||||||||||||
País(es): | México. | ||||||||||||||||||||||||||
Base(s) de Datos: | Todas | ||||||||||||||||||||||||||
Tablas utilizadas: | F3H - Configuración de catálogos. | ||||||||||||||||||||||||||
Sistema(s) operativo(s): | Todos |
Los comprobantes fiscales deben emitirse por los actos o actividades que se realicen, por los ingresos que perciban o por las retenciones de contribuciones que efectúen los contribuyentes ya sean personas físicas o morales.
El artículo 29-A del Código Fiscal de la Federación (CFF) establece los requisitos que deben de contener los Comprobantes Fiscales Digitales por Internet (CFDI), en relación con lo establecido en el artículo 29, fracción VI del citado Código, dichos comprobantes deben de cumplir con las especificaciones que en materia de informática determine el Servicio de Administración Tributaria (SAT), mediante reglas de carácter general.
Para dar cumplimiento a la legislación mencionada y de acuerdo a las especificaciones del Anexo 20 de la Resolución Miscelánea Fiscal para 2017, publicada el 23 de diciembre de 2016, en el presente documento se detalla la configuración que se debe realizar para la generación de los Comprobantes Fiscales Digitales a través de Internet (CFDi) versión 3.3.
Antes de ejecutar el Procedimiento de Implantación, es imprescindible:
Atención ¡El siguiente procedimiento debe realizarlo un profesional calificado como Administrador de base de datos (DBA) o su equivalente! La activación indebida de la integridad referencial puede modificar drásticamente la relación entre tablas en la base de datos. Por lo tanto, antes de utilizarla, observe atentamente el siguiente procedimiento: 1. En el Configurador (SIGACFG), verifique si la empresa utiliza Integridad referencial, seleccionando la opción Integridad/Verificación (APCFG60A). 2. Si no hay Integridad referencial activa, se listan en una nueva ventana todas las empresas y sucursales registradas en el sistema y ninguna de estas estará seleccionada. SOLAMENTE en este caso no es necesario ningún otro procedimiento de activación o desactivación de integridad, basta finalizar la verificación y aplicar normalmente el compatibilizador, de acuerdo con las instrucciones. 3. Si la Integridad referencial está activa en todas las empresas y sucursales, se muestra un mensaje en la ventana Verificación de vínculo entre tablas. Confirme el mensaje para que se concluya la verificación, o; 4. Si existe Integridad referencial activa en una o más empresas, que no representan la totalidad, se listan en una nueva ventana todas las empresas y sucursales registradas en el sistema y solamente se seleccionarán las que tienen integridad. Anote las empresas y/o sucursales que tienen la integridad activada y reserve esta anotación para posterior consulta en la reactivación (o incluso, entre en contacto con nuestro Help Desk Framework para informarse sobre los archivos que contienen esta información). 5. En los casos descritos en los ítems “iii” o “iv”, Y SOLO EN ESTOS CASOS, es necesario desactivar dicha integridad, seleccionando la opción Integridad/ Desactivar (APCFG60D). 6. Al desactivar la Integridad referencial, ejecute el compatibilizador, de acuerdo con las instrucciones. 7. Después de aplicar el compatibilizador, la Integridad referencial debe reactivarse, SOLAMENTE CUANDO se haya desactivado, por medio de la opción Integridad/Activar (APCFG60). Para ello, tenga a disposición la información de la(s) empresa(s) y/o sucursal(es) que tenía(n) activación de la integridad, selecciónela(s) nuevamente y confirme la activación.
¡EN CASO DE DUDAS, entre en contacto con el Help Desk Framework! |
Deberá aplicar el paquete de actualización (patch) relacionado a éste llamado. Es importante respaldar el repositorio de objetos (RPO) antes de aplicar la actualización.
El patch contiene la actualización de los fuentes:
Junto con el paquete de actualización se incluyen los siguientes ejemplos:
2. En base a los scripts de ejemplo antes mencionados, FATSMEX.ini y FATEMEX.ini, debe actualizar los archivos correspondientes al ambiente ubicados dentro de la carpeta inicfd (PROTHEUS_DATA\SYSTEM\CFDI\INICFD), estos archivos se utilizan para configurar la generación de los archivos xml de facturación (CFDI).
3. Ejecutar el compatibilizador UPDMODMI:
Para que se actualice correctamente el diccionario de datos, asegúrese de que la fecha del compatibilizador sea igual o superior al 19/05/2017.
Haga clic en OK para continuar.
Después de confirmar, aparece una pantalla para seleccionar la empresa en la cual se modificará el diccionario de datos o aparece la ventana para seleccionar el compatibilizador. Deberá seleccionar el módulo “SIGAFAT – Facturación” y posteriormente el actualizador “07 - Comprobante Fiscal Digital por Internet versión 3.3”.
Al confirmar, se muestra un mensaje de advertencia sobre la copia de seguridad y la necesidad de su ejecución de modo exclusivo.
Haga clic en Procesar para iniciar el procesamiento. El primer paso de la ejecución es la preparación de los archivos.
Se muestra un mensaje explicativo en la pantalla.
A continuación, se muestra la ventana Actualización concluida con el historial (log) de todas las actualizaciones procesadas. En este log de actualización se muestran únicamente los campos actualizados por el programa. El compatibilizador crea los campos que aún no existen en el diccionario de datos.
Haga clic en Grabar para guardar el historial (log) mostrado.
Haga clic en OK para finalizar el procesamiento.
4. Obtenga del sitio web del SAT el archivo Catálogo de datos (xsd) http://www.sat.gob.mx/sitio_internet/cfd/catalogos/catCFDI.xsd, exporte las diferentes tablas contenidas en la planilla hacia archivos tipo CSV separados, el nombre de los archivos debe ser el correspondiente a cada pestaña (hoja), la ruta donde almacenará estos archivos debe ser informada en el parámetro del sistema MV_PATH814, descrito más adelante en este documento.
1. Creación de tabla en el archivo SX2– Tablas:
Clave | Nombre | Modo | PYME |
F3H | Configuración de Catálogos | C | S |
F3I | Información de Catálogos | C | S |
2. Creación de Campos en el archivo SX3 – Campos:
Campo | F3H_FILIAL |
Tipo | C |
Tamaño | 2 |
Decimal | 0 |
Formato |
|
Título | Sucursal |
Descripción | Sucursal |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema | NaoVazio() .and. ExistChav("F3H", M->F3H_CODIGO,1) .and. FreeForUse("F3H",M->F3H_CODIGO) |
Help | Digite el código de la sucursal. |
Campo | F3H_CODIGO |
Tipo | C |
Tamaño | 4 |
Decimal | 0 |
Formato | @! |
Título | Código |
Descripción | Código del parámetro |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Código del parámetro. |
Campo | F3H_DESC |
Tipo | C |
Tamaño | 30 |
Decimal | 0 |
Formato | @! |
Título | Descripción |
Descripción | Descripción del parámetro |
Nivel |
|
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema | NAOVAZIO() |
Help | Descripción del parámetro. |
Campo | F3H_ORDEM |
Tipo | C |
Tamaño | 2 |
Decimal | 0 |
Formato | 99 |
Título | Orden |
Descripción | Orden del Parámetro |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Orden del parámetro. |
Campo | F3H_CAMPOS |
Tipo | C |
Tamaño | 10 |
Decimal | 0 |
Formato | AXXXXXXXXX |
Título | Campos |
Descripción | Nombre del Campo |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema | NaoVazio() .and. f812VerChav("F3H",M->F3H_CAMPOS) |
Help | Incluir el nombre del campo. |
Campo | F3H_DESCPO |
Tipo | C |
Tamaño | 25 |
Decimal |
|
Formato | @! |
Título | Desc.Campo |
Descripción | Descripción del Campo |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Incluir la descripción del campo. |
Campo | F3H_TIPO |
Tipo | C |
Tamaño | 1 |
Decimal |
|
Formato | @! |
Título | Tipo |
Descripción | Tipo |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones | N=Numérico;C=Carácter;D=Fecha |
When | F812Valid() |
Relación |
|
Val. Sistema | NaoVazio() .and. Pertence("NCD") .and. f812ChkTipo(M->F3H_TIPO) |
Help | Incluya el tipo de campo. C = Carácter, D = Fecha, N = Numérico. |
Campo | F3H_TAMAN |
Tipo | N |
Tamaño | 3 |
Decimal |
|
Formato | 999 |
Título | Tamaño |
Descripción | Tamaño del Campo |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When | F812Valid() |
Relación |
|
Val. Sistema | NaoVazio() .and. F812ChkTaman(M->F3H_TAMAN) |
Help | Incluir el tamaño del campo. Obs: si el campo fuera tipo D=Fecha, el tamaño debe ser igual a 8. |
Campo | F3H_DECIMA |
Tipo | N |
Tamaño | 2 |
Decimal |
|
Formato | 99 |
Título | Decimal |
Descripción | Decimal |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When | F812Valid() |
Relación |
|
Val. Sistema | f812ChkDec(M->F3H_DECIMA) |
Help | Incluir el número de decimales que tendrá el campo. Campos tipo: Fecha y Carácter No tiene decimales |
Campo | F3H_PICTUR |
Tipo | C |
Tamaño | 45 |
Decimal | 0 |
Formato | @! |
Título | Formato |
Descripción | Formato |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Digite la máscara para la exhibición del campo. Ej.: "@E 999,99 |
Campo | F3H_VALID |
Tipo | C |
Tamaño | 120 |
Decimal | 0 |
Formato | @! |
Título | Validación |
Descripción | Validación del Usuario |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Agregar una validación del campo si es necesario. Ej,: Entre("01","10",M-> F3H_TAMAN,.T.) En el caso que la función utilizada sea "PERTENECE", deberá informarse el campo como segundo parámetro. Ej.: Pertence("12",cCampo) |
Campo | F3H_PADRAO |
Tipo | C |
Tamaño | 6 |
Decimal |
|
Formato | @! |
Título | Cons.Estand. |
Descripción | Consulta Estandar |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema | f812ConsPad() |
Help | Digite una consulta estándar para la tabla. |
Campo | F3H_VERSAO |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Versión |
Descripción | Versión |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Versión del catálogo. |
Campo | F3H_PESQ |
Tipo | C |
Tamaño | 1 |
Decimal |
|
Formato | @! |
Título | ¿Usado Busq? |
Descripción | ¿Usado en la Busqueda? |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones | 1=Si;2=No |
When |
|
Relación |
|
Val. Sistema |
|
Help | ¿Usado en la Búsqueda de la Consulta Estándar (SXB)? Informar Si para utilizar este campo como clave simples de búsqueda. |
Campo | F3I_FILIAL |
Tipo | C |
Tamaño | 2 |
Decimal | 0 |
Formato |
|
Título | Sucursal |
Descripción | Sucursal |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Informe el código de la sucursal. |
Campo | F3I_CODIGO |
Tipo | C |
Tamaño | 4 |
Decimal | 0 |
Formato | @! |
Título | Código |
Descripción | Código del parámetro |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema | EXISTCPO("F31") |
Help | Informe el contenido de identificación del ítem de la lista. Por ejemplo, si la lista de modificación es la lista de países, este campo corresponde al código de identificación del país. |
Campo | F3I_SEQUEN |
Tipo | C |
Tamaño | 5 |
Decimal |
|
Formato | 99999 |
Título | Secuencia |
Descripción | Secuencia |
Nivel |
|
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Secuencia. |
Campo | F3I_CONTEU |
Tipo | C |
Tamaño | 250 |
Decimal |
|
Formato | @!
|
Título | Contenido
|
Descripción | Contenido de tabla |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Informe el contenido. |
Campo | CTO_MOESAT |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Moneda SAT |
Descripción | Moneda SAT |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX008 |
Val. Sistema | Vazio() .or. ValidF3I("S008", M->CTO_MOESAT,1,3) |
Help | Clave de moneda de acuerdo al catálogo del SAT |
Campo | B1_PRODSAT |
Tipo | C |
Tamaño | 8 |
Decimal |
|
Formato | @! |
Título | Prod/Serv SAT |
Descripción | Producto o servicio SAT |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX002 |
Val. Sistema | Vazio() .or. ValidF3I("S002", M->B1_PRODSAT,1,8) |
Help | Clave del producto o del servicio de acuerdo al catálogo del SAT. |
Campo | B1_NUMCTAP |
Tipo | C |
Tamaño | 150 |
Decimal |
|
Formato | @! |
Título | Cta. predial |
Descripción | Cuenta Predial |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Número de la cuenta predial del inmueble. |
Campo | AH_UNIDSAT |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Uni Med SAT |
Descripción | Unidad medida SAT |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX003 |
Val. Sistema | Vazio() .or. ValidF3I("S003", M->AH_UNIDSAT,1,3) |
Help | Unidad de medida de acuerdo al catálogo del SAT |
Campo | FB_IMPSAT |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Impuesto SAT |
Descripción | Impuesto SAT |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX006 |
Val. Sistema | Vazio() .or. ValidF3I("S006", M->FB_IMPSAT,1,3) |
Help | Clave de impuesto de acuerdo al catálogo del SAT |
Campo | E4_MPAGSAT |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Met Pago SAT |
Descripción | Método de Pago SAT |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX007 |
Val. Sistema | Vazio() .or. ValidF3I("S007", M->E4_MPAGSAT,1,3) |
Help | Clave del método de pago de acuerdo al catálogo del SAT |
Campo | F1_RELSAT |
Tipo | C |
Tamaño | 2 |
Decimal |
|
Formato | @99 |
Título | Relación CFDI |
Descripción | Tipo de relación CFDI |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX012 |
Val. Sistema | Vazio() .or. ValidF3I("S012", M->F1_RELSAT,1,2) |
Help | Tipo de relación entre el documento y CFDI previo. |
Campo | F1_UUIDREL |
Tipo | M |
Tamaño | 10 |
Decimal |
|
Formato |
|
Título | UUID Relacs |
Descripción | UUID CFDI Relacionados |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Folio fiscal de un CFDI relacionado con el presente comprobante. Separar cada folio fiscal con un salto de línea. |
Campo | F1_USOCFDI |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Uso CFDI |
Descripción | Clave de uso CFDI |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX013 |
Val. Sistema | Vazio() .or. ValidF3I("S013", M->F1_USOCFDI,1,3) |
Help | Clave del uso que dará a esta factura el receptor del CFDI. |
Campo | D1_PEDISAT |
Tipo | C |
Tamaño | 90 |
Decimal |
|
Formato |
|
Título | Núm. Ped. |
Descripción | Número del Pedimento |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Número del pedimento que ampara la importación. Separar cada número de pedimento con el carácter pipe "|". |
Campo | F2_RELSAT |
Tipo | C |
Tamaño | 2 |
Decimal |
|
Formato | @99 |
Título | Relación CFDI |
Descripción | Tipo de relación CFDI |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX012 |
Val. Sistema | Vazio() .or. ValidF3I("S012", M->F2_RELSAT,1,2) |
Help | Tipo de relación entre el documento y CFDI previo. |
Campo | F2_UUIDREL |
Tipo | M |
Tamaño | 10 |
Decimal |
|
Formato |
|
Título | UUID Relacs |
Descripción | UUID CFDI Relacionados |
Nivel | 1 |
Utilizado | Sí o No |
Obrigatório | Sí o No |
Browse | Sí o No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Folio fiscal de un CFDI relacionado con el presente comprobante. Separar cada folio fiscal con un salto de línea. |
Campo | F2_USOCFDI |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Uso CFDI |
Descripción | Clave de uso CFDI |
Nivel |
|
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX013 |
Val. Sistema | Vazio() .or. ValidF3I("S013", M->F2_USOCFDI,1,3) |
Help | Clave del uso que dará a esta factura el receptor del CFDI. |
Campo | D2_PEDISAT |
Tipo | C |
Tamaño | 90 |
Decimal |
|
Formato |
|
Título | Núm. Ped. |
Descripción | Número del Pedimento |
Nivel | 1 |
Utilizado | Sí o No |
Obrigatório | Sí o No |
Browse | Sí o No |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Número del pedimento que ampara la importación. Separar cada número de pedimento con el carácter pipe "|". |
Campo | C5_RELSAT |
Tipo | C |
Tamaño | 2 |
Decimal | 0 |
Formato | @99 |
Título | Relación CFDI |
Descripción | Tipo de relación CFDI |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX012 |
Val. Sistema | Vazio() .or. ValidF3I("S012", M->C5_RELSAT,1,2) |
Help | Tipo de relación entre el documento y CFDI previo |
Campo | C5_UUIDREL |
Tipo | M |
Tamaño | 10 |
Decimal |
|
Formato |
|
Título | UUID Relacs |
Descripción | UUID CFDI Relacionados |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Folio fiscal de un CFDI relacionado con el presente comprobante. Separar cada folio fiscal con un salto de línea. |
Campo | C5_USOCFDI |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | Uso CFDI |
Descripción | Clave de uso CFDI |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Consulta | MEX013 |
Val. Sistema | Vazio() .or. ValidF3I("S013", M->C5_USOCFDI,1,3) |
Help | Clave del uso que dará a esta factura el receptor del CFDI. |
Campo | C6_PEDISAT |
Tipo | M |
Tamaño | 10 |
Decimal |
|
Formato |
|
Título | Núm. Ped. |
Descripción | Número del Pedimento |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | Sí |
Opciones |
|
When |
|
Relación |
|
Val. Sistema |
|
Help | Número del pedimento que ampara la importación. |
Campo | YA_CCESAT |
Tipo | C |
Tamaño | 3 |
Decimal |
|
Formato | @! |
Título | País SAT. |
Descripción | Clave País SAT. |
Nivel | 1 |
Utilizado | Sí |
Obrigatório | No |
Browse | No |
Opciones |
|
When |
|
Consulta | MEX009 |
Val. Sistema | Vazio() .or. ValidF3I("S009", M->YA_CCESAT,1,3) |
Help | Clave país para Complemento Comercio Exterior. |
3. Modificación de Campos en el archivo SX3 – Campos:
Campo | A1_MPAGO |
Consulta | MEX005 |
Val. Sistema | Vazio() .or. ValidF3I("S005", M->A1_MPAGO,1,2) |
Importante:
El tamaño de los campos que disponen de grupo puede variar de acuerdo con el entorno en uso.
5. Creación de Consulta Estándar en el archivo SXB – Consulta Estándar:
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX001 | 1 | 01 | RE | Catálogo de aduanas | F3I |
MEX001 | 2 | 01 | 01 | Catálogo de aduanas | F812SXB("S001","Aduana") |
MEX001 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX002 | 1 | 01 | RE | Catálogo de productos / servicios | F3I |
MEX002 | 2 | 01 | 01 | Catálogo de productos / servicios | F812SXB("S002","Clave") |
MEX002 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX003 | 1 | 01 | RE | Catálogo de unidades de medida CFDI | F3I |
MEX003 | 2 | 01 | 01 | Catálogo de unidades de medida CFDI | F812SXB("S003","Clave") |
MEX003 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX004 | 1 | 01 | RE | Catálogo de códigos postales | F3I |
MEX004 | 2 | 01 | 01 | Catálogo de códigos postales | F812SXB("S004","Clave") |
MEX004 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX005 | 1 | 01 | RE | Catálogo de formas de pago | F3I |
MEX005 | 2 | 01 | 01 | Catálogo de formas de pago | F812SXB("S005","FormaPago") |
MEX005 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX006 | 1 | 01 | RE | Catálogo de impuestos | F3I |
MEX006 | 2 | 01 | 01 | Catálogo de impuestos | F812SXB("S006","Impuesto") |
MEX006 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX007 | 1 | 01 | RE | Catálogo de Método de Pago | F3I |
MEX007 | 2 | 01 | 01 | Catálogo de Método de Pago | F812SXB("S007","MetodoPago") |
MEX007 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX008 | 1 | 01 | RE | Catálogo de moneda | F3I |
MEX008 | 2 | 01 | 01 | Catálogo de moneda | F812SXB("S008","Moneda") |
MEX008 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX009 | 1 | 01 | RE | Catálogo de países | F3I |
MEX009 | 2 | 01 | 01 | Catálogo de países | F812SXB("S009","Pais") |
MEX009 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX010 | 1 | 01 | RE | Catálogo de régimen fiscal | F3I |
MEX010 | 2 | 01 | 01 | Catálogo de régimen fiscal | F812SXB("S010","RegFiscal") |
MEX010 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX011 | 1 | 01 | RE | Catálogo de tipos de comprobante | F3I |
MEX011 | 2 | 01 | 01 | Catálogo de tipos de comprobante | F812SXB("S011","TipoCompr") |
MEX011 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX012 | 1 | 01 | RE | Catálogo de tipos de relación CFDI | F3I |
MEX012 | 2 | 01 | 01 | Catálogo de tipos de relación CFDI | F812SXB("S012","TipoRelac") |
MEX012 | 5 | 01 | VAR_IXB |
Alias | Tipo | Secuencia | Columna | Descripción | Contém |
MEX013 | 1 | 01 | RE | Catálogo de uso de comprobantes | F3I |
MEX013 | 2 | 01 | 01 | Catálogo de uso de comprobantes | F812SXB("S013","UsoCFDI") |
MEX013 | 5 | 01 | VAR_IXB |
6. Creación de Índices en el archivo SIX – Índices:
Índice | F3H |
Orden | 1 |
Clave | F3H_FILIAL+F3H_CODIGO |
Descripción | Código |
Propietario | S |
Índice | F3H |
Orden | 2 |
Clave | F3H_FILIAL+F3H_DESC |
Descripción | Descripción |
Propietario | S |
Índice | F3H |
Orden | 3 |
Clave | F3H_FILIAL+F3H_CAMPOS+F3H_CODIGO |
Descripción | Campos + Código |
Propietario | S |
Índice | F3I |
Orden | 1 |
Clave | F3I_FILIAL+F3I_CODIGO+F3I_SEQUEN |
Descripción | Código + Secuencia |
Propietario | S |
7. Creación de Parámetros en el archivo SX6 – Parámetros:
Nombre de la Variable | MV_F3HNUM |
Tipo | C |
Descripción | Almacena el ultimo numero del codigo del parametro |
Valor Estándar | U000 |
Nombre de la Variable | MV_PATH814 |
Tipo | C |
Descripción | Ruta donde se encuentran los archivos en formato csv. |
Valor Estándar | C:\Temp\FISA814\ |
Nombre de la Variable | MV_RETISR |
Tipo | C |
Descripción | Códigos de retención de ISR |
Valor Estándar |
|
Nombre de la Variable | MV_RETIVAM |
Tipo | C |
Descripción | Códigos de retención de IVA |
Valor Estándar |
|
Nombre de la Variable | MV_RETIEPS |
Tipo | C |
Descripción | Códigos de retención de IEPS |
Valor Estándar |
|
Nombre de la Variable | MV_IVATRAS |
Tipo | C |
Descripción | Códigos de IVA trasladado |
Valor Estándar |
|
Nombre de la Variable | MV_IEPSTRA |
Tipo | C |
Descripción | Códigos de IEPS trasladado |
Valor Estándar |
|
CONFIGURACIÓN DE PARÁMETROS
Ítems/Carpetas | Descripción |
Nombre: | MV_PATH814 |
Tipo: | C |
Cont. Esp.: | C:\Temp\FISA814\ |
Descripción: | Ruta donde se encuentran los archivos en formato csv. |
Ítems/Carpetas | Descripción |
Nombre: | MV_RETISR |
Tipo: | C |
Cont. Esp.: | Ejemplo: IRS |
Descripción: | Códigos de impuesto variable para retenciones de ISR |
- Ingresar los códigos de los impuestos variables que son utilizados para realizar el cálculo de retenciones de ISR. Cada código debe estar separado por el carácter pipe “|”.
Ítems/Carpetas | Descripción |
Nombre: | MV_RETIVAM |
Tipo: | C |
Cont. Esp.: | Ejemplo: RIV |
Descripción: | Códigos de impuesto variable para retenciones de IVA |
- Ingresar los códigos de los impuestos variables que son utilizado para realizar el cálculo de retenciones de IVA. Cada código debe estar separado por el carácter pipe “|”.
Ítems/Carpetas | Descripción |
Nombre: | MV_RETIEPS |
Tipo: | C |
Cont. Esp.: | Ejemplo: IER |
Descripción: | Códigos de impuesto variable para retenciones de IEPS |
- Ingresar los códigos de los impuestos variables que son utilizados para realizar el cálculo de retenciones de IEPS. Cada código debe estar separado por el carácter pipe “|”.
Ítems/Carpetas | Descripción |
Nombre: | MV_IVATRAS |
Tipo: | C |
Cont. Esp.: | Ejemplo: IVA |
Descripción: | Códigos de impuesto variable para IVA trasladado. |
- Ingresar los códigos de los impuestos variables que son utilizados para realizar el cálculo del impuesto IVA trasladado. Cada código debe estar separado por el carácter pipe “|”.
Ítems/Carpetas | Descripción |
Nombre: | MV_IEPSTRA |
Tipo: | C |
Cont. Esp.: | Ejemplo: IEP |
Descripción: | Códigos de impuesto variable para IEPS trasladado. |
- Ingresar los códigos de los impuestos variables que son utilizados para realizar el cálculo del impuesto IEPS trasladado. Cada código debe estar separado por el carácter pipe “|”.
Nota: Los parámetros MV_RETISR, MV_RETIVAM, MV_RETIEPS, MV_IVATRAS y MV_IEPSTRA son utilizados en el proceso de generación del xml y sirven para determinar si el impuesto aplicado en la factura corresponde a impuesto retenido o impuesto trasladado.
CONFIGURACIÓN DE MENÚS
2. En el Configurador (SIGACFG), acceda a Entornos/Archivo/Menú (CFGX013). Informe la nueva opción de menú de Facturación, conforme las instrucciones a continuación:
Menú | Facturación |
Submenú | Actualizaciones | Archivos |
Nombre de la Rutina | Definición de Catálogos |
Programa | FISA812 |
Módulo | Facturación |
Tipo | Función Protheus |
Menú | Facturación |
Submenú | Actualizaciones | Archivos |
Nombre de la Rutina | Mantenimiento de Catálogos |
Programa | FISA813 |
Módulo | Facturación |
Tipo | Función Protheus |
Requisitos Previos
1.- En la ruta definida en el parámetro MV_PATH814, copiar los archivos de catálogos del SAT obtenidos de la planilla Catálogo de datos (xsd) http://www.sat.gob.mx/sitio_internet/cfd/catalogos/catCFDI.xsd
Nota: La ruta predefinida en el parámetro es: C:\TEMP\FISA814
2.- Con base en los ejemplos proporcionados, el usuario debe modificar los scripts de generación de CFDI (FATSMEX.INI y FATEMEX.INI) para producir los comprobantes fiscales (archivo xml).
Configuración de campos para CFDi Versión 3.3
1.- Ingresar al modulo de Facturación (SIGAFAT).
2.- Ejecutar la rutina de Definición de Catálogos (Actualizaciones | Archivos), para que se carguen los nuevos catálogos definidos por el SAT, los nuevos catálogos son:
3.- Ejecutar la rutina de Mantenimiento de Catálogos (Actualizaciones Archivos) para corroborar que la información corresponda en cada una de estas de acuerdo a lo definido previamente.
4.- Ejecutar la rutina de Clientes (Actualizaciones | Archivos), en la pestaña de ‘Fiscales’, configurar para cada cliente el campo Método Pago (A1_MPAGO) con la clave que le corresponde de acuerdo al catálogo (S005) definido por el SAT.
5.- Ejecutar la rutina de Productos (Actualizaciones | Archivos), configurar para cada producto el campo Prod/Serv SAT (B1_PRODSAT) con la clave que le corresponde de acuerdo al catálogo (S002) definido por el SAT.
6.- Ejecutar la rutina de Unidades Medida (Actualizaciones | Archivos), configurar para cada unidad de medida el campo Uni Med SAT (AH_UNIDSAT) con la clave que le corresponde de acuerdo al catálogo (S003) definido por el SAT.
7.- Ejecutar la rutina de Impuestos Variab. (Actualizaciones | Archivos), configurar para cada impuesto el campo Impuesto SAT (FB_IMPSAT) con la clave que le corresponde de acuerdo al catálogo (S006) definido por el SAT.
8.- Ejecutar la rutina de Cond. de Pago (Actualizaciones | Archivos), configurar para cada condición de pago el campo Met Pago SAT (E4_MPAGSAT) con la clave que le corresponde de acuerdo al catálogo (S007) definido por el SAT.
9.- Ingresar al modulo de Contabilidad de Gestión (SIGACTB).
10.- Ejecutar la rutina de Monedas Contables (Actualizaciones | Archivos), configurar para cada una de las monedas el campo Moneda SAT (CTO_MOESAT) con la clave que le corresponde de acuerdo al catálogo (S008) definido por el SAT.
11.- Ingresar al modulo de Compras (SIGACOM).
12.- Ejecutar la rutina de Países (Actualizaciones | Archivos Import), configurar para cada país el campo País SAT (YA_CCESAT), con la clave que le corresponde de acuerdo al catálogo (S009) definido por el SAT.
13.- Ingresar al modulo de Facturación (SIGAFAT)
14.- A través de la rutina de Pedidos de Venta (Actualizaciones | Pedidos), Incluir un pedido de venta.
15.- A traves de la rutina de Gener. de Fact. (Actualizaciones | Facturación). Generar una factura de venta por medio del pedido de venta.
16.- A través de la rutina de Facturación (Actualizaciones | Facturación), visualizar la factura generada a través del pedido de venta.
17.- A través de la rutina de Facturación (Actualizaciones | Pedidos), Incluir una factura de venta.
Generación del archivo XML para CFDi Versión 3.3
1.- A través de la rutina de Facturación (Actualizaciones | Facturación).
2.- Ingresar a la ruta definida en el parámetros MV_CFDDOCS para visualizar el comprobante fiscal digital (xml).