Permitir que los clientes paguen en tu portal
Si tus clientes inician sesión en un sitio de Experience Cloud (un portal de residentes, de propietarios o de clientes), puedes poner dentro la pantalla de pago de REDA Pay. Un cliente con sesión iniciada paga, configura pagos recurrentes y guarda tarjetas y cuentas bancarias, siempre sobre sus propios registros, sin que tu equipo toque un número de tarjeta. Este artículo lo configura.
- Existe un sitio de Experience Cloud con clientes como usuarios (licencias Customer Community o Customer Community Plus) cuyo registro de usuario está vinculado a un contacto.
- REDA Pay está configurado hasta Configurar webhooks, y la marca de la cuenta de procesamiento está lista: el portal la muestra.
- Tienes REDA Pay - Admin User y los permisos de Salesforce para editar el sitio y su configuración de colaboración.
Cómo funciona el flujo del portal
Un cliente del portal nunca elige un registro: REDA Pay toma el contacto (o la cuenta) del usuario que inició sesión como registro principal, busca o crea su Pay Customer y abre la misma pantalla que usa el personal. El flujo pasa por cuatro páginas que creas en Experience Builder:
| Página | Contiene | Para qué |
|---|---|---|
| Entrada de pago (por ejemplo, New Pay Order) | NewPayOrder con Is Portal activado | Identifica al cliente y pregunta el perfil y la cuenta si hace falta |
| Pantalla de pago (por ejemplo, New Pay Order Request) | NewPayOrderRequest | El formulario de tarjeta o banco, el importe y los botones |
| Página de éxito | NewPayOrderResult con Is Success activado | "Your order is successfully processed. Order Reference: …" |
| Página de error | NewPayOrderResult con Is Success desactivado | El error y su motivo |
Las mismas cuatro, con NewPayMethod, NewPayMethodRequest y NewPayMethodResult, permiten que los clientes guarden un método sin pagar.
La página de entrada. Un único perfil activo omite este paso.
La pantalla de pago dentro del portal. Los clientes ven sus propios métodos guardados.
Parte 1: dar acceso a los usuarios del portal
El acceso al portal tiene cuatro partes. Cada una se configura paso a paso, para los dos tipos de licencia del portal, en Acceso al portal: permisos y colaboración para clientes; en resumen:
- Acceso a objetos, clases y metadatos. Asigna REDA Pay - Community User a los usuarios del portal, o da al perfil del portal los mismos ajustes. Concede creación y edición sobre Pay Customers y Pay Methods, lectura sobre Pay Orders, Pay Transactions, Pay Profiles, Processing Accounts y Fee Setups, las dos clases de Apex detrás de las pantallas y acceso de lectura a los tipos de metadatos personalizados REDA Pay Process Config y REDA Pay Setup.
- Conjunto de colaboración. Los usuarios del portal solo ven los registros compartidos con ellos. Un conjunto de colaboración sobre Pay Order, Pay Customer y Pay Method, cada uno con User: Contact asignado al campo Contact del objeto y acceso de lectura/escritura, da a cada cliente sus propios registros: Configuración → Experiencias digitales → Configuración → Conjuntos de colaboración (Digital Experiences → Settings → Sharing Sets).
- Pay Profiles y Processing Accounts. Los clientes deben poder leer los activos. Para las licencias basadas en funciones (Customer Community Plus, Partner), crea dos reglas de colaboración basadas en criterios, Is Active igual a True, compartidas con All Customer Portal Users (todos los usuarios del portal de clientes), de solo lectura. Para las licencias de gran volumen (Customer Community, Customer Community Login), a las que no llegan las reglas de colaboración, define el Acceso externo predeterminado de los dos objetos como Sólo lectura pública. Los Fee Setups siguen automáticamente a su Processing Account.
- Membresía del sitio. El perfil del portal debe ser miembro del sitio.
El conjunto de colaboración es lo que hace que "mis pagos" signifique los pagos del cliente que inició sesión.
Parte 2: crear las páginas
En Experience Builder del sitio:
-
Crea una página estándar en blanco, con un nombre como New Pay Order (anota su nombre de API, que aparece en las propiedades de la página; lo escribirás más abajo). Arrastra NewPayOrder (entre los componentes personalizados) a la página y define:
- Is Portal: marcado.
- Portal Record Identifier: User-Contact (o User-Account si los pagos pertenecen a la empresa del cliente).
- Portal Payment Page: el nombre de API de la página del paso siguiente.
- Portal Success Page, Portal Error Page: los nombres de API de las páginas de resultado.
- Portal Return URL: adónde lleva Cancel; la página de inicio del sitio o tu sitio web.
- Adapta la pantalla a este público: para un portal de residentes, desmarca Allow Pay Method Type - Card si no quieres tarjetas, desmarca Enable Order Link (los enlaces son una herramienta del personal) y mantén Enable Scheduling Order para el pago automático. Consulta Referencia de configuración de componentes.
- Una página nueva con un nombre como New Pay Order Request, con NewPayOrderRequest. Sin ajustes.
- Dos páginas más, Payment Success y Payment Error, cada una con NewPayOrderResult; marca Is Success solo en la primera. Agrega tu propio texto alrededor del componente: un agradecimiento, qué ocurre después, un vínculo a la página de inicio.
- Repite los pasos 1 a 3 con NewPayMethod (definiendo Portal Method Input Page), NewPayMethodRequest y NewPayMethodResult si los clientes deben guardar métodos sin pagar.
- Agrega las páginas de entrada al menú de navegación del sitio (por ejemplo, Make a Payment y Payment Methods).
- Publica el sitio.
Acceso a las páginas: las páginas deben requerir inicio de sesión (el valor predeterminado de una página en un sitio que requiere inicio de sesión). Solo el sitio público de enlaces de pago usa el acceso de invitados; consulta Configurar el sitio público de enlaces de pago.
Parte 3: probar como cliente
Abre el contacto de un cliente de prueba, usa Iniciar sesión en Experience como usuario (Log in to Experience as User) y recorre el flujo: elige un perfil y una cuenta si se piden, mira tus métodos guardados, ingresa un importe, pulsa Pay y cancela el resumen. Luego prueba en una ventana del tamaño de un teléfono: los mosaicos y el panel de pago se apilan y nada se desplaza hacia los lados.
La misma página en un teléfono.
Comprueba como el cliente, no como administrador: un administrador ve registros que un cliente no puede ver, y una regla de colaboración que falta solo se nota con un usuario real del portal.
Ejemplo práctico
El portal de residentes de Meridian Properties: los residentes pagan el alquiler y configuran el pago automático con cuenta bancaria; sin tarjetas ni enlaces.
| Dónde | Ajuste |
|---|---|
| Conjunto de permisos | REDA Pay - Community User para cada residente |
| Conjunto de colaboración | Pay Order, Pay Customer y Pay Method sobre Contact, lectura/escritura |
| Pay Profiles y Processing Accounts | Reglas de colaboración para todos los usuarios del portal de clientes, solo lectura (licencia basada en funciones) |
| NewPayOrder en la página Pay Rent | Is Portal activado; User-Contact; Allow Card desactivado; Enable Order Link desactivado; Portal Payment Page pay_rent_request; páginas de éxito y error definidas; Return URL la página de inicio del portal |
| Navegación | Elementos Pay Rent y Payment Methods |
Errores que debes evitar
| Error | Qué ve el cliente | Solución |
|---|---|---|
| Is Portal desactivado | El flujo se rompe después del primer paso | Márcalo en los dos componentes de entrada |
| Sin conjunto de colaboración | "Bad Request. Parent record not found." o pantallas vacías | Crea el conjunto de colaboración |
| Sin acceso a Pay Profile / Processing Account | "Select Pay Profile" vacío, o sin cuenta | Reglas de colaboración, o acceso externo predeterminado para las licencias de gran volumen |
| Nombres de API de páginas escritos como etiquetas | El flujo no encuentra la página siguiente | Usa los nombres de API |
| Usuario del portal no vinculado a un contacto | No hay registro principal | Los usuarios del portal deben tener un contacto (o una cuenta con User-Account) |
| Probar solo como administrador | Todo funciona para ti, no para los clientes | Inicia sesión como usuario del portal |
Preguntas frecuentes
No. El pago siempre es para el contacto (o la cuenta) del usuario que inició sesión. Usa enlaces de pago para terceros.
Agrega al sitio páginas de registro o listas de Pay Order y Pay Transaction; el conjunto de colaboración les da acceso a los suyos.
No. Limita la página a un perfil con Limit Profile Selection si tienes varios.