Skip to main content

Recomendações para Brasil

Sobre esse guia#

Esta página apresentará alguns recursos para ajudá-lo a fornecer uma melhor experiência de usuário para seus clientes no Brasil. O conteúdo é dividido em três seções principais, abrangendo traduções de campos obrigatórios, validação de campo e sugestões de checkout.

Se você está procurando um guia de integração com parâmetros e exemplos obrigatórios, pode encontrá-lo aqui:

Campos obrigatórios#

Abaixo você encontrará todos os campos obrigatórios, bem como as traduções para os textos de campo e espaço reservado.

Personal information#

CampoTraduçãoPlaceholder
Full Name
payment.name
Nome completo
Email
payment.email
Email
Phone number
payment.phone_number
TelefoneFixo ou Celular
Document
payment.document
CPF ou CPNJ

Informações de crédito e débito#

CampoTraduçãoPlaceholder
Cardholder Name
payment.creditcard.card_name
Nome do titularComo impresso no cartão
Card Number
payment.creditcard.card_number
Número do Cartão
Expiration Date
payment.creditcard.card_due_date
Validade do CartãoMM/AAAA
CVV
payment.creditcard.card_cvv
Código de Segurança (CVV)
Installments
payment.instalments
ParcelamentoSelecione o número de parcelas

Informações do endereço de cobrança#

Esses campos são necessários apenas para transações com cartão de crédito e débito.

CampoTraduçãoPlaceholder
Zipcode
payment.zipcode
CEP
Country
payment.country
PaísSelecione seu país
State
payment.state
EstadoSelecione seu estado
City
payment.city
Cidade
Address
payment.address
EndereçoRua, avenida, etc
Street Number
payment.street_number
Número

Validação#

Abaixo você encontrará como validar cada campo obrigatório, evitando erros do usuário e garantindo o correto processamento do pagamento no Brasil.

Informação pessoal#

