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.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"SalesOS","colors":{"primary":"#e20c18","light":"#e30647","dark":"#c50a14"},"logo":{"light":"https://mintcdn.com/play2sell/FiU6GxxU6y37uxdh/logo/light.png?fit=max\u0026auto=format\u0026n=FiU6GxxU6y37uxdh\u0026q=85\u0026s=2be3dc625b663625442ce45235218008","dark":"https://mintcdn.com/play2sell/FiU6GxxU6y37uxdh/logo/dark.png?fit=max\u0026auto=format\u0026n=FiU6GxxU6y37uxdh\u0026q=85\u0026s=1a601e82f18c0ba66d009e8f82284d14"},"favicon":"https://mintcdn.com/play2sell/kLdQdLmEQ4l-mHv0/favicon.png?fit=max\u0026auto=format\u0026n=kLdQdLmEQ4l-mHv0\u0026q=85\u0026s=ab0e9a29df9c103178a1307f9f033fec","navbar":{"links":[{"href":"mailto:suporte@play2sell.com","label":"Support"}],"primary":{"type":"button","label":"Open SalesOS","href":"https://app.play2sell.com"}},"footer":{"socials":{"linkedin":"https://linkedin.com/company/play2sell","website":"https://play2sell.com"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://play2sell.com"}]},"languages":[{"language":"en","href":""},{"language":"pt","href":"pt"},{"language":"es","href":"es"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"play2sell","hasAudioNarration":false,"actualSubdomain":"play2sell","customDomains":["docs.play2sell.com"],"gitSource":{"type":"github","owner":"play2sellsa","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6acfeb853f6921de90e0ea8d","collectionId":"86aad7e7-e9c8-42e2-89df-c78905bd927c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6acfeb853f6921de90e0ea8d"},"entitlements":{},"buildId":"6acfeb853f6921de90e0ea8d","clientVersion":"0.0.3879","searchFilterCounts":[{"language":"en","tag":"API \u0026 Integrations","count":14},{"language":"es","tag":"API e Integraciones","count":14},{"language":"pt","tag":"API \u0026 Integrações","count":14},{"language":"en","tag":"Administration","count":12},{"language":"en","tag":"Integrations","count":12},{"language":"es","tag":"Administración","count":12},{"language":"es","tag":"Integraciones","count":12},{"language":"pt","tag":"Administração","count":12},{"language":"pt","tag":"Integrações","count":12},{"language":"en","tag":"User Guide","count":11},{"language":"es","tag":"Guía del Usuario","count":11},{"language":"pt","tag":"Guia do Usuário","count":11},{"language":"en","tag":"FAQ \u0026 Support","count":9},{"language":"es","tag":"FAQ y Soporte","count":9},{"language":"pt","tag":"FAQ \u0026 Suporte","count":9},{"language":"en","tag":"Setup","count":4},{"language":"en","tag":"FAQ","count":4},{"language":"es","tag":"Configuración","count":4},{"language":"es","tag":"Preguntas Frecuentes","count":4},{"language":"pt","tag":"Configuração","count":4},{"language":"pt","tag":"Perguntas Frequentes","count":4},{"language":"en","tag":"Billing","count":3},{"language":"en","tag":"Customization","count":3},{"language":"en","tag":"Getting Started","count":3},{"language":"es","tag":"Facturación","count":3},{"language":"es","tag":"Personalización","count":3},{"language":"es","tag":"Empezando","count":3},{"language":"pt","tag":"Faturamento","count":3},{"language":"pt","tag":"Personalização","count":3},{"language":"pt","tag":"Começando","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2-autocommit","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"teamspace","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"client-snapshot-docs-config","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"es/api/integrations/cvcrm","slug":"/es/api/integrations/cvcrm","pageMetadata":{"title":"Integración CVCRM — Pagaduría de Comisiones","description":"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.","icon":"building","href":"/es/api/integrations/cvcrm"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"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.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,annotation:`annotation`,code:`code`,li:`li`,math:`math`,mi:`mi`,mn:`mn`,mo:`mo`,mover:`mover`,mrow:`mrow`,p:`p`,semantics:`semantics`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Check,Frame,Heading,Note,OptimizedImage,Step,Steps,Table,Tip,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Check)_missingMdxReference(`Check`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`La `,_jsx(_components.strong,{children:`integración CVCRM × Pagaduría de Comisiones`}),` conecta tu `,_jsx(_components.strong,{children:`CVCRM`}),` a `,_jsx(_components.strong,{children:`Play2sell PAY`}),` para emitir el boleto de la venta al comprador y `,_jsx(_components.strong,{children:`pagar las comisiones automáticamente`}),` — con boleto, conciliación, escrituración y comprobante reflejados de vuelta en tu CVCRM. La configuración se hace `,_jsx(_components.strong,{children:`por pantallas, sin programación`}),`, y toma alrededor de `,_jsx(_components.strong,{children:`15 minutos`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`qué-vas-a-configurar`,children:`Qué vas a configurar`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`En el CVCRM`,children:_jsxs(_components.p,{children:[`Generar un `,_jsx(_components.strong,{children:`token de API`}),`, crear `,_jsx(_components.strong,{children:`3 webhooks`}),` y asegurar que la comisión use `,_jsx(_components.strong,{children:`forma de pago Boleto`}),`.`]})}),_jsx(Step,{title:`En el panel Play2sell`,children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Conectar`}),` el CVCRM (credenciales + mapeo de situaciones) y `,_jsx(_components.strong,{children:`copiar la URL de webhook`}),`.`]})})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Paso`}),_jsx(_components.th,{children:`Qué haces`}),_jsx(_components.th,{children:`Resultado`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`1`})}),_jsx(_components.td,{children:`Generas un token en el CVCRM`}),_jsx(_components.td,{children:`la credencial de API de la conexión`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`2`})}),_jsx(_components.td,{children:`Conectas el CVCRM en el panel Play2sell`}),_jsx(_components.td,{children:`integración configurada`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`3`})}),_jsx(_components.td,{children:`Copias tu URL de webhook`}),_jsx(_components.td,{children:`la dirección para que el CVCRM avise a Play2sell`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`4`})}),_jsx(_components.td,{children:`Creas 3 webhooks en el CVCRM`}),_jsx(_components.td,{children:`el CVCRM empieza a notificar cada evento`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`5`})}),_jsx(_components.td,{children:`Pruebas con una venta`}),_jsx(_components.td,{children:`confirma el flujo de extremo a extremo`})]})]})]}),`\n`,_jsxs(Note,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Requisitos previos`})}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Acceso `,_jsx(_components.strong,{children:`administrativo`}),` al gestor de tu CVCRM (`,_jsx(_components.code,{children:`tuempresa.cvcrm.com.br/gestor`}),`).`]}),`\n`,_jsxs(_components.li,{children:[`Un `,_jsx(_components.strong,{children:`usuario de API`}),` dedicado (el CVCRM recomienda llamarlo `,_jsx(_components.strong,{children:`“Integração”`}),`, para que el historial quede atribuible). Si vas a usar el `,_jsx(_components.strong,{children:`comprobante de transferencia`}),` (Paso 2.4), ese usuario debe ser `,_jsx(_components.strong,{children:`gestor con contraseña de acceso al panel`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Las `,_jsx(_components.strong,{children:`situaciones`}),` (estados) que usas para `,_jsx(_components.strong,{children:`venta`}),`, `,_jsx(_components.strong,{children:`escriturar`}),` y `,_jsx(_components.strong,{children:`cancelación/rescisión`}),` ya configuradas en el CVCRM.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Play2sell PAY`}),` habilitado en tu cuenta (en caso de duda, habla con el soporte).`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`¿cómo-funciona-la-integración`,children:`¿Cómo funciona la integración?`}),`\n`,_jsxs(_components.p,{children:[`El `,_jsx(_components.strong,{children:`CVCRM es la fuente de la verdad`}),` de la venta, de las partes, del split de comisión y de la escrituración. `,_jsx(_components.strong,{children:`Play2sell PAY`}),` emite el boleto al comprador, custodia los recursos y distribuye las comisiones. Los dos sistemas se mantienen sincronizados mediante `,_jsx(_components.strong,{children:`webhooks`}),` (el CVCRM avisa cuando algo cambia) y `,_jsx(_components.strong,{children:`write-backs`}),` (Play2sell informa el resultado de vuelta en el CVCRM).`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`El CVCRM crea el contrato`,children:_jsx(_components.p,{children:`Al registrar la venta, el CVCRM tiene el monto, los beneficiarios, el número de cuotas y los vencimientos.`})}),_jsx(Step,{title:`Play2sell emite el boleto`,children:_jsxs(_components.p,{children:[`Play2sell origina la venta y emite un `,_jsx(_components.strong,{children:`boleto (con Pix)`}),` al comprador.`]})}),_jsx(Step,{title:`El boleto vuelve al CVCRM`,children:_jsxs(_components.p,{children:[`El boleto emitido se registra de vuelta en la `,_jsx(_components.strong,{children:`comisión`}),` de la reserva (situación “Programado”).`]})}),_jsx(Step,{title:`El comprador paga → el CVCRM recibe la conciliación`,children:_jsxs(_components.p,{children:[`Al confirmarse el pago, Play2sell informa el estado `,_jsx(_components.strong,{children:`pago`}),` de vuelta al CVCRM.`]})}),_jsx(Step,{title:`El CVCRM escritura → se libera la transferencia`,children:_jsx(_components.p,{children:`Cuando la comisión es escriturada, Play2sell libera y distribuye la transferencia a los beneficiarios.`})}),_jsx(Step,{title:`Play2sell paga y adjunta el comprobante`,children:_jsxs(_components.p,{children:[`Transferencia vía `,_jsx(_components.strong,{children:`PIX`}),` a cada beneficiario; el `,_jsx(_components.strong,{children:`comprobante`}),` se adjunta a la comisión en el CVCRM. En caso de rescisión, el monto se reembolsa.`]})})]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Sincronización segura.`}),` Los webhooks del CVCRM son `,_jsx(_components.strong,{children:`livianos`}),` — llevan solo un identificador (ej.: `,_jsx(_components.code,{children:`{\"idreserva\": 123}`}),`). Play2sell usa ese aviso solo como disparador y `,_jsx(_components.strong,{children:`busca el registro completo de vuelta`}),` en la API del CVCRM, autenticado, antes de actuar. Por eso un webhook falsificado no inyecta datos.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`La identidad es por CPF/CNPJ, nunca por correo electrónico.`}),` Compradores y beneficiarios se resuelven por el `,_jsx(_components.strong,{children:`documento`}),`. Asegúrate de que corredores, inmobiliaria y demás beneficiarios tengan el CPF/CNPJ completado en el CVCRM.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`paso-1-—-obtener-las-credenciales-en-el-cvcrm-correo-+-token`,children:`Paso 1 — Obtener las credenciales en el CVCRM (correo + token)`}),`\n`,_jsxs(_components.p,{children:[`La conexión necesita tres valores de tu CVCRM: `,_jsx(_components.strong,{children:`dominio`}),`, `,_jsx(_components.strong,{children:`correo`}),` y `,_jsx(_components.strong,{children:`token`}),`.`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Abre Usuários Administrativos`,children:_jsxs(_components.p,{children:[`En el gestor del CVCRM, haz clic en el engranaje ⚙ (esquina superior derecha) y ve a `,_jsx(_components.strong,{children:`Usuários Administrativos`}),`.`]})}),_jsxs(Step,{title:`Abre las opciones del usuario de integración`,children:[_jsxs(_components.p,{children:[`Localiza el usuario de integración en la lista y, en `,_jsx(_components.strong,{children:`Opções`}),`, elige `,_jsx(_components.strong,{children:`Tokens`}),`.`]}),_jsx(Frame,{caption:`Gestor CVCRM → Usuários Administrativos → lista de usuarios`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=52da52556f8d82a578af4adc3efcff43`,alt:`Página Usuários Administrativos del CVCRM`,\"data-og-width\":`1650`,width:`1650`,\"data-og-height\":`544`,height:`544`,\"data-path\":`images/integrations/cvcrm/09-cvcrm-usuarios.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=2f0dabeb55d01753ff21d37422b04eba 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=5dfc055a978a55960d070f032cc7c2ca 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=d79645e88b9cf8f7e412c44b66878604 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=c16d00a99e68e4f1e96485a29021763c 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=17cc5d3328e8de89c0e8b698cf1db119 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/09-cvcrm-usuarios.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=82b56327fe4ebbd6ba79093ebe9ffb69 2500w`})})]}),_jsxs(Step,{title:`Genera y copia el token`,children:[_jsxs(_components.p,{children:[`Completa la `,_jsx(_components.strong,{children:`Descrição`}),` (ej.: `,_jsx(_components.code,{children:`Play2sell`}),`), elige la `,_jsx(_components.strong,{children:`Validade do Token`}),` y haz clic en `,_jsx(_components.strong,{children:`Gerar token`}),`. El token aparece en la `,_jsx(_components.strong,{children:`Listagem de Tokens`}),` — en `,_jsx(_components.strong,{children:`Ações → Copiar Token`}),`, cópialo.`]}),_jsx(Frame,{caption:`Pantalla de Tokens — generar y, en Ações → Copiar Token, copiar`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=d722dfbaad33d15838e2bfd866a31fa7`,alt:`Generación y copia del token en el CVCRM (Ações → Copiar Token)`,\"data-og-width\":`1658`,width:`1658`,\"data-og-height\":`1272`,height:`1272`,\"data-path\":`images/integrations/cvcrm/10-cvcrm-token.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=814e5b78c6bf952e6b5fbdc432b96533 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=a59b1c36b6ccb9efd4d11bbbe3a55ab4 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=7214f8224ff3cce0f047507d43eba567 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=6781a266514c592d458585cec37f8f07 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=d79a5a5d03a38dbfb3ff87e23f972783 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/10-cvcrm-token.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=52ec31ce5d94276ee33ddade2140c00a 2500w`})})]}),_jsx(Step,{title:`Anota el correo y el dominio`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Correo:`}),` el correo del usuario administrativo (debe pertenecer al mismo dominio del CVCRM).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Dominio:`}),` el subdominio de tu cuenta — la parte `,_jsx(_components.strong,{children:`antes`}),` de `,_jsx(_components.code,{children:`.cvcrm.com.br`}),` (ej.: en `,_jsx(_components.code,{children:`tuempresa.cvcrm.com.br`}),`, el dominio es `,_jsx(_components.code,{children:`tuempresa`}),`).`]}),`\n`]})})]}),`\n`,_jsxs(Check,{children:[`Tienes a mano `,_jsx(_components.strong,{children:`dominio`}),`, `,_jsx(_components.strong,{children:`correo`}),` y `,_jsx(_components.strong,{children:`token`}),` — los tres valores del Paso 2.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`El `,_jsx(_components.strong,{children:`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.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`paso-2-—-conectar-en-el-panel-play2sell`,children:`Paso 2 — Conectar en el panel Play2sell`}),`\n`,_jsxs(_components.p,{children:[`En el panel Play2sell, ve a `,_jsx(_components.strong,{children:`Integrações → Conectores`}),`, encuentra el `,_jsx(_components.strong,{children:`CVCRM`}),` y haz clic en `,_jsx(_components.strong,{children:`Conectar`}),`.`]}),`\n`,_jsx(Frame,{caption:`Integrações → Conectores → CVCRM`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=32092647dee9db29cb24f393f7f89606`,alt:`Tarjeta del conector CVCRM`,\"data-og-width\":`1320`,width:`1320`,\"data-og-height\":`854`,height:`854`,\"data-path\":`images/integrations/cvcrm/01-conectores.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=433ca2eb4fd721d94e9ce2f67e127d9e 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b0b4bcc4f4921a2be89d66a8f4fd1ec7 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=eb829f2034de28dd1835dd8bc2848d19 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=f35ceec1269be95f7e94e8973c3e23f8 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=a86e03521b50ed372abd0cc9132f21b7 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/01-conectores.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=7f42b30a72aeed0e952619ae39caeed4 2500w`})}),`\n`,_jsx(_components.p,{children:`El formulario tiene cinco bloques. Completa cada uno según lo siguiente.`}),`\n`,_jsx(Frame,{caption:`Modal “Conectar CRM/ERP” — formulario completo`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=55be8ae29645a865c7c64eb727d0516f`,alt:`Formulario Conectar CRM/ERP: credenciales, mapeo de situaciones, situación de salida y comprobante de transferencia`,\"data-og-width\":`670`,width:`670`,\"data-og-height\":`1160`,height:`1160`,\"data-path\":`images/integrations/cvcrm/02-conectar-modal.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b8d0119956e25ec9997775f7b65f590c 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=96a04f8370aa9df65bbba530b54d4c6f 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b8d18aa01513bd63b161639622638d31 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=eb396b75a096786a58b4e3bf292a2b04 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=a70cc714ee9547d2a8c89c6fdce8977a 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/02-conectar-modal.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=f5c9eadae5db6aa1eb071440102802e6 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`2-1-—-credenciales`,children:`2.1 — Credenciales`}),`\n`,_jsx(_components.p,{children:`Completa los tres valores del Paso 1:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Qué informar`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Domínio`})}),_jsxs(_components.td,{children:[`El subdominio antes de `,_jsx(_components.code,{children:`.cvcrm.com.br`}),` (ej.: `,_jsx(_components.code,{children:`tuempresa`}),`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`E-mail de integração`})}),_jsx(_components.td,{children:`El correo del usuario de API.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Token`})}),_jsx(_components.td,{children:`El token generado en el CVCRM (guardado de forma segura; no se muestra después).`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`2-2-—-mapeo-de-situaciones`,children:`2.2 — Mapeo de situaciones`}),`\n`,_jsxs(_components.p,{children:[`Aquí le dices a Play2sell `,_jsx(_components.strong,{children:`qué situación de tu CVCRM`}),` corresponde a cada acción. Informa el `,_jsx(_components.strong,{children:`nombre`}),` (o el id) de la situación, `,_jsx(_components.strong,{children:`exactamente`}),` como aparece en tu CVCRM.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Cuándo usar`}),_jsx(_components.th,{children:`Acción que dispara`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Vendida`})}),_jsxs(_components.td,{children:[`Situación de la `,_jsx(_components.strong,{children:`reserva`}),` que indica venta confirmada.`]}),_jsx(_components.td,{children:`Origina la venta y emite el boleto.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Escriturada`})}),_jsxs(_components.td,{children:[`(Opcional) Situación de la `,_jsx(_components.strong,{children:`reserva`}),` cuando la escrituración se registra en la propia reserva.`]}),_jsx(_components.td,{children:`Libera la transferencia.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Distrato`})}),_jsxs(_components.td,{children:[`(Opcional) Situación de la `,_jsx(_components.strong,{children:`reserva`}),` de cancelación/rescisión.`]}),_jsx(_components.td,{children:`Reembolso.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Escriturada (vía comisión)`})}),_jsxs(_components.td,{children:[`Úsala cuando la escrituración en tu CVCRM es una situación de la `,_jsx(_components.strong,{children:`comissão`}),` (ej.: “Escriturar”), y no de la reserva.`]}),_jsx(_components.td,{children:`Libera la transferencia.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Cancelada (vía comisión)`})}),_jsxs(_components.td,{children:[`(Opcional) Situación de la `,_jsx(_components.strong,{children:`comissão`}),` que dispara rescisión/reembolso.`]}),_jsx(_components.td,{children:`Reembolso.`})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Usa el `,_jsx(_components.strong,{children:`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.`]})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Muchas operaciones registran la escrituración `,_jsx(_components.strong,{children:`en la comisión`}),` (situación “Escriturar”), no en la reserva. En ese caso, deja `,_jsx(_components.strong,{children:`Escriturada`}),` en blanco y completa `,_jsx(_components.strong,{children:`Escriturada (vía comisión)`}),`.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`2-3-—-situación-de-salida-write-back`,children:`2.3 — Situación de salida (write-back)`}),`\n`,_jsxs(_components.p,{children:[`El `,_jsx(_components.strong,{children:`write-back`}),` es cuando Play2sell informa el resultado de vuelta en el CVCRM. Estos campos indican `,_jsx(_components.strong,{children:`qué situación debe asumir tu CVCRM`}),` en cada evento. Son `,_jsx(_components.strong,{children:`opcionales`}),`.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Significado`}),_jsx(_components.th,{children:`Ejemplo`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Comissão com boleto`})}),_jsxs(_components.td,{children:[`Situación del pago de la comisión `,_jsx(_components.strong,{children:`cuando el boleto se emite`}),`.`]}),_jsx(_components.td,{children:_jsx(_components.code,{children:`Programado`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Comissão paga`})}),_jsxs(_components.td,{children:[`Situación del pago de la comisión `,_jsx(_components.strong,{children:`cuando hay conciliación`}),` (pago).`]}),_jsx(_components.td,{children:_jsx(_components.code,{children:`Pago`})})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Para la situación de salida, prefiere siempre el `,_jsx(_components.strong,{children:`nombre`}),` (ej.: `,_jsx(_components.code,{children:`Programado`}),`, `,_jsx(_components.code,{children:`Pago`}),`) en lugar del id. Los ids de la situación de pago varían por instancia y pueden caer en valores engañosos.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`2-4-—-comprobante-de-transferencia-opcional`,children:`2.4 — Comprobante de transferencia (opcional)`}),`\n`,_jsxs(_components.p,{children:[`Hace que Play2sell `,_jsx(_components.strong,{children:`adjunte el comprobante de pago (PDF)`}),` a la comisión en el CVCRM cuando la transferencia se paga. Es `,_jsx(_components.strong,{children:`opcional`}),` y exige inicio de sesión de `,_jsx(_components.strong,{children:`gestor`}),` en el CVCRM.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Qué informar`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Tipo do comprovante`})}),_jsxs(_components.td,{children:[`El `,_jsx(_components.strong,{children:`nombre del tipo de archivo`}),` registrado en tu CVCRM (ej.: `,_jsx(_components.code,{children:`Comprovante_Play2sell`}),`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Senha de gestor`})}),_jsxs(_components.td,{children:[`La `,_jsx(_components.strong,{children:`contraseña`}),` del usuario gestor del CVCRM (el mismo `,_jsx(_components.strong,{children:`e-mail de integração`}),`).`]})]})]})]}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Credenciales que el comprobante exige.`}),` El adjunto usa la `,_jsx(_components.strong,{children:`API v3`}),` del CVCRM, que — a diferencia del resto de la integración (que usa el `,_jsx(_components.strong,{children:`token`}),`) — hace `,_jsx(_components.strong,{children:`login con correo + contraseña`}),` en el panel del gestor. Por lo tanto:`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`El `,_jsx(_components.strong,{children:`e-mail de integração`}),` (Paso 2.1) debe ser de un `,_jsx(_components.strong,{children:`usuario gestor`}),` que entre al panel del CVCRM `,_jsx(_components.strong,{children:`con contraseña`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Informa la `,_jsx(_components.strong,{children:`contraseña de ese usuario`}),` en el campo `,_jsx(_components.strong,{children:`Senha de gestor`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`El acceso se `,_jsx(_components.strong,{children:`renueva automáticamente`}),` — no actualizas nada periódicamente. Si cambias la contraseña en el CVCRM, actualízala aquí también.`]}),`\n`]})]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`El `,_jsx(_components.strong,{children:`tipo de comprobante debe existir antes`}),` en tu CVCRM, y el `,_jsx(_components.strong,{children:`nombre`}),` aquí tiene que ser `,_jsx(_components.strong,{children:`idéntico`}),` al registrado allí. Mira cómo crearlo en el `,_jsx(_components.strong,{children:`Paso 4.2`}),`. Sin esta configuración, todo lo demás funciona — solo no ocurre el adjunto del comprobante.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`2-5-—-mapeo-de-roles-opcional`,children:`2.5 — Mapeo de roles (opcional)`}),`\n`,_jsxs(_components.p,{children:[`Traduce el `,_jsx(_components.strong,{children:`tipo de comisión de tu CVCRM`}),` al rol del beneficiario en Play2sell. A la izquierda, el texto tal como viene del CVCRM (ej.: `,_jsx(_components.code,{children:`Corretor`}),`); a la derecha, el rol: `,_jsx(_components.code,{children:`VENDEDOR`}),`, `,_jsx(_components.code,{children:`IMOBILIARIA`}),`, `,_jsx(_components.code,{children:`HOUSE`}),`, `,_jsx(_components.code,{children:`GERENTE`}),`, `,_jsx(_components.code,{children:`COORDENADOR`}),` o `,_jsx(_components.code,{children:`PARCEIRO`}),`. Usa `,_jsx(_components.strong,{children:`”+ Adicionar papel”`}),` para incluir cuantos necesites.`]}),`\n`,_jsxs(_components.p,{children:[`Haz clic en `,_jsx(_components.strong,{children:`Conectar`}),` para guardar.`]}),`\n`,_jsxs(Check,{children:[`El CVCRM aparece como `,_jsx(_components.strong,{children:`conectado`}),` en el panel y abre la pantalla `,_jsx(_components.strong,{children:`“CRM conectado”`}),` con tu URL de webhook.`]}),`\n`,_jsx(Heading,{level:`2`,id:`paso-3-—-copiar-la-url-de-webhook`,children:`Paso 3 — Copiar la URL de webhook`}),`\n`,_jsxs(_components.p,{children:[`Al hacer clic en `,_jsx(_components.strong,{children:`Conectar`}),`, Play2sell `,_jsx(_components.strong,{children:`provisiona automáticamente`}),` el endpoint de recepción y muestra la pantalla `,_jsx(_components.strong,{children:`“CRM conectado”`}),` con tu `,_jsx(_components.strong,{children:`URL de webhook`}),` y un botón de `,_jsx(_components.strong,{children:`copiar`}),`. Copia esa URL — la vas a pegar en el CVCRM en el próximo paso.`]}),`\n`,_jsxs(Note,{children:[_jsxs(_components.p,{children:[`La URL es `,_jsx(_components.strong,{children:`única de tu cuenta`}),`. Para recuperarla después, ve a `,_jsx(_components.strong,{children:`Integrações → Endpoints`}),` — es donde los endpoints de webhook quedan listados.`]}),_jsx(Frame,{caption:`Integrações → Endpoints — donde la URL queda disponible después`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=9464f18e7d1cbb6e2b6be3a86582ffa8`,alt:`Página de Endpoints del panel Play2sell`,\"data-og-width\":`1680`,width:`1680`,\"data-og-height\":`1298`,height:`1298`,\"data-path\":`images/integrations/cvcrm/05-endpoints.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=906d32f557d4b00488fdf6949a75bbab 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=6616508d80342d3d9513bf1337415fb1 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b3ff1b194791a7e90f404456ece57bc7 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=da930a1d3c145c7c53e1529b27b26de4 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=324ac82f7bb5f56dd809ce35e17d5020 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/05-endpoints.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=16547bf34c023b3882eb03a6d4e58823 2500w`})})]}),`\n`,_jsxs(Check,{children:[`Tienes la `,_jsx(_components.strong,{children:`URL de webhook`}),` copiada — lista para pegar en el CVCRM.`]}),`\n`,_jsx(Heading,{level:`2`,id:`paso-4-—-configurar-el-cvcrm`,children:`Paso 4 — Configurar el CVCRM`}),`\n`,_jsx(_components.p,{children:`Aquí avisas al CVCRM para que notifique a Play2sell en cada evento (4.1) y aseguras tres configuraciones de apoyo (4.2, 4.3 y 4.4).`}),`\n`,_jsx(Heading,{level:`3`,id:`4-1-—-crear-los-3-webhooks`,children:`4.1 — Crear los 3 webhooks`}),`\n`,_jsxs(_components.p,{children:[`En el gestor del CVCRM, ve a `,_jsx(_components.strong,{children:`Configurações ⚙ → Integrações`}),` y abre la tarjeta `,_jsx(_components.strong,{children:`Webhooks`}),` (en “Configurar”).`]}),`\n`,_jsx(Frame,{caption:`Gestor CVCRM → Configurações → Integrações → tarjeta Webhooks`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=5adadd744cd615258faf06cc969227ae`,alt:`Hub de Integrações del CVCRM con la tarjeta Webhooks`,\"data-og-width\":`2084`,width:`2084`,\"data-og-height\":`1350`,height:`1350`,\"data-path\":`images/integrations/cvcrm/06-cvcrm-integracoes.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=262b28859ff9af1d630356d518667ac3 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=5d75aa9b0a4fb9ae137784d381af4d95 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=357566b49824f2100a1a3095836a8b30 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=744b4fe939fb80ac4a351adb7da88a57 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=677893d7a1269585af5ffe667a09cbe6 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/06-cvcrm-integracoes.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=0da8361314200886b0e69cb5d5e6683a 2500w`})}),`\n`,_jsx(Frame,{caption:`Lista de webhooks en el CVCRM`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=870eab633111f90db91847c2fa9a684c`,alt:`Lista de webhooks en el CVCRM`,\"data-og-width\":`1678`,width:`1678`,\"data-og-height\":`1354`,height:`1354`,\"data-path\":`images/integrations/cvcrm/07-cvcrm-webhooks-lista.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=850f277b45991548397fc3a4cc9bb1c6 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=a88fc16ac271d069a040878463af40d6 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=aff50fa7a7768f487ec961f0c8beaa31 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b076292402eadeb55dbbe073faad26b1 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=2db66d744bfc0ead343aac28a7967949 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/07-cvcrm-webhooks-lista.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=0818427af5f1a9c99f1f726052e117eb 2500w`})}),`\n`,_jsxs(_components.p,{children:[`Vas a crear `,_jsx(_components.strong,{children:`3 webhooks`}),` — todos apuntando a la `,_jsx(_components.strong,{children:`misma URL`}),` (la del Paso 3). Lo que cambia en cada uno es la `,_jsx(_components.strong,{children:`Funcionalidade`}),` y la `,_jsx(_components.strong,{children:`situación del gatillo`}),`:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`#`}),_jsx(_components.th,{children:`Funcionalidade`}),_jsx(_components.th,{children:`Situación del gatillo (ejemplo)`}),_jsx(_components.th,{children:`Campo en el panel (Paso 2.2)`}),_jsx(_components.th,{children:`Qué dispara`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`1`})}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Reserva`})}),_jsx(_components.td,{children:`venta / enviar a la pagaduría`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Vendida`})}),_jsx(_components.td,{children:`originación + emisión del boleto`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`2`})}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Comissão`})}),_jsx(_components.td,{children:`escriturar`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Escriturada (vía comisión)`})}),_jsx(_components.td,{children:`libera la transferencia (PIX)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`3`})}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Comissão`})}),_jsx(_components.td,{children:`cancelación`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Cancelada (vía comisión)`})}),_jsx(_components.td,{children:`cancela el boleto no pagado / reembolsa el pagado`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Para cada uno, haz clic en `,_jsx(_components.strong,{children:`”+ Criar novo Webhook”`}),` y completa el formulario:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo del CVCRM`}),_jsx(_components.th,{children:`Qué informar`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Nome`})}),_jsxs(_components.td,{children:[`Una etiqueta clara, a tu elección (ej.: `,_jsx(_components.code,{children:`Pagaduría — venda`}),`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Funcionalidade`})}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Reserva`}),` (webhook 1) o `,_jsx(_components.strong,{children:`Comissão`}),` (webhooks 2 y 3).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Workflow`})}),_jsxs(_components.td,{children:[`Aparece cuando la Funcionalidade tiene más de un flujo de situaciones. En `,_jsx(_components.strong,{children:`Comissão`}),` hay más de un workflow — elige el que `,_jsx(_components.strong,{children:`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 `,_jsx(_components.strong,{children:`Reserva`}),` normalmente hay solo uno.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Gatilho`})}),_jsxs(_components.td,{children:[`La `,_jsx(_components.strong,{children:`situación`}),` que dispara el envío. Usa el `,_jsx(_components.strong,{children:`label exacto`}),` de tu instancia (la misma del Paso 2.2).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Forma de envío`})}),_jsx(_components.td,{children:`Deja el valor por defecto.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Endereço`})}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Pega la URL de webhook`}),` copiada en el Paso 3.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Ativo no painel`})}),_jsxs(_components.td,{children:[`Déjalo `,_jsx(_components.strong,{children:`activo`}),` — sin esto, el webhook no dispara.`]})]})]})]}),`\n`,_jsx(Frame,{caption:`Registro de un nuevo webhook en el CVCRM`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=3c705dd46567c23c85173cd7938a0d93`,alt:`Formulario de registro de webhook en el CVCRM`,\"data-og-width\":`1680`,width:`1680`,\"data-og-height\":`1358`,height:`1358`,\"data-path\":`images/integrations/cvcrm/08-cvcrm-webhook-form.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=0143a93142e7089ca94501b7c83d076b 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=a70c8e432fe801a354b1176bd6ae65ba 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=abdb217b544bbc3776b652298fedc0a7 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=62a0e7066e778d2493dd3e7821a1119e 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=df42e4351b5c28a8315691d7c44a40bd 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/08-cvcrm-webhook-form.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=bacd7fa996108644dcdda9f1d99bcfc0 2500w`})}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Webhook 1 — Originación (obligatorio)`,children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Funcionalidade Reserva`}),`, en la situación que marca la venta / el envío a la pagaduría (la misma del campo `,_jsx(_components.strong,{children:`Vendida`}),`, Paso 2.2). Hace que Play2sell `,_jsx(_components.strong,{children:`origine la venta y emita el boleto`}),`.`]})}),_jsx(Step,{title:`Webhook 2 — Escrituración → libera la transferencia (obligatorio)`,children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Funcionalidade Comissão`}),`, en la situación que indica escriturar/liberar — ej.: “Escriturar” (la misma del campo `,_jsx(_components.strong,{children:`Escriturada (vía comisión)`}),`, Paso 2.2). `,_jsx(_components.strong,{children:`Libera la transferencia`}),` y paga a los beneficiarios vía `,_jsx(_components.strong,{children:`PIX`}),`.`]})}),_jsx(Step,{title:`Webhook 3 — Cancelación / Rescisión (recomendado)`,children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Funcionalidade Comissão`}),`, en la situación de cancelación — ej.: “Cancelada” (la misma del campo `,_jsx(_components.strong,{children:`Cancelada (vía comisión)`}),`, Paso 2.2). `,_jsx(_components.strong,{children:`Cancela`}),` el boleto no pagado o `,_jsx(_components.strong,{children:`reembolsa`}),` el pagado, según el estado.`]})})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`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.`})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Variación por instancia.`}),` Si tu CVCRM registra la escrituración o la cancelación en la `,_jsx(_components.strong,{children:`propia reserva`}),` (y no en la comisión), crea los webhooks 2 y 3 con `,_jsx(_components.strong,{children:`Funcionalidade Reserva`}),` y, en el Paso 2.2, usa los campos `,_jsx(_components.strong,{children:`Escriturada`}),` y `,_jsx(_components.strong,{children:`Distrato`}),` en lugar de los “(vía comisión)”. El comportamiento es el mismo.`]})}),`\n`,_jsx(Check,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Confirma que los 3 webhooks están disparando.`}),` En la lista de webhooks, la columna `,_jsx(_components.strong,{children:`Transações`}),` cuenta cada envío. Si sigue en `,_jsx(_components.strong,{children:`0`}),` después de mover un registro a la situación del gatillo, revisa: la `,_jsx(_components.strong,{children:`Funcionalidade`}),`, la `,_jsx(_components.strong,{children:`situación`}),` (debe coincidir con el Paso 2.2), si el webhook está `,_jsx(_components.strong,{children:`Ativo no painel`}),` y si el `,_jsx(_components.strong,{children:`Endereço`}),` es la URL exacta del Paso 3 (sin espacios).`]})}),`\n`,_jsx(Heading,{level:`3`,id:`4-2-—-registrar-el-tipo-de-comprobante-opcional`,children:`4.2 — Registrar el tipo de comprobante (opcional)`}),`\n`,_jsxs(_components.p,{children:[`Haz esto `,_jsx(_components.strong,{children:`solo si`}),` habilitaste el `,_jsx(_components.strong,{children:`Comprobante de transferencia`}),` en el Paso 2.4. Es una configuración única que crea el `,_jsx(_components.strong,{children:`tipo de archivo`}),` usado para adjuntar el PDF del comprobante a la comisión.`]}),`\n`,_jsxs(_components.p,{children:[`En el gestor del CVCRM, ve a `,_jsx(_components.strong,{children:`Configurações → Tipos de Arquivos de Pagamento Comissão`}),`, haz clic en `,_jsx(_components.strong,{children:`”+ Criar novo Tipo”`}),` y completa:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Qué informar`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Nome`})}),_jsxs(_components.td,{children:[`El nombre del tipo (ej.: `,_jsx(_components.code,{children:`Comprovante_Play2sell`}),`). `,_jsx(_components.strong,{children:`Usa exactamente este nombre`}),` en el campo “Tipo do comprovante” del Paso 2.4.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Ativo no painel`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`Ativo`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Tipo Pessoa`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`Física / Jurídica`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Obrigatório`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`Não`}),` — Play2sell adjunta el comprobante automáticamente.`]})]})]})]}),`\n`,_jsx(Frame,{caption:`CVCRM → Tipos de Arquivos de Pagamento Comissão → Criar novo Tipo`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=ab2c54a028696a8a1fecd263241d4915`,alt:`Formulario de registro del tipo de archivo de pago de comisión en el CVCRM`,\"data-og-width\":`1654`,width:`1654`,\"data-og-height\":`894`,height:`894`,\"data-path\":`images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=94d8dfa9f35e50718f6838e093070907 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=c12bbd28e54ef763ff8c9befa522315a 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=2a436d12b298e39958ef7eb16b29def7 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=0eee60a6a6a2bbd34a640d06c37bb984 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b6db93693cc5166e64850345b8e48bf3 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/11-cvcrm-tipo-comprovante.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=7d5f4ede415bcb00960c033bbedce1bc 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`4-3-—-asegurar-“forma-de-pagamento-=-boleto”`,children:`4.3 — Asegurar “Forma de pagamento = Boleto”`}),`\n`,_jsxs(_components.p,{children:[`Para que el boleto emitido por Play2sell aparezca como el cobrable de la comisión (y se concilie correctamente), los `,_jsx(_components.strong,{children:`pagos de la comisión en el CVCRM`}),` deben usar la `,_jsx(_components.strong,{children:`forma de pago “Boleto”`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Para verificar: en `,_jsx(_components.strong,{children:`Financeiro → Comissões`}),`, abre una comisión y haz clic en el ícono `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`$`})}),` (Pagamentos). En la sección `,_jsx(_components.strong,{children:`Pagamentos`}),`, cada cuota del beneficiario tiene la columna `,_jsx(_components.strong,{children:`“Forma de pagamento”`}),` — debe estar como `,_jsx(_components.strong,{children:`Boleto`}),`.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Si la cuota está con otra forma (ej.: “Transferência bancária”), el boleto que emitimos `,_jsx(_components.strong,{children:`no coincide`}),` con la comisión. Ajusta la forma a `,_jsx(_components.strong,{children:`Boleto`}),` en la regla/condición de comisión de tu CVCRM.`]})}),`\n`,_jsx(Frame,{caption:`Comissão → Pagamentos: cada cuota con Forma de pagamento = Boleto (situación “Programado” tras la emisión)`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=b10581fd9b164cfb1287d2709d0dde29`,alt:`Pagamentos de la comisión en el CVCRM con Forma de pagamento igual a Boleto`,\"data-og-width\":`1650`,width:`1650`,\"data-og-height\":`1350`,height:`1350`,\"data-path\":`images/integrations/cvcrm/12-cvcrm-forma-boleto.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=280\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=bbf924a65bb7f403c6f4234192b881f6 280w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=560\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=c2b04ac1c95d9b6d25ad8a5af611d866 560w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=840\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=3339f729dd4c0dec26f2cab0e1b229a4 840w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=1100\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=bed1dd2d7daf34ffa846f3ec2ffa8071 1100w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=1650\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=7c1b22cc97e84625fb0812b0433078f8 1650w, https://mintcdn.com/play2sell/UX439KPh_mD83OMk/images/integrations/cvcrm/12-cvcrm-forma-boleto.png?w=2500\u0026fit=max\u0026auto=format\u0026n=UX439KPh_mD83OMk\u0026q=85\u0026s=001ff5138ecf77867f004aaf33c8138e 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`4-4-—-elegir-quién-entra-en-el-boleto-“enviar-para-pagadoria”`,children:`4.4 — Elegir quién entra en el boleto (“Enviar para Pagadoria”)`}),`\n`,_jsxs(_components.p,{children:[`En la regla de comisión del CVCRM, cada comisionado tiene el campo `,_jsx(_components.strong,{children:`Enviar para Pagadoria`}),` (`,_jsx(_components.strong,{children:`Sim`}),` o `,_jsx(_components.strong,{children:`Não`}),`). Es el que decide a quién cobra y paga Play2sell.`]}),`\n`,_jsxs(_components.p,{children:[`Para verificarlo: en `,_jsx(_components.strong,{children:`Financeiro → Configuração de Comissões → Regras da comissão`}),`, abre la línea del comisionado con `,_jsx(_components.strong,{children:`Editar`}),` y mira el campo `,_jsx(_components.strong,{children:`Enviar para Pagadoria`}),`.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Cómo está la regla`}),_jsx(_components.th,{children:`Qué hace Play2sell`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Al menos un comisionado con `,_jsx(_components.strong,{children:`Sim`})]}),_jsxs(_components.td,{children:[`Origina la venta. El boleto de cada vencimiento es la `,_jsx(_components.strong,{children:`suma de las comisiones marcadas con Sim`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Comisionado con `,_jsx(_components.strong,{children:`Não`})]}),_jsxs(_components.td,{children:[`Queda `,_jsx(_components.strong,{children:`fuera del boleto`}),` y `,_jsx(_components.strong,{children:`no recibe`}),` por Play2sell en la escrituración. A ese comisionado lo pagas por fuera.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Todos`}),` con `,_jsx(_components.strong,{children:`Não`})]}),_jsxs(_components.td,{children:[`No se emite ningún boleto. La reserva aparece como `,_jsx(_components.strong,{children:`Nada a cobrar`}),` en el panel — no es un error.`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Ejemplo.`}),` Comisión total de R`,_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mn,{children:`10.000`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mo,{children:`:`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`l`}),_jsx(_components.mi,{children:`p`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`b`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`R`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:` 10.000 con tres comisionados: el primero recibe R`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`0.6944em`}}),_jsx(_components.span,{className:`mord`,children:`10.000`}),_jsx(_components.span,{className:`mord mathnormal`,children:`co`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`esco`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`na`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`os`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`:`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`0.8889em`,verticalAlign:`-0.1944em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0197em`},children:`l`}),_jsx(_components.span,{className:`mord mathnormal`,children:`p`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`im`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`er`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`or`}),_jsx(_components.span,{className:`mord mathnormal`,children:`ec`}),_jsx(_components.span,{className:`mord mathnormal`,children:`ib`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0077em`},children:`R`})]})]})]}),` 5.000 (`,_jsx(_components.strong,{children:`Sim`}),`), el segundo R`,_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mn,{children:`2.000`}),_jsx(_components.mo,{stretchy:`false`,children:`(`}),_jsx(_components.mo,{children:`∗`}),_jsx(_components.mo,{children:`∗`}),_jsx(_components.mi,{children:`N`}),_jsxs(_components.mover,{accent:`true`,children:[_jsx(_components.mi,{children:`a`}),_jsx(_components.mo,{children:`~`})]}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mo,{children:`∗`}),_jsx(_components.mo,{children:`∗`}),_jsx(_components.mo,{stretchy:`false`,children:`)`}),_jsx(_components.mi,{children:`y`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`l`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`R`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:` 2.000 (**Não**) y el tercero R`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1em`,verticalAlign:`-0.25em`}}),_jsx(_components.span,{className:`mord`,children:`2.000`}),_jsx(_components.span,{className:`mopen`,children:`(`}),_jsx(_components.span,{className:`mord`,children:`∗`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}}),_jsx(_components.span,{className:`mbin`,children:`∗`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`0.6833em`}}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.109em`},children:`N`}),_jsx(_components.span,{className:`mord accent`,children:_jsx(_components.span,{className:`vlist-t`,children:_jsx(_components.span,{className:`vlist-r`,children:_jsxs(_components.span,{className:`vlist`,style:{height:`0.6679em`},children:[_jsxs(_components.span,{style:{top:`-3em`},children:[_jsx(_components.span,{className:`pstrut`,style:{height:`3em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`})]}),_jsxs(_components.span,{style:{top:`-3.35em`},children:[_jsx(_components.span,{className:`pstrut`,style:{height:`3em`}}),_jsx(_components.span,{className:`accent-body`,style:{left:`-0.25em`},children:_jsx(_components.span,{className:`mord`,children:`~`})})]})]})})})}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}}),_jsx(_components.span,{className:`mbin`,children:`∗`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1em`,verticalAlign:`-0.25em`}}),_jsx(_components.span,{className:`mord`,children:`∗`}),_jsx(_components.span,{className:`mclose`,children:`)`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`y`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0197em`},children:`l`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`er`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`cer`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0077em`},children:`R`})]})]})]}),` 3.000 (`,_jsx(_components.strong,{children:`Sim`}),`). El boleto del comprador sale por `,_jsx(_components.strong,{children:`R$ 8.000`}),`, y en la escrituración solo reciben el primero y el tercero.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`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 `,_jsx(_components.strong,{children:`Sim`}),` en cada vencimiento.`]})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`¿Cambiaste la opción después de que pasó la reserva?`}),` Editar “Enviar para Pagadoria” en el CVCRM `,_jsx(_components.strong,{children:`no avisa`}),` a Play2sell. Después de ajustarla, usa `,_jsx(_components.strong,{children:`Gerar boleto`}),` en el panel — consulta `,_jsx(_components.strong,{children:`Cómo reprocesar una reserva`}),` en Solución de problemas.`]})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Cuando el mismo comisionado aparece en `,_jsx(_components.strong,{children:`más de una línea`}),` de la regla (por ejemplo, comisión y premio), deja `,_jsx(_components.strong,{children:`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 `,_jsx(_components.strong,{children:`no emite el boleto`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`paso-5-—-probar-y-validar`,children:`Paso 5 — Probar y validar`}),`\n`,_jsx(_components.p,{children:`Antes de operar de verdad, ejecuta una prueba de extremo a extremo con valores bajos.`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Crea una reserva de prueba limpia`,children:_jsxs(_components.p,{children:[`Con comprador (CPF completado), monto válido y `,_jsx(_components.strong,{children:`comisiones sumando 100%`}),` para un corredor.`]})}),_jsx(Step,{title:`Mueve a la situación de venta`,children:_jsxs(_components.p,{children:[`Esto dispara el webhook de originación.\n`,_jsxs(Check,{children:[`La venta aparece en el panel Play2sell y el `,_jsx(_components.strong,{children:`boleto se adjunta a la comisión`}),` en el CVCRM (situación “Programado”).`]})]})}),_jsx(Step,{title:`Paga el boleto vía Pix`,children:_jsxs(_components.p,{children:[`Usa el Pix copia-y-pega (entra al instante).\n`,_jsxs(Check,{children:[`La comisión cambia a `,_jsx(_components.strong,{children:`“Pago”`}),` en el CVCRM.`]})]})}),_jsx(Step,{title:`Escritura la comisión`,children:_jsxs(_components.p,{children:[`Mueve la comisión a la situación `,_jsx(_components.strong,{children:`Escriturar`}),`.\n`,_jsxs(Check,{children:[`La transferencia PIX se paga al beneficiario y el `,_jsx(_components.strong,{children:`comprobante`}),` se adjunta a la comisión (si está configurado en el Paso 2.4).`]})]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`próximos-pasos`,children:`Próximos pasos`}),`\n`,_jsx(_components.p,{children:`Después de validar, la integración ya opera sola. En el día a día:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Cada venta`}),` que entra en la situación de pagaduría genera el boleto y lo refleja en la comisión del CVCRM, sin acción manual.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Acompaña`}),` el estado de las comisiones en `,_jsx(_components.strong,{children:`Financeiro → Comissões`}),` (CVCRM) y de las ventas en el `,_jsx(_components.strong,{children:`panel Play2sell`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Para ajustar`}),` el mapeo de situaciones o las credenciales después, vuelve a `,_jsx(_components.strong,{children:`Integrações → Conectores → CVCRM → Editar configuração`}),`.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`preguntas-frecuentes`,children:`Preguntas frecuentes`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`¿Necesito un programador para configurar?`,id:`necesito-un-programador-para-configurar`,children:_jsx(_components.p,{children:`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.`})}),_jsx(Accordion,{title:`¿Qué webhooks necesita tener el CVCRM?`,id:`que-webhooks-necesita-tener-el-cvcrm`,children:_jsxs(_components.p,{children:[`Tres, todos apuntando a la `,_jsx(_components.strong,{children:`misma URL`}),`: (1) `,_jsx(_components.strong,{children:`Reserva`}),` en la situación de venta → originación; (2) `,_jsx(_components.strong,{children:`Comissão`}),` en la situación “Escriturar” → libera la transferencia; (3) `,_jsx(_components.strong,{children:`Comissão`}),` en la situación de cancelación → reembolso.`]})}),_jsx(Accordion,{title:`¿Cómo se calcula el monto de la comisión?`,id:`como-se-calcula-el-monto-de-la-comision`,children:_jsxs(_components.p,{children:[`El CVCRM muestra la comisión `,_jsx(_components.strong,{children:`bruta`}),`. Play2sell aplica la `,_jsx(_components.strong,{children:`tasa de servicio`}),` (en general 1–3%) y el beneficiario recibe el `,_jsx(_components.strong,{children:`neto`}),` vía PIX. El cálculo usa el `,_jsx(_components.strong,{children:`monto de la comisión`}),`, no el de la venta.`]})}),_jsx(Accordion,{title:`¿La integración funciona con comisión menor que el 100% de la venta?`,id:`la-integracion-funciona-con-comision-menor-que-el-100-de-la-venta`,children:_jsxs(_components.p,{children:[`Sí. El boleto y el split se calculan sobre el `,_jsx(_components.strong,{children:`monto de la comisión`}),`, así que cualquier porcentaje funciona.`]})}),_jsx(Accordion,{title:`¿En cuánto tiempo recibe el corredor?`,id:`en-cuanto-tiempo-recibe-el-corredor`,children:_jsxs(_components.p,{children:[`Después de que la comisión sea `,_jsx(_components.strong,{children:`escriturada`}),` en el CVCRM, la transferencia vía `,_jsx(_components.strong,{children:`PIX`}),` se procesa en segundos y cae en la cuenta del beneficiario.`]})}),_jsx(Accordion,{title:`¿El comprobante de transferencia es obligatorio?`,id:`el-comprobante-de-transferencia-es-obligatorio`,children:_jsxs(_components.p,{children:[`No, es `,_jsx(_components.strong,{children:`opcional`}),`. Sin él, la transferencia se paga normalmente; solo no ocurre el adjunto del PDF en la comisión del CVCRM.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`solución-de-problemas`,children:`Solución de problemas`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Ningún evento llega a Play2sell`,id:`ningun-evento-llega-a-play2sell`,children:_jsxs(_components.p,{children:[`Verifica en el CVCRM: ¿el webhook está `,_jsx(_components.strong,{children:`Ativo`}),`? ¿La `,_jsx(_components.strong,{children:`Funcionalidade`}),` (Reserva/Comissão) y la `,_jsx(_components.strong,{children:`situación`}),` del gatillo coinciden con lo que mapeaste en el panel? ¿El `,_jsx(_components.strong,{children:`Endereço`}),` es la URL exacta copiada en el Paso 3 (sin espacios/saltos)?`]})}),_jsx(Accordion,{title:`El boleto no apareció en la comisión`,id:`el-boleto-no-aparecio-en-la-comision`,children:_jsxs(_components.p,{children:[`Confirma que la `,_jsx(_components.strong,{children:`forma de pago`}),` de la comisión es `,_jsx(_components.strong,{children:`Boleto`}),` (Paso 4.3) y que la situación de salida `,_jsx(_components.strong,{children:`“Comissão com boleto”`}),` está completada (ej.: `,_jsx(_components.code,{children:`Programado`}),`). Después de ajustar la configuración, usa `,_jsx(_components.strong,{children:`Gerar boleto`}),` en el panel (consulta `,_jsx(_components.strong,{children:`Cómo reprocesar una reserva`}),`, abajo).`]})}),_jsx(Accordion,{title:`La reserva quedó como \"Nada a cobrar\"`,id:`la-reserva-quedo-como-nada-a-cobrar`,children:_jsxs(_components.p,{children:[`Todos los comisionados de la regla estaban con `,_jsx(_components.strong,{children:`Enviar para Pagadoria = Não`}),` cuando llegó la reserva, así que no había nada que cobrar. Si había que cobrar, cambia a `,_jsx(_components.strong,{children:`Sim`}),` los comisionados correctos (Paso 4.4) y usa `,_jsx(_components.strong,{children:`Gerar boleto`}),` en el panel.`]})}),_jsxs(Accordion,{title:`Cómo reprocesar una reserva`,id:`como-reprocesar-una-reserva`,children:[_jsxs(_components.p,{children:[`En el panel de Play2sell, ve a `,_jsx(_components.strong,{children:`Integrações → Geral`}),`, a la tarjeta `,_jsx(_components.strong,{children:`Integração CRM/ERP`}),`, y abre `,_jsx(_components.strong,{children:`Eventos recentes`}),`. En las filas de `,_jsx(_components.strong,{children:`reserva`}),` con estado `,_jsx(_components.strong,{children:`Falha`}),` o `,_jsx(_components.strong,{children:`Nada a cobrar`}),` aparece la acción `,_jsx(_components.strong,{children:`Gerar boleto`}),`.`]}),_jsxs(_components.p,{children:[`Al confirmar, Play2sell lee la reserva en el CVCRM `,_jsx(_components.strong,{children:`como está ahora`}),` y emite el boleto con las comisiones marcadas con `,_jsx(_components.strong,{children:`Sim`}),` — aunque la reserva ya haya salido de la situación que genera el boleto. Si la reserva está en situación de `,_jsx(_components.strong,{children:`distrato`}),`, vale el distrato. La acción aparece para quien tiene permiso de `,_jsx(_components.strong,{children:`gestionar pagos`}),`.`]})]}),_jsx(Accordion,{title:`Un beneficiario no fue encontrado / la transferencia no salió`,id:`un-beneficiario-no-fue-encontrado-la-transferencia-no-salio`,children:_jsxs(_components.p,{children:[`La identidad es por `,_jsx(_components.strong,{children:`CPF/CNPJ`}),`, nunca por correo electrónico. Asegúrate de que el documento del beneficiario esté completado y correcto en el CVCRM.`]})}),_jsx(Accordion,{title:`El estado pago no se reflejó al instante`,id:`el-estado-pago-no-se-reflejo-al-instante`,children:_jsx(_components.p,{children:`Las confirmaciones de pago y los write-backs pueden tomar algunos instantes. Si persiste, habla con el soporte.`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`referencia`,children:`Referencia`}),`\n`,_jsx(Heading,{level:`3`,id:`ciclo-de-vida-de-extremo-a-extremo`,children:`Ciclo de vida de extremo a extremo`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Etapa`}),_jsx(_components.th,{children:`Evento en el CVCRM`}),_jsx(_components.th,{children:`Acción de Play2sell`}),_jsx(_components.th,{children:`Qué ves`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`1. Originación`})}),_jsx(_components.td,{children:`Reserva → situación de venta`}),_jsxs(_components.td,{children:[`Crea la venta + split y emite el `,_jsx(_components.strong,{children:`boleto (con Pix)`})]}),_jsx(_components.td,{children:`Venta en el panel; boleto generado`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`2. Boleto en la comisión`})}),_jsx(_components.td,{children:`— (write-back)`}),_jsx(_components.td,{children:`Adjunta el boleto a la comisión`}),_jsxs(_components.td,{children:[`La comisión queda `,_jsx(_components.strong,{children:`Programado`}),`; columnas Boleto/ID Pagaduría completadas`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`3. Pago / conciliación`})}),_jsx(_components.td,{children:`El comprador paga el boleto`}),_jsx(_components.td,{children:`Confirma el pago e informa al CVCRM`}),_jsxs(_components.td,{children:[`La comisión queda `,_jsx(_components.strong,{children:`Pago`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`4. Escrituración`})}),_jsxs(_components.td,{children:[`Comissão → situación `,_jsx(_components.strong,{children:`Escriturar`})]}),_jsx(_components.td,{children:`Libera la transferencia`}),_jsx(_components.td,{children:`Protocolo liberado`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`5. Transferencia`})}),_jsx(_components.td,{children:`—`}),_jsxs(_components.td,{children:[`Paga al beneficiario vía `,_jsx(_components.strong,{children:`PIX`})]}),_jsx(_components.td,{children:`Transferencia concluida (neto)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`6. Comprobante`})}),_jsx(_components.td,{children:`— (write-back)`}),_jsx(_components.td,{children:`Adjunta el comprobante a la comisión`}),_jsx(_components.td,{children:`PDF en “Documentos do pagamento da Comissão”`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Rescisión`})}),_jsx(_components.td,{children:`Reserva/Comissão → cancelación`}),_jsx(_components.td,{children:`Reembolsa según el estado`}),_jsx(_components.td,{children:`Operación reembolsada`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`contrato-de-error`,children:`Contrato de error`}),`\n`,_jsxs(_components.p,{children:[`Las respuestas de error siguen el formato `,_jsx(_components.code,{children:`{ code, message, hint? }`}),`:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`4xx — rechazo:`}),` algo está incorrecto (ej.: situación no mapeada). `,_jsx(_components.strong,{children:`Corrige e intenta de nuevo.`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`5xx — error transitorio:`}),` falla temporal. Se `,_jsx(_components.strong,{children:`reprocesa automáticamente`}),`.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`apéndice-técnico`,children:`Apéndice técnico`}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Esta sección es para equipos técnicos. La configuración anterior no exige nada de aquí.`})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Familias de API del CVCRM`})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Familia`}),_jsx(_components.th,{children:`Uso`}),_jsx(_components.th,{children:`Observación`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`v1`}),` (`,_jsx(_components.code,{children:`/api/v1/\u003cmodule>/*`}),`)`]}),_jsx(_components.td,{children:`Actual — usada por la integración`}),_jsxs(_components.td,{children:[`Auth por headers `,_jsx(_components.code,{children:`email`}),` + `,_jsx(_components.code,{children:`token`}),`; 200 req/min`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`CVIO`}),` (`,_jsx(_components.code,{children:`/api/cvio/*`}),`)`]}),_jsx(_components.td,{children:`Legado`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`En depreciación`}),` — el CVCRM está estandarizando hacia v1`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`CVDW`}),` (`,_jsx(_components.code,{children:`/api/v1/cvdw/*`}),`)`]}),_jsx(_components.td,{children:`BI / data warehouse`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Contrato pagado aparte`}),`; 20 req/min; retorna 403 si no se contrata`]})]})]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Sincronización e idempotencia`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Webhook liviano → pull-back:`}),` el webhook lleva solo un id; Play2sell busca el registro completo vía `,_jsx(_components.code,{children:`GET`}),` autenticado antes de actuar.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Idempotencia:`}),` cada contrato mapea a una clave estable derivada del id de la reserva (`,_jsx(_components.code,{children:`cvcrm:{idreserva}`}),`); la reentrega nunca duplica la venta.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Orden:`}),` si la escrituración llega antes de que la originación concluya, se pospone y se reprocesa.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Atenciones (gotchas)`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`El CVCRM puede retornar `,_jsxs(_components.strong,{children:[`HTTP 200 con `,_jsx(_components.code,{children:`codigo:404`}),` en el cuerpo`]}),` para rutas inexistentes — siempre verifica el campo `,_jsx(_components.code,{children:`codigo`}),`, no solo el estado HTTP.`]}),`\n`,_jsxs(_components.li,{children:[`Los filtros de fecha en algunos endpoints son `,_jsx(_components.strong,{children:`ignorados`}),` — acota del lado del cliente.`]}),`\n`,_jsxs(_components.li,{children:[`Las fechas en el GET de cuotas usan `,_jsx(_components.strong,{children:`DD/MM/YYYY`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Existen `,_jsx(_components.strong,{children:`dos workflows de situación distintos`}),` — el de la `,_jsx(_components.strong,{children:`comisión`}),` y el del `,_jsx(_components.strong,{children:`pago de la comisión`}),` — con ids que pueden colisionar. Por eso el write-back de situación usa el `,_jsx(_components.strong,{children:`nombre`}),` (“Programado”/“Pago”), no el id.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`soporte`,children:`Soporte`}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`¿Necesitas ayuda para mapear las situaciones de tu instancia? Habla con el soporte en `,_jsx(_components.strong,{children:_jsx(_components.a,{href:`mailto:suporte@play2sell.com`,children:`suporte@play2sell.com`})}),` con tu `,_jsx(_components.strong,{children:`dominio`}),` y la lista de situaciones que usas para vendida / escriturar / rescisión.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Integración CVCRM — Pagaduría de Comisiones","description":"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.","icon":"building","href":"/es/api/integrations/cvcrm"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Qué vas a configurar","slug":"qué-vas-a-configurar","depth":2,"children":[]},{"title":"¿Cómo funciona la integración?","slug":"¿cómo-funciona-la-integración","depth":2,"children":[]},{"title":"Paso 1 — Obtener las credenciales en el CVCRM (correo + token)","slug":"paso-1-—-obtener-las-credenciales-en-el-cvcrm-correo-+-token","depth":2,"children":[]},{"title":"Paso 2 — Conectar en el panel Play2sell","slug":"paso-2-—-conectar-en-el-panel-play2sell","depth":2,"children":[{"title":"2.1 — Credenciales","slug":"2-1-—-credenciales","depth":3,"children":[]},{"title":"2.2 — Mapeo de situaciones","slug":"2-2-—-mapeo-de-situaciones","depth":3,"children":[]},{"title":"2.3 — Situación de salida (write-back)","slug":"2-3-—-situación-de-salida-write-back","depth":3,"children":[]},{"title":"2.4 — Comprobante de transferencia (opcional)","slug":"2-4-—-comprobante-de-transferencia-opcional","depth":3,"children":[]},{"title":"2.5 — Mapeo de roles (opcional)","slug":"2-5-—-mapeo-de-roles-opcional","depth":3,"children":[]}]},{"title":"Paso 3 — Copiar la URL de webhook","slug":"paso-3-—-copiar-la-url-de-webhook","depth":2,"children":[]},{"title":"Paso 4 — Configurar el CVCRM","slug":"paso-4-—-configurar-el-cvcrm","depth":2,"children":[{"title":"4.1 — Crear los 3 webhooks","slug":"4-1-—-crear-los-3-webhooks","depth":3,"children":[]},{"title":"4.2 — Registrar el tipo de comprobante (opcional)","slug":"4-2-—-registrar-el-tipo-de-comprobante-opcional","depth":3,"children":[]},{"title":"4.3 — Asegurar “Forma de pagamento = Boleto”","slug":"4-3-—-asegurar-“forma-de-pagamento-=-boleto”","depth":3,"children":[]},{"title":"4.4 — Elegir quién entra en el boleto (“Enviar para Pagadoria”)","slug":"4-4-—-elegir-quién-entra-en-el-boleto-“enviar-para-pagadoria”","depth":3,"children":[]}]},{"title":"Paso 5 — Probar y validar","slug":"paso-5-—-probar-y-validar","depth":2,"children":[]},{"title":"Próximos pasos","slug":"próximos-pasos","depth":2,"children":[]},{"title":"Preguntas frecuentes","slug":"preguntas-frecuentes","depth":2,"children":[]},{"title":"Solución de problemas","slug":"solución-de-problemas","depth":2,"children":[]},{"title":"Referencia","slug":"referencia","depth":2,"children":[{"title":"Ciclo de vida de extremo a extremo","slug":"ciclo-de-vida-de-extremo-a-extremo","depth":3,"children":[]},{"title":"Contrato de error","slug":"contrato-de-error","depth":3,"children":[]},{"title":"Apéndice técnico","slug":"apéndice-técnico","depth":3,"children":[]}]},{"title":"Soporte","slug":"soporte","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"play2sell","siteName":"SalesOS","title":"Integración CVCRM — Pagaduría de Comisiones - SalesOS","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api/integrations/cvcrm","matchLevel":1},"pt":{"href":"/pt/api/integrations/cvcrm","matchLevel":1},"es":{"href":"/es/api/integrations/cvcrm","matchLevel":0}}},"lastModified":"2026-10-05T14:00:50.821Z","originalFileLocation":"es/api/integrations/cvcrm.mdx","locale":"es"},"headHtml":"\u003cmeta data-mint-head name=\"description\" content=\"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.\">\u003cmeta data-mint-head name=\"application-name\" content=\"SalesOS\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Integración CVCRM — Pagaduría de Comisiones - SalesOS\">\u003cmeta data-mint-head property=\"og:description\" content=\"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.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"SalesOS\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.play2sell.com/es/api/integrations/cvcrm\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Integración CVCRM — Pagaduría de Comisiones - SalesOS\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"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.\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/play2sell/XDx17pbFw45Iann7/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"SalesOS\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#e20c18\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.play2sell.com/es/api/integrations/cvcrm\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/es/api/integrations/cvcrm.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.play2sell.com/es/api/integrations/cvcrm\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.play2sell.com/api/integrations/cvcrm\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.play2sell.com/pt/api/integrations/cvcrm\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.play2sell.com/api/integrations/cvcrm\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.play2sell.com/#organization\",\"name\":\"SalesOS\",\"url\":\"https://docs.play2sell.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/play2sell/FiU6GxxU6y37uxdh/logo/light.png?fit=max\u0026auto=format\u0026n=FiU6GxxU6y37uxdh\u0026q=85\u0026s=2be3dc625b663625442ce45235218008\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.play2sell.com#website\",\"name\":\"SalesOS\",\"url\":\"https://docs.play2sell.com\",\"publisher\":{\"@id\":\"https://docs.play2sell.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.play2sell.com/es/api/integrations/cvcrm#webpage\",\"url\":\"https://docs.play2sell.com/es/api/integrations/cvcrm\",\"name\":\"Integración CVCRM — Pagaduría de Comisiones\",\"description\":\"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.\",\"dateModified\":\"2026-10-05T14:00:50.821Z\",\"isPartOf\":{\"@id\":\"https://docs.play2sell.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.play2sell.com/es/api/integrations/cvcrm#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.play2sell.com/es/api/integrations/cvcrm#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Integraciones\",\"item\":\"https://docs.play2sell.com/es/api/integrations/api-keys\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integración CVCRM — Pagaduría de Comisiones\",\"item\":\"https://docs.play2sell.com/es/api/integrations/cvcrm\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.play2sell.com/es/api/integrations/cvcrm#article\",\"headline\":\"Integración CVCRM — Pagaduría de Comisiones\",\"name\":\"Integración CVCRM — Pagaduría de Comisiones\",\"description\":\"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.\",\"url\":\"https://docs.play2sell.com/es/api/integrations/cvcrm\",\"mainEntityOfPage\":{\"@id\":\"https://docs.play2sell.com/es/api/integrations/cvcrm#webpage\"},\"dateModified\":\"2026-10-05T14:00:50.821Z\",\"publisher\":{\"@id\":\"https://docs.play2sell.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.play2sell.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"SalesOS\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"SalesOS","nav":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://play2sell.com"}]},"languages":[{"language":"en","pages":[{"title":"en","href":"/api/integrations/cvcrm"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/api/integrations/cvcrm"}]},{"language":"es","tabs":[{"tab":"Guía del Usuario","pages":[{"title":"Guía del Usuario","href":"/es"}]},{"tab":"Administración","pages":[{"title":"Administración","href":"/es/admin/initial-setup"}]},{"tab":"API e Integraciones","groups":[{"group":"Descripción General","pages":[{"title":"Autenticación","icon":"key","href":"/es/api/authentication"},{"title":"Convenciones de la API","icon":"ruler","href":"/es/api/conventions"}]},{"group":"Integraciones","pages":[{"title":"API Keys","icon":"key","href":"/es/api/integrations/api-keys"},{"title":"Integracion Activities","icon":"plug","href":"/es/api/integrations/activities"},{"title":"API de Check-in","icon":"location-dot","href":"/es/api/integrations/checkin"},{"title":"API de Misiones","icon":"bullseye-arrow","href":"/es/api/integrations/missions"},{"title":"API de Campañas","icon":"gift","href":"/es/api/integrations/campaigns"},{"title":"SSO (Single Sign-On)","icon":"key","href":"/es/api/integrations/sso"},{"title":"API de Progreso del Jugador","icon":"trophy","href":"/es/api/integrations/progress"},{"title":"API de Ganancias","icon":"wallet","href":"/es/api/integrations/earnings"},{"title":"Integración Payments","icon":"credit-card","href":"/es/api/integrations/payments"},{"title":"Webhooks (Salientes)","description":"Recibe eventos del SalesOS en tiempo real en tu endpoint HTTPS — envelope, verificación de firma, catálogo de eventos, reintentos e idempotencia.","icon":"webhook","href":"/es/api/integrations/webhooks"},{"title":"Integración CVCRM — Pagaduría de Comisiones","icon":"building","href":"/es/api/integrations/cvcrm"},{"title":"Integración SIGAVI 360 — Misiones, Leads y Pagaduría","description":"Cómo conectar tu SIGAVI 360 a Play2sell para que las actividades de los corredores cuenten en las misiones, las fichas de atención se conviertan en leads y las comisiones de cada propuesta se cobren y transfieran por la Pagaduría — usuario de integración, etapas del embudo, qué se lee, reglas del pago de comisiones, FAQ y solución de problemas.","icon":"building","href":"/es/api/integrations/sigavi"}]}]},{"tab":"FAQ y Soporte","pages":[{"title":"FAQ y Soporte","href":"/es/support/faq/general"}]}]}]},"title":"Integración CVCRM — Pagaduría de Comisiones - SalesOS","buildId":"dpl_5UGCeHaPhSKbAExsKaHeR8dW3HyG","deploymentId":"dpl_5UGCeHaPhSKbAExsKaHeR8dW3HyG","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DYrD4gCJ.js","DynamicMarkdown-BTVnG8lc.js","zoom-image-lightbox-DgtuyVql.js","PlusIcon-BCNs_Q8j.js","lightbox-handle-r17bVUz3.js"]}