O modulo está preparado para identificar quando o campo de identificação do cliente (sender) for um CPF ou CNPJ.
Nas versões antigas, o PagSeguro obrigava informar um CPF do titular do cartão, mesmo que seja um cartão de pessoa jurídica. A pessoa que está em posse do cartão é uma pessoa física, e não era possível omitir este campo ou enviar um CNPJ em seu lugar.
Se você usa o mesmo campo para pedir o CPF ou CNPJ do seu cliente, recomendamos fortemente que configure o módulo para "Solicitar o CPF junto com os dados de pagamento", para evitar que o módulo use o CNPJ do cliente na cobrança com cartão de crédito ao invés do CPF do portador.
Na nova geração das integrações e nas novas apis
Nas versões novas da API do PagBank, e a partir da versão 4.x de nossas integrações, passou a ser possível informar o CPF ou CNPJ do titular do cartão, não mais sendo necessário o CPF nesses casos.
Comentários
4 comentários
Ricardo, na minha loja, mesmo configurando da forma que sugere dá erro.
Está acusando cartão inválido:
Cartão Inválido
Verifique os dados do cartão digitado.
Ricardo, resolvi!
Era problema no TOKEN.
Fiz o teste http://sualoja.com.br/pseguro/ajax/getSessionId.
Deu que inválido, daí recoloquei o token e passou a venda.
Só fica um detalhe a respeito disso...
Qualquer modificação que eu faça nas formas de pagamento, o token se perde. Não fica gravado. O campo do token parece mudar para poucos caracteres e daí ao salvar, vai acaba salvando errado. Mesmo que alteração seja nas outras formas de pagamento. Me parece ser meu navegador tentando autopreencher o campo com algum valor de formulário armazenado, quando não deveria. Isso deve ter relação com o "input name" usado.
Para efeito de referência, a solução adotada está nesse link:
https://pagsegurotransparente.zendesk.com/hc/pt-br/articles/203585169-Como-sei-se-minha-conta-tem-suporte-ou-est%C3%A1-habilitada-pra-usar-o-checkout-transparente-
Complementando...
Realmente o campo do fomulário está com um valor padrão que desconfigura todas as vezes em que se salva a tela de Formas de Pagamento:
Está assim:
<input id="payment_pagseguro_token" name="groups[pagseguro][fields][token][value]" value="******" class=" input-text" type="password">
Ao submeter (salvar a tela) o asteriscos são enviados no lugar do token.
Deveria resgatar o valor do token no banco de dados.
Por favor, entre para comentar.