Ir al contenido

Listar cotizaciones

GET
/quotes
curl --request GET \
--url 'https://api.posdata.so/public/v1/quotes?limit=25' \
--header 'Authorization: Bearer <token>'

Permiso requerido: quotes:read.

limit
integer
por defecto: 25 >= 1 <= 100
starting_after
string

El next_cursor de la página anterior, tal cual.

created_since
string formato: date-time

ISO 8601 con zona horaria. Incluye.

created_until
string formato: date-time

ISO 8601 con zona horaria. Excluye.

updated_since
string formato: date-time

ISO 8601 con zona horaria. Para sincronización incremental.

status
string
<= 40 caracteres

Estado exacto.

customer_id
string formato: uuid

Cotizaciones de ese cliente.

OK

Tipo de contenidoapplication/json
object
object
obligatorio
Valor permitido: list
data
obligatorio
Array<object>

Cotización.

object
object
obligatorio
Valor permitido: quote
id
obligatorio
string formato: uuid
number
obligatorio
Cualquiera de:
string
status
obligatorio

Draft, sent, accepted, rejected, expired, converted. El vencimiento lo aplica la app al leer: compara con expires_at.

string
customer_id
obligatorio
Cualquiera de:
string formato: uuid
converted_sale_id
obligatorio
Cualquiera de:
string formato: uuid
subtotal
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
discount
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
tax
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
total
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
tax_breakdown
obligatorio
Cualquiera de:
Array<object>

Total de un tributo en el documento, agrupado por (código, tarifa).

object
code
obligatorio
string
rate
obligatorio
Cualquiera de:
number
per_unit
obligatorio
Cualquiera de:
integer
base
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
amount
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
notes
obligatorio
Cualquiera de:
string
payment_link
obligatorio
Cualquiera de:
string
expires_at
obligatorio
Cualquiera de:
string formato: date-time
sent_at
obligatorio
Cualquiera de:
string formato: date-time
items
obligatorio
Array<object>

Línea de una cotización.

object
object
obligatorio
Valor permitido: quote_item
id
obligatorio
string formato: uuid
product_id
obligatorio
Cualquiera de:
string formato: uuid
variant_id
obligatorio
Cualquiera de:
string formato: uuid
item_kind
obligatorio
string
description
obligatorio
Cualquiera de:
string
quantity
obligatorio
number
unit_price
obligatorio

Con impuestos porcentuales incluidos.

integer
subtotal
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
tax_class
obligatorio
string
taxes
obligatorio
Cualquiera de:
Array<object>

Impuesto cobrado en una línea, congelado al momento de la venta.

object
code
obligatorio

Código DIAN del tributo: 01 IVA, 03 ICA, 04 INC, 22 INC bolsas.

string
name
obligatorio
Cualquiera de:
string
rate
obligatorio
Cualquiera de:
number
per_unit
obligatorio
Cualquiera de:
integer
base
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
amount
obligatorio

Pesos colombianos (COP), entero sin decimales.

integer
note
obligatorio
Cualquiera de:
string
created_at
obligatorio
string formato: date-time
updated_at
obligatorio
string formato: date-time
has_more
obligatorio
boolean
next_cursor
obligatorio
Cualquiera de:
string
Ejemplo
{
"object": "list",
"data": [
{
"object": "quote",
"items": [
{
"object": "quote_item"
}
]
}
]
}

Petición inválida (VALIDATION_ERROR, INVALID_JSON, INVALID_CURSOR).

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio
string
Valores permitidos: UNAUTHENTICATED INVALID_API_KEY API_KEY_REVOKED API_KEY_EXPIRED API_KEY_WRONG_ENVIRONMENT ACCOUNT_INACTIVE PLAN_REQUIRED INSUFFICIENT_SCOPE BROWSER_REQUESTS_NOT_ALLOWED VALIDATION_ERROR INVALID_JSON PAYLOAD_TOO_LARGE INVALID_CURSOR NOT_FOUND ROUTE_NOT_FOUND IDEMPOTENCY_KEY_REQUIRED IDEMPOTENCY_KEY_REUSED IDEMPOTENCY_IN_PROGRESS CONFLICT SKU_ALREADY_EXISTS VARIANT_STOCK_UNSUPPORTED COMPOSITE_STOCK_UNSUPPORTED NO_WAREHOUSE DEVICES_OUTDATED RATE_LIMITED INTERNAL_ERROR
message
obligatorio

Explicación en español, con el siguiente paso.

string
param

Campo que causó el error, si aplica.

string
request_id
obligatorio
string
key
propiedades adicionales
any
Ejemplo
{
"error": {
"code": "UNAUTHENTICATED"
}
}

