Saltar a contenido

Crear Factura de Ingreso

Crea un comprobante fiscal de Ingreso (Factura).

Definición

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

Con Cliente existente

Cuerpo de solicitud

Argumento Tipo Default Descripción
company_subsidiary_id integer 0 Sucursal de empresa emisora
accounting_effect string "I" Efecto contable: "I" - Ingreso
subsidiary_id integer 0 ID de la sucursal del cliente (receptor)
payment_method string "PUE" Metodo de pago:
"PUE" - Pago en una sola exhibición
"PPD" - Pago en parcialidades o diferido
payment_options string "99" Forma de pago:
"99" - Por definir
"01" - Efectivo
"02" - Cheque nominativo, etc.
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
emitted datetime datetime Fecha y hora de emisión; se expresa en el formato AAAA-MM-DDThh:mm :ss
carrier string "" Transportista: "FedEx", "UPS", "DHL" (requiere catálogo)
shipping string "" Dato de envío
assigned_to integer 1 Usuario Asignado.
currency_code string "MXN" Código de la moneda
exchange_rate decimal 0.0000 Tipo de cambio
received date date Fecha en que recibe el cliente este comprobante
days_to_pay integer 0 Total de día de crédito
receivable integer 1 Pendiente por cobrar:
0 - Cobrado
1 - PXC
date_of_payment datetime datetime Fecha del cobro
deposited integer 0 Depositado:
0 - No depositado
1 - Depositado
terms_conditions string "" Condiciones de pago
notes string "" Notas adicionales
tips decimal 0.0000 Importe de servicios adicionales
sic_code string "" RFC del cliente
customer_name string "" Nombre del cliente (Customers.customer_name)
customer_email string "" Correo electrónico del cliente (Customers.email)
cfdi_domiciliofiscalreceptor integer "" Domicilio fiscal receptor (Customers.Subsidiaries.bill_code)
cfdi_regimenfiscalreceptor integer "" Regimen fiscal receptor (Customers.cfdi_regimenfiscalreceptor)
cfdi_facactadquiriente string "" Cfdi FactAtrAdquirente
soldItems Object Productos del comprobante
soldItems.quantity decimal 0.0000 Cantidad
soldItems.description string "" Descripción del producto
soldItems.unit_price decimal 0.0000 Precio unitario
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.unit_of_measure string "" Unidad de medida del producto (interna)
soldItems.code string "" Código o clave del producto (interna)
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.notes string "" Datos adicionales para imprimir en el comprobante junto al artículo
soldItems.taxes Object Impuestos
soldItems.taxes.taxable_base decimal 0.0000 Base para el impuesto
soldItems.taxes.tax_type string "" Tipo de impuesto:
"T. Traslado"
"R. Retención"
soldItems.taxes.tax_name string "" Nombre de impuesto:
"002. IVA"
"003. IEPS"
"001. ISR"
soldItems.taxes.type_factor string "" Tipo Factor: "Tasa", "Cuota", "Exento"
soldItems.taxes.tax_rate decimal 0.0000 Tasa o cuota; un Porcentaje (p.ej: 0.16 para 16%) o un Importe
soldItems.infoAduanera Object Informacion Aduanera
soldItems.infoAduanera.numeropedimento string "" Número de pedimento

Información

  • Los campos marcados con son datos requeridos.
  • Tome en cuenta que el valor de emitted no puede ser de hace más de 48 horas ni mayor a la fecha y hora de la Ciudad de México y es independiente a la fecha y hora de timbrado.
  • Tipo de cambio es requerido si currency_code es diferente de "MXN".
  • Si los campos soldItems.cfdi_claveprodserv y soldItems.cfdi_claveunidad vienen vacíos en el post, por defecto toman el valor de "01010101" y "H87".
  • Si no se especifica el objeto soldItems.taxes, se supone un Traslado del 16% de IVA directo al importe de base.
  • El Domicilio Fiscal del receptor es un dato que proviene de la sucursal asignada, en caso de ser un cliente nuevo, el valor es requerido en la solicitud.

Atención

  • La información enviada sobre el cliente será actualizada en la base de datos.
  • Se requiere al menos dar de alta un producto/servicio para poder generar el comprobante correctamente.

Payload

{
    "company_subsidiary_id": 19,
    "accounting_effect": "I",
    "subsidiary_id": 18,
    "payment_method": "01",
    "payment_options": "PUE",
    "cfdi_exportacion": "01",
    "cfdi_regimenfiscal": "601",
    "cfdi_usocfdi": "S01",
    "soldItems": [
        {
            "quantity": 1,
            "description": "Lápices de colores",
            "unit_price": 150,
            "cfdi_objetoimp": "02",
            "infoAduanera": [
                {
                    "numeropedimento": "22  47  3807  8003832"
                },
                {
                    "numeropedimento": "22  47  3807  8003840"
                }
            ]
        }
    ]
}

Sin precargar Cliente

Se implementa un método rápido para crear una factura sin tener que precargar al Cliente.

Si se omite en la solicitud el dato del ID de la sucursal del Cliente subsidiary_id, la solicitud requiere el RFC del Receptor, el Régimen Fiscal del Receptor, Domicilio Fiscal del Receptor y el Uso del CFDI para crear al Cliente en la misma solicitud que se crea la factura.

Si el RFC no existe se crea el Cliente con ese RFC antes de crear la factura, si ya existe se usa el existente.

Cuerpo de solicitud

