Configurar o site público de links de pagamento
Um link de pagamento abre uma página que qualquer pessoa alcança sem login. No Salesforce, isso é um site público do Experience Cloud (ou páginas públicas em um site existente) cujo usuário convidado tem permissão para executar as telas do REDA Pay e para ler exatamente a ordem por trás do link, e nada mais. Este artigo cria esse site, dá ao usuário convidado o que ele precisa e o liga à sua conta de processamento.
- O REDA Pay está configurado e a conta de processamento tem a sua marca: a página pública mostra essa marca.
- Você tem o REDA Pay - Admin User e as permissões do Salesforce para criar sites do Experience Cloud, editar perfis e criar regras de compartilhamento.
- Você sabe se vai reutilizar um site público existente (por exemplo, um site de fornecedores ou de candidatos) ou criar um.
Parte 1: o site e as suas páginas
- Configuração → Experiências digitais → Todos os sites (Digital Experiences → All Sites) e crie um site novo (se for o caso). Escolha um modelo como Build Your Own, dê um nome, um caminho como
paye crie-o. Ou abra o seu site público existente. - No Experience Builder, crie quatro páginas, como na configuração do portal, mas em um site ou em páginas que os convidados possam ver:
| Página | Componente | Configurações |
|---|---|---|
| Entrada do link (por exemplo Process Order Link) | NewPayOrder | Is Portal ativado; Portal Payment Page, Portal Success Page, Portal Error Page = os nomes de API das três seguintes; Portal Return URL = o seu site ou a página inicial do site |
| Tela de pagamento | NewPayOrderRequest | nenhuma |
| Página de sucesso | NewPayOrderResult | Is Success ativado |
| Página de erro | NewPayOrderResult | Is Success desativado |
- Se fornecedores vão informar dados bancários por um link (consulte Solicitar os dados bancários de um fornecedor), acrescente o mesmo conjunto com NewPayMethod (e Portal Method Input Page), NewPayMethodRequest e NewPayMethodResult.
- Torne as páginas públicas: nas propriedades de cada página, defina o acesso à página como Público (Public) e, em Configurações → Geral → Acesso público (Settings → General → Public Access), selecione Guest users can see and interact with the site without logging in (os usuários convidados podem ver o site e interagir com ele sem fazer login).
- Publique o site.
Anote o endereço completo da página de entrada do link, por exemplo https://yourcompany.my.site.com/pay/s/process-order-link.
A página de entrada leva toda a configuração; a página de solicitação só exibe a tela.
Parte 2: o usuário convidado
Todo site público tem um usuário convidado e um perfil de convidado; um pagador anônimo é esse usuário enquanto está na sua página. Dê a ele o acesso ao REDA Pay: atribua o REDA Pay - Public Site User ao usuário convidado, ou coloque as mesmas configurações no perfil de convidado. Ele concede leitura em Pay Orders, Pay Customers, Pay Profiles, Processing Accounts e Fee Setups, criação em Pay Methods e Pay Transactions, as classes do Apex por trás das telas e acesso de leitura aos tipos de metadados personalizados REDA Pay Process Config e REDA Pay Setup. Cada etapa, com as alternativas, está em Acesso de convidados aos links de pagamento: permissões e compartilhamento.
Parte 3: regras de compartilhamento para convidados
Um conjunto de permissões diz que tipo de registro o convidado pode ler; as regras de compartilhamento dizem quais registros. O convidado só deve ver uma ordem enquanto o link dela está ativo, e um cliente só enquanto ele tem um link ativo. Crie estas regras em Configuração → Configurações de compartilhamento, escolhendo Acesso do usuário convidado com base em critérios e o usuário convidado do site como destino, todas Somente leitura:
| Objeto | Critérios | Por quê |
|---|---|---|
| Pay Order | Has Active Link igual a True | O pagador consegue abrir a ordem por trás de um link ativo, e nada mais |
| Pay Customer | Order Link Expiration Date Time diferente de em branco | O pagador consegue ler o cliente de um link ativo |
| Pay Profile | Is Active igual a True | Necessário para exibir a tela |
| Processing Account | Is Active igual a True | Necessário para exibir a tela e a marca; os Fee Setups seguem a conta |
O REDA Pay desmarca o Has Active Link quando a ordem é paga ou revogada, e cerca de um minuto depois que o link expira, então a ordem some da visão do convidado sozinha.
O convidado só vê uma ordem enquanto o link dela está ativo.
Parte 4: ligar a conta de processamento
Em cada Processing Account que vai emitir links:
- Link Site Public URL: o endereço completo da página de entrada do link, da parte 1.
- Link Expiration (Minutes): por quanto tempo os links duram, contado a partir da criação. Preencha-o: um link criado enquanto ele está em branco nunca fica ativo.
- Opcionalmente, Payment Session Duration (Minutes) para convidados, e Enforce Geolocation para Link e Guest, se você quiser registrar a localização dos pagadores.
Consulte Configurar uma conta de processamento.
Parte 5: testar
- Crie um link de teste para um cliente de demonstração: Criar e enviar um link de pagamento.
- Abra o Link URL em uma janela privada do navegador. A tela de pagamento com a sua marca aparece, com o valor bloqueado e as observações exibidas. Teste também na largura de um celular.
- Cancele sem pagar e depois revogue a ordem de teste.
- Abra o mesmo endereço com um caractere a menos: "Invalid request: Bad request Parameters." prova que um convidado não alcança nada além de um link ativo.
Erros comuns a evitar
| Erro | O que o pagador vê | Solução |
|---|---|---|
| Páginas não públicas | Uma página de login | Defina o acesso à página como Público e permita o acesso de convidados |
| Usuário convidado sem o conjunto de permissões | Um erro de acesso na página | Atribua o REDA Pay - Public Site User ao usuário convidado |
| Regras de compartilhamento ausentes | "Invalid request: Bad request Parameters." em todos os links | Crie as quatro regras |
| Link Site Public URL apontando para a página de solicitação | A tela não consegue iniciar | Aponte para a página de entrada (a que tem o NewPayOrder) |
| Link Expiration (Minutes) em branco | "Invalid request" imediatamente | Preencha-o |
| Site não publicado depois das alterações | A página antiga | Publique |
Perguntas frequentes
Sim: páginas com login para os clientes e páginas públicas para os links podem ficar em um só site. Mantenha os componentes em páginas separadas, porque o fluxo do convidado e o fluxo do usuário conectado precisam de configurações diferentes.
O convidado só pode ler as ordens com link ativo e os clientes por trás delas, pode criar um método e uma transação para essa ordem, e nada mais. O identificador da ordem no endereço é criptografado.
Cada site tem o seu; atribua o conjunto de permissões e as regras de compartilhamento ao usuário convidado do site que hospeda as páginas.