Skip to content

Commit f6701a9

Browse files
committed
Updated Catalogs
1 parent 0c290d0 commit f6701a9

File tree

10 files changed

+30
-30
lines changed

10 files changed

+30
-30
lines changed

satcfdi/catalogs/catalogs.db

-416 KB
Binary file not shown.

satcfdi/transform/objectify.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10694,7 +10694,7 @@ def mercancia0(cls, node):
1069410694
if (a := node.attrib.get('BienesTransp')) is not None:
1069510695
self['BienesTransp'] = catalog_code('C592_c_ClaveProdServCP', a)
1069610696
if (a := node.attrib.get('ClaveSTCC')) is not None:
10697-
self['ClaveSTCC'] = catalog_code('C592_c_ClaveProdSTCC', a)
10697+
self['ClaveSTCC'] = a
1069810698
if (a := node.attrib.get('Descripcion')) is not None:
1069910699
self['Descripcion'] = a
1070010700
if (a := node.attrib.get('Cantidad')) is not None:
@@ -10794,7 +10794,7 @@ def transporte_maritimo0(cls, node):
1079410794
if (a := node.attrib.get('LineaNaviera')) is not None:
1079510795
self['LineaNaviera'] = a
1079610796
self['NombreAgenteNaviero'] = node.attrib['NombreAgenteNaviero']
10797-
self['NumAutorizacionNaviero'] = catalog_code('C592_c_NumAutorizacionNaviero', node.attrib['NumAutorizacionNaviero'])
10797+
self['NumAutorizacionNaviero'] = node.attrib['NumAutorizacionNaviero']
1079810798
if (a := node.attrib.get('NumViaje')) is not None:
1079910799
self['NumViaje'] = a
1080010800
if (a := node.attrib.get('NumConocEmbarc')) is not None:
@@ -11253,7 +11253,7 @@ def transporte_maritimo1(cls, node):
1125311253
if (a := node.attrib.get('LineaNaviera')) is not None:
1125411254
self['LineaNaviera'] = a
1125511255
self['NombreAgenteNaviero'] = node.attrib['NombreAgenteNaviero']
11256-
self['NumAutorizacionNaviero'] = catalog_code('C592_c_NumAutorizacionNaviero', node.attrib['NumAutorizacionNaviero'])
11256+
self['NumAutorizacionNaviero'] = node.attrib['NumAutorizacionNaviero']
1125711257
if (a := node.attrib.get('NumViaje')) is not None:
1125811258
self['NumViaje'] = a
1125911259
if (a := node.attrib.get('NumConocEmbarc')) is not None:
@@ -11662,7 +11662,7 @@ def transporte_maritimo2(cls, node):
1166211662
if (a := node.attrib.get('LineaNaviera')) is not None:
1166311663
self['LineaNaviera'] = a
1166411664
self['NombreAgenteNaviero'] = node.attrib['NombreAgenteNaviero']
11665-
self['NumAutorizacionNaviero'] = catalog_code('C592_c_NumAutorizacionNaviero', node.attrib['NumAutorizacionNaviero'])
11665+
self['NumAutorizacionNaviero'] = node.attrib['NumAutorizacionNaviero']
1166611666
if (a := node.attrib.get('NumViaje')) is not None:
1166711667
self['NumViaje'] = a
1166811668
if (a := node.attrib.get('NumConocEmbarc')) is not None:
@@ -12084,7 +12084,7 @@ def transporte_maritimo3(cls, node):
1208412084
if (a := node.attrib.get('LineaNaviera')) is not None:
1208512085
self['LineaNaviera'] = a
1208612086
self['NombreAgenteNaviero'] = node.attrib['NombreAgenteNaviero']
12087-
self['NumAutorizacionNaviero'] = catalog_code('C592_c_NumAutorizacionNaviero', node.attrib['NumAutorizacionNaviero'])
12087+
self['NumAutorizacionNaviero'] = node.attrib['NumAutorizacionNaviero']
1208812088
if (a := node.attrib.get('NumViaje')) is not None:
1208912089
self['NumViaje'] = a
1209012090
if (a := node.attrib.get('NumConocEmbarc')) is not None:

satcfdi/transform/schemas/www.sat.gob.mx/sitio_internet/cfd/catalogos/CartaPorte/catCartaPorte.xsd

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

