Saltar al contenido
Krezkadev
POST/sales

Registrar una venta

Emite boleta, factura o nota de venta igual que tu POS: correlativo, IGV, kardex, caja y SUNAT. Antes de emitir revisa producto, tallas, stock libre, lote y cliente; si algo falta no se emite nada. La respuesta llega enseguida con status pending y SUNAT se consulta con GET /sales/{id}. Con sk_test_ no se emite (status: test, livemode: false, number_preview).

Cuerpo de la solicitud

document_typeenum

Si no viene: con RUC, invoice; si no, receipt. sales_note no va a SUNAT.

receiptinvoicesales_note

location_idinteger
customerobject

Sin customer: CLIENTES VARIOS. Una boleta de más de S/ 700 exige DNI.

document_typeenum

dniruccepassportnone

document_numberstring
namestring
emailstring
addressstring
phonestring
itemsobject[]requerido
product_idinteger

O sku, o barcode: uno solo. Con tallas, el id de la variante.

skustring
barcodestring

El código de un paquete vende el paquete a su precio.

descriptionstring

Ítem sin producto (por ejemplo el envío): description + unit_price.

quantitynumberrequerido
unit_pricenumber

Con IGV. Sin él, el precio del catálogo con su oferta vigente. Obligatorio en ítems libres.

batchstring

Farmacia: de qué lote sale. Sin él, del que vence primero.

taxenum

Solo ítems libres. Sin él, el de tu negocio (exonerado si estás en la Ley de Amazonía; si no, gravado).

taxedexemptunaffected

unitstring

Solo ítems libres: código de unidad de SUNAT (NIU por defecto, ZZ para servicios). Ver GET /units.

paymentobjectrequerido
methodenumrequerido

cashcardyapeplintransfer

referencestring
notesstring
external_idstring

Tu número de pedido. Único: si llega otra vez, 409 duplicate_external_id con el id de la venta.

Respuestas

  • 201Venta registrada
  • 400Error 400
  • 401Error 401
  • 403Error 403
  • 404Error 404
  • 409Error 409
  • 429Error 429
POST /sales
curl -X POST https://api.krezka.com/api/v1/erp/sales \
  -H "Authorization: Bearer $FALCONEXT_API_KEY" \
  -H "Idempotency-Key: <Idempotency-Key>" \
  -H "Content-Type: application/json" \
  -d '{
    "document_type": "receipt",
    "location_id": 0,
    "customer": {
      "document_type": "dni",
      "document_number": "string",
      "name": "string",
      "email": "string",
      "address": "string",
      "phone": "string"
    },
    "items": [
      {
        "product_id": 0,
        "sku": "string",
        "barcode": "string",
        "description": "string",
        "quantity": 0,
        "unit_price": 0,
        "batch": "string",
        "tax": "taxed",
        "unit": "string"
      }
    ],
    "payment": {
      "method": "cash",
      "reference": "string"
    },
    "notes": "string",
    "external_id": "string"
  }'
Respuesta · 201
JSON
{
  "object": "sale",
  "livemode": true,
  "id": "string",
  "external_id": "string",
  "document_type": "receipt",
  "number": "string",
  "number_preview": "string",
  "status": "pending",
  "sunat_message": "string",
  "issued_at": "2025-07-01T14:03:11Z",
  "location_id": 0,
  "customer": {},
  "items": [
    {}
  ],
  "subtotal": 0,
  "igv": 0,
  "total": 0,
  "currency": "string",
  "payment": {},
  "pdf_url": "string",
  "credit_note": {
    "number": "string",
    "status": "string",
    "reason": "string",
    "sunat_message": "string"
  },
  "created_at": "2025-07-01T14:03:11Z"
}
Pruébalo
API de Krezka (ERP)2026-10-22

Se guarda solo en tu navegador (localStorage). Nunca se incluye en el código copiable.

POSThttps://api.krezka.com/api/v1/erp/sales
curl -X POST https://api.krezka.com/api/v1/erp/sales \
  -H "Authorization: Bearer $FALCONEXT_API_KEY"
Respuesta

Envía una solicitud para ver la respuesta