Um problema com o qual tenho lutado é como permitir que o cliente altere as informações do seu cartão de crédito. Na última vez que isso aconteceu, acabei cancelando a assinatura deles e pedi que fizessem uma nova. Finalmente, descobri como gerar um link para uma página do Stripe que permitirá que eles vejam o histórico de faturas, adicionem um método de pagamento e atualizem suas informações de faturamento (endereço de e-mail).
Gostaria de enviar um PR para o plugin de assinaturas para adicionar este link, mas não tenho as poucas horas que isso levaria neste momento, então aqui está como fazer manualmente em Rails:
Olá, você pode detalhar o código que você forneceu e como usá-lo?
Também preciso que meus usuários possam acessar este portal do Stripe porque legalmente preciso fornecer a eles uma fatura que não é enviada quando uma assinatura é criada via API:
A solução alternativa que encontrei foi usar o Custom Hamburger Menu Links Theme Component e adicionar um link para o portal do Stripe. Funciona, mas não é ideal para os usuários que precisam acessá-lo por meio de um link por e-mail.
Você precisaria colocá-lo em um plugin que gerasse o link e o adicionasse ao serializador e, em seguida, colocasse esse link em algum lugar na UX. Não é algo para o qual eu tenha tido tempo. Isso funcionaria a partir do console do Rails, mas isso não lhe adianta muito.
Parece que o código ainda funciona.
A coisa fácil a fazer seria fazer um fork do plugin e adicionar o código. A coisa mais difícil, mas muito melhor, seria adicionar o código e os testes de forma que ele fosse aceito como um PR. Se você tiver um orçamento, pode postar em Marketplace ou entrar em contato comigo diretamente. Um meio-termo seria criar um plugin que, digamos, adicionasse o link ao serializador para que você pudesse então colocá-lo em algum lugar na UX, como no menu hambúrguer, como você está fazendo agora.
Obrigado pela sua resposta e explicação. Infelizmente, não tenho experiência com desenvolvimento de plugins e só consigo fazer algumas modificações leves em html/css, talvez alguns comandos no console do rails, se necessário.
Acho que vou ficar com a minha solução alternativa por enquanto. Também adicionarei o link para o Stripe Portal sempre que possível, quando o usuário assinar (Admin > Personalizar > Texto).
Esse link tem tempo limitado, então acho que a maneira de fazer isso seria adicionar uma rota que faça um redirecionamento. Isso evitaria a complicação de saber quando obter um novo link e de fazer várias chamadas desnecessárias para obter um link que nunca será clicado.
Ainda é um plugin, mas acho que seria um PR muito mais simples.
Ah, acho que não estamos falando do mesmo link… Você provavelmente está falando do link gerado a partir do código que você forneceu. Eu estou falando do link do portal do cliente sem código que posso ativar no painel do Stripe. Acredito que este seja válido enquanto o portal estiver ativado.
Sim. Se bem me lembro, meu código apenas os impede de inserir seu endereço de e-mail e obter o link para si mesmos por e-mail (e saber qual endereço de e-mail eles usaram). Se isso for bom o suficiente, então você está pronto.
De fato! E isso é uma grande ajuda (e é uma grande parte do motivo pelo qual não fiz nada sobre o link mágico). No entanto, isso não resolve o problema de obter acesso ao seu histórico de pagamentos e links para faturas.