satcfdi/transform/xmlify.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11239,7 +11239,7 @@ def mercancia0(name, data):
1123911239
if (a := data.get('BienesTransp')) is not None:
1124011240
self.attrib['BienesTransp'] = strcode(a)
1124111241
if (a := data.get('ClaveSTCC')) is not None:
11242-
self.attrib['ClaveSTCC'] = strcode(a)
11242+
self.attrib['ClaveSTCC'] = a
1124311243
if (a := data.get('Descripcion')) is not None:
1124411244
self.attrib['Descripcion'] = a
1124511245
if (a := data.get('Cantidad')) is not None:
@@ -11343,7 +11343,7 @@ def transporte_maritimo0(name, data):
1134311343
if (a := data.get('LineaNaviera')) is not None:
1134411344
self.attrib['LineaNaviera'] = a
1134511345
self.attrib['NombreAgenteNaviero'] = data['NombreAgenteNaviero']
11346-
self.attrib['NumAutorizacionNaviero'] = strcode(data['NumAutorizacionNaviero'])
11346+
self.attrib['NumAutorizacionNaviero'] = data['NumAutorizacionNaviero']
1134711347
if (a := data.get('NumViaje')) is not None:
1134811348
self.attrib['NumViaje'] = a
1134911349
if (a := data.get('NumConocEmbarc')) is not None:
@@ -11828,7 +11828,7 @@ def transporte_maritimo1(name, data):
1182811828
if (a := data.get('LineaNaviera')) is not None:
1182911829
self.attrib['LineaNaviera'] = a
1183011830
self.attrib['NombreAgenteNaviero'] = data['NombreAgenteNaviero']
11831-
self.attrib['NumAutorizacionNaviero'] = strcode(data['NumAutorizacionNaviero'])
11831+
self.attrib['NumAutorizacionNaviero'] = data['NumAutorizacionNaviero']
1183211832
if (a := data.get('NumViaje')) is not None:
1183311833
self.attrib['NumViaje'] = a
1183411834
if (a := data.get('NumConocEmbarc')) is not None:
@@ -12259,7 +12259,7 @@ def transporte_maritimo2(name, data):
1225912259
if (a := data.get('LineaNaviera')) is not None:
1226012260
self.attrib['LineaNaviera'] = a
1226112261
self.attrib['NombreAgenteNaviero'] = data['NombreAgenteNaviero']
12262-
self.attrib['NumAutorizacionNaviero'] = strcode(data['NumAutorizacionNaviero'])
12262+
self.attrib['NumAutorizacionNaviero'] = data['NumAutorizacionNaviero']
1226312263
if (a := data.get('NumViaje')) is not None:
1226412264
self.attrib['NumViaje'] = a
1226512265
if (a := data.get('NumConocEmbarc')) is not None:
@@ -12705,7 +12705,7 @@ def transporte_maritimo3(name, data):
1270512705
if (a := data.get('LineaNaviera')) is not None:
1270612706
self.attrib['LineaNaviera'] = a
1270712707
self.attrib['NombreAgenteNaviero'] = data['NombreAgenteNaviero']
12708-
self.attrib['NumAutorizacionNaviero'] = strcode(data['NumAutorizacionNaviero'])
12708+
self.attrib['NumAutorizacionNaviero'] = data['NumAutorizacionNaviero']
1270912709
if (a := data.get('NumViaje')) is not None:
1271012710
self.attrib['NumViaje'] = a
1271112711
if (a := data.get('NumConocEmbarc')) is not None:

