Skip to content

Comando emitir

Genera un nuevo comprobante, ya sea factura, boleta, o sus notas correspondientes.

Parámetros

codigo_establecimiento

Opcional. Numérico. Código del establecimiento asignado por la SUNAT del establecimiento donde se está realizando la venta de bienes.

Si la venta se realiza en el domicilio fiscal, o si no puede determinarse el lugar de la venta, consignar "0".

Si se omite, se usará el código "0".

tipo

Requerido. 1 carácter. Define el tipo de comprobante a generar:

  • f: Factura
  • b: Boleta de venta
  • c: Nota de crédito
  • d: Nota de débito

tipo_operacion

Opcional. Numérico. Para facturas y boletas, código de la operación que realiza esta venta. Los valores pueden ser:

  • 101: Venta interna
  • 102: Exportación
  • 103: No domicilados
  • 104: Venta interna – anticipos
  • 105: Venta itinerante
  • 106: Factura guía
  • 107: Venta arroz pilado
  • 108: Factura comprobante de percepción
  • 110: Factura - guía remitente

Si se omite, se usará el código 101 (Venta interna)

documento_modificado

Opcional. Usado sólo para las notas, máximo 13 caracteres. Número y serie (incluyendo el guión) de la factura o boleta afectada por la nota.

tipo_nota

Opcional. Usado sólo para las notas, 1 carácter. Motivo por el cual se está creando la nota:

  • Para notas de crédito:
    • 1: Anulación de la operación
    • 2: Anulación por error en el RUC
    • 3: Corrección por error en la descripción
    • 4: Descuento global
    • 5: Descuento por item
    • 6: Devolución total
    • 7: Devolución parcial
    • 8: Bonificación
    • 9: Disminución en el valor
    • 10: Otros conceptos
    • 11: Ajustes de operaciones de exportación
    • 12: Ajustes afectos al IVAP
    • 13: Corrección del monto neto pendiente de pago y/o la(s) fechas(s) de vencimiento del pago único o de las cuotas y/o los montos correspondientes a cada cuota, de ser el caso.
  • Para notas de débito:
    • 1: Intereses por mora
    • 2: Aumento de valor

serie

Requerido. Hasta 4 caracteres. Serie del documento. Debe empezar con 'F' para facturas y sus notas, y con 'B' para las boletas de venta y sus notas.

numero

Requerido. Hasta 8 dígitos. Número correlativo del documento.

tipo_doc

Requerido. Un carácter. Tipo de documento del receptor del comprobante:

  • r: RUC
  • d: DNI
  • x: Carné de extranjería
  • p: Pasaporte
  • c: Cédula diplomática
  • n: No domiciliado sin RUC
  • -: No especificado, sólo usado en boletas que no requieran documento de identidad.

numero_doc

Requerido. Hasta 14 caracteres. Número del documento de identidad del receptor del comprobante. Para boletas que no requieran, se puede consignar un guión ("-").

razon_social

Requerido. Hasta 100 caracteres. Nombre completo o razón social del receptor del comprobante. Para boletas que no requieran, se puede consignar tres guiones ("---").

direccion

Opcional. Hasta 100 caracteres. Dirección fiscal del receptor del comprobante. Para boletas que no requieran, se puede consignar un guión ("-").

fecha

Requerido. Fecha de emisión del comprobante, en formato YYYY-MM-DD.

hora

Opcional. Hora de emisión del comprobante. Debe consignarse en formato 24 horas, y puede omitirse los segundos (en tal caso, se usará 0 segundos). Se aceptan 3 formatos:

  • HH:MM - Sin segundos
  • HH:MM:SS - Con segundos
  • HH:MM:SS.SSSS - Con segundos y microsegundos

De omitirse, se usará la hora cuando el comprobante es recibido por el facturador.

fecha_vencimiento

Opcional. Fecha de vencimiento del comprobante, en formato YYYY-MM-DD.

forma_pago

Opcional, 7 caracteres, sólo para facturas y sus notas. Forma cómo será abonado el total del comprobante. Puede tener dos valores: contado o credito (también se acepta crédito, con tilde).

Si se omite, se usará el valor contado.

monto_pendiente

Opcional, decimal. Para facturas y sus notas con la propiedad tipo_pago con valor credito, monto neto pendiente de pago, el cual será fraccionado en una o más cuotas.

cuota

Opcional, colección, sólo para facturas y sus notas. Información sobre cada cuota de pago del monto_pendiente. También puedes usar el nombre cuotas para esta colección.

La documentación de cada cuota puedes revisarla en su documentación.

moneda

Requerido. 3 caracteres. Denominación ISO4217 de la moneda del comprobante. E.g. 'PEN' para Soles Peruanos, o 'USD' para Dólar Estadounidense.

observaciones

Opcional, pero obligatorio para las notas, indica el motivo de la emisión de la nota. Para facturas o boletas de venta, este texto podrá ser usado para la plantilla de la representación impresa.

monto_detraccion

Opcional. Decimal. Monto total de la detracción.

porcentaje_detraccion

Opcional. Entero. Porcentaje de detracción aplicado al total del CPE

