Saltar a contenido

Complemento Carta Porte 2.0 (Traslado)

Para timbrar una factura con Complemento Carta Porte 2.0 es necesario tomar en cuenta que se puede realizar con el efecto contable de Traslado.

Definición

POST https://api.avanto.mx/v2/sales

Información

Los atributos marcados con son requeridos.

Cuerpo de solicitud

Recurso Tipo Default Descripción
company_subsidiary_id integer none ID de la sucursal emisora.
subsidiary_id integer 0 ID de la sucursal del cliente (receptor).
accounting_effect string "T" Efecto contable del comprobante en este caso será T. Traslado.
cfdi_regimenfiscal string "" Régimen Fiscal del emisor (Emisor.RegimenFiscal)
cfdi_usocfdi string "" Uso del CFDI (Receptor.UsoCFDI)
cfdi_exportacion string "01" Cfdi Exportación:
"01" - No aplica
cfdi_facactadquiriente string "" Cfdi FactAtrAdquirente
soldItems Object Productos del comprobante
soldItems.quantity decimal 0.0000 Cantidad
soldItems.unit_of_measure string "" Unidad de medida del producto (interna)
soldItems.code string "" Código o clave del producto (interna)
soldItems.description string "" Descripción del producto
soldItems.unit_price decimal 0.0000 Precio unitario
soldItems.discount decimal 0.0000 Monto de descuento
soldItems.non_taxable tinyint 0 Exento o libre de impuestos:
0 - No exento
1 - Exento
soldItems.cfdi_claveprodserv string "01010101" Clave del producto o servicio del catálogo del SAT
soldItems.cfdi_claveunidad string "H87" Clave de unidad del catálogo del SAT
soldItems.cfdi_cuentapredial string "" No. cuenta predial para el caso de recibos de arrendamiento
soldItems.cfdi_objetoimp string "" Objeto a impuestos.
"01" - No objeto de impuesto
"02" - Sí objeto de impuesto
"03" - Sí objeto del impuesto y no obligado al desglose
soldItems.notes string "" Datos adicionales para imprimir en el comprobante junto al artículo
cartaporte Object Complemento CartaPorte 2.0
cartaporte.transpinternac string "No" Transportación Internacional:
- "Sí"
- "No"
cartaporte.totaldistrec float 0.0000 Total de distancia recorrida.
cartaporte.mer_pesobrutototal float 0.0000 Peso bruto total de la mercancía.
cartaporte.mer_unidadpeso string "" Unidad de peso de la mercancía (Catálogo ).
cartaporte.mer_pesonetototal float 0.0000 Peso neto total de la mercancía.
cartaporte.mer_cargoportasacion float 0.0000 Cargo Por Tasación.
cartaporte.mer_numtotalmercancias int 0 Número total de mercancías.
cartaporte.ubicacion Object Ubicacion como mínimo deben de haber dos ubicaciones una como Origen y otra como Destino.
cartaporte.ubicacion.tipoubicacion string "" Tipo de ubicación:
- "Origen"
- "Destino"
cartaporte.ubicacion.idubicacion string "" Id de la Ubicación debe ser un string con el prefijo "OR" cuando es un Origen y "DE" en caso de que sea un Destino. Ejemplo: OR000003
cartaporte.ubicacion.rfcremitentedestinatario string "" RFC remitente destinatario
cartaporte.ubicacion.nombreremitentedestinatario string "" Nombre del remitente destinatario.
cartaporte.ubicacion.numregidtrib string "" Número de registro de identidad fiscal
cartaporte.ubicacion.residenciafiscal string "" Residencia fiscal.
cartaporte.ubicacion.fechahorasalidallegada string "" Fecha hora salida llegada. Ejemplo: 2022-05-04 12:00:00:23.000
cartaporte.ubicacion.distanciarecorrida float 0 Distancia recorrida, (Solo se llena cuando se registra una ubicación de tipo "Destino", debe de ser igual al total de distancia recorrida en el objeto carta porte cartaporte.totaldistrec)
cartaporte.ubicacion.dom_calle string "" Domicilio calle.
cartaporte.ubicacion.dom_numeroexterior string "" Número exterior.
cartaporte.ubicacion.dom_numerointerior string "" Número interior.
cartaporte.ubicacion.dom_colonia string "" Domicilio colonia.
cartaporte.ubicacion.dom_localidad string "" Domicilio localidad.
cartaporte.ubicacion.dom_referencia string "" Domicilio referencia.
cartaporte.ubicacion.dom_municipio string "" Domicilio municipio.
cartaporte.ubicacion.dom_estado string "" Domicilio estado.
Ejemplo: "ROO"
cartaporte.ubicacion.dom_pais string "" Domicilio país.
Ejemplo: "MEX"
cartaporte.ubicacion.dom_codigopostal string "" Domicilio código postal.
Ejemplo: "77533".
cartaporte.mercancia Object Mercancía array de objetos.
cartaporte.mercancia.bienestransp integer 0 ID Del bien transportado.
cartaporte.mercancia.clavestcc string "" Campo opcional para registra la clave de producto conforme al catálogo del Estándar para la Transportación de Productos
cartaporte.mercancia.descripcion string "" Descripción de la mercancía.
Ejemplo: Calzado, excepto caucho o plástico
cartaporte.mercancia.cantidad integer 0 Cantidad de bienes trasladados
cartaporte.mercancia.claveunidad string "" La unidad debe corresponder con la descripción de los bienes o mercancías registrados.
Ejemplo: PR
cartaporte.mercancia.unidad string "" Unidad en la que se registró la mercancía
cartaporte.mercancia.dimensiones string "" Dimensiones de la mercancía.
cartaporte.mercancia.materialpeligroso string "No" Material peligroso:
- "Sí"
- "No"
cartaporte.mercancia.cvematerialpeligroso string "" Clave de material peligroso, campo condicional solo y tan solo si cartaporte.mercancia.materialpeligroso se llena con "Sí".
cartaporte.mercancia.embalaje string "" Embalaje de la mercancía.
Ejemplo: "4G"
cartaporte.mercancia.descripembalaje string "" Descripción del embalaje:
Ejemplo: "Cajas de Cartón"
cartaporte.mercancia.pesoenkg float 0.0000 Peso en Kg.
cartaporte.mercancia.valormercancia float 0.0000 Valor de la mercancía (ValorMercancia)
cartaporte.mercancia.moneda string "" Moneda.
Ejemplo: "MXN"
cartaporte.mercancia.fraccionarancelaria string "" Fracción arancelaria (FraccionArancelaria)
cartaporte.mercancia.uuidcomercioext string "" UUID del comprobante de comercio exterior
cartaporte.mercancia.detm_unidadpesomerc string "" Unidad de peso de la mercancía.
Ejemplo: "TNE"
cartaporte.mercancia.detm_pesobruto float "" Peso bruto.
Ejemplo: 10342.012.
cartaporte.mercancia.detm_pesoneto float "" Peso neto.
Ejemplo: 9848.28.
cartaporte.mercancia.detm_pesotara float "" Peso tara.
Ejemplo: 493.732.
cartaporte.mercancia.detm_numpiezas integer "" Número de piezas.
Ejemplo: 4568.
cartaporte.autotransporte * Object Autotransporte
cartaporte.autotransporte.permsct string "" Permiso SCT (Sale de los catálogos del SAT).
cartaporte.autotransporte.numpermisosct string "" Número del permiso del SCT.
cartaporte.autotransporte.idv_configvehicular string "" Configuración vehicular (Sale de los catálogos del SAT).
cartaporte.autotransporte.idv_placavm string "" Placa Vehículo Motor (PlacaVM). Ejemplo: "501&&8"
cartaporte.autotransporte.idv_aniomodelovm string "" Año del modelo del vehículo.
cartaporte.autotransporte.seg_asegurarespcivil string "" Aseguradora de Responsabilidad Civil
cartaporte.autotransporte.seg_polizarespcivil string "" Póliza de R.C
cartaporte.autotransporte.seg_aseguramedambiente string "" Aseguradora de Medio Ambiente
cartaporte.autotransporte.seg_polizamedambiente string "" Póliza de M.A
cartaporte.autotransporte.seg_aseguracarga string "" Aseguradora de Carga
cartaporte.autotransporte.seg_polizacarga string "" Póliza de Carga
cartaporte.tiposFigura Object Valor de la Prima del Seguro
cartaporte.tiposFigura.tipofigura string "" Tipo figura
cartaporte.tiposFigura.rfcfigura string "" RFC del operador
cartaporte.tiposFigura.numlicencia string "" Número de licencia
cartaporte.tiposFigura.nombrefigura string "" Nombre del operador
cartaporte.tiposFigura.numregidtribfigura string "" Número de registro tributario figura.
cartaporte.tiposFigura.dom_calle string "" Domicilio calle
cartaporte.tiposFigura.dom_numeroexterior string "" Domicilio número exterior
cartaporte.tiposFigura.dom_numerointerior string "" Domicilio número interior
cartaporte.tiposFigura.dom_colonia string "" Domicilio colonia
cartaporte.tiposFigura.dom_localidad string "" Domicilio localidad
cartaporte.tiposFigura.dom_referencia string "" Domicilio referencia
cartaporte.tiposFigura.dom_municipio string "" Domicilio Municipio
cartaporte.tiposFigura.dom_estado string "" Domicilio Estado
cartaporte.tiposFigura.dom_pais string "" Domicilio País
cartaporte.tiposFigura.dom_codigopostal string "" Domicilio Código postal

