Recompensas y pagos
Cómo aprobar recompensas, gestionar el pipeline de desembolsos, manejar documentos fiscales y usar el libro mayor inmutable como evidencia para SOC 2.
Por qué es importante
Las recompensas y los pagos requieren el complemento de VDP ($49/mes). Desbloquean el pipeline completo de desembolsos, el libro mayor inmutable y la gestión de documentos fiscales que se describen en esta página.
Gestionar bien los pagos es tanto una cuestión de retención de investigadores como una obligación de cumplimiento normativo. Las transferencias manuales por PayPal sin recopilar formularios W-8BEN (no residentes en EE.UU.) o W-9 (residentes en EE.UU.) generan una exposición directa ante el IRS para tu empresa. Cada pago a un investigador es un evento gravable declarable, y la ausencia de documentación fiscal traslada la responsabilidad a ti. El pipeline de desembolsos de Kit resuelve esto condicionando los pagos a un checklist de preparación configurable que incluye la verificación de documentos fiscales.
El libro mayor inmutable es el principal artefacto de evidencia SOC 2 para los controles financieros de tu programa de divulgación de vulnerabilidades. Cada aprobación de recompensa, cada desembolso y cada acción sobre documentos fiscales se registra con actor, marca de tiempo y monto. Los auditores pueden verificar la cadena de custodia completa, desde la resolución del informe hasta la confirmación del pago, en una sola exportación.
Matriz de recompensas
La matriz de recompensas asigna rangos en dólares a los niveles de severidad CVSS. Configúrala en VDP > Program Settings > Bounty Matrix. Cuando un miembro del equipo puntúa un informe con una evaluación CVSS, el rango de recompensa sugerido se extrae automáticamente de la matriz y se precarga en el formulario de aprobación.
Los rangos de recompensa se muestran en tu página pública de política de divulgación para que los investigadores sepan qué esperar antes de enviar un informe. Esta transparencia reduce disputas y establece expectativas claras.
Para programas de solo reconocimiento, deja todos los niveles en $0. Los investigadores verán “recognition only” en la página de la política en lugar de montos en dólares.
Consulta Cómo configurar tu programa para más detalles sobre la configuración de la matriz.
Aprobar una recompensa
Los administradores pueden aprobar una recompensa en cualquier momento antes de que el informe llegue al estado Paid. Como buena práctica, espera a que el informe esté validado —idealmente resuelto— para que el monto refleje una vulnerabilidad confirmada y evaluada.
Para aprobar una recompensa:
- Abre la página de detalle del informe
- Haz clic en Approve Bounty
- Completa el formulario de aprobación
| Campo | Requerido | Descripción |
|---|---|---|
| Amount | Sí | Monto de la recompensa, precargado desde la matriz de recompensas según el nivel de severidad CVSS del informe. |
| Currency | Sí | Por defecto USD. Debe coincidir con la moneda configurada en tu programa. |
| Notes | No | Notas internas visibles solo para tu equipo. Cifradas en reposo. |
La aprobación requiere un envío explícito: ningún monto se compromete hasta que guardes el formulario. Al aprobar:
- Se agrega una entrada
bounty_approvedal libro mayor inmutable - Se notifica al investigador a través de la plantilla de correo
bounty_approved
Revocar una recompensa
Desestimar un informe que tiene una recompensa aprobada la revoca automáticamente. El modal de desestimación te advierte con el monto, el aprobador y la fecha de aprobación, y el botón de envío cambia a Dismiss & revoke $X bounty. Al revocar:
- Se agrega una entrada
bounty_revokedal libro mayor inmutable como débito —los totales de aprobado y pendiente del libro mayor la restan—. Los metadatos de la entrada registran el motivo de la desestimación, el aprobador original con su fecha de aprobación y el estado del desembolso en ese momento. - El email de desestimación al investigador indica que la recompensa previamente aprobada ha sido retirada y no se pagará; el flujo de apelación habitual es el recurso disponible. Su portal muestra una nota de “retirada” en lugar de la tarjeta de recompensa.
- El karma otorgado por la recompensa se revierte con un evento de karma “Bounty Revoked”.
Aplican dos salvaguardas:
- Una recompensa cuyo desembolso está Completed nunca se puede revocar —lo pagado, pagado está—.
- Un pago en curso (desembolso Pending o Processing) bloquea la desestimación. Marca primero el desembolso como fallido, o deja que se complete.
Deshacer una desestimación no restablece la recompensa. Cuando el informe se valide de nuevo, aprueba una nueva recompensa manualmente —la interfaz muestra un recordatorio.
Pipeline de desembolsos
Navega a VDP > Disbursements para ver todos los pagos pendientes. Cada fila muestra el investigador, el informe vinculado, el monto aprobado y el estado de preparación para el pago.
Checklist de preparación
Antes de que un desembolso pueda continuar, el investigador debe cumplir un checklist de preparación. Los tres elementos son configurables en la configuración de pagos de tu programa:
- Información de pago enviada — El investigador ha ingresado sus datos de pago (banco, PayPal u otro método) a través de el portal del investigador
- Acuerdo aceptado — El investigador ha aceptado el acuerdo de participación de tu programa (si tu programa lo requiere)
- Documento fiscal verificado — El W-8BEN o W-9 del investigador se ha subido y tu equipo lo ha verificado (si tu programa requiere documentos fiscales)
Los elementos que no están habilitados en la configuración de tu programa se marcan automáticamente como satisfechos.
El checklist también depende del estado del informe, controlado por Require Verified Fix Before Payout en VDP > Program Settings > Payouts:
- Activado (por defecto) — La recompensa solo se puede desembolsar después de que tu equipo marque como verificada la corrección del informe. Nunca pagas por un fallo sin resolver, pero los investigadores pueden tener que esperar a que la corrección se publique.
- Desactivado (pago al validar) — El pago se desbloquea en cuanto el informe llega a Validated, la norma del sector en plataformas como HackerOne y Bugcrowd. A los investigadores se les paga más rápido, y el pago se desacopla del cierre del informe: el informe permanece abierto después de mover el dinero y se cierra como Paid automáticamente una vez que se resuelve (o se verifica la corrección). Los informes pagados nunca se pueden desestimar, y la verificación de la corrección pasa a ser un paso opcional de QA: regístrala antes de que el informe se resuelva, o no quedará registrada.
Procesar un pago
Kit no ejecuta transferencias bancarias ni llamadas a APIs de pago. Tu equipo se encarga del movimiento real de dinero fuera de Kit (transferencia bancaria, PayPal, criptomonedas, etc.). Kit hace seguimiento del ciclo de vida:
- Cuando todos los elementos de preparación están satisfechos, haz clic en Initiate para mover el desembolso a Processing
- Ejecuta la transferencia a través de tu proveedor de pagos
- Vuelve a Kit y haz clic en Mark as Paid: ingresa la referencia de la transacción (por ejemplo, el ID de transacción de PayPal o el número de confirmación de la transferencia)
- El desembolso pasa a Completed y el informe pasa a Paid (en los programas con pago al validar, un informe pagado antes de resolverse permanece abierto y se cierra como Paid automáticamente en cuanto llega a ese punto)
Confirmación del equipo de finanzas
En la mayoría de las empresas, la persona que programa el pago está en finanzas, no en seguridad: vigila una bandeja de entrada como [email protected] y no tiene cuenta en Kit. El traspaso a finanzas cubre esa brecha: Kit envía por correo a tu equipo de finanzas todo lo que necesitan para programar el pago, y ellos mismos lo confirman a través de un enlace seguro.
Actívalo configurando Finance Email en VDP > Program Settings > Payouts. Deja el campo en blanco para seguir registrando los pagos manualmente en Kit.
Con un correo de finanzas configurado, al hacer clic en Initiate también se envía una solicitud de pago a esa dirección con:
- El destinatario (investigador), el monto y el método de pago: las direcciones de PayPal se muestran completas; los números de cuenta bancaria se enmascaran salvo los últimos cuatro dígitos, con los datos completos disponibles solo tras el enlace de confirmación
- La referencia del desembolso que se debe incluir en el concepto del pago, para que la conciliación funcione en ambos sentidos
- La procedencia de la aprobación: quién aprobó la recompensa y cuándo, y quién inició el pago
- Un enlace de confirmación de un solo uso, válido durante 90 días
La persona de finanzas abre el enlace, ve los datos completos del pago, lo realiza a través de tu proveedor de pagos y luego ingresa la referencia de la transacción y su nombre para confirmar. Confirmar completa el desembolso exactamente igual que un Mark as Paid interno: se escribe la entrada del libro mayor, el informe pasa a Paid y se notifica al investigador automáticamente. La confirmación registra quién confirmó (nombre y correo), cuándo y desde dónde (dirección IP), visible en la fila del desembolso como Confirmed by finance.
Algunos detalles que conviene conocer:
- Las respuestas llegan a una persona. El reply-to del correo es el miembro del equipo que inició el pago, así que las preguntas de finanzas llegan a alguien que tiene contexto.
- Reenvía cuando quieras. La fila del desembolso muestra cuándo y dónde se envió la solicitud, con un botón de reenvío que emite un enlace nuevo.
- El flujo interno sigue disponible. Si finanzas responde “hecho, ref. #123” por correo en lugar de hacer clic, tu equipo todavía puede marcar el desembolso como pagado manualmente; el enlace mostrará entonces un recibo de “ya registrado”.
- El enlace muere con el desembolso. Una vez completado o fallido, el enlace ya no puede confirmar nada; solo muestra el estado actual.
- Las cancelaciones se anuncian. Si se envió una solicitud de pago y el desembolso se marca después como fallido, Kit envía a finanzas, desde el mismo remitente con tu marca, un aviso «Pago cancelado: no pagar» — para que nadie transfiera dinero por un pago que has anulado.
Estados de desembolso
| Estado | Significado |
|---|---|
| Pending | Recompensa aprobada; a la espera de que el investigador cumpla el checklist de preparación |
| Processing | Tu equipo ha iniciado la transferencia fuera de Kit |
| Completed | Fondos confirmados como recibidos; referencia de transacción registrada: el informe se cierra como Paid en cuanto su ciclo de vida lo permite |
| Failed | La transferencia falló; resuélvela manualmente y reinténtala o contacta al investigador |
Si un desembolso falla, el motivo del fallo se registra en el libro mayor — y si se había enviado una solicitud de pago a finanzas, esta recibe automáticamente un correo de cancelación indicándole que no pague. Puedes reiniciar el desembolso después de resolver el problema.
Documentos fiscales
Los investigadores suben documentos fiscales a través de su portal. Los investigadores con sede en EE.UU. envían un W-9; los investigadores fuera de EE.UU. envían un W-8BEN. Los documentos se almacenan con cifrado en reposo.
Tu equipo revisa los documentos subidos en VDP > Tax Documents:
| Estado | Acción |
|---|---|
| Pending | Documento subido, pendiente de tu revisión |
| Verified | Has confirmado que el documento es válido: el elemento de preparación queda satisfecho |
| Rejected | Has rechazado el documento: se notifica al investigador y puede volver a subirlo |
Tanto la verificación como el rechazo se registran en el libro mayor con fines de auditoría. Los eventos de documentos fiscales se vinculan al informe más reciente con recompensa otorgada del investigador para dar contexto en el libro mayor.
El libro mayor
Navega a VDP > Ledger para ver el rastro de auditoría financiera inmutable. El libro mayor es de solo adición: las entradas no se pueden editar, modificar ni eliminar.
Cada entrada registra:
- Tipo de entrada — Qué sucedió
- Monto — Cantidad en dólares, en centavos y moneda
- Actor — El miembro del equipo o el sistema que realizó la acción
- Marca de tiempo — Cuándo se creó la entrada
- Referencia del informe — El informe de vulnerabilidad vinculado
Cada entrada registra uno de los siguientes tipos:
| Tipo de entrada | Cuándo se crea |
|---|---|
bounty_approved |
Un miembro del equipo aprueba un monto de recompensa para un informe |
bounty_adjusted |
Un miembro del equipo corrige el monto de la recompensa antes de que se envíe el pago |
bounty_revoked |
Se desestima un informe con recompensa aprobada; la revocación cuenta como débito contra los totales del libro mayor |
disbursement_initiated |
Un miembro del equipo mueve el desembolso a Processing |
disbursement_completed |
Un miembro del equipo marca el desembolso como Paid con una referencia de transacción |
disbursement_failed |
Un desembolso se marca como fallido con un motivo |
tax_document_submitted |
Un investigador sube un documento W-8BEN o W-9 |
tax_document_verified |
Un miembro del equipo verifica un documento fiscal como válido |
tax_document_rejected |
Un miembro del equipo rechaza un documento fiscal; se notifica al investigador, que puede volver a subirlo |
Filtra el libro mayor por ID de informe, tipo de entrada o rango de fechas para acotar los resultados. Usa la exportación del libro mayor en Métricas y exportaciones para generar paquetes de evidencia SOC 2.
Integridad del libro mayor
Una verificación de integridad diaria se ejecuta automáticamente para comprobar la consistencia del libro mayor. Recorre cada entrada en orden cronológico y lleva un saldo acumulado: los créditos (bounty_approved, bounty_adjusted) lo aumentan y los débitos (disbursement_completed, bounty_revoked) lo reducen. Si el saldo acumulado llega a ser negativo, la entrada en cuestión se marca como una infracción.
Cualquier infracción se notifica al sistema de monitoreo de errores de Kit (APM) para que el equipo de ingeniería la investigue: no se envía ningún correo a los administradores de la cuenta. Contacta a soporte si sospechas de una discrepancia en el libro mayor: no intentes resolverla manualmente.
En resumen
- Configura los niveles de la matriz de recompensas con rangos mín/máx apropiados para tu tolerancia al riesgo
- Establece los requisitos de preparación para pagos (documentos fiscales, acuerdo) en la configuración de pagos de tu programa
- Configura un correo de finanzas para que las solicitudes de pago lleguen al equipo que realmente programa los pagos
- Comunica los rangos de recompensa en tu página de política de divulgación antes de que los investigadores envíen informes
- Revisa la cola de Disbursements semanalmente para detectar pagos pendientes
- Revisa y verifica los documentos fiscales subidos con prontitud para desbloquear los pagos a investigadores
- Exporta el libro mayor trimestralmente como evidencia SOC 2 a través de Métricas y exportaciones
Siguiente paso
- Métricas y exportaciones — KPIs del dashboard, exportaciones de evidencia SOC 2 y karma de investigadores
- El portal del investigador — cómo los investigadores envían su información de pago y documentos fiscales