> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getjusto.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Cerrar cuenta

> Cierra la cuenta, igual que en el PDV. Solo se puede cerrar si amountDue es 0. Si el local emite boletas al cerrar, se emite la boleta. Si la cuenta ya está cerrada, la devuelve sin cambios.



## OpenAPI

````yaml post /tabs/{storeId}/tabs/{tabId}/close
openapi: 3.1.0
info:
  title: Justo API
  version: 3.0.0
servers:
  - url: https://api.service.getjusto.com/v3
    description: Production server
security: []
paths:
  /tabs/{storeId}/tabs/{tabId}/close:
    post:
      summary: Close tab
      description: >-
        Cierra la cuenta, igual que en el PDV. Solo se puede cerrar si amountDue
        es 0. Si el local emite boletas al cerrar, se emite la boleta. Si la
        cuenta ya está cerrada, la devuelve sin cambios.
      parameters:
        - in: path
          name: storeId
          required: true
          schema:
            type: string
          description: ID Justo del local.
        - in: path
          name: tabId
          required: true
          schema:
            type: string
          description: ID de la cuenta (_id en GET /tabs/{storeId}/tabs).
      responses:
        '200':
          description: The OpenAPI spec
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    $ref: '#/components/schemas/tabsTab'
        '400':
          description: Errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: 'false'
                  error:
                    type: object
                    properties:
                      error:
                        type: string
                        example: error
                      message:
                        type: string
                        example: The request has an error
