-
Notifications
You must be signed in to change notification settings - Fork 40
JSON Comandos Para impresora Fiscal
Realiza el cierre fiscal. Acepta como parámetro el tipo de cierre (X o Z) y si no se le pasa parámetro realiza el cierre X.
Tipo CHAR que puede ser "X" o "Z" dependiendo lo que se quiera imprimir
//JSON que se envía al servidor desde el cliente según el tipo de cierre:
// imprime un Zeta
{
"dailyClose": "Z"
}
Imprime un cierre tipo X
{
"dailyClose": "X"
}
Recibe un JSON con toda la informacion que viene de la fiscal.
//JSON que recibe el cliente como respuesta:
**{**
_**RESERVADO_SIEMPRE_CERO**_: "0" (Integer)
_**cant_doc_fiscales**_: "0" (Integer)
_**cant_doc_fiscales_a_emitidos**_: "0" (Integer)
_**cant_doc_fiscales_bc_emitidos**_: "0" (Integer)
_**cant_doc_fiscales_cancelados**_: "0" (Integer)
_**cant_doc_nofiscales**_: "1" (Integer)
_**cant_doc_nofiscales_homologados**_: "0" (Integer)
_**cant_nc_a_fiscales_a_emitidos**_: "0" (Integer)
_**cant_nc_bc_emitidos**_: "0" (Integer)
_**cant_nc_canceladas**_: "0" (Integer)
_**monto_credito_nc**_: "0.00" (Float)
_**monto_imp_internos**_: "0.00" (Float)
_**monto_imp_internos_nc**_: "0.00" (Float)
_**monto_iva_doc_fiscal**_: "0.00" (Float)
_**monto_iva_nc**_: "0.00" (Float)
_**monto_iva_no_inscripto**_: "0.00" (Float)
_**monto_iva_no_inscripto_nc**_: "0.00" (Float)
_**monto_percepciones**_: "0.00" (Float)
_**monto_percepciones_nc**_: "0.00" (Float)
_**monto_ventas_doc_fiscal**_: "0.00"(Float)
_**status_fiscal**_: "0600" (Hexadecimal)
_**status_impresora**_: "C080" (Hexadecimal)
_**ultima_nc_a**_: "30" (Integer)
_**ultima_nc_b**_: "327" (Integer)
_**ultimo_doc_a**_: "2262" (Integer)
_**ultimo_doc_b**_: "66733" (Integer)
_**ultimo_remito**_: "0" (Integer)
_**zeta_numero**_: "1" (Integer)
**}**
***
Imprime el ticket, se le deben pasar parametros como, el encabezado, items, pagos que son listas [], addAdditional, setHeader, setTrailer. Devuelve lo que _cerrarComprobante() a su vez devolvió.
Protocolo para formar un JSON con el objetivo de imprimir un ticket. Se compone de 3 distintas partes:
- Encabezado
- Ítems
- Pagos (opcional)
Al imprimir un ticket el servidor enviará 3 comandos previos que pueden resultar en un mensaje de warning: "comando no es valido para el estado de la impresora fiscal ". Esto no es un error, sino que antes de imprimir un tiquet envia:
- CANCELAR CUALQUIER TIQUET ABIERTO
- CANCELAR COMPROBANTE NO FISCAL
- CANCELAR NOTA ED CREDITO O DEBITO Es una comprobación útil que ahorrará dolores de cabeza y posibilidades de bloquear la impresora fiscal.
tipo: Json
{
"encabezado": {
"tipo_cbte": "FA", // tipo tiquet VARIABLE ESTATICA *obligatorio
"nro_doc": "20267565393", // identificacion cliente
"domicilio_cliente": "Rua 76 km 34.5 Alagoas", // domicilio
"tipo_doc": "DNI", // tipo documento VARIABLE ESTATICA (mas abajo se detallan)
"nombre_cliente": "Joao Da Silva", // nombre cliente
"tipo_responsable": "RESPONSABLE_INSCRIPTO" // VARIABLE ESTATICA
}
}
// ejemplo Nota de Crédito "A"
{
"encabezado": {
"tipo_cbte": "NCB", // tipo tiquet VARIABLE ESTATICA *obligatorio
"referencia": 000100012 // numero de comprobante impreso
}
}
tipo_cbte
"T" # tiques
"FA",
"FB",
"NDA",
"NCA",
"NDB",
"NCB",
"FC",
"NDC",
"NDC",
tipo_responsable
"RESPONSABLE_INSCRIPTO"
"RESPONSABLE_NO_INSCRIPTO"
"NO_RESPONSABLE"
"EXENTO"
"CONSUMIDOR_FINAL"
"RESPONSABLE_MONOTRIBUTO"
"NO_CATEGORIZADO"
"PEQUENIO_CONTRIBUYENTE_EVENTUAL"
"MONOTRIBUTISTA_SOCIAL"
"PEQUENIO_CONTRIBUYENTE_EVENTUAL_SOCIAL"
tipo_doc
"DNI"
"CUIT"
"LIBRETA_ENROLAMIENTO"
"LIBRETA_CIVICA"
"CEDULA"
"PASAPORTE"
"SIN_CALIFICADOR"
tipo: list
{
"items": [
{
"alic_iva": 21.0, // * Obligatorio
"importe": 0.01, // * Obligatorio
"ds": "Descripcion Producto", // * Obligatorio
"qty": 1.0 // * Obligatorio
},
{
"alic_iva": 21.0,
"importe": 0.22,
"ds": "COCA COLA",
"qty": 2.0
}
]
}
Todos los campos del ítem son obligatorios
tipo: list
{
"pagos": [
{
"ds": "efectivo", // * Obligatorio
"importe": 1.0 // * Obligatorio
}
]
}
json = {
"printTicket": {
"encabezado": {
"tipo_cbte": "FA",
"nro_doc": "20267565393",
"domicilio_cliente": "Rua 76 km 34.5 Alagoas",
"tipo_doc": "DNI",
"nombre_cliente": "Joao Da Silva",
"tipo_responsable": "RESPONSABLE_INSCRIPTO"
},
"items": [
{
"alic_iva": 21.0,
"importe": 0.01,
"ds": "PIPI",
"qty": 1.0
},
{
"alic_iva": 21.0,
"importe": 0.22,
"ds": "COCA",
"qty": 2.0
}
],
"pagos": [
{
"ds": "efectivo",
"importe": 1.0
}
]
}
}
json = {
"printTicket": {
"encabezado": {
"tipo_cbte": "T"
},
"items": [{
"alic_iva": 21.0,
"importe": 0.01,
"ds": "PEPSI",
"qty": 1.0
}, {
"alic_iva": 21.0,
"importe": 0.12,
"ds": "COCA",
"qty": 2.0
}]
}
}
// ejemplo de Nota de Credito
json = {
"printTicket": {
"encabezado": {
"tipo_cbte": "NCB"
},
"items": [{
"alic_iva": 21.0,
"importe": 0.01,
"ds": "PEPSI",
"qty": 1.0
}, {
"alic_iva": 21.0,
"importe": 0.12,
"ds": "COCA",
"qty": 2.0
}]
}
}
Setea el encabezado del ticket Se le debe pasar una Lista con los renglones a colocar donde cada item es un renglon []
Setea el pie de pagina Se le debe pasar una Lista con los renglones a colocar donde cada item es un renglon []
Fiscalberry es un proyecto de PaxaPos -Punto de Venta en la nube-.