1. Proceso de Venta
Payday Public API
  • Proceso de Venta
  • Autenticacion y Firma HMAC
  • Proceso de Venta
    • Cotizacion - crear
      POST
    • Referencias - solicitar
      POST
    • Ofertas - previsualizar
      POST
    • Ofertas - seleccionar
      POST
    • Contrato - renderizar
      POST
    • Contrato - firma
      POST
    • Validar ICCID + IMEI
      POST
    • Finalizar venta
      POST
  • Productos
    • Marcas
      GET
    • Modelos y Prefijos por marca
      GET
  • Medios de Notificacion
    • Registrar Webhook para cotizacion
      POST
    • Polling Cotizacion
      GET
    • Historial de Eventos
      GET
  • Eventos Webhook
    • Evento quote.updated
    • reference.requested
    • reference.accepted
    • imei.validated
    • contract.signed
    • offer.selected
    • offer.previewed
  1. Proceso de Venta

Finalizar venta

POST
https://integrations.paydaymx.com/public-api/v1/sales-process/cotizaciones/{COTIZACION_ID}/tag/finalizar
Cierra la venta publica usando el tag del dispositivo, y devuelve los recursos finales creados.
Descripcion detallada
Esta ruta completa la venta. Asocia cotizacion, dispositivo, financiamiento y venta, genera el recibo y realiza los intentos operativos necesarios con proveedores externos como cuando aplica. Es el endpoint final del flujo publico.
Que recibe
Parametro de ruta:
1.
id: ObjectId de la cotizacion.
No recibe query params.
Body:
1.
tag: string requerida.
Que devuelve
1.
cotizacion final con process.state = completed.
2.
dispositivo creado o vinculado.
3.
financiamiento creado.
4.
venta creada.
5.
samsung, cuando aplica.
6.
recibo, con documento o error de render.
Cuando usarla
Usala al final del flujo, cuando referencias, oferta, contrato e IMEI ya fueron completados y el proceso ya permite continuar.
Reglas y consideraciones
1.
La cotizacion debe estar lista para finalizacion por tag.
2.
Si la cotizacion ya tiene un tag distinto, la ruta responde 409.
3.
El cierre puede ejecutarse aun si algunas operaciones posteriores, como unlock o render de recibo, reportan error; esos detalles se devuelven en la respuesta.
4.
El financiamiento final queda marcado con public_api = true.
Errores frecuentes
1.
409 si la cotizacion no esta lista para cerrarse o ya tiene otro tag.
2.
422 si el dispositivo reservado ya no esta disponible.
3.
422 si faltan prerequisitos del cierre.
4.
500 o 502 si algun proveedor externo falla en una etapa critica previa al cierre.

Solicitud

Autorización
Agregar parámetro en header
X-Api-Key
Ejemplo:
X-Api-Key: ********************
Parámetros de ruta

Parámetros de Header

Parámetros del Body application/jsonRequerido

Ejemplos

Respuestas

🟢200Éxito
application/json
Bodyapplication/json