tests/test_cfdi/comprobante40/cfdv40-cartaporte20.xml.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -346,15 +346,15 @@ <h5>Mercancias</h5>
346346
<tbody>
347347
<tr>
348348
<td>
349-
<div><b>Cantidad: </b>1.000001</div><div><b>ID Origen: </b>OR123456</div><div><b>ID Destino: </b>DE654321</div><div><b>Claves Transporte: </b>05 - Ducto</div>
349+
<div><b>Cantidad: </b>1.000001</div><div><b>ID Origen: </b>OR123456</div><div><b>ID Destino: </b>DE654321</div><div><b>Claves Transporte: </b>05</div>
350350
</td>
351351
<td>
352352
Descripcion
353353
<div class="ci"><b>Clave SAT:</b> 60141405 - Kits o materiales para juegos de simulación</div>
354354
</td>
355355
<td>
356356
No
357-
<div class="ci">M0005 - MUNICIONES INCENDIARIAS con o sin carga dispersora, carga expulsora o carga propulsora (Producto o material explosivo)</div>
357+
<div class="ci">M0005</div>
358358
</td>
359359
<td>Z01 - No aplica</td>
360360
<td class="r">
@@ -384,10 +384,10 @@ <h5>TransporteMaritimo</h5>
384384
<table><tr><td class='htd'>Contenedor:</td><td><table><thead><tr><th>Matricula Contenedor</th><th>Tipo Contenedor</th><th>No. Precinto</th></tr></thead><tbody><tr><td>ABC45678901</td><td>CM009 - Contenedor flat racks</td><td>123456</td></tr></tbody></table></td></tr><tr><td class='htd'>Permiso SCT:</td><td>TPAF03 - Autotransporte Federal de Carga Especializada de materiales y residuos peligrosos</td></tr><tr><td class='htd'>No. de Permiso SCT:</td><td>567</td></tr><tr><td class='htd'>Nombre Aseguradora:</td><td>2367</td></tr><tr><td class='htd'>No. Póliza Seguro:</td><td>631</td></tr><tr><td class='htd'>Tipo Embarcación:</td><td>B15 - Extraordinaria especialización</td></tr><tr><td class='htd'>Matricula:</td><td>ABC3456</td></tr><tr><td class='htd'>Número OMI:</td><td>IMO1234567</td></tr><tr><td class='htd'>Año Embarcación:</td><td>2021</td></tr><tr><td class='htd'>Nombre de Embarcación:</td><td>789</td></tr><tr><td class='htd'>Nacionalidad de Embarcación:</td><td>ZZZ - Países no declarados</td></tr><tr><td class='htd'>Unidades de Arqueo Bruto:</td><td>23.456</td></tr><tr><td class='htd'>Tipo Carga:</td><td>PYD - Petróleo y Derivados</td></tr><tr><td class='htd'>No. Certificación ITC:</td><td>NumCertITC</td></tr><tr><td class='htd'>Eslora:</td><td>678</td></tr><tr><td class='htd'>Manga:</td><td>12</td></tr><tr><td class='htd'>Calado:</td><td>876</td></tr><tr><td class='htd'>Línea Naviera:</td><td>LineaNaviera</td></tr><tr><td class='htd'>Nombre Agente Naviero:</td><td>NombreAgenteNaviero</td></tr><tr><td class='htd'>No. Autorización Naviero:</td><td>SCT418/021/2021</td></tr><tr><td class='htd'>No. Viaje:</td><td>78</td></tr><tr><td class='htd'>No. de Conocimiento Embarcación:</td><td>789</td></tr></table>
385385
<br>
386386
<h5>TransporteAereo</h5>
387-
<table><tr><td class='htd'>Permiso SCT:</td><td>TPTA04 - Permiso para el servicio nacional e internacional no regular de taxi aéreo</td></tr><tr><td class='htd'>No. de Permiso SCT:</td><td>NumPermisoSCT</td></tr><tr><td class='htd'>Matricula Aeronave:</td><td>A123456</td></tr><tr><td class='htd'>Nombre Aseguradora:</td><td>NombreAseg</td></tr><tr><td class='htd'>No. Póliza Seguro:</td><td>345</td></tr><tr><td class='htd'>Número Guía:</td><td>12345678901234</td></tr><tr><td class='htd'>Lugar Contrato:</td><td>LugarContrato</td></tr><tr><td class='htd'>Código Transportista:</td><td>CA156 - Mexicanas; Volaris (Concesionaria Vuela Cia De Aviación)</td></tr><tr><td class='htd'>RFC Embarcador:</td><td>AAA010101AAA</td></tr><tr><td class='htd'>No. Reg Id Tributaria Embarcación:</td><td>NumRegIdTribEmbarc</td></tr><tr><td class='htd'>Residencia Fiscal Embarcación:</td><td>ZZZ - Países no declarados</td></tr><tr><td class='htd'>Nombre Embarcador:</td><td>NombreEmbarcador</td></tr></table>
387+
<table><tr><td class='htd'>Permiso SCT:</td><td>TPTA04 - Permiso para el servicio nacional e internacional no regular de taxi aéreo</td></tr><tr><td class='htd'>No. de Permiso SCT:</td><td>NumPermisoSCT</td></tr><tr><td class='htd'>Matricula Aeronave:</td><td>A123456</td></tr><tr><td class='htd'>Nombre Aseguradora:</td><td>NombreAseg</td></tr><tr><td class='htd'>No. Póliza Seguro:</td><td>345</td></tr><tr><td class='htd'>Número Guía:</td><td>12345678901234</td></tr><tr><td class='htd'>Lugar Contrato:</td><td>LugarContrato</td></tr><tr><td class='htd'>Código Transportista:</td><td>CA156 - Volaris (Concesionaria Vuela Cia De Aviación)</td></tr><tr><td class='htd'>RFC Embarcador:</td><td>AAA010101AAA</td></tr><tr><td class='htd'>No. Reg Id Tributaria Embarcación:</td><td>NumRegIdTribEmbarc</td></tr><tr><td class='htd'>Residencia Fiscal Embarcación:</td><td>ZZZ - Países no declarados</td></tr><tr><td class='htd'>Nombre Embarcador:</td><td>NombreEmbarcador</td></tr></table>
388388
<br>
389389
<h5>TransporteFerroviario</h5>
390-
<table><tr><td class='htd'>Derechos de Paso:</td><td><table><thead><tr><th>Tipo de Derecho de Paso</th><th>Kilometraje Pagado</th></tr></thead><tbody><tr><td>CDP119 - TEMP-2; Santa Fé (Km. V454+600); Jalapa (V-338+600); Recibe; Vía férrea del Noreste (actualmente Kansas City Southern de México, S.A. de C.V.)</td><td>12.3</td></tr></tbody></table></td></tr><tr><td class='htd'>Carro:</td><td><table><thead><tr><th>Contenedor</th><th>Tipo de Carro</th><th>Matricula Carro</th><th>Guia de Carro</th><th>Toneladas Netas Carro</th></tr></thead><tbody><tr><td><table><thead><tr><th>Tipo Contenedor</th><th>Peso Contenedor Vacío</th><th>Peso Neto Mercancía</th></tr></thead><tbody><tr><td>TC05 - 53&#x27;; Contenedor de 16.1 Mts de longitud</td><td>9.998</td><td>10.001</td></tr></tbody></table></td><td>TC05 - Plataforma Intermodal</td><td>MatriculaCarro</td><td>GuiaCarro</td><td>12.001</td></tr></tbody></table></td></tr><tr><td class='htd'>Tipo De Servicio:</td><td>TS04 - Tren unitario Intermodal</td></tr><tr><td class='htd'>Tipo De Trafico:</td><td>TT04 - Tráfico interlineal en tránsito</td></tr><tr><td class='htd'>Nombre Aseguradora:</td><td>NombreAseg</td></tr><tr><td class='htd'>No. Póliza Seguro:</td><td>NumPolizaSeguro</td></tr></table>
390+
<table><tr><td class='htd'>Derechos de Paso:</td><td><table><thead><tr><th>Tipo de Derecho de Paso</th><th>Kilometraje Pagado</th></tr></thead><tbody><tr><td>CDP119 - TEMP-2</td><td>12.3</td></tr></tbody></table></td></tr><tr><td class='htd'>Carro:</td><td><table><thead><tr><th>Contenedor</th><th>Tipo de Carro</th><th>Matricula Carro</th><th>Guia de Carro</th><th>Toneladas Netas Carro</th></tr></thead><tbody><tr><td><table><thead><tr><th>Tipo Contenedor</th><th>Peso Contenedor Vacío</th><th>Peso Neto Mercancía</th></tr></thead><tbody><tr><td>TC05 - Contenedor de 16.1 Mts de longitud</td><td>9.998</td><td>10.001</td></tr></tbody></table></td><td>TC05 - Plataforma Intermodal</td><td>MatriculaCarro</td><td>GuiaCarro</td><td>12.001</td></tr></tbody></table></td></tr><tr><td class='htd'>Tipo De Servicio:</td><td>TS04 - Tren unitario Intermodal</td></tr><tr><td class='htd'>Tipo De Trafico:</td><td>TT04 - Tráfico interlineal en tránsito</td></tr><tr><td class='htd'>Nombre Aseguradora:</td><td>NombreAseg</td></tr><tr><td class='htd'>No. Póliza Seguro:</td><td>NumPolizaSeguro</td></tr></table>
391391
<br>
392392
<h5>Figura de Transporte</h5>
393393
<table>