components:
  schemas:
    tabsTab:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID de la cuenta.
        code:
          type: string
          example: CJXEQZK
          description: Un código único para identificar la cuenta. Es único en Crisp.
        description:
          type: string
          example: Justo C#16699-02
          description: El nombre de la cuenta visible para operadores.
        comments:
          type: string
          example: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
          description: Comentarios de la cuenta.
        websiteId:
          type: string
          example: ErCkmcyCEovseJq5E
          description: El ID de la marca al que pertenece la cuenta.
        storeId:
          type: string
          example: Li4eEa3W2hiuGGCFa
          description: El ID de la tienda al que pertenece la cuenta.
        shiftId:
          type: string
          example: tsft-b6fda21f-b638-428b-a785-849fdbe3fe0b
          description: El ID del turno al que pertenece la cuenta.
        tabCounter:
          type: number
          example: 1
          description: El número de la cuenta en el turno. Único en el turno.
        createdById:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del usuario que creó la cuenta.
        operatorUserId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del mesero/operador de la cuenta.
        driverUserId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del repartidor de la cuenta.
        createdAtDeviceId:
          type: string
          example: W2hiuGGLa3W2hW2hiuGGLiuGGLWW2hiuGGL2hiuGGLW2hiuGGLi4eECFa
          description: El ID del dispositivo desde donde se creó la cuenta.
        countryCode:
          type: string
          description: Código de país ISO 3166-1 alpha-2
          example: CL
        createdAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de creación de la cuenta.
        closedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de cierre de la cuenta.
        deletedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en que se eliminó la cuenta.
        cancelledAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de cancelación de la cuenta.
        cancellationPrompt:
          type: string
          example: El pedido fue cancelado por el cliente.
          description: >-
            Si es que el pedido se canceló desde un canal de ventas despues de
            que el pedido fue aceptado, muestra este mensaje al usuario.
        tableIds:
          type: array
          items:
            type: string
          description: IDs de las mesas asociadas a la cuenta.
        tableNames:
          type: array
          items:
            type: string
          description: Nombres de las mesas asociadas a la cuenta.
        sectorIds:
          type: array
          items:
            type: string
          description: IDs de los sectores de las mesas asociadas a la cuenta.
        reservationId:
          type: string
          description: ID de la reserva asociada a la cuenta.
        paymentStatus:
          type: string
          enum:
            - pending
            - paid
            - refunded
            - partiallyPaid
        statusLabel:
          type: string
          description: Estado de la cuenta.
        statusLabelForClient:
          type: string
          description: Estado de la cuenta visible para el cliente.
        totalPrice:
          type: number
          description: Precio total de la cuenta.
        totalNetPrice:
          type: number
          description: Precio neto total de la cuenta.
        totalTaxPrice:
          type: number
          description: Precio total de impuestos de la cuenta.
        totalPriceBeforeDiscounts:
          type: number
          description: Precio total de la cuenta antes de descuentos.
        discountsAmount:
          type: number
          description: Precio total de descuentos de la cuenta.
        amountPaid:
          type: number
          description: Monto pagado de la cuenta.
        amountDue:
          type: number
          description: Monto pendiente de la cuenta.
        tipAmountPaid:
          type: number
          description: Monto de propina pagada de la cuenta.
        netTipAmountPaid:
          type: number
          description: Monto neto de propina pagada de la cuenta.
        taxTipAmountPaid:
          type: number
          description: Monto de impuestos de propina pagada de la cuenta.
        mustBeReadyAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en que el pedido debe estar listo.
        mustBeDeliveredAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en que el pedido debe ser entregado al cliente.
        readyToPickupAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en que el pedido estará listo para ser retirado.
        activatesAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en que la cuenta se activa.
        source:
          type: string
          description: Origen de la cuenta.
          enum:
            - pos
            - totem
            - clientView
            - messenger
            - justo
            - pedidosya
            - rappi
            - ubereats
            - custom
            - paymentDeviceTransaction
            - ordatic
            - hubster
            - didifood
        salesChannelConfigId:
          type: string
          description: ID de la configuración del canal de ventas.
        channelName:
          type: string
          description: Nombre del canal de ventas.
        clientData:
          type: object
          description: Datos del cliente.
          properties:
            name:
              type: string
              description: Nombre del cliente.
            email:
              type: string
              description: Email del cliente.
            phone:
              type: string
              description: Teléfono del cliente.
            addressLine1:
              type: string
              description: Dirección del cliente.
            addressLine2:
              type: string
              description: Departamento, edificio, etc.
            addressExtra:
              type: string
              description: Ciudad, pais, etc.
        integrationClientId:
          type: string
          description: ID del cliente en el canal de ventas.
        deliveryType:
          type: string
          description: Tipo de entrega.
          enum:
            - delivery
            - go
            - serve
        hasExternalDeliveryProvider:
          type: boolean
          description: >-
            Si es que la cuenta tiene un proveedor de delivery externo. Por
            ejemplo Justo, Rappi, etc.
        generateInvoiceAtClose:
          type: boolean
          description: Si es que se debe generar una factura al cerrar la cuenta.
        integrationOrderId:
          type: string
          description: ID del pedido en el canal de ventas.
        integrationIsPending:
          type: boolean
          description: Si es que el pedido está pendiente de aceptar en el canal de ventas.
        integrationComments:
          type: array
          items:
            type: string
          description: Comentarios del pedido en el canal de ventas.
        eaterLabels:
          type: array
          items:
            type: string
          description: Etiquetas de comensales.
        externalInvoiceId:
          type: string
          description: ID de la factura externa.
        payments:
          type: array
          items:
            $ref: '#/components/schemas/tabsTabPayment'
          description: Pagos de la cuenta.
        invoices:
          type: array
          items:
            $ref: '#/components/schemas/tabsTabInvoice'
          description: Facturas de la cuenta.
        discounts:
          type: array
          items:
            $ref: '#/components/schemas/tabsTabDiscount'
          description: Descuentos de la cuenta.
        items:
          type: array
          items:
            $ref: '#/components/schemas/tabsTabItem'
          description: Items de la cuenta.
    tabsTabPayment:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID del pago.
        code:
          type: string
          example: CJXEQZK
          description: Un código único para identificar el pago. Es único en Crisp.
        shiftId:
          type: string
          example: Li4eEa3W2hiuGGCFa
          description: El ID del turno al que pertenece el pago.
        paymentMethodId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del método de pago.
        paymentMethodName:
          type: string
          example: Efectivo
          description: El nombre del método de pago.
        amount:
          type: number
          example: 100
          description: El monto del pago.
        tipAmount:
          type: number
          example: 10
          description: El monto de la propina.
        createdAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de creación del pago.
        voidedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de anulación del pago.
        shiftEndedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de cierre del turno.
        createdById:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del usuario que creó el pago.
        shouldMakeInvoice:
          type: boolean
          example: true
          description: Indica si se debe generar una factura para el pago.
        payerName:
          type: string
          example: John Doe
          description: Nombre del pagador. Solo para JustoPay
        payerUserId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del usuario que pagó la cuenta. Solo para JustoPay
    tabsTabInvoice:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID de la factura.
        providerId:
          type: string
          example: openFactura
          description: El ID del proveedor al que pertenece la factura.
        storeId:
          type: string
          example: sto-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID del local asociado al documento tributario.
        tabId:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID de la cuenta PDV asociada al documento, si existe.
        inventorySaleId:
          type: string
          example: isale-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID de la venta de inventario asociada al documento, si existe.
        createdAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de creación de la factura.
        generatedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de generación de la factura.
        status:
          type: string
          enum:
            - pending
            - generated
            - error
            - voided
            - generating
          description: >-
            El estado de la factura. Valores posibles: 'pending', 'generated',
            'error', 'voided', 'generating'.
        externalInvoiceId:
          type: string
          example: '123456'
          description: El ID de la factura en el sistema externo.
        externalVoidInvoiceId:
          type: string
          example: '654321'
          description: El ID de la anulación en el sistema externo, si existe.
        errorMessage:
          type: string
          example: Error al generar la factura.
          description: Mensaje de error al generar la factura.
        voidedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de anulación de la factura.
        statusLabel:
          type: string
          example: Pendiente
          description: Etiqueta del estado de la factura.
        invoiceURL:
          type: string
          example: https://getjusto.com/invoice/123456
          description: URL de la factura.
        totalAmount:
          type: number
          example: 100
          description: El monto total de la factura.
        taxAmount:
          type: number
          example: 10
          description: El monto de los impuestos de la factura.
        netAmount:
          type: number
          example: 90
          description: El monto total neto de la factura.
    tabsTabDiscount:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID del descuento.
        shiftId:
          type: string
          example: Li4eEa3W2hiuGGCFa
          description: El ID del turno al que pertenece el descuento.
        createdAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de creación del descuento.
        voidedAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de anulación del descuento.
        discountedAmount:
          type: number
          example: 100
          description: El monto del descuento.
        discountMethodId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del método de descuento.
        discountMethodName:
          type: string
          example: Cupón
          description: El nombre del método de descuento.
        type:
          type: string
          enum:
            - fixedAmount
            - openAmount
            - openPercentage
            - percentage
            - integration
          description: El tipo de descuento.
        fixedAmount:
          type: number
          example: 100
          description: Solo si es que el tipo de descuento es fijo
        percentage:
          type: number
          example: 0.1
          description: >-
            Solo si es que el tipo de descuento es porcentaje. Es una fracción:
            0.1 es 10%.
    tabsTabItem:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID del item.
        createdAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha de creación del item.
        amount:
          type: number
          example: 2
          description: Cantidad de este item en la cuenta.
        price:
          type: number
          example: 100
          description: Precio total del item, sin incluir modificadores.
        priceWithModifiers:
          type: number
          example: 120
          description: Precio total del item, incluyendo modificadores.
        unitPrice:
          type: number
          example: 50
          description: Precio unitario del item, sin incluir modificadores.
        productId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del producto.
        productName:
          type: string
          example: Café
          description: Nombre del producto.
        productInternalName:
          type: string
          example: Café
          description: Nombre interno del producto.
        productUnitItemsCount:
          type: number
          example: 1
          description: >-
            Cantidad de unidades que contiene el producto. Por ejemplo un combo
            papas fritas + hamburguesa y bebida contiene 3 items o un 2x1
            contiene 2 items.
        comment:
          type: string
          example: Sin azúcar
          description: Comentario del item.
        type:
          type: string
          enum:
            - product
            - deliveryFee
            - serviceFee
            - billingItem
          description: Tipo de item.
        sentToKDSAt:
          type: string
          example: '2020-01-01T00:00:00.000Z'
          format: date-time
          description: Fecha en la que se envió a cocina.
        addedByClientUserId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del cliente que agregó el item.
        addedByClientName:
          type: string
          example: Juan
          description: Nombre del cliente que agregó el item.
        addedByUserId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del garzón que digitó el item.
        addedByUserName:
          type: string
          example: Juan
          description: Nombre del garzón que digitó el item.
        eaterLabels:
          type: array
          items:
            type: string
          description: Etiquetas del comensal.
        modifiers:
          type: array
          items:
            $ref: '#/components/schemas/tabsTabItemModifier'
          description: Modificadores del item.
        unitProductWeight:
          type: number
          example: 100
          description: Peso del producto por unidad.
        totalWeight:
          type: number
          example: 100
          description: Peso total del item incluyendo modificadores y cantidad.
    tabsTabItemModifier:
      type: object
      properties:
        _id:
          type: string
          example: tab-4c48bf33-1411-4c3f-adac-db39b4631cb8
          description: El ID del modificador.
        modifierGroupId:
          type: string
          example: Li4eEa3W2hiuGGCFa
          description: El ID del grupo de modificador al que pertenece el modificador.
        modifierId:
          type: string
          example: a3W2hiuGGLi4eECFa
          description: El ID del modificador.
        amount:
          type: number
          example: 2
          description: >-
            Cantidad de este modificador en la cuenta multiplicado por la
            cantidad de items a los que aplica.
        modifierQuantity:
          type: number
          example: 1
          description: Cantidad de este modificador en la cuenta por cada item.
        price:
          type: number
          example: 100
          description: Precio total del modificador.
        unitPrice:
          type: number
          example: 50
          description: Precio unitario del modificador.
        modifierName:
          type: string
          example: Azúcar
          description: Nombre del modificador.
        modifierInternalName:
          type: string
          example: Azúcar
          description: Nombre interno del modificador.
        modifierGroupName:
          type: string
          example: Azúcar
          description: Nombre del grupo de modificador.
        modifierUnitItemsCount:
          type: number
          example: 1
          description: >-
            Cantidad de unidades que contiene el modificador. Por ejemplo un
            combo papas fritas + hamburguesa y bebida contiene 3 items o un 2x1
            contiene 2 items.
        modifierUnitWeight:
          type: number
          example: 100
          description: Peso del modificador por unidad.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.