CrearComprobanteConPercepciones

Los campos obligatorios están resaltados en negrita.
Descripción

Crea un comprobante electrónico legal adicionándole el cálculo de varias cargas impositivas (percepción de IVA, IIBB, Ganancias, SUSS, otros tributos), lo envía al destinatario en caso de indicarlo, adjunto en formato PDF.
Dentro de los datos requeridos, se encuentran los del receptor del comprobante, también nombrado como “Cliente”.

Funcionalidad interna
Alta Automática de Clientes:

Al recibir una petición para crear un comprobante, Facturante.com verifica si el Cliente ya existe.

  • En caso de no existir (se trata del primer comprobante que se quiere generar para dicho receptor) el sistema lo crea en el momento.
  • En caso de tratarse de un cliente existente, se actualizarán todos sus datos.

Los clientes son identificados unívocamente por el campo NroDocumento

IMPORTANTE: En caso que el cliente destino sea consumidor final, NO es requerido su documento real. Para esos casos, de no tener el DNI real, se sugiere utilizar el IDCliente del sistema propietario de la Empresa (suponiendo que este dato sea unívoco).
IMPORTANTE: En caso de que sea agente de percepción de impuesto a las ganancias: Si la factura es en moneda extranjera debe informar en TipodeCambio la cotización equivalente en pesos argentinos ya que esta será la que se utilizará para realizar la conversión pertinente y se mostrará en las observaciones
Autenticación

Dentro del objeto “request” se encuentra el objeto “Autenticacion” el cual contiene propiedades para el usuario, contraseña y empresa.

La validación del usuario se comprueba controlando la existencia del mismo, la contraseña utilizada y la coincidencia de la empresa reportada contra la empresa en la que figura el usuario en la base de datos de Facturante.com.

Validaciones
  • Los importes del comprobante deben ser adecuados sumando el total de la factura.
  • Items: el comprobante debe contener al menos un item.
Nombre Campo Tipo Propósito
Parámetros de entrada
Autenticacion
Usuario nvarchar(400) Nombre del usuario
Hash varchar(50) Password
Empresa Int Identificador de la empresa a la que pertenece el usuario (Es brindado por LinkSide)
Datos cliente (TAG: Cliente)
CodigoPostal Nchar(10)  
CondicionPago nvarchar(50) Valores Posibles:
  • 1= Contado
  • 2= Cuenta Corriente
  • 3= Tarjeta de Debito
  • 4= Tarjeta de Credito
  • 5= Cheque
  • 6= Ticket
  • 7= Otro
  • 8= MercadoPago
  • 9= Cobro Digital
  • 10= DineroMail
  • 11= Decidir
  • 12= Todo Pago
Contacto nvarchar(2000) Nombre de la persona a contactar
DireccionFiscal nvarchar(250) Dirección fiscal
EnviarComprobante Boolean True: por defecto se envía el comprobante por email al cliente
Localidad nvarchar(50) Nombre de la localidad
MailContacto nvarchar(150) Dirección de mail de Contacto
MailFacturacion nvarchar(150) Dirección de mail de Facturación
NroDocumento Nvarchar(13) En caso que el cliente sea consumidor final. No se requiere el dni real (SUGERENCIA: como se necesita un dato univoco, se sugiere ingresar el IDCliente de su sistema para respetar esta constraint)
PercibeIIBB Boolean True: Si la empresa emisora es Agente de Retención de ARBA
PercibeIVA Boolean True: Si la empresa emisora es Agente de Retención de IVA
PercibeSUSS Boolean True: Si la empresa emisora es Agente de Percepcion de SUSS
PercibeGanancias Boolean True: Si la empresa emisora es Agente de Percepcion de Ganancias
OtrosTributos Boolean True: Si la empresa necesita realizar otros tributos
Provincia nvarchar(50) Nombre de la provincia
RazonSocial varchar(500) Nombre de la persona física o jurídica del cliente a emitir el comprobante(receptor del comprobante)
Telefono nvarchar(100) Teléfono de contacto
TipoDocumento varchar(50) Valores Posibles:
  • 1: DNI
  • 2: CDI
  • 3: LC
  • 4: LE
  • 5: Pasaporte
  • 6: CUIT
  • 7: CUIL
  • 9: CI Extranjera
  • 10: En trámite
  • 11: Acta nacimiento
  • 12: CI Bs. As. RNP
  • 13: Sin identificar/venta global diaria
  • 14: Certificado de Migración
  • 15: Usado por Anses para Padrón
TratamientoImpositivo nvarchar(50) Situación frente al IVA. Valores posibles:
  • 1: MONOTRIBUTISTA
  • 2: RESPONSABLE INSCRIPTO
  • 3: CONSUMIDOR FINAL
  • 4: IVA EXENTO
  • 5: IVA NO RESPONSABLE
  • 7: IVA NO ALCANZADO
