> ## 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.

# Facturar órdenes de compra o guías

> Crea una compra a partir de documentos del mismo local, proveedor y tipo. Requiere órdenes aprobadas o guías disponibles; rechaza documentos ya facturados o con ítems adicionales. Marca los documentos como facturados y conserva la lógica que evita volver a ingresar el stock de guías. Si se informa paidAt, registra el pago contable. Requiere autorización admin y un usuario conectado; un token de integración sin usuario responde userRequired. Se aplican los mismos permisos y validaciones del formulario de inventario.



## OpenAPI

````yaml post /admin/inventory/stores/{storeId}/purchases/from-documents
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:
  /admin/inventory/stores/{storeId}/purchases/from-documents:
    post:
      summary: Facturar órdenes de compra o guías
      description: >-
        Crea una compra a partir de documentos del mismo local, proveedor y
        tipo. Requiere órdenes aprobadas o guías disponibles; rechaza documentos
        ya facturados o con ítems adicionales. Marca los documentos como
        facturados y conserva la lógica que evita volver a ingresar el stock de
        guías. Si se informa paidAt, registra el pago contable. Requiere
        autorización admin y un usuario conectado; un token de integración sin
        usuario responde userRequired. Se aplican los mismos permisos y
        validaciones del formulario de inventario.
      parameters:
        - in: path
          name: storeId
          required: true
          schema:
            type: string
          description: ID del local autorizado, obtenido de GET /ecommerce/stores.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/apiInventoryPurchaseFromDocumentsInput'
      responses:
        '200':
          description: The OpenAPI spec
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      _id:
                        type: string
                        description: ID del registro creado, consultado o actualizado.
                      websiteId:
                        type: string
                        description: Marca propietaria del registro.
                      storeId:
                        type: string
                        description: Local propietario, para operaciones por local.
                    description: >-
                      Registro de inventario con los campos de su operación,
                      como estado, ingredientes, cantidades y costos. Las fechas
                      se devuelven en el formato del servicio Tabs.
        '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:
    apiInventoryPurchaseFromDocumentsInput:
      type: object
      additionalProperties: false
      properties:
        inventoryTaxDocumentIds:
          type:
            - array
            - 'null'
          items:
            type: string
          description: >-
            IDs de órdenes aprobadas o guías del mismo proveedor y tipo, sin
            ítems adicionales ni facturación previa.
        externalId:
          type:
            - string
            - 'null'
          description: Número de la factura que se registra.
        date:
          type:
            - string
            - 'null'
          format: date-time
          description: Fecha de emisión de la factura.
        dueDate:
          type:
            - string
            - 'null'
          format: date-time
          description: Fecha de vencimiento.
        paidAt:
          type:
            - string
            - 'null'
          format: date-time
          description: Fecha de pago; si se envía también se registra el pago contable.
        comments:
          type:
            - string
            - 'null'
          description: Comentarios de la compra.
        invoiceFiles:
          type: array
          items:
            type: object
            additionalProperties: false
            properties:
              _id:
                type:
                  - string
                  - 'null'
                description: ID del archivo previamente cargado en Tabs.
              name:
                type:
                  - string
                  - 'null'
                description: Nombre del archivo.
              type:
                type:
                  - string
                  - 'null'
                description: Tipo MIME del archivo.
              size:
                type:
                  - number
                  - 'null'
                description: Tamaño en bytes.
              status:
                type:
                  - string
                  - 'null'
                description: Estado del archivo devuelto por la carga.
              key:
                type:
                  - string
                  - 'null'
                description: Clave de almacenamiento devuelta por la carga.
              bucket:
                type:
                  - string
                  - 'null'
                description: Bucket de almacenamiento devuelto por la carga.
              hash:
                type:
                  - string
                  - 'null'
                description: Huella del archivo devuelta por la carga.
              externalUrl:
                type:
                  - string
                  - 'null'
                description: URL externa del archivo, si corresponde.
              createdBy:
                type:
                  - string
                  - 'null'
                description: Usuario que cargó el archivo.
              createdAt:
                type:
                  - string
                  - 'null'
                format: date-time
                description: Fecha de carga.
              dimensions:
                type: object
                additionalProperties: false
                properties:
                  width:
                    type:
                      - number
                      - 'null'
                    description: Ancho en píxeles.
                  height:
                    type:
                      - number
                      - 'null'
                    description: Alto en píxeles.
                description: Dimensiones de una imagen cargada.
              colorsData:
                type: object
                additionalProperties: false
                properties:
                  background:
                    type:
                      - string
                      - 'null'
                    description: Color de fondo.
                  front:
                    type:
                      - string
                      - 'null'
                    description: Color de primer plano.
                  blurhash:
                    type:
                      - string
                      - 'null'
                    description: Representación desenfocada de la imagen.
                description: Colores de la imagen devueltos por la carga.
              resizedData:
                type: object
                additionalProperties: false
                properties:
                  extraLargeURL:
                    type:
                      - string
                      - 'null'
                    description: URL de la variante de imagen generada durante la carga.
                  largeURL:
                    type:
                      - string
                      - 'null'
                    description: URL de la variante de imagen generada durante la carga.
                  mediumURL:
                    type:
                      - string
                      - 'null'
                    description: URL de la variante de imagen generada durante la carga.
                  smallURL:
                    type:
                      - string
                      - 'null'
                    description: URL de la variante de imagen generada durante la carga.
                  thumbnailURL:
                    type:
                      - string
                      - 'null'
                    description: URL de la variante de imagen generada durante la carga.
                description: Variantes de imagen devueltas por la carga.
          description: >-
            Archivos previamente cargados, en el mismo formato que el formulario
            de Tabs.
      required:
        - inventoryTaxDocumentIds
        - externalId
        - date
      example:
        inventoryTaxDocumentIds:
          - ti-tdoc-ejemplo
        externalId: FACT-124
        date: '2026-10-30T12:00:00Z'

````

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