Para empresas
API para partners
Conecta tus productos a Choicy de forma automática. Tú envías productos y cotizaciones; nosotros validamos, revisamos y publicamos en el comparador con fuente y fecha visibles.
Solicitar accesoCómo funciona
- Solicitas tus credenciales (API key + secret) desde contacto. La key se muestra una sola vez.
- Registras tus productos con
POST /credit-products. - Envías cotizaciones con
POST /credit-quotes. Caen en staging. - Choicy valida y revisa (estructura, CAE, costo total, tasa vs. TMC). Solo se publica lo que pasa los controles.
- Una vez publicadas, aparecen en el comparador y en
GET /credit-quotes.
Autenticación
Toda solicitud lleva tu API key como Bearer. Opcionalmente, puedes firmar el cuerpo con HMAC-SHA256 usando tu secret y enviarlo en X-Signature (recomendado en producción).
Authorization: Bearer mck_xxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json
X-Signature: <hex(HMAC_SHA256(secret, rawBody))> # opcionalBase URL: https://meconviene-blush.vercel.app/api/partner/v1 · Límite: 60 solicitudes por minuto.
1. Salud del servicio
GET https://meconviene-blush.vercel.app/api/partner/v1/health
→ 200 { "status": "ok", "version": "...", "timestamp": "..." }2. Registrar un producto
POST /credit-products — crea o actualiza un producto. externalProductId es tu identificador (lo usas luego para enviar cotizaciones).
POST https://meconviene-blush.vercel.app/api/partner/v1/credit-products
{
"institution": {
"name": "Banco Ejemplo",
"cmfCode": "001",
"websiteUrl": "https://bancoejemplo.cl"
},
"product": {
"externalProductId": "consumo-clasico",
"productName": "Crédito de Consumo Clásico",
"productType": "Consumo",
"currency": "CLP",
"minAmount": 500000,
"maxAmount": 30000000,
"minTermMonths": 6,
"maxTermMonths": 60,
"requirements": { "renta_minima": 500000 },
"productUrl": "https://bancoejemplo.cl/consumo"
}
}
→ 201 { "status": "received", "productId": "...", "externalProductId": "consumo-clasico" }3. Enviar cotizaciones
POST /credit-quotes — envía una o varias cotizaciones para un producto ya registrado. Indica el origen de cada dato (informado, calculado o estimado) en los campos *Source.
POST https://meconviene-blush.vercel.app/api/partner/v1/credit-quotes
{
"externalProductId": "consumo-clasico",
"quotes": [
{
"amount": 5000000,
"termMonths": 36,
"interestRate": 1.9,
"interestRatePeriod": "monthly",
"cae": 28.5,
"caeSource": "informado",
"monthlyPayment": 190000,
"monthlyPaymentSource": "informado",
"totalCreditCost": 6840000,
"totalCreditCostSource": "informado",
"adminFees": 0,
"insuranceRequired": true,
"insuranceCost": 4500,
"validFrom": "2026-06-01",
"validTo": "2026-06-30"
}
]
}
→ 201 {
"status": "received",
"batchId": "batch_...",
"recordsReceived": 1,
"recordsAcceptedToStaging": 1,
"recordsRejected": 0,
"manualReviewRequired": true,
"message": "Datos recibidos y enviados a staging para validación."
}Campos mínimos por cotización: amount y termMonths (> 0). El resto es opcional, pero a más datos verificables, mejor calidad y orden en el comparador. null = “no informado” (≠ 0).
4. Leer lo publicado
GET /credit-quotes — devuelve las cotizaciones ya publicadas (lo mismo que ve el público), con badges de tipo de dato y disclaimer.
GET https://meconviene-blush.vercel.app/api/partner/v1/credit-quotes?amount=5000000&termMonths=36&productType=ConsumoQué pasa después de enviar
- Validación automática: estructura, rangos, recálculo de cuota/costo total, tasa absurda y tasa vs. TMC (CMF). Si algo no cuadra, queda marcado.
- Revisión manual: nada se publica sin pasar revisión. Los cambios críticos o patrocinados exigen doble aprobación.
- Trazabilidad: cada dato publicado lleva fuente, fecha y estado de vigencia. Los productos patrocinados se identifican como tales.
¿Listo para conectar?
Te entregamos credenciales de prueba y te acompañamos en la integración.
Los datos enviados son referenciales y se publican solo tras validación y revisión. Choicy no garantiza aprobación ni condiciones finales; dependen de cada institución.