Solicitud Ejemplo de Solicitud
Shell
JavaScript
Java
Swift
curl --location 'https://integrations.paydaymx.com/public-api/v1/sales-process/cotizaciones/6a4beb61f13f2d33ffacc99d/tag/finalizar' \
--header 'X-Timestamp;' \
--header 'X-Nonce;' \
--header 'X-Signature;' \
--header 'X-Api-Key: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
    "tag": "EAC26E63"
}'
Respuesta Ejemplo de Respuesta
{
    "cotizacion": {
        "id": "69fba3d6d8acd57fde719753",
        "status": "vendido",
        "rating": "A",
        "score": 24,
        "venta_con_inventario": false,
        "referencias": {
            "total": 1,
            "aceptadas": 1,
            "rechazadas": 0,
            "pendientes": 0,
            "minimo_cumplido": true
        },
        "producto": {
            "marca": "Samsung",
            "modelo": "Galaxy A06",
            "prefijo": "SM-A065M"
        },
        "pricing": {
            "precio": 2600,
            "enganche": 600,
            "porcentaje_enganche_aplicado": 0.08,
            "monto_a_financiar": 2000,
            "precio_financiado": 4860,
            "total_a_pagar": 5460
        },
        "plan": {
            "offer_id": null,
            "semanas": 26,
            "meses": 6,
            "total_a_pagar": 5460
        },
        "process": {
            "state": "completed",
            "next_action": "completed",
            "pause_reason": null,
            "can_continue": false,
            "checkpoints": {
                "referencias_validadas": true,
                "oferta_seleccionada": true,
                "contrato_firmado": true,
                "imei_validado": true
            }
        },
        "notifications": {
            "webhooks_registrados": 0
        },
        "updated_at": "2026-05-06T22:30:38.611Z",
        "stage": "vendido",
        "dispositivos": "69fa29b8d8acd57fde70a97e",
        "financiamientos": "69fbc108146a53c022c27275",
        "ventas": "69fbc109146a53c022c27295",
        "tag": "65534223"
    },
    "dispositivo": {
        "id": "69fa29b8d8acd57fde70a97e",
        "tag": "65534223",
        "status": "disponible",
        "imei": "359706680322897",
        "cotizacion_id": "69fba3d6d8acd57fde719753",
        "financiamiento_id": "69fbc108146a53c022c27275",
        "venta_id": "69fbc109146a53c022c27295"
    },
    "financiamiento": {
        "id": "69fbc108146a53c022c27275",
        "fecha_bloqueo": "2026-05-13T10:30:33.000Z",
        "proceso_finalizado": true,
        "public_api": true,
        "proximo_pago": {
            "fecha": "2026-05-13T04:30:32.000Z",
            "monto": 186
        },
        "venta_id": "69fbc109146a53c022c27295"
    },
    "venta": {
        "id": "69fbc109146a53c022c27295",
        "fecha": "2026-05-06T16:30:33.000Z",
        "monto": 2600,
        "tipo_venta": "financiamiento",
        "estado": "completada"
    },
    "samsung": {
        "provider": "knox",
        "success": false,
        "unlock_pin": null,
        "offline_lock_pin": {
            "result": "SUCCESS",
            "objectId": "69f23e79ff596d9f0b4b97b8",
            "requestedId": "359706680322897",
            "pinNumber": [
                "83414641"
            ]
        },
        "error": {
            "message": {
                "code": 4000310,
                "message": "DEVICE_STATE_INVALID",
                "reason": "Current status is 'Unlocking'."
            },
            "status": 400,
            "data": {
                "result": "FAIL",
                "error": {
                    "code": 4000310,
                    "message": "DEVICE_STATE_INVALID",
                    "reason": "Current status is 'Unlocking'."
                }
            }
        }
    },
    "recibo": {
        "template_name": "Recibo Venta",
        "document": {
            "mime_type": "application/pdf",
            "file_name": "recibo-venta-69fbc109146a53c022c27295.pdf",
            "base64": "JVBERi0xLjQKJdPr6eEKMSAwIG9iago8PC9DcmVhdG9yIChDaHJvbWl1bSkKL1Byb2R1Y2VyIChTa2lhL1BERiBtMTQ1KQovQ3JlYXRpb25EYXRlIChEOjIwMjYwNTA2MjIzMDM0KzAwJzAwJykKL01vZERhdGUgKEQ6MjAyNjA1MDYyMjMwMzQrMDAnMDAnKT4+CmVuZG9iagozIDAgb2JqCjw8L2NhIDEKL0JNIC9Ob3JtYWw+PgplbmRvYmoKNCAwIG9iago8PC9DQSAxCi9jYSAxCi9MQyAwCi9MSiAwCi9MVyAxCi9NTCA0Ci9TQSB0cnVlCi9CTSAvTm9ybWFsPj4KZW5kb2JqCjYgMCBvYmoKPDwvTiAzCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9MZW5ndGggMjkzPj4gc3RyZWFtCnicfZC9SsMAFIW/1IIoioMOHRwyOLhok6ZpUnBpIhbXVqGpU5KmQexPSFP0AXRzcHUrLr6A6GMoCA7i4COIoLOkQVKQeODCx+HAvfdArgCQl6A/iMJG3RBbVlucf0dAYCrbHQVkS4DvlyT7vPVPLksLHW/kAh9AFLasNggdYM1P+CxmJ+HLmE+jIAJhEnN40DBBuAM2/Rl2ZtgNwjj/Buz0e2M3vZslb3DYBFrAOnWGDPHp4VGkyQnH2BTRMFHZo0YJGRUZhSoa5enUkCijU8HAwMRER0FDQWEXlWrcZ7JyeAP6F8xdpZ5zDQ8XUHhNvY0JrJzD/WPqpR0HdmhPrTyQ63bh8xaWLVh9gsWj32IzfhX//CqyzwCXbURKSMhUfgCFzUu9CmVuZHN0cmVhbQplbmRvYmoKNSAwIG9iago8PC9UeXBlIC9YT2JqZWN0Ci9TdWJ0eXBlIC9JbWFnZQovV2lkdGggMjM1MQovSGVpZ2h0IDM5MwovQ29sb3JTcGFjZSBbL0lDQ0Jhc2VkIDYgMCBSXQovU01hc2sgNyAwIFIKL0JpdHNQZXJDb21wb25lbnQgOAovRmlsdGVyIC9GbGF0ZURlY29kZQovTGVuZ3RoIDQ1MzczPj4gc3RyZWFtCnic7L3bcxtHlu6bES2hUDdgXvbTOSfivOw9Y3Xsh308bdlz2iJij1tuSrwAqCp2d5wYS/NwMGNNcMKQQBC3KqQ57n9AJyZGipjesmVJbZWIupD/4HGxZDRNkRRZrKxVl++LX3T09Di6iVy5Esj8cq1kDCIWv7C+5l8fZ4/vfc2/PvWfnP+k+P+k/ogQBGWnVqtlWdZ7l4V3l5Rz/skTov6IEFROxcn73gS8+K+Cs/6r5vP57u7uw4c
Modificado en 2026-07-06 18:06:28
Anterior
Validar ICCID + IMEI
Siguiente
Marcas
Built with