Encabezado del Comprobante (TAG: Encabezado)
Bienes Bit Seleccione en función de los tipos de items que incluye el comprobante. Valores Posibles:
  • 1: Bienes
  • 2: Servicios
  • 3: Productos y Servicios.
Ej: si contiene 2 servicios y 1 producto, entonces coloque "3"
CodigoPagoElectronico nvarchar(50) En caso de requerir un código de barras especial. NO USAR.
CondicionVenta Int Valores posibles:
  • 1= Contado
  • 2= Cuenta Corriente
  • 3= Tarjeta de Debito
  • 4= Tarjeta de Credito
  • 5= Cheque
  • 6= Ticket
  • 7= Otro
  • 8= MercadoPago
  • 9= Cobro Digital
  • 10= DineroMail
  • 11= Decidir
  • 12= Todo Pago
Legalmente son estos dos valores posibles.
EnviarComprobante Boolean True: envía el comprobante emitido por email (independientemente del default del cliente)
FechaHora Datetime Fecha y hora de emisión del comprobante
FechaServDesde Datetime Fecha de inicio del periodo del servicio facturado.
Es obligatorio si campo Bienes="2" o "3"
FechaServHasta Datetime Fecha de fin del periodo del servicio facturado.
Es obligatorio si campo Bienes="2" o "3"
FechaVtoPago Datetime Fecha de vencimiento del pago
ImporteImpuestosInternos Money Si existiera para el emisor un requerimiento de impuestos extras. Se incluye el importe correspondiente en este campo. Por defecto = 0
ImportePercepcionesMunic Money Si existiera para el emisor un requerimiento de impuestos extras. Se incluye el importe correspondiente en este campo. Por defecto = 0
Moneda int Código de Moneda correspondiente.
Valores Posibles:
  • 2: PESOS Argentinos
  • 3: DOLAR Estadounidense
Observaciones varchar(max) Texto que se incorpora el pie del comprobante.NOTA: SI LA FACTURA ES EN MONEDA EXTRANJERA Y SE APLICA LA PERCEPCION DE IMPUESTO A LA GANANCIA RG3819/15, FACTURANTE INFORMARA EN ESTE CAMPO EL TIPO DE CAMBIO UTILIZADO PARA CALCULAR LA PERCEPCIÓN EN MONEDA LOCAL PESOS.
OrdenCompra varchar(50) Campo informativo, para uso optativo del emisor. Se agrega en la factura
AlicuotaIIBB numeric(18,3) Alícuota de IIBB aplicada al neto gravado para realizar el cálculo de la percepción de IIBB de la provincia correspondiente. Solo si la empresa emisora es agente de Percepción de IIBB. Por defecto 0, no aplica percepción
ImporteIVA numeric(18,3) Importe correspondiente a la percepción de IVA, resultado de aplicar la alícuota correspondiente de IVA aplicada al neto gravado. Solo si el emisor es Agente de percepción de IVA. Por defecto 0, no aplica percepción
AlicuotaPercSUSS numeric(18,3) Alicuota a aplicar al neto gravado, para realizar el cálculo del monto destinado a SUSS. Solo si la empresa emisora es agente de Percepción de SUSS. Por defecto 0, no aplica percepción
AlicuotaPercGanancias numeric(18,3) Alícuota de percepción de ganancias a aplicar sobre el neto gravado. Solo si la empresa emisora es agente de Percepción de ganancias. Por defecto 0, no aplica percepción. (SI LA FACTURA ES EN MONEDA EXTRANJERA SE TOMRA EN CUENTA EL TIPO DE CAMBIO INGRESADO POR PARAMETRO "TipoDeCambio" PARA INFORMAR EN EL CAMPO OBSERVACIONES EL CALCULO EQUIVALENTE DE LA PERCEPCIÓN EN MONEDA LOCAL PESOS).
ImpOtrosTributos numeric(18,3) Importe de otros tributos a sumar en el TOTAL. Se suma como otros tributos sobre el total neto
Prefijo nvarchar(10) Siempre completar con ceros adelante del número si es menor a 4 digitos. Ej: 0004
Remito varchar(50) Campo informativo, para uso optativo del emisor. Se agrega en la factura
TipoComprobante nvarchar(3) Tipo comprobante a emitir. Solo se debe indicar las siglas. Valores Posibles:
  • FA: FACTURA A
  • FA SUJ RET: OPERACIÓN SUJETA A RETENCIÓN
  • NCA: NOTA DE CREDITO A
  • NDA: NOTA DE DEBITO A
  • RA: RECIBO A
  • FB: FACTURA B
  • FB8001: FACTURA B a RI con Informe 8001
  • NCB: NOTA DE CREDITO B
  • NCB8001: NOTA DE CREDITO B a RI con Informe 8001
  • NDB: NOTA DE DEBITO B
  • RB: RECIBO B
  • FC: FACTURA C
  • NCC: NOTA DE CREDITO C
  • NDC: NOTA DE DEBITO C
  • RC: RECIBO C
  • FM: FACTURA M
  • NCM: NOTA DE CREDITO M
  • NDM: NOTA DE DEBITO M
  • RM: RECIBO M