Información

Los datos que deben considerarse en este tipo de CFDI (factura) son:

  • El campo “Total” debe contener valor “cero”.
  • La clave del RFC del receptor del CFDI (factura), debe ser la misma que la registrada para el emisor, en caso de que se integre el complemento Comercio Exterior, se debe omitir la validación que requiere el registro del RFC genérico en el campo emisor RFC cuando el tipo de comprobante sea traslado.
  • La clave registrada en el campo “Clave de producto o servicio” (ClaveProdServ) de la sección “Conceptos” del CFDI debe ser la misma que se registre en el campo “Bienes Transportados” (BienesTransp) de la sección “Mercancia” del complemento Carta Porte.

Se podrá amparar el traslado de bienes y/o mercancías de procedencia extranjera con el CFDI (factura) de tipo traslado con complemento Carta Porte, siempre que se registre el número de pedimento de importación, con su representación impresa en papel o en formato digital. Los campos no mencionados en este apartado se deben registrar conforme se establece en el Anexo 20 “Guía de llenado de los comprobantes fiscales digitales por Internet”.

Ejemplos

Con Cliente existente

Payload

{
    "accounting_effect": "T",
    "subsidiary_id": 1648,
    "cfdi_regimenfiscal": "601",
    "currency_id": 0,
    "company_subsidiary_id": 1,
    "cfdi_exportacion": "01",
    "cfdi_usocfdi": "S01",
    "payment_method": "PUE",
    "payment_options": 99,
    "soldItems": [
        {
            "quantity": 2,
            "description": "Computadoras Chidas",
            "unit_price": 0,
            "cfdi_claveprodserv": "43211507",
            "cfdi_objetoimp": "01",
            "unit_of_measure": "Pieza",
            "code": "",
            "cfdi_cuentapredial": "",
            "notes": ""
        }
    ],
    "cartaporte": {
        "transpinternac": "No",
        "totaldistrec": 100,
        "mer_pesobrutototal": 100,
        "mer_unidadpeso": "KGM",
        "mer_pesonetototal": 100,
        "mer_numtotalmercancias": 1,
        "ubicacion": [
            {
                "tipoubicacion": "Origen",
                "idubicacion": "OR000002",
                "rfcremitentedestinatario": "EKU9003173C9",
                "nombreremitentedestinatario": "ESCUELA KEMPER URGATE",
                "fechahorasalidallegada": "2022-05-26 15:15:24.000",
                "dom_estado": "ROO",
                "dom_pais": "MEX",
                "dom_codigopostal": "77533"
            },
            {
                "tipoubicacion": "Destino",
                "idubicacion": "DE000002",
                "rfcremitentedestinatario": "XAXX010101000",
                "nombreremitentedestinatario": "Publico en general",
                "fechahorasalidallegada": "2022-05-26 15:15:59.000",
                "distanciarecorrida": 100,
                "dom_estado": "GRO",
                "dom_pais": "MEX",
                "dom_codigopostal": "39000"
            }
        ],
        "mercancia": [
            {
                "bienestransp": 43211507,
                "clavestcc": "",
                "descripcion": "Computadoras hp",
                "cantidad": 20,
                "claveunidad": "H87",
                "pesoenkg": "100"
            }
        ],
        "autotransporte": [
            {
                "permsct": "TPAF01",
                "numpermisosct": "0X2XTXZ0Z5Z0Z3Z2Z1Z2",
                "idv_configvehicular": "VL",
                "idv_placavm": "501&&1",
                "idv_aniomodelovm": "2017",
                "seg_asegurarespcivil": "axxa seguros",
                "seg_polizarespcivil": "123456789"
            }
        ],
        "tiposFigura": [
            {
                "tipofigura": "01",
                "rfcfigura": "EKU9003173C9",
                "numlicencia": "123456789",
                "nombrefigura": "ESCUELA KEMPER URGATE",
                "dom_estado": "ROO",
                "dom_pais": "MEX",
                "dom_codigopostal": "77533"
            }
        ]
    }
}