tests/test_cfdi/comprobante40/cfdv40-cartaporte20.xml.pretty.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,12 @@
3737
'Mercancia': [{'BienesTransp': Code('60141405', 'Kits o materiales para juegos de simulación'),
3838
'Cantidad': Decimal('1.000001'),
3939
'CantidadTransporta': [{'Cantidad': Decimal('1.000001'),
40-
'CvesTransporte': Code('05', 'Ducto'),
40+
'CvesTransporte': Code('05', None),
4141
'IDDestino': 'DE654321',
4242
'IDOrigen': 'OR123456'}],
4343
'ClaveSTCC': '1234567',
4444
'ClaveUnidad': Code('ZZ', 'Mutuamente definido'),
45-
'CveMaterialPeligroso': Code('M0005', 'MUNICIONES INCENDIARIAS con o sin carga dispersora, carga expulsora o carga propulsora (Producto o material explosivo)'),
45+
'CveMaterialPeligroso': Code('M0005', None),
4646
'DescripEmbalaje': 'DescripEmbalaje',
4747
'Descripcion': 'Descripcion',
4848
'DetalleMercancia': {'NumPiezas': 42,
@@ -69,7 +69,7 @@
6969
'NumTotalMercancias': 1,
7070
'PesoBrutoTotal': Decimal('100.123'),
7171
'PesoNetoTotal': Decimal('101.234'),
72-
'TransporteAereo': {'CodigoTransportista': Code('CA156', ['Mexicanas', 'Volaris (Concesionaria Vuela Cia De Aviación)']),
72+
'TransporteAereo': {'CodigoTransportista': Code('CA156', 'Volaris (Concesionaria Vuela Cia De Aviación)'),
7373
'LugarContrato': 'LugarContrato',
7474
'MatriculaAeronave': 'A123456',
7575
'NombreAseg': 'NombreAseg',
@@ -83,13 +83,13 @@
8383
'ResidenciaFiscalEmbarc': Code('ZZZ', 'Países no declarados')},
8484
'TransporteFerroviario': {'Carro': [{'Contenedor': [{'PesoContenedorVacio': Decimal('9.998'),
8585
'PesoNetoMercancia': Decimal('10.001'),
86-
'TipoContenedor': Code('TC05', ["53'", 'Contenedor de 16.1 Mts de longitud'])}],
86+
'TipoContenedor': Code('TC05', 'Contenedor de 16.1 Mts de longitud')}],
8787
'GuiaCarro': 'GuiaCarro',
8888
'MatriculaCarro': 'MatriculaCarro',
8989
'TipoCarro': Code('TC05', 'Plataforma Intermodal'),
9090
'ToneladasNetasCarro': Decimal('12.001')}],
9191
'DerechosDePaso': [{'KilometrajePagado': Decimal('12.3'),
92-
'TipoDerechoDePaso': Code('CDP119', ['TEMP-2', 'Santa Fé (Km. V454+600)', 'Jalapa (V-338+600)', 'Recibe', 'Vía férrea del Noreste (actualmente Kansas City Southern de México, S.A. de C.V.)'])}],
92+
'TipoDerechoDePaso': Code('CDP119', 'TEMP-2')}],
9393
'NombreAseg': 'NombreAseg',
9494
'NumPolizaSeguro': 'NumPolizaSeguro',
9595
'TipoDeServicio': Code('TS04', 'Tren unitario Intermodal'),
@@ -107,7 +107,7 @@
107107
'NombreAgenteNaviero': 'NombreAgenteNaviero',
108108
'NombreAseg': '2367',
109109
'NombreEmbarc': '789',
110-
'NumAutorizacionNaviero': Code('SCT418/021/2021', None),
110+
'NumAutorizacionNaviero': 'SCT418/021/2021',
111111
'NumCertITC': 'NumCertITC',
112112
'NumConocEmbarc': '789',
113113
'NumPermisoSCT': '567',
@@ -139,7 +139,7 @@
139139
'NavegacionTrafico': 'Cabotaje',
140140
'NombreEstacion': 'NombreEstacion',
141141
'NombreRemitenteDestinatario': 'NombreRemitenteDestinatario',
142-
'NumEstacion': Code('EF001', 'Pantaco'),
142+
'NumEstacion': Code('EF001', None),
143143
'NumRegIdTrib': '123456',
144144
'RFCRemitenteDestinatario': 'AAA010101AAA',
145145
'ResidenciaFiscal': Code('ZZZ', 'Países no declarados'),
@@ -161,14 +161,14 @@
161161
'NavegacionTrafico': 'Cabotaje',
162162
'NombreEstacion': 'NombreEstacion',
163163
'NombreRemitenteDestinatario': 'NombreRemitenteDestinatario',
164-
'NumEstacion': Code('EF001', 'Pantaco'),
164+
'NumEstacion': Code('EF001', None),
165165
'NumRegIdTrib': '012345',
166166
'RFCRemitenteDestinatario': 'BASJ600902KL9',
167167
'ResidenciaFiscal': Code('ZZZ', 'Países no declarados'),
168168
'TipoEstacion': Code('03', 'Destino Final Nacional'),
169169
'TipoUbicacion': 'Destino'}],
170170
'Version': '2.0',
171-
'ViaEntradaSalida': Code('05', 'Ducto')}},
171+
'ViaEntradaSalida': Code('05', None)}},
172172
'Conceptos': [{'Cantidad': Decimal('1'),
173173
'ClaveProdServ': Code('84111506', 'Servicios de facturación'),
174174
'ClaveUnidad': Code('ACT', 'Actividad'),

0 commit comments

Comments
 (0)