TipoDeCambio numeric(18,3) Factor de conversión a la moneda seleccionada. Para PESOS Arg = 1
z_ProvinciaPercepcion nvarchar(50) Nombre de la provincia donde se aplica la percepción
WebHook
Url nvarchar(4000) Url a la que Facturante enviará por POST el campo DetalleComprobante (xml) luego que reciba la respuesta de AFIP (debe incluir el protocolo, por ejemplo: https://myapp.com/webhook?id=1234)
Headers Lista de headers http que Facturante incluirá en la llamada al Url. Pada cada header deberá especificar su nombre y valor
Listado de Ítems
Bonificacion numeric(18,2) Porcentaje de bonificación al item en particular. Minimo = 0 (Ej: si desea bonificar un 20%, debemos ingresar 20)
Cantidad numeric(18,2) Cantidad de ese item. Mínimo = 1
Codigo nvarchar(20) Codigo del item (lo determina el emisor)
Detalle nvarchar(5000) Descripción del item
Gravado Boolean Defecto False
IVA numeric(18,2) Alícuota de IVA a aplicar para ese ítem. Valores posibles:
  • 10,5
  • 21
  • 27
  • 2,5
  • 5
  • 0 (Para indicar "Exento" ó "No gravado". De acuerdo al valor del campo Gravado se interpretará a qué tipo corresponde.)
PrecioUnitario numeric(18,2) Precio unitario del ítem (Neto en caso de RI, final en caso de Monotributista en tipo FB)
Parámetros de salida
Estado Int Ver Respuestas
Mensaje varchar(1000) Mensaje que describe el resultado de la operación. Tanto para casos exitosos como para fallidos.
Respuestas
IdComprobante int Identificador unívoco del comprobante a emitir.
ERRORES DE VALIDACION DE Facturante.com
Código Descripción
0 (SinDetalle) Sin Detalles
1 (ObjAutenticacionNull) El objeto Autenticación no pudo ser creado con los datos recibidos
2 (ObjItemsNull) El objeto Items no pudo ser creado con los datos recibidos
3 (ObjClienteNull) El objeto cliente no pudo ser creado con los datos recibidos
4 (UsuarioInvalido) Usuario incorrecto
5 (NroDocumentoNull) El número de documento debe tener un valor
6 (DireccionFiscalNull) El campo DireccionFiscal debe tener valor
7 (RazonSocialNull) El campo RazonSocial debe tener valor
8 (PrefijoNull) El campo Prefijo debe tener valor
9 (TipoComprobanteNull) El campo TipoComprobante debe tener valor
10 (DetalleItemNull) El campo Detalle del item {0} debe tener valor
11 (PVInvalido) El Punto de Venta con prefijo [{0}] no es válida para el emisor
12 (TipoComprobanteInvalido) El tipo de comprobante [{0}] no es válido para el emisor
13 (CondicionVentaInvalido) El valor [{0}] para condición de venta no es válido
14 (FechaAbonoInvalida) La fecha de inicio del abono no puede ser posterior a la de fin
15 (SinItems) Debe cargar al menos un item en el comprobante y //El comprobante no tiene items asociados
16 (SinCreditos) No tiene créditos disponibles para generar comprobantes
17 (FechaComprobanteInvalida) Ya existe un comprobante con fecha posterior a la fecha indicada
18 (MontoTotalInvalido) Monto total del comprobante [{0}] no concuerda con monto acumulado de total neto, percepciones e impuestos [{1}]
19 (MontoNetoInvalido) Monto neto del comprobante [{0}] no concuerda con monto total de iva base imponible [{1}]
20 (TipoCambioInvalido) El tipo de cambio (cotización) debe ser mayor a cero
21 (MontoTotalItemInvalido) Monto total del item [{0}] no concuerda con monto acumulado de total neto, bonificaciones e impuestos del item [{1}]
22 (ComprobanteInvalido) Comprobante inexistente
24 (DetalleItemLargo) El campo Detalle del item {0} no debe superar los 250 caracteres
25 (NroDocumentoCero) Para Facturas B el Nro. Documento debe ser mayor a 0
29 (MedioPagoInvalido) Intento de realizar percepción, a un medio de pago no correspondiente: RG3819/15 solo aplica a Contado
500 (ErrorInterno) Error interno.
501 (ErrorInternoSinTalonario) Error interno. No se ha encontrado un talonario para el tipo de comprobante que desea emitir