Nome do campo e parâmetroValidaçõesMensagens de erro
Email
payment.email
REGEX: ^[a-zA-Z0-9.!#$%&'*+/=?^_{\|}~-]+@[a-zA-Z0-9]\(?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9]\(?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$Empty field:
Este campo é obrigatório

Invalid format:
Este email parece estar incorreto
Telefone
payment.phone_number
10 dígitos
Máscara: XX XXX XXXXX
REGEX: ^[0-9]{5}[0-9]{5}$
Campo vazio:
Este campo é obrigatório

Formato Inválido:
Este telefone parece estar incorreto
CPF
payment.document
CPF: 11 dígitos, apenas números.

Máscara: (99) 99999-9999
Campo vazio:
Este campo é obrigatório

Formato inválido:
Este documento parece estar incorreto

Informação do cartão de crédito#

Nome do campo e parâmetroValidaçõesMensagens de erro
Número do Cartão de Crédito
payment.creditcard.card_number
Máscaras:
  - AMEX: 9999 9999 9999 99999
  - Outras bandeiras: 9999 9999 9999 9999

Expressão Regular:
https://developers.ebanxpagamentos.com/api-reference/ebanx-payment-api/payment-reference/validation-rules
Campo Vazio:
Este campo é obrigatório

Formato inválido:
O número do cartão parece estar incorreto
Expiration Date
payment.creditcard.card_due_date
Mask: 99/9999
REGEX: ^(0[1-9]|1[0-2])\/([0-9]{4})$
Empty field:
Este campo é obrigatório

Invalid format:
A data de validade parece estar incorreta
CVV
payment.creditcard.card_cvv
AMEX: 4 digitos, apenas números
Outras bandeiras: 3 dígitos, apenas números
Campo vazio:
Este campo é obrigatório

Formato Inválido:
O código parece estar incompleto

Informações do endereço de cobrança#

Nome do campo e parâmetroValidaçõesMensagens de erro
CEP
payment.zipcode
8 dígitos, apenas números
Regex simples para validar 8 números sem o traço ( - )
[0-9]{8}
Campo Vazio:
Este campo é obrigatório

Formato inválido:
O CEP parece estar incorreto
Estado
payment.state
[[“Acre”, “AC”],
[“Alagoas”, “AL”],
[“Amapá“, “AP”],
[“Amazonas”, “AM”],
[“Bahia”, “BA”],
[“Ceará“, “CE”],
[“Distrito Federal”, “DF”],
[“Espírito Santo”, “ES”],
[“Goiás”, “GO”],
[“Maranhão”, “MA”],
[“Mato Grosso”, “MT”],
[“Mato Grosso do Sul”, “MS”],
[“Minas Gerais”, “MG”],
[“Pará“, “PA”],
[“Paraíba”, “PB”],
[“Paraná“, “PR”],
[“Pernambuco”, “PE”],
[“Piauí“, “PI”],
[“Rio de Janeiro”, “RJ”],
[“Rio Grande do Norte”, “RN”],
[“Rio Grande do Sul”, “RS”],
[“Rondônia”, “RO”],
[“Roraima”, “RR”],
[“Santa Catarina”, “SC”],
[“São Paulo”, “SP”],
[“Sergipe”, “SE”],
[“Tocantins”, “TO”]]
Campo vazio:

Formato Inválido:

Scripts de validação#

Você pode usar as seguintes funções Javascript para validar alguns dos campos obrigatórios solicitados em seu checkout.

phone_number_validation.js
function validatePhoneNumber(phoneNumber){
const re = /^\([1-9]{2}\) (?:[2-8]|9[1-9])[0-9]{3}\-[0-9]{4}$/;
return re.test(String(phoneNumber));
}
zipcode_validation.js
function validateZipcode(zipcode){
const re = /[0-9]{8}/;
return re.test(String(zipcode));
}
cpf_cnpj_length_validation.js
var options = {
onKeyPress: function (cpf, ev, el, op) {
var masks = [000.000.000-000,00.000.000/0000-00];
mask = (cpf.length > 14) ? masks[1] : masks[0];
el.mask(mask, op);
}
}
$(.cpfOuCnpj’).mask(000.000.000-000, options);
cpf_validation.js
function validateCPF(cpf) {
var number, digits, sum, i, result, equal_digits;
cpf = cpf.replace(/[^\d]+/g,'');
equal_digits = 1;
if (cpf.length != 11)
return false;
for (i = 0; i < cpf.length - 1; i++)
if (cpf.charAt(i) != cpf.charAt(i + 1)){
equal_digits = 0;
break;
}
if(equal_digits == 1)
return false;
number = cpf.substring(0,9);
digits = cpf.substring(9);
sum = 0;
for (i = 10; i > 1; i--)
sum += number.charAt(10 - i) * i;
result = sum % 11 < 2 ? 0 : 11 - sum % 11;
if (result != digits.charAt(0))
return false;
number = cpf.substring(0,10);
sum = 0;
for (i = 11; i > 1; i--)
sum += number.charAt(11 - i) * i;
result = sum % 11 < 2 ? 0 : 11 - sum % 11;
if (result != digits.charAt(1))
return false;
return true;
}
cnpj_validation.js
function validateCNPJ(cnpj) {
var i, equal_digits = 1, limit, numbers, sum, pos, result, digits;
cnpj = cnpj.replace(/[^\d]+/g,'');
if (cnpj.length != 14)
return false;
for (i = 0; i < cnpj.length - 1; i++){
if (cnpj.charAt(i) != cnpj.charAt(i + 1)){
equal_digits = 0;
break;
}
}
if(equal_digits == 1)
return false;
limit = cnpj.length - 2
numbers = cnpj.substring(0,limit);
digits = cnpj.substring(limit);
sum = 0;
pos = limit - 7;
for (i = limit; i >= 1; i--) {
sum += numbers.charAt(limit - i) * pos--;
if (pos < 2)
pos = 9;
}
result = sum % 11 < 2 ? 0 : 11 - sum % 11;
if (result != digits.charAt(0))
return false;
limit = limit + 1;
numbers = cnpj.substring(0,limit);
sum = 0;
pos = limit - 7;
for (i = limit; i >= 1; i--) {
sum += numbers.charAt(limit - i) * pos--;
if (pos < 2)
pos = 9;
}
result = sum % 11 < 2 ? 0 : 11 - sum % 11;
if (result != digits.charAt(1))
return false;
return true;
}

Recomendações de checkout#

Abaixo, você encontrará exemplos de código onde poderá visualizar e testar a experiência de checkout. Além disso, você encontrará recomendações para oferecer uma experiência melhor aos seus clientes.

Informação pessoal#

Live Editor
Result
SyntaxError: Unexpected token (1:8)
1 : return ()
            ^
Instruções
  • Esses campos são obrigatórios para qualquer método de pagamento no Brasil;
  • If the customer provided this information in previous steps, you can reuse it to reduce friction.
  • VERIFICAR TRADUÇÃO Se o cliente forneceu essas informações nas etapas anteriores, você pode reutilizá-las para reduzir o atrito.

Informações de cartão de crédito e débito#

Live Editor
Result
SyntaxError: Unexpected token (1:8)
1 : return ()
            ^
Instruções
  • Tenha o cuidado de mostrar opções de parcelamento (Parcelas) apenas para pagamentos com Cartão de Crédito, uma vez que não estão disponíveis para pagamentos com Cartão de Débito
  • Ofereça uma dica de ferramenta explicando o CVV: "Código de 3 números encontrados na parte de trás do cartão. Em cartões AMEX, o código é de 4 números e está na frente do cartão."

Forma de pagamento#

Payment method selection

Instruções
  • Apresente todos os métodos de pagamento de forma clara
  • Faça o seletor, seja um card ou uma lista de radiobutton, para parecer clicável
  • Você pode usar ícones para tornar cada método de pagamento mais reconhecível

Cartão de crédito#

Credt card

Instruções
  • Use terminologias familiares ao usuário (verifique os campos obrigatórios acima)
  • Você pode usar uma frase chamativa e clara para reforçar a seleção do método
  • Se for usar Parcelas (Installments), pode ser interessante mostrá-las junto com o valor total (Verificar Valor Total do Pedido)

Cartão de débito#

Debit card

Instrução
  • Use terminologias familiares ao usuário (verifique os campos obrigatórios acima)
  • Você pode usar uma frase de chamativa e clara para reforçar a seleção do método
  • Cuidado para não mostrar as opções de parcelamento (Installments) aqui, pois elas só estão disponíveis para pagamentos com cartão de crédito

Boletos#

Boleto

Instruções
  • Você pode oferecer uma breve explicação quando o método de pagamento for selecionado.
  • Você pode usar uma frase chamativa e clara para reforçar a seleção do método.

Valor total do pedido#

RegularEnvio Grátis
Descrição do montante total - RegularDescrição do valor total - frete grátis
Instruções
  • Mostre sempre os valores de forma clara, como taxas de envio e parcelamento, evitando surpresas.
Last updated on by Paulo Eduardo Bueno