Cadastros de cartão
Concluir cadastro de cartão
Confirma o cadastro pelo backend ou navegador e salva um payment_method reutilizável.
Confirma um cadastro de cartão (
setup_intent). Existe uma única operação
para backend e navegador; o que muda é a credencial usada:
Em sucesso, a Chargefy cria ou reutiliza um
payment_method, liga-o ao
customer e retorna status: "succeeded". Nenhuma cobrança ou reserva de
limite acontece nessa operação. Salvar o cartão não o torna automaticamente o
método padrão do customer.
Cada confirmação válida cria um setup_attempt.
O campo latest_attempt aponta para a tentativa mais recente, inclusive quando
ela falha.
Navegador: fluxo recomendado
Use a chavepk_live_* ou pk_test_* exibida em Developers → Chaves de API.
A chave publicável pode ficar no JavaScript; o client_secret limita a ação a
um único cadastro.
confirmSetup() tokeniza o cartão no navegador e confirma o cadastro
internamente. O número do cartão nunca passa pelo seu backend nem pela
Chargefy; sua integração só recebe o payment_method.
Backend
Use a chave secreta quando o cartão já virou umpayment_method. Cartão novo
só entra pelo navegador.
Parâmetros
string
obrigatório
ID do cadastro (
seti_*).string
Obrigatório com chave publicável. Precisa pertencer ao
id, organização e
ambiente da URL. Não é necessário com chave secreta.string
Cartão já salvo (
pm_*) que pertence ao mesmo customer. Disponível somente no
backend.string
Customer que será dono do cartão. Só pode ser enviado pelo backend e é
obrigatório quando o cadastro ainda não possui customer.
Resposta
Com chave secreta, a resposta usa o objeto completo. Com chave publicável, ela traz somente os campos necessários para a tela: identidade, estado, próximo passo, erro, ambiente, tipos aceitos,usage e payment_method.
Erros e como tratar
Uma falha de cartão devolve o cadastro para
requires_payment_method, preenche
last_setup_error, registra um setup_attempt com status: "failed" e emite
setup.intent.failed.
Se esse cartão também deve virar o padrão, faça essa escolha separadamente com
POST /v1/payment-methods/{id}/attach
depois que o cadastro retornar succeeded.
Limitações atuais
- Hoje apenas
credit_cardé aceito. - O cadastro sempre usa
usage: "off_session"na prática. - O processador atual não apresenta desafio 3DS neste fluxo; por isso
requires_actionenext_actionfazem parte do contrato, mas não são produzidos nas confirmações atuais. - Confirmar um
payment_methodexistente valida propriedade e estado local, mas não consulta o emissor nem reserva limite. - Depois de uma falha, chame
confirmSetup()de novo com os dados corrigidos: a credencial de uso único é gerada outra vez pelo SDK.

