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

# Crear un precio

> Permite crear un precio ya sea regular o pactado (precios para clientes específicos) en una lista de precios.

> Para crear precios pactados, primero la variante debe tener un precio regular en la lista de precios.



## OpenAPI

````yaml /api/openapi.json post /price-lists/{priceListId}/prices
openapi: 3.1.0
info:
  title: Riqra API
  version: '1.0'
  contact:
    email: soporte@riqra.com
    url: https://www.riqra.com/
    name: Riqra Support
  description: >-
    Usando nuestra API puedes integrar tu ERP o tu sistema actual de
    administración con [Riqra](https://www.riqra.com/).
servers:
  - url: https://sandbox.api.riqra.com
    description: Sandbox
  - description: Producción
    url: https://api.riqra.com
security:
  - API Key: []
tags:
  - name: Almacenes
  - name: Banners
  - name: Categorías
  - name: Clientes
  - name: Clientes - Direcciones
  - name: Cobertura
  - name: Comercio
  - name: Cupones
  - name: Inventario
  - name: Líneas de Crédito
  - name: Lista de Precios
  - name: Lista de Precios - Precios
  - name: Marcas
  - name: Pedidos
  - name: Productos
  - name: Productos Sugeridos
  - name: Promociones
  - name: Stock
  - name: Subcategorías
  - name: Variantes
paths:
  /price-lists/{priceListId}/prices:
    parameters:
      - schema:
          type: integer
        name: priceListId
        in: path
        required: true
        description: '`id` de la lista de precios a la que pertenece el precio'
    post:
      tags:
        - Lista de Precios - Precios
      summary: Crear un precio
      description: >-
        Permite crear un precio ya sea regular o pactado (precios para clientes
        específicos) en una lista de precios.


        > Para crear precios pactados, primero la variante debe tener un precio
        regular en la lista de precios.
      operationId: post-price-lists-priceListId-prices
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              properties:
                price:
                  type: number
                  description: El precio de venta de la variante.
                oldPrice:
                  type:
                    - number
                    - 'null'
                  minimum: 0
                  description: >-
                    El precio de lista o precio regular de la variante.

                    Si `oldPrice` tiene valor se mostrará al cliente como una
                    comparación de este y `price` en la variante.
                ribbonLabel:
                  type:
                    - string
                    - 'null'
                  maxLength: 8
                  description: >-
                    Texto de la etiqueta de este precio.

                    Si `ribbonLabel` tiene valor se mostrará al cliente como una
                    etiqueta resaltante en la variante.
                isTaxExempt:
                  type: boolean
                  description: >-
                    Indica si el precio de la variante está extento o no del
                    cálculo de impuestos.
                  default: false
                customerId:
                  type:
                    - integer
                    - 'null'
                  description: El `id` del cliente al que pertenece este precio.
                variantId:
                  type: integer
                  description: El `id` de la variante a la que pertenece este precio.
              required:
                - price
                - variantId
            examples:
              Precio en oferta:
                value:
                  price: 20
                  oldPrice: 22.5
                  ribbonLabel: oferta
                  variantId: 1539
              Precio regular:
                value:
                  price: 150
                  customerId: null
                  variantId: 1201
              Precio pactado:
                value:
                  price: 100.05
                  customerId: 15167
                  variantId: 1201
              Precio exento de impuestos:
                value:
                  price: 134
                  isTaxExempt: true
                  variantId: 1201
        description: ''
      responses:
        '201':
          description: Created
          headers:
            Location:
              schema:
                type: string
                format: uri
              description: URL donde se encuentra el nuevo recurso creado
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
              examples:
                El precio regular ya existe:
                  value:
                    errors:
                      - message: >-
                          A regular price already exists for the variant in this
                          price list
                        code: 409
                El precio pactado ya existe:
                  value:
                    errors:
                      - message: >-
                          A special price already exists for the customer and
                          the variant in this price list
                        code: 409
                No hay precio regular:
                  value:
                    errors:
                      - message: >-
                          A special price cannot be created for the variant if
                          it does not already have a regular price in this price
                          list
                        code: 409
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
              examples:
                Example 1:
                  value:
                    errors:
                      - message: string
                        code: string
components:
  schemas:
    BadRequest:
      title: BadRequest
      type: object
      x-examples: {}
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              code:
                type:
                  - integer
                  - string
                deprecated: true
                description: Código referencial del error. No usar.
      description: ''
  securitySchemes:
    API Key:
      name: api-key
      type: apiKey
      in: header
      description: >-
        Todas las llamadas al API tienen que contener este header junto a la
        clave para poder autenticar y autorizar al cliente.

````