Argumento Tipo Default Descripción
company_subsidiary_id integer 0 Sucursal de empresa emisora
accounting_effect string "I" Efecto contable: "I" - Ingreso
payment_method string "PUE" Metodo de pago:
"PUE" - Pago en una sola exhibición
"PPD" - Pago en parcialidades o diferido
payment_options string "99" Forma de pago:
"99" - Por definir
"01" - Efectivo
"02" - Cheque nominativo, etc.
cfdi_regimenfiscal string "" Régimen Fiscal del emisor (Emisor.RegimenFiscal)
cfdi_exportacion string "01" Cfdi Exportación "01" - No aplica
sic_code string "" RFC del cliente
customer_name string "" Nombre del cliente (Customers.customer_name)
customer_email string "" Correo electrónico del cliente (Customers.email)
cfdi_usocfdi string "" Uso del CFDI (Receptor.UsoCFDI)
cfdi_domiciliofiscalreceptor integer "" Domicilio fiscal receptor (Customers.Subsidiaries.bill_code)
cfdi_regimenfiscalreceptor integer "" Regimen fiscal receptor (Customers.cfdi_regimenfiscalreceptor)
subsidiary_id integer 0 ID de la sucursal del cliente (receptor)
emitted datetime datetime Fecha y hora de emisión; se expresa en el formato AAAA-MM-DDThh:mm :ss
carrier string "" Transportista: "FedEx", "UPS", "DHL" (requiere catálogo)
shipping string "" Dato de envío
assigned_to integer 1 Usuario Asignado.
currency_code string "MXN" Código de la moneda
exchange_rate decimal 0.0000 Tipo de cambio
received date date Fecha en que recibe el cliente este comprobante
days_to_pay integer 0 Total de día de crédito
receivable integer 1 Pendiente por cobrar:
0 - Cobrado
1 - PXC
date_of_payment datetime datetime Fecha del cobro
deposited integer 0 Depositado:
0 - No depositado
1 - Depositado
terms_conditions string "" Condiciones de pago
notes string "" Notas adicionales
tips decimal 0.0000 Importe de servicios adicionales
cfdi_facactadquiriente string "" Cfdi FactAtrAdquirente
soldItems Object Productos del comprobante
soldItems.quantity decimal 0.0000 Cantidad
soldItems.description string "" Descripción del producto
soldItems.unit_price decimal 0.0000 Precio unitario
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.unit_of_measure string "" Unidad de medida del producto (interna)
soldItems.code string "" Código o clave del producto (interna)
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.notes string "" Datos adicionales para imprimir en el comprobante junto al artículo
soldItems.taxes Object Impuestos
soldItems.taxes.tax_type string "" Tipo de impuesto:
"T. Traslado"
"R. Retención"
soldItems.taxes.tax_name string "" Nombre de impuesto:
"002. IVA"
"003. IEPS"
"001. ISR"
soldItems.taxes.type_factor string "" Tipo Factor: "Tasa", "Cuota", "Exento"
soldItems.taxes.tax_rate decimal 0.0000 Tasa o cuota; un Porcentaje (p.ej: 0.16 para 16%) o un Importe

Información

  • Los campos marcados con son datos requeridos.
  • Tome en cuenta que el valor de emitted no puede ser de hace más de 48 horas ni mayor a la fecha y hora de la Ciudad de México y es independiente a la fecha y hora de timbrado.
  • Tipo de cambio es requerido si currency_code es diferente de "MXN".
  • Si los campos soldItems.cfdi_claveprodserv y soldItems.cfdi_claveunidad vienen vacíos en el post, por defecto toman el valor de "01010101" y "H87".
  • Si no se especifica el objeto soldItems.taxes, se supone un Traslado del 16% de IVA directo al importe de base.
  • El Domicilio Fiscal del receptor es un dato que proviene de la sucursal asignada, en caso de ser un cliente nuevo, el valor es requerido en la solicitud.

Atención

Se requiere al menos dar de alta un producto/servicio para poder generar el comprobante correctamente.

Payload

{
    "company_subsidiary_id": 1,
    "accounting_effect": "I",
    "payment_method": "PUE",
    "payment_options": "01",
    "cfdi_regimenfiscal": "601",
    "cfdi_exportacion": "01",
    "sic_code": "CUSC850516316",
    "customer_name": "CESAR OSBALDO CRUZ SOLORZANO",
    "customer_email": "[email protected]",
    "cfdi_usocfdi": "S01",
    "cfdi_domicilifiscalreceptor": "45638",
    "cfdi_regimenfiscalreceptor": "605",
    "soldItems": [
        {
            "quantity": 1,
            "description": "Lápices de colores",
            "unit_price": 150,
            "cfdi_objetoimp": "02",
            "infoAduanera": [
                {
                    "numeropedimento": "22  47  3807  8003832"
                },
                {
                    "numeropedimento": "22  47  3807  8003840"
                }
            ]
        }
    ]
}

Respuesta

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

{
    "id": 95,
    "company_subsidiary_id": 1,
    "accounting_effect": "I",
    "serial_number": "B",
    "folio": 3,
    "emitted": "2022-08-01 11:00:50",
    "subsidiary_id": 48,
    "carrier": "",
    "shipping": "",
    "currency_id": 7,
    "exchange_rate": "1.0000",
    "payment_options": "01",
    "payment_method": "PUE",
    "items": 1,
    "pieces": "1.000000",
    "subtotal": "150.0000",
    "discount": "0.0000",
    "subtotal_discount": "150.0000",
    "withheld_taxes_total": "0.0000",
    "transferred_taxes_total": "24.0000",
    "total": "174.0000",
    "received": "2022-07-09",
    "days_to_pay": 0,
    "receivable": 1,
    "date_of_payment": "2022-07-09 00:00:00",
    "deposited": 0,
    "terms_conditions": "",
    "canceled": 0,
    "canceled_date": "1969-12-12 00:00:00",
    "notes": "",
    "tips": "0.0000",
    "balance": null,
    "active": 1,
    "created_at": "2022-07-09 16:23:41"
}