El comercio te da su clave
Genera un código de 6 dígitos en su app y te lo dicta. Es de un solo uso y queda atado a ti como proveedor.
Emite ventas desde tu propio sistema —tu ERP, tu e-commerce, tu app de reparto— sin pasar por el dashboard. Dos llamadas: validas la clave del comercio y creas la venta. El resto de la recaudación la hace PayDay.
GET /codes/482913/read
→ 200 Minimarket El Sol · cupo $450.000
POST /sales/sale?credit_line_id=1204
→ 200 venta #9871 · PRE_SALE
qr eyJfcmFpbHMiOnsibWVzc2FnZSI6...Genera un código de 6 dígitos en su app y te lo dicta. Es de un solo uso y queda atado a ti como proveedor.
Recibes con quién estás tratando y cuánto puedes venderle: nombre, rubro y cupo disponible contigo.
Envías monto, tipo y cuotas. Recibes el QR que el comercio muestra al recibir la mercadería.
Tu vendedor escanea ese QR con la app CashOut. Ahí se cobra el inicial y nacen las cuotas.
Toda llamada va con tu API key en la cabecera Authorization. La clave identifica a tu empresa como proveedor: las ventas que emitas se registran contra tus líneas de crédito, y solo puedes operar sobre comercios que trabajan contigo.
Authorization: Bearer sk_live_TU_API_KEY
Content-Type: application/jsonLa clave es un secreto de servidor: no la incrustes en una app móvil ni en JavaScript de navegador, porque cualquiera podría emitir ventas a tu nombre. Guárdala como variable de entorno y llama a la API desde tu backend.
https://api.paydayapp.cl/apiCambia los valores y mira cómo queda la petición — y, sobre todo, qué va a pagar el comercio. El desglose se calcula con las mismas reglas que aplica el servidor, así que si acá se ve válido, la llamada va a pasar.
Define cuánto paga al recibir (por defecto el 50%). El resto, en cuotas diarias.
Cupo del comercio en el ejemplo: $450.000
Si lo omites, el campo no viaja y el backend propone el 50%.
Lo que va a pagar el comercio
Paso 1 · validar la clave del comercio
curl 'https://api.paydayapp.cl/api/codes/482913/read' \
-H 'Authorization: Bearer sk_live_TU_API_KEY'Paso 2 · crear la venta
curl -X POST 'https://api.paydayapp.cl/api/sales/sale?credit_line_id=1204' \
-H 'Authorization: Bearer sk_live_TU_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"amount": 300000,
"dinamic_key": "482913",
"commerce_id": 845,
"qr_type": "flexible",
"frequency": 30
}
}'/codes/{clave}/readEl comercio genera una clave de 6 dígitos en su app y te la dicta. Al validarla recibes con quién estás tratando y cuánto puedes venderle.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
clave | string (path) | Sí | Los 6 dígitos que muestra la app del comercio.6 dígitos numéricos |
sale_frequency | integer (query) | No | Cantidad de cuotas que dejas fijada desde ya. Si la envías, manda sobre la que indiques al crear la venta.entre 2 y 60 |
{
"status": 200,
"success": true,
"message": "Code is valid and has been used",
"code": "482913",
"sale_frequency": 30,
"provider_id": 12,
"commerce": {
"id": 845,
"name": "Minimarket El Sol",
"email": "[email protected]",
"rut": "76.543.210-K",
"commercial_info": {
"type_business": "Minimarket",
"line_business": "Abarrotes"
},
"credit_line": {
"id": 1204,
"amount_cents": 45000000,
"amount_clp": "$450.000 CLP",
"frequency": 30
}
}
}/sales/sale?credit_line_id={credit_line_id}Registra la venta, descuenta el cupo del comercio y devuelve el QR que se escanea al entregar la mercadería.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
credit_line_id | integer (query) | Sí | El `credit_line.id` que devolvió la validación de la clave. |
data.amount | number | Sí | Monto total de la venta, en pesos.mayor a 0 y menor o igual al cupo disponible |
data.dinamic_key | string | Sí | La misma clave de 6 dígitos que validaste. |
data.commerce_id | integer | Sí | El `commerce.id` que devolvió la validación. |
data.qr_type | "flexible" | "full_payment" | No | Tipo de venta. `flexible` cobra un inicial y reparte el saldo en cuotas; `full_payment` cobra el 100% de una vez.por defecto: flexible |
data.frequency | integer | Depende | Cantidad de cuotas. Requerido en `flexible`; se ignora en `full_payment`.entre 2 y 60 |
data.chosen_initial_amount | number | No | Monto que paga el comercio al recibir. Si lo omites, se propone el 50% y se confirma al escanear.$0, o entre $50 y menos que el total |
data.installments_start_date | string (YYYY-MM-DD) | No | Desde qué día arrancan las cuotas del saldo. Solo aplica a `flexible`.no puede estar en el pasado |
data.activation_mode | "immediate" | "scheduled" | No | Solo `full_payment`. `scheduled` deja la venta reservada y la cobra sola en la fecha indicada.por defecto: immediate |
data.scheduled_activation_at | string (YYYY-MM-DD) | Depende | Fecha del cobro. Requerido cuando `activation_mode` es `scheduled`.debe ser futura |
data.service_charge_enabled | boolean | No | Si va en `false`, la venta se emite sin cargo por servicio.por defecto: true |
{
"status": 200,
"message": "Sale created successfully",
"data": {
"id": 9871,
"status": "PRE_SALE",
"qr_type": "FLEXIBLE",
"amount_cents": 30000000,
"amount_clp": "$300.000 CLP",
"remaining_amount_cents": 30000000,
"frequency": 30,
"chosen_initial_amount_cents": 15000000,
"credit_line_id": 1204,
"dinamic_key": "482913",
"qr": "eyJfcmFpbHMiOnsibWVzc2FnZSI6IkltRmlj..."
}
}Tu integración termina cuando creas la venta, pero conviene saber por dónde sigue: el estado que consultes más adelante va a ser uno de estos.
PRE_SALETu llamada terminó acá. El cupo del comercio ya quedó reservado, pero no se cobró nada todavía.
RESERVEDSolo si el inicial se paga en efectivo o el pago total quedó programado. Alguien tiene que confirmarlo.
PENDINGSe escaneó el QR, se cobró el inicial y las cuotas del saldo están corriendo.
PAIDTodas las cuotas se pagaron. La venta se cierra sola.
| Estado | Cuándo | Qué hacer |
|---|---|---|
| 401 | La API key falta, está mal escrita o fue revocada.Authorization token is missing or invalid. | Revisa la cabecera `Authorization`. Si el problema persiste, pide una clave nueva. |
403CREDIT_LINE_SUSPENDED | El comercio acumuló 9 cobros fallidos contigo.El comercio está suspendido con este proveedor por cuotas impagas. | La respuesta trae `amount_to_regularize_cents`: el comercio debe regularizar esa deuda. La suspensión es solo contigo, no con otros proveedores. |
| 404 | La clave no existe.Code not found | Verifica los 6 dígitos con el comercio. |
| 422 | La clave ya fue usada.Code has already been used | Pídele al comercio que genere una clave nueva. |
| 422 | El monto supera el cupo disponible.Insufficient credit line. Available: $X CLP, Requested: $Y CLP | Baja el monto o espera a que el comercio libere cupo pagando cuotas. |
| 422 | El reparto deja cuotas bajo el mínimo cobrable.El monto restante es muy bajo para dividir en N cuotas cobrables (mínimo $50 CLP por cuota) | Sube el monto inicial o baja la cantidad de cuotas. |
| 422 | Enviaste un `qr_type` que ya no existe.qr_type 'standard' está obsoleto, usá 'flexible' | `standard` y `variable_amount` se fusionaron en `flexible`. |
Te damos una API key de pruebas y un comercio de test para que puedas emitir ventas sin mover dinero real.