cURL

curl --request PUT \
  --url 'https://api.avanto.mx/v2/sales' \
  --header 'authorization: Bearer [Access-Token]' \
  --header 'content-type: application/json' \
  --data '{
        "accounting_effect": "T",
        "subsidiary_id": 1648,
        "cfdi_regimenfiscal": "601",
        "currency_id": 0,
        "company_subsidiary_id": 1,
        "cfdi_exportacion": "01",
        "cfdi_usocfdi": "S01",
        "payment_method": "PUE",
        "payment_options": 99,
        "soldItems": [
            {
                "quantity": 2,
                "description": "Computadoras Chidas",
                "unit_price": 0,
                "cfdi_claveprodserv": "43211507",
                "cfdi_objetoimp": "01",
                "unit_of_measure": "Pieza",
                "code": "",
                "cfdi_cuentapredial": "",
                "notes": ""
            }
        ],
        "cartaporte": {
            "transpinternac": "No",
            "totaldistrec": 100,
            "mer_pesobrutototal": 100,
            "mer_unidadpeso": "KGM",
            "mer_pesonetototal": 100,
            "mer_numtotalmercancias": 1,
            "ubicacion": [
                {
                    "tipoubicacion": "Origen",
                    "idubicacion": "OR000002",
                    "rfcremitentedestinatario": "EKU9003173C9",
                    "nombreremitentedestinatario": "ESCUELA KEMPER URGATE",
                    "fechahorasalidallegada": "2022-05-26 15:15:24.000",
                    "dom_estado": "ROO",
                    "dom_pais": "MEX",
                    "dom_codigopostal": "77533"
                },
                {
                    "tipoubicacion": "Destino",
                    "idubicacion": "DE000002",
                    "rfcremitentedestinatario": "XAXX010101000",
                    "nombreremitentedestinatario": "Publico en general",
                    "fechahorasalidallegada": "2022-05-26 15:15:59.000",
                    "distanciarecorrida": 100,
                    "dom_estado": "GRO",
                    "dom_pais": "MEX",
                    "dom_codigopostal": "39000"
                }
            ],
            "mercancia": [
                {
                    "bienestransp": 43211507,
                    "clavestcc": "",
                    "descripcion": "Computadoras hp",
                    "cantidad": 20,
                    "claveunidad": "H87",
                    "pesoenkg": "100"
                }
            ],
            "autotransporte": [
                {
                    "permsct": "TPAF01",
                    "numpermisosct": "0X2XTXZ0Z5Z0Z3Z2Z1Z2",
                    "idv_configvehicular": "VL",
                    "idv_placavm": "501&&1",
                    "idv_aniomodelovm": "2017",
                    "seg_asegurarespcivil": "axxa seguros",
                    "seg_polizarespcivil": "123456789"
                }
            ],
            "tiposFigura": [
                {
                    "tipofigura": "01",
                    "rfcfigura": "EKU9003173C9",
                    "numlicencia": "123456789",
                    "nombrefigura": "ESCUELA KEMPER URGATE",
                    "dom_estado": "ROO",
                    "dom_pais": "MEX",
                    "dom_codigopostal": "77533"
                }
            ]
        }
    }'

