Cómo conectar tu CVCRM a Play2sell PAY y pagar comisiones automáticamente — credenciales, webhooks, forma de pago, comprobante, ciclo de vida, pruebas, FAQ y solución de problemas. Configuración por pantallas, sin programación.
La integración CVCRM × Pagaduría de Comisiones conecta tu CVCRM a Play2sell PAY para emitir el boleto de la venta al comprador y pagar las comisiones automáticamente — con boleto, conciliación, escrituración y comprobante reflejados de vuelta en tu CVCRM. La configuración se hace por pantallas, sin programación, y toma alrededor de 15 minutos.
Generar un token de API, crear 3 webhooks y asegurar que la comisión use forma de pago Boleto.
2
En el panel Play2sell
Conectar el CVCRM (credenciales + mapeo de situaciones) y copiar la URL de webhook.
Paso
Qué haces
Resultado
1
Generas un token en el CVCRM
la credencial de API de la conexión
2
Conectas el CVCRM en el panel Play2sell
integración configurada
3
Copias tu URL de webhook
la dirección para que el CVCRM avise a Play2sell
4
Creas 3 webhooks en el CVCRM
el CVCRM empieza a notificar cada evento
5
Pruebas con una venta
confirma el flujo de extremo a extremo
Requisitos previos
Acceso administrativo al gestor de tu CVCRM (tuempresa.cvcrm.com.br/gestor).
Un usuario de API dedicado (el CVCRM recomienda llamarlo “Integração”, para que el historial quede atribuible). Si vas a usar el comprobante de transferencia (Paso 2.4), ese usuario debe ser gestor con contraseña de acceso al panel.
Las situaciones (estados) que usas para venta, escriturar y cancelación/rescisión ya configuradas en el CVCRM.
Play2sell PAY habilitado en tu cuenta (en caso de duda, habla con el soporte).
El CVCRM es la fuente de la verdad de la venta, de las partes, del split de comisión y de la escrituración. Play2sell PAY emite el boleto al comprador, custodia los recursos y distribuye las comisiones. Los dos sistemas se mantienen sincronizados mediante webhooks (el CVCRM avisa cuando algo cambia) y write-backs (Play2sell informa el resultado de vuelta en el CVCRM).
1
El CVCRM crea el contrato
Al registrar la venta, el CVCRM tiene el monto, los beneficiarios, el número de cuotas y los vencimientos.
2
Play2sell emite el boleto
Play2sell origina la venta y emite un boleto (con Pix) al comprador.
3
El boleto vuelve al CVCRM
El boleto emitido se registra de vuelta en la comisión de la reserva (situación “Programado”).
4
El comprador paga → el CVCRM recibe la conciliación
Al confirmarse el pago, Play2sell informa el estado pago de vuelta al CVCRM.
5
El CVCRM escritura → se libera la transferencia
Cuando la comisión es escriturada, Play2sell libera y distribuye la transferencia a los beneficiarios.
6
Play2sell paga y adjunta el comprobante
Transferencia vía PIX a cada beneficiario; el comprobante se adjunta a la comisión en el CVCRM. En caso de rescisión, el monto se reembolsa.
Sincronización segura. Los webhooks del CVCRM son livianos — llevan solo un identificador (ej.: {"idreserva": 123}). Play2sell usa ese aviso solo como disparador y busca el registro completo de vuelta en la API del CVCRM, autenticado, antes de actuar. Por eso un webhook falsificado no inyecta datos.
La identidad es por CPF/CNPJ, nunca por correo electrónico. Compradores y beneficiarios se resuelven por el documento. Asegúrate de que corredores, inmobiliaria y demás beneficiarios tengan el CPF/CNPJ completado en el CVCRM.
Paso 1 — Obtener las credenciales en el CVCRM (correo + token)
La conexión necesita tres valores de tu CVCRM: dominio, correo y token.
1
Abre Usuários Administrativos
En el gestor del CVCRM, haz clic en el engranaje ⚙ (esquina superior derecha) y ve a Usuários Administrativos.
2
Abre las opciones del usuario de integración
Localiza el usuario de integración en la lista y, en Opções, elige Tokens.
Gestor CVCRM → Usuários Administrativos → lista de usuarios
3
Genera y copia el token
Completa la Descrição (ej.: Play2sell), elige la Validade do Token y haz clic en Gerar token. El token aparece en la Listagem de Tokens — en Ações → Copiar Token, cópialo.
Pantalla de Tokens — generar y, en Ações → Copiar Token, copiar
4
Anota el correo y el dominio
Correo: el correo del usuario administrativo (debe pertenecer al mismo dominio del CVCRM).
Dominio: el subdominio de tu cuenta — la parte antes de .cvcrm.com.br (ej.: en tuempresa.cvcrm.com.br, el dominio es tuempresa).
Tienes a mano dominio, correo y token — los tres valores del Paso 2.
El token es sensible — trátalo como una contraseña. Para cambiarlo después, genera uno nuevo en el CVCRM y actualiza la conexión en el panel Play2sell.
Aquí le dices a Play2sell qué situación de tu CVCRM corresponde a cada acción. Informa el nombre (o el id) de la situación, exactamente como aparece en tu CVCRM.
Campo
Cuándo usar
Acción que dispara
Vendida
Situación de la reserva que indica venta confirmada.
Origina la venta y emite el boleto.
Escriturada
(Opcional) Situación de la reserva cuando la escrituración se registra en la propia reserva.
Libera la transferencia.
Distrato
(Opcional) Situación de la reserva de cancelación/rescisión.
Reembolso.
Escriturada (vía comisión)
Úsala cuando la escrituración en tu CVCRM es una situación de la comissão (ej.: “Escriturar”), y no de la reserva.
Libera la transferencia.
Cancelada (vía comisión)
(Opcional) Situación de la comissão que dispara rescisión/reembolso.
Reembolso.
Usa el label exacto de tu instancia. Las situaciones son configurables y cambian de empresa a empresa — “Vendida”, “Venda Realizada”, “Aprovada”, etc. Copia el texto tal como aparece en tu CVCRM.
Muchas operaciones registran la escrituración en la comisión (situación “Escriturar”), no en la reserva. En ese caso, deja Escriturada en blanco y completa Escriturada (vía comisión).
El write-back es cuando Play2sell informa el resultado de vuelta en el CVCRM. Estos campos indican qué situación debe asumir tu CVCRM en cada evento. Son opcionales.
Campo
Significado
Ejemplo
Comissão com boleto
Situación del pago de la comisión cuando el boleto se emite.
Programado
Comissão paga
Situación del pago de la comisión cuando hay conciliación (pago).
Pago
Para la situación de salida, prefiere siempre el nombre (ej.: Programado, Pago) en lugar del id. Los ids de la situación de pago varían por instancia y pueden caer en valores engañosos.
Hace que Play2sell adjunte el comprobante de pago (PDF) a la comisión en el CVCRM cuando la transferencia se paga. Es opcional y exige inicio de sesión de gestor en el CVCRM.
Campo
Qué informar
Tipo do comprovante
El nombre del tipo de archivo registrado en tu CVCRM (ej.: Comprovante_Play2sell).
Senha de gestor
La contraseña del usuario gestor del CVCRM (el mismo e-mail de integração).
Credenciales que el comprobante exige. El adjunto usa la API v3 del CVCRM, que — a diferencia del resto de la integración (que usa el token) — hace login con correo + contraseña en el panel del gestor. Por lo tanto:
El e-mail de integração (Paso 2.1) debe ser de un usuario gestor que entre al panel del CVCRM con contraseña.
Informa la contraseña de ese usuario en el campo Senha de gestor.
El acceso se renueva automáticamente — no actualizas nada periódicamente. Si cambias la contraseña en el CVCRM, actualízala aquí también.
El tipo de comprobante debe existir antes en tu CVCRM, y el nombre aquí tiene que ser idéntico al registrado allí. Mira cómo crearlo en el Paso 4.2. Sin esta configuración, todo lo demás funciona — solo no ocurre el adjunto del comprobante.
Traduce el tipo de comisión de tu CVCRM al rol del beneficiario en Play2sell. A la izquierda, el texto tal como viene del CVCRM (ej.: Corretor); a la derecha, el rol: VENDEDOR, IMOBILIARIA, HOUSE, GERENTE, COORDENADOR o PARCEIRO. Usa ”+ Adicionar papel” para incluir cuantos necesites.Haz clic en Conectar para guardar.
El CVCRM aparece como conectado en el panel y abre la pantalla “CRM conectado” con tu URL de webhook.
Al hacer clic en Conectar, Play2sell provisiona automáticamente el endpoint de recepción y muestra la pantalla “CRM conectado” con tu URL de webhook y un botón de copiar. Copia esa URL — la vas a pegar en el CVCRM en el próximo paso.
La URL es única de tu cuenta. Para recuperarla después, ve a Integrações → Endpoints — es donde los endpoints de webhook quedan listados.
Integrações → Endpoints — donde la URL queda disponible después
Tienes la URL de webhook copiada — lista para pegar en el CVCRM.
Vas a crear 3 webhooks — todos apuntando a la misma URL (la del Paso 3). Lo que cambia en cada uno es la Funcionalidade y la situación del gatillo:
#
Funcionalidade
Situación del gatillo (ejemplo)
Campo en el panel (Paso 2.2)
Qué dispara
1
Reserva
venta / enviar a la pagaduría
Vendida
originación + emisión del boleto
2
Comissão
escriturar
Escriturada (vía comisión)
libera la transferencia (PIX)
3
Comissão
cancelación
Cancelada (vía comisión)
cancela el boleto no pagado / reembolsa el pagado
Para cada uno, haz clic en ”+ Criar novo Webhook” y completa el formulario:
Campo del CVCRM
Qué informar
Nome
Una etiqueta clara, a tu elección (ej.: Pagaduría — venda).
Funcionalidade
Reserva (webhook 1) o Comissão (webhooks 2 y 3).
Workflow
Aparece cuando la Funcionalidade tiene más de un flujo de situaciones. En Comissão hay más de un workflow — elige el que contiene la situación del gatillo (“Escriturar” / “Cancelada”); en caso de duda, abre el selector y mira en qué workflow aparece la situación. En Reserva normalmente hay solo uno.
Gatilho
La situación que dispara el envío. Usa el label exacto de tu instancia (la misma del Paso 2.2).
Forma de envío
Deja el valor por defecto.
Endereço
Pega la URL de webhook copiada en el Paso 3.
Ativo no painel
Déjalo activo — sin esto, el webhook no dispara.
Registro de un nuevo webhook en el CVCRM
1
Webhook 1 — Originación (obligatorio)
Funcionalidade Reserva, en la situación que marca la venta / el envío a la pagaduría (la misma del campo Vendida, Paso 2.2). Hace que Play2sell origine la venta y emita el boleto.
2
Webhook 2 — Escrituración → libera la transferencia (obligatorio)
Funcionalidade Comissão, en la situación que indica escriturar/liberar — ej.: “Escriturar” (la misma del campo Escriturada (vía comisión), Paso 2.2). Libera la transferencia y paga a los beneficiarios vía PIX.
3
Webhook 3 — Cancelación / Rescisión (recomendado)
Funcionalidade Comissão, en la situación de cancelación — ej.: “Cancelada” (la misma del campo Cancelada (vía comisión), Paso 2.2). Cancela el boleto no pagado o reembolsa el pagado, según el estado.
Vincula los webhooks al usuario de integración (“Integração”) — así los cambios hechos por la automatización quedan atribuibles en el historial del CVCRM.
Variación por instancia. Si tu CVCRM registra la escrituración o la cancelación en la propia reserva (y no en la comisión), crea los webhooks 2 y 3 con Funcionalidade Reserva y, en el Paso 2.2, usa los campos Escriturada y Distrato en lugar de los “(vía comisión)”. El comportamiento es el mismo.
Confirma que los 3 webhooks están disparando. En la lista de webhooks, la columna Transações cuenta cada envío. Si sigue en 0 después de mover un registro a la situación del gatillo, revisa: la Funcionalidade, la situación (debe coincidir con el Paso 2.2), si el webhook está Ativo no painel y si el Endereço es la URL exacta del Paso 3 (sin espacios).
Haz esto solo si habilitaste el Comprobante de transferencia en el Paso 2.4. Es una configuración única que crea el tipo de archivo usado para adjuntar el PDF del comprobante a la comisión.En el gestor del CVCRM, ve a Configurações → Tipos de Arquivos de Pagamento Comissão, haz clic en ”+ Criar novo Tipo” y completa:
Campo
Qué informar
Nome
El nombre del tipo (ej.: Comprovante_Play2sell). Usa exactamente este nombre en el campo “Tipo do comprovante” del Paso 2.4.
Ativo no painel
Ativo.
Tipo Pessoa
Física / Jurídica.
Obrigatório
Não — Play2sell adjunta el comprobante automáticamente.
CVCRM → Tipos de Arquivos de Pagamento Comissão → Criar novo Tipo
Para que el boleto emitido por Play2sell aparezca como el cobrable de la comisión (y se concilie correctamente), los pagos de la comisión en el CVCRM deben usar la forma de pago “Boleto”.Para verificar: en Financeiro → Comissões, abre una comisión y haz clic en el ícono $ (Pagamentos). En la sección Pagamentos, cada cuota del beneficiario tiene la columna “Forma de pagamento” — debe estar como Boleto.
Si la cuota está con otra forma (ej.: “Transferência bancária”), el boleto que emitimos no coincide con la comisión. Ajusta la forma a Boleto en la regla/condición de comisión de tu CVCRM.
Comissão → Pagamentos: cada cuota con Forma de pagamento = Boleto (situación “Programado” tras la emisión)
4.4 — Elegir quién entra en el boleto (“Enviar para Pagadoria”)
En la regla de comisión del CVCRM, cada comisionado tiene el campo Enviar para Pagadoria (Sim o Não). Es el que decide a quién cobra y paga Play2sell.Para verificarlo: en Financeiro → Configuração de Comissões → Regras da comissão, abre la línea del comisionado con Editar y mira el campo Enviar para Pagadoria.
Cómo está la regla
Qué hace Play2sell
Al menos un comisionado con Sim
Origina la venta. El boleto de cada vencimiento es la suma de las comisiones marcadas con Sim.
Comisionado con Não
Queda fuera del boleto y no recibe por Play2sell en la escrituración. A ese comisionado lo pagas por fuera.
Todos con Não
No se emite ningún boleto. La reserva aparece como Nada a cobrar en el panel — no es un error.
Ejemplo. Comisión total de R10.000contrescomisionados:elprimerorecibeR 5.000 (Sim), el segundo R2.000(∗∗Na~o∗∗)yelterceroR 3.000 (Sim). El boleto del comprador sale por R$ 8.000, y en la escrituración solo reciben el primero y el tercero.
Como máximo 6 comisionados con “Sim” por vencimiento. La regla puede tener más comisionados, siempre que no más de 6 estén con Sim en cada vencimiento.
¿Cambiaste la opción después de que pasó la reserva? Editar “Enviar para Pagadoria” en el CVCRM no avisa a Play2sell. Después de ajustarla, usa Gerar boleto en el panel — consulta Cómo reprocesar una reserva en Solución de problemas.
Cuando el mismo comisionado aparece en más de una línea de la regla (por ejemplo, comisión y premio), deja todas sus líneas con la misma opción. Con una línea en Sim y otra en Não, Play2sell no puede saber qué cuota cobrar y no emite el boleto.
No. Toda la configuración se hace por pantallas, en el gestor del CVCRM y en el panel de Play2sell. Solo necesitas acceso administrativo a los dos sistemas. No se requiere ningún código.
¿Qué webhooks necesita tener el CVCRM?
Tres, todos apuntando a la misma URL: (1) Reserva en la situación de venta → originación; (2) Comissão en la situación “Escriturar” → libera la transferencia; (3) Comissão en la situación de cancelación → reembolso.
¿Cómo se calcula el monto de la comisión?
El CVCRM muestra la comisión bruta. Play2sell aplica la tasa de servicio (en general 1–3%) y el beneficiario recibe el neto vía PIX. El cálculo usa el monto de la comisión, no el de la venta.
¿La integración funciona con comisión menor que el 100% de la venta?
Sí. El boleto y el split se calculan sobre el monto de la comisión, así que cualquier porcentaje funciona.
¿En cuánto tiempo recibe el corredor?
Después de que la comisión sea escriturada en el CVCRM, la transferencia vía PIX se procesa en segundos y cae en la cuenta del beneficiario.
¿El comprobante de transferencia es obligatorio?
No, es opcional. Sin él, la transferencia se paga normalmente; solo no ocurre el adjunto del PDF en la comisión del CVCRM.
Verifica en el CVCRM: ¿el webhook está Ativo? ¿La Funcionalidade (Reserva/Comissão) y la situación del gatillo coinciden con lo que mapeaste en el panel? ¿El Endereço es la URL exacta copiada en el Paso 3 (sin espacios/saltos)?
El boleto no apareció en la comisión
Confirma que la forma de pago de la comisión es Boleto (Paso 4.3) y que la situación de salida “Comissão com boleto” está completada (ej.: Programado). Después de ajustar la configuración, usa Gerar boleto en el panel (consulta Cómo reprocesar una reserva, abajo).
La reserva quedó como "Nada a cobrar"
Todos los comisionados de la regla estaban con Enviar para Pagadoria = Não cuando llegó la reserva, así que no había nada que cobrar. Si había que cobrar, cambia a Sim los comisionados correctos (Paso 4.4) y usa Gerar boleto en el panel.
Cómo reprocesar una reserva
En el panel de Play2sell, ve a Integrações → Geral, a la tarjeta Integração CRM/ERP, y abre Eventos recentes. En las filas de reserva con estado Falha o Nada a cobrar aparece la acción Gerar boleto.Al confirmar, Play2sell lee la reserva en el CVCRM como está ahora y emite el boleto con las comisiones marcadas con Sim — aunque la reserva ya haya salido de la situación que genera el boleto. Si la reserva está en situación de distrato, vale el distrato. La acción aparece para quien tiene permiso de gestionar pagos.
Un beneficiario no fue encontrado / la transferencia no salió
La identidad es por CPF/CNPJ, nunca por correo electrónico. Asegúrate de que el documento del beneficiario esté completado y correcto en el CVCRM.
El estado pago no se reflejó al instante
Las confirmaciones de pago y los write-backs pueden tomar algunos instantes. Si persiste, habla con el soporte.
Esta sección es para equipos técnicos. La configuración anterior no exige nada de aquí.
Familias de API del CVCRM
Familia
Uso
Observación
v1 (/api/v1/<module>/*)
Actual — usada por la integración
Auth por headers email + token; 200 req/min
CVIO (/api/cvio/*)
Legado
En depreciación — el CVCRM está estandarizando hacia v1
CVDW (/api/v1/cvdw/*)
BI / data warehouse
Contrato pagado aparte; 20 req/min; retorna 403 si no se contrata
Sincronización e idempotencia
Webhook liviano → pull-back: el webhook lleva solo un id; Play2sell busca el registro completo vía GET autenticado antes de actuar.
Idempotencia: cada contrato mapea a una clave estable derivada del id de la reserva (cvcrm:{idreserva}); la reentrega nunca duplica la venta.
Orden: si la escrituración llega antes de que la originación concluya, se pospone y se reprocesa.
Atenciones (gotchas)
El CVCRM puede retornar HTTP 200 con codigo:404 en el cuerpo para rutas inexistentes — siempre verifica el campo codigo, no solo el estado HTTP.
Los filtros de fecha en algunos endpoints son ignorados — acota del lado del cliente.
Las fechas en el GET de cuotas usan DD/MM/YYYY.
Existen dos workflows de situación distintos — el de la comisión y el del pago de la comisión — con ids que pueden colisionar. Por eso el write-back de situación usa el nombre (“Programado”/“Pago”), no el id.
¿Necesitas ayuda para mapear las situaciones de tu instancia? Habla con el soporte en suporte@play2sell.com con tu dominio y la lista de situaciones que usas para vendida / escriturar / rescisión.