Certificado de titularidad
Emitir un PDF firmado por QvaPay que acredita a nombre de quién está la cuenta, verificable con un código.
El certificado de titularidad es un PDF en español e inglés, firmado por QvaPay, que acredita a nombre de quién está una cuenta. Sirve para bancos, proveedores y organismos que piden un documento oficial en lugar de capturas.
Cada certificado lleva un código QPC-XXXX-XXXX-XXXX y un QR. Quien lo recibe los comprueba en https://www.qvapay.com/verify, que dice si es válido, si caducó, si se revocó o si la cuenta ya no está activa.
Qué certifica:
- El titular de la cuenta, su identificador (
uuid), el usuario, la fecha de apertura y que la cuenta está abierta y activa al emitirse. - No certifica saldos ni operaciones.
- Si la cuenta es dueña de una empresa aprobada en QvaPay, el titular es la empresa: razón social, país, identificador fiscal y fecha de aprobación. La persona que opera la cuenta figura como persona autorizada.
- Si no, el titular es la persona con el nombre de su documento de identidad verificado, nunca el nombre del perfil.
Requisitos: identidad verificada (KYC) y una sesión con acceso completo. Los tokens con permisos limitados no emiten.
Por ahora el certificado lo emite el equipo de QvaPay a petición del titular, desde soporte. Mientras la emisión directa no esté abierta, GET /user/documents responde reason: "NOT_AVAILABLE_YET".
GET /user/documents
Dice si la cuenta puede emitir el certificado, a nombre de quién saldría y cuáles ya se emitieron.
{
"certificate": {
"mode": "on",
"can_issue": true,
"reason": null,
"message": null,
"holder": { "kind": "company", "name": "Ejemplo Ibérica SL", "country": "ES" },
"companies": [{ "uuid": "2797e8bf-…", "name": "Ejemplo Ibérica SL", "country": "ES" }]
},
"certificates": [
{
"uuid": "6f1c…",
"code": "QPC-7KMN-Q2XR-9HAT",
"holder_kind": "company",
"holder_name": "Ejemplo Ibérica SL",
"issued_at": "2026-11-11T15:04:05.000Z",
"valid_until": "2027-02-09T15:04:05.000Z",
"revoked_at": null,
"revoke_reason": null,
"issued_by_staff": false,
"status": "valid",
"verify_path": "/verify/QPC-7KMN-Q2XR-9HAT"
}
]
}| Campo | Descripción |
|---|---|
mode | on (el titular emite), admin (solo el equipo de QvaPay) u off |
can_issue | true si POST /user/documents/certificate puede emitir ahora |
reason | Por qué no: KYC_REQUIRED, LEGAL_NAME_MISSING, COMPANY_PENDING, SCOPED_TOKEN, UNAVAILABLE, NOT_AVAILABLE_YET, DISABLED |
message | Texto para el usuario que explica reason |
holder | A nombre de quién saldría: kind es company o individual |
companies | Empresas aprobadas de las que la cuenta es dueña |
certificates[].status | valid, expired o revoked |
POST /user/documents/certificate
Emite un certificado nuevo y responde el PDF (Content-Type: application/pdf, descarga como adjunto). Cada llamada crea un certificado con su propio código.
{ "company_uuid": "2797e8bf-d356-4722-8675-3c7fe065a817" }company_uuid es opcional y solo sirve cuando la cuenta es dueña de varias empresas aprobadas. Sin él, el titular es la primera.
| Código | Cuándo |
|---|---|
200 | PDF emitido |
403 | KYC_REQUIRED, SCOPED_TOKEN, UNAVAILABLE, NOT_AVAILABLE_YET, DISABLED |
404 | COMPANY_NOT_FOUND: esa empresa no está aprobada a nombre de la cuenta |
409 | LEGAL_NAME_MISSING (falta el nombre del documento verificado) o COMPANY_PENDING (cuenta de empresa sin empresa aprobada) |
429 | Más de 5 certificados en una hora |
503 | STORE_UNAVAILABLE: no se pudo registrar el certificado, así que no se entrega |
Los errores responden { "error": "…", "code": "…" }.
Verificación
https://www.qvapay.com/verify/<código> es pública y no necesita sesión. Enseña:
- el estado del certificado;
- el titular y su identificador fiscal, tapado salvo los cuatro últimos;
- el identificador corto de la cuenta y el usuario;
- las fechas de emisión y de vigencia;
- el registro de QvaPay en FinCEN.
Un certificado revocado o de una cuenta que ya no está activa no enseña el titular.