Sin API key válida (UNAUTHENTICATED, INVALID_API_KEY, API_KEY_REVOKED, API_KEY_EXPIRED, API_KEY_WRONG_ENVIRONMENT, ACCOUNT_INACTIVE).

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio
string
Valores permitidos: UNAUTHENTICATED INVALID_API_KEY API_KEY_REVOKED API_KEY_EXPIRED API_KEY_WRONG_ENVIRONMENT ACCOUNT_INACTIVE PLAN_REQUIRED INSUFFICIENT_SCOPE BROWSER_REQUESTS_NOT_ALLOWED VALIDATION_ERROR INVALID_JSON PAYLOAD_TOO_LARGE INVALID_CURSOR NOT_FOUND ROUTE_NOT_FOUND IDEMPOTENCY_KEY_REQUIRED IDEMPOTENCY_KEY_REUSED IDEMPOTENCY_IN_PROGRESS CONFLICT SKU_ALREADY_EXISTS VARIANT_STOCK_UNSUPPORTED COMPOSITE_STOCK_UNSUPPORTED NO_WAREHOUSE DEVICES_OUTDATED RATE_LIMITED INTERNAL_ERROR
message
obligatorio

Explicación en español, con el siguiente paso.

string
param

Campo que causó el error, si aplica.

string
request_id
obligatorio
string
key
propiedades adicionales
any
Ejemplo
{
"error": {
"code": "UNAUTHENTICATED"
}
}

Sin permiso (PLAN_REQUIRED, INSUFFICIENT_SCOPE, BROWSER_REQUESTS_NOT_ALLOWED).

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio
string
Valores permitidos: UNAUTHENTICATED INVALID_API_KEY API_KEY_REVOKED API_KEY_EXPIRED API_KEY_WRONG_ENVIRONMENT ACCOUNT_INACTIVE PLAN_REQUIRED INSUFFICIENT_SCOPE BROWSER_REQUESTS_NOT_ALLOWED VALIDATION_ERROR INVALID_JSON PAYLOAD_TOO_LARGE INVALID_CURSOR NOT_FOUND ROUTE_NOT_FOUND IDEMPOTENCY_KEY_REQUIRED IDEMPOTENCY_KEY_REUSED IDEMPOTENCY_IN_PROGRESS CONFLICT SKU_ALREADY_EXISTS VARIANT_STOCK_UNSUPPORTED COMPOSITE_STOCK_UNSUPPORTED NO_WAREHOUSE DEVICES_OUTDATED RATE_LIMITED INTERNAL_ERROR
message
obligatorio

Explicación en español, con el siguiente paso.

string
param

Campo que causó el error, si aplica.

string
request_id
obligatorio
string
key
propiedades adicionales
any
Ejemplo
{
"error": {
"code": "UNAUTHENTICATED"
}
}

Límite de peticiones (RATE_LIMITED). Respeta Retry-After.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio
string
Valores permitidos: UNAUTHENTICATED INVALID_API_KEY API_KEY_REVOKED API_KEY_EXPIRED API_KEY_WRONG_ENVIRONMENT ACCOUNT_INACTIVE PLAN_REQUIRED INSUFFICIENT_SCOPE BROWSER_REQUESTS_NOT_ALLOWED VALIDATION_ERROR INVALID_JSON PAYLOAD_TOO_LARGE INVALID_CURSOR NOT_FOUND ROUTE_NOT_FOUND IDEMPOTENCY_KEY_REQUIRED IDEMPOTENCY_KEY_REUSED IDEMPOTENCY_IN_PROGRESS CONFLICT SKU_ALREADY_EXISTS VARIANT_STOCK_UNSUPPORTED COMPOSITE_STOCK_UNSUPPORTED NO_WAREHOUSE DEVICES_OUTDATED RATE_LIMITED INTERNAL_ERROR
message
obligatorio

Explicación en español, con el siguiente paso.

string
param

Campo que causó el error, si aplica.

string
request_id
obligatorio
string
key
propiedades adicionales
any
Ejemplo
{
"error": {
"code": "UNAUTHENTICATED"
}
}

Error interno (INTERNAL_ERROR). Reintenta y comparte el request_id si persiste.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio
string
Valores permitidos: UNAUTHENTICATED INVALID_API_KEY API_KEY_REVOKED API_KEY_EXPIRED API_KEY_WRONG_ENVIRONMENT ACCOUNT_INACTIVE PLAN_REQUIRED INSUFFICIENT_SCOPE BROWSER_REQUESTS_NOT_ALLOWED VALIDATION_ERROR INVALID_JSON PAYLOAD_TOO_LARGE INVALID_CURSOR NOT_FOUND ROUTE_NOT_FOUND IDEMPOTENCY_KEY_REQUIRED IDEMPOTENCY_KEY_REUSED IDEMPOTENCY_IN_PROGRESS CONFLICT SKU_ALREADY_EXISTS VARIANT_STOCK_UNSUPPORTED COMPOSITE_STOCK_UNSUPPORTED NO_WAREHOUSE DEVICES_OUTDATED RATE_LIMITED INTERNAL_ERROR
message
obligatorio

Explicación en español, con el siguiente paso.

string
param

Campo que causó el error, si aplica.

string
request_id
obligatorio
string
key
propiedades adicionales
any
Ejemplo
{
"error": {
"code": "UNAUTHENTICATED"
}
}