Respuesta

La respuesta en formato: application/json, text/json.

{
    "id": 17365,
    "company_subsidiary_id": 1,
    "accounting_effect": "T",
    "serial_number": "T",
    "folio": 5,
    "emitted": "2022-06-06 14:06:38",
    "subsidiary_id": 1686,
    "carrier": "",
    "shipping": "",
    "currency_id": 0,
    "exchange_rate": "0.0000",
    "payment_options": "99",
    "payment_method": "PPD",
    "items": 0,
    "pieces": "2.000000",
    "subtotal": "0.0000",
    "discount": "0.0000",
    "subtotal_discount": "0.0000",
    "withheld_taxes_total": "0.0000",
    "transferred_taxes_total": "0.0000",
    "total": "0.0000",
    "received": "2022-06-06",
    "days_to_pay": 0,
    "receivable": 1,
    "date_of_payment": null,
    "deposited": 0,
    "terms_conditions": "",
    "canceled": 0,
    "canceled_date": null,
    "notes": "",
    "tips": "0.0000",
    "balance": null,
    "created_at": "2022-06-06 14:06:38",
    "cartaPorte": {
        "id": 10,
        "sale_id": 17365,
        "version": "20",
        "transpinternac": "No",
        "entradasalidamerc": null,
        "paisorigendestino": null,
        "viaentradasalida": null,
        "totaldistrec": "100.00",
        "mer_pesobrutototal": "100",
        "mer_unidadpeso": "KGM",
        "mer_pesonetototal": "100.00",
        "mer_numtotalmercancias": 1,
        "mer_cargoportasacion": null,
        "active": 1,
        "created_at": "2022-06-06 14:06:38",
        "created_by": 0
    }
}

Si se quiere ver todos los objetos relacionados al comprobante. Se necesita hacer la solicitud de la siguiente manera:

curl --request POST \
  --url 'https://api.avanto.mx/v2/sales/17365?expand=cfdidetails,soldItems,cartaPorte' \
  --header 'authorization: Bearer [Access-Token]' \
  --header 'content-type: application/json'