codigo_detraccion

Opcional, entero. Obligatorio si está definido monto_detraccion. Código del bien o servicio afectado por la detracción, como detalla el Catálogo No. 54: Códigos de bienes y servicios sujetos a detracción.

forma_pago_detraccion

Opcional, entero. Obligatorio si está definido monto_detraccion, Código de la forma de pago de la detracción, según indica el Catálogo No. 59: Medios de Pago. De omitirse, se userá el valor '001' ('Depósito en cuenta').

porcentaje_igv

Opcional, entero. Porcentaje de referencia del IGV. No es usado en cálculos. Si se omite, se usará el valor legal actual, que también será usado por la plantilla de la representación impresa.

leyenda

Opcional, colección. Para facturas o boletas, mensajes que deben formar parte del comprobante de pago, acorde con lo regulado por el Reglamento de comprobantes de pago u otras disposiciones, que buscan diferenciar operaciones y/o agregar información complementaria al documento.

También puedes usar el nombre leyendas para esta colección.

Mira la documentación de la colección de leyendas.

descuento_global

Opcional, numérico. Descuento global, que ha sido aplicado al total del comprobante. Este descuento es distinto al que pueda ser aplicado a cada ítem del mismo.

Los totales gravado, inafecto y exonerado ya deben incluir este descuento global.

base_descuento_global

Opcional, numérico. Monto base al cual se le ha aplicado el descuento global. Es la suma de todos los totales sin incluir el descuento global.

total_gravado

Opcional, numérico. Suma de los valores de los items gravados con el IGV. Incluye descuentos globales.

total_inafecto

Opcional, numérico. Suma de los valores de los items inafectos del IGV. Incluye descuentos globales.

total_exonerado

Opcional, numérico. Suma de los valores de los items exonerados del IGV. Incluye descuentos globales.

total_gratuito

Opcional, numérico. Suma de los precios de referencia de items gratuitos.

total_descuentos

Opcional, numérico. Suma de descuentos por ítem, más descuentos globales.

total_igv

Opcional. numérico. Total de la suma del impuesto general a las ventas de todos los items gravados.

recibir_codigo_barras

Opcional, cadena de caracteres. Añade el valor de retorno codigo_barras a la respuesta de la API con una imágen PNG en base64 del código de barras 2D solicitado.

Al 9 de marzo del 2018, el único valor aceptado para esta propiedad es qr. También se puede usar como valor la palabra legal, que devuelve el código de barras legalmente requerido a la fecha.

recibir_valor_firma

Opcional. booleano. Añade el valor de retorno valor_firma a la respuesta de la API. Solía usarse para generar el código de barras, pero ahora se usa el valor resumen.

recibir_enlaces

Opcional, booleano. Añade los valores de retorno xml, cdr y pdfa la respuesta de la API con los enlaces para descargar el XML, la constancia de recepción y el PDF con la representación impresa, respectivamente.

enviar_correo

Opcional, colección. Envía un correo electrónico con el comprobante a todas las direcciones especificadas en esta propiedad.

Mira la documentación de la colección de destinatarios de correo.

item

Requerido. Colección de los ítems que componen este comprobante. También puedes usar el nombre items para esta colección.

La documentación de los ítems puedes revisarla en su documentación.

Variables de retorno

A parte de la variable estándar "estado", y las variables en caso el estado sea error, este comando devuelve las siguientes variables:

codigo_documento

Código del comprobante, en formato ruc-tipo-serie-numero. 'Tipo' es el tipo de documento según la SUNAT. E.g.: 01 es factura, 03 es boleta.

codigo_descarga

Código que será usado para formar la URL de descarga de los documentos.

valor_resumen

Cadena obtenida desde el elemento <ds:DigestValue> del XML del comprobante. Usado para generar el código de barras en la representación impresa.

xml

Sólo aparece si la propiedad recibir_enlaces está activa. URL de descarga del XML del CPE.

cdr

Sólo aparece si la propiedad recibir_enlaces está activa. URL de descarga del XML del comprobante de recepción.

pdf

Sólo aparece si la propiedad recibir_enlaces está activa. URL de descarga del PDF con la representación impresa del comprobante.

valor_firma

Sólo aparece si la propieda recibir_valor_firma está activa. Cadena obtenida desde el elemento <ds:SignatureValue> del XML del CPE. Solía ser usado para genera el código de barras en la representación impresa, pero ahora se usa el valor de valor_resumen.

codigo_barras

Sólo aparece si la propieda recibir_codigo_barras fue especificada. Contiene una imágen PNG codificada en Base64 con el código de barras solicitado.

Variables de retorno extras en modo de prueba

Estas variables de retorno son añadidas en modo prueba a la respuesta. No son incluidas en la respuesta en modo producción.

sunat_respuesta

Código de respuesta del servidor de pruebas de la SUNAT al recibir el CPE. Un valor 0 quiere decir que fue recibido sin problemas.

sunat_descripcion

Descripción textual del código de respuesta de la SUNAT.

sunat_observacion

Colección de observaciones de la SUNAT sobre el CPE recibido, si es que existen.