Criar Pagamento
Cria uma transação de pagamento com cartão de crédito. Certifique-se de que a [[biblioteca-antifraude]] esteja corretamente implementada antes de realizar operações.
Realizar Pagamento
Parâmetros
Para vendas parceladas, utilize productType como lojista. Para vendas à vista (parcela única), utilize avista.
{
"payment": {
"transactionType": "credit",
"amount": 1035,
"productType": "avista",
"installments": 1
},
"referenceTransaction": "pedido-001",
"sellerInfo": {
"codeAntiFraud": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"cardInfo": {
"vaultId": "{{vaultId}}"
},
"customer": {
"documentType": "cpf",
"documentNumber": "12345678901",
"firstName": "Jose",
"lastName": "Silva",
"email": "[email protected]",
"phoneNumber": "11999999999",
"mobilePhoneNumber": "11999999999",
"address": "Rua Exemplo, 123",
"city": "São Paulo",
"state": "SP",
"zipCode": "01310100",
"ipAddress": "192.168.1.1",
"country": "BR"
}
}Retorno (200)
{
"returnCode": "0",
"description": "Sucesso",
"paymentId": "020080286103040952150000006201850000000000",
"authorizationCode": "043711",
"orderNumber": "0000000001",
"expireAt": "2019-09-24T13:20:52.877",
"amount": 1035,
"releaseAt": "2019-09-24T13:20:52.877"
}Dicionário de dados
Erros
Para recusas retornadas pelo emissor ou adquirente, consulte também os Códigos de resposta do autorizador. Esses códigos identificam o resultado da transação e não devem ser confundidos com os status HTTP.
As respostas de erro conhecidas estão abaixo. Os retornos observados em homologação estão identificados separadamente dos exemplos documentados; as respostas podem variar conforme o ambiente e a configuração.
Exemplo documentado
[
{
"tag": "",
"description": "O valor da venda precisa ser maior do que R$ 1,00"
}
]Observado em homologação
Requisição com corpo JSON vazio ou identificador sintético. O retorno abaixo mostra a validação realizada em homologação.
[
{
"tag": "Payment.TransactionType",
"description": "Tipo de transação não pode estar vazio"
},
{
"tag": "Payment.TransactionType",
"description": "Tipo de transação deve ser 'credit', 'debit', '1' (Crédito) ou '3' (Débito)"
},
{
"tag": "Payment.Amount",
"description": "Valor deve ser maior que zero"
},
{
"tag": "Payment.ProductType",
"description": "Tipo de produto não pode estar vazio"
},
{
"tag": "Payment.ProductType",
"description": "Tipo de produto deve ser 'avista', 'parcelado_loja', 'parcelado_adm', '1', '2' ou '3'"
},
{
"tag": "Payment.Installments",
"description": "Parcelas deve ser maior que zero"
},
{
"tag": "SellerInfo.CodeAntiFraud",
"description": "Código antifraude é requerido"
},
{
"tag": "Customer.DocumentNumber",
"description": "Número do documento é requerido"
},
{
"tag": "Customer.DocumentNumber",
"description": "Documento deve ter 11 (CPF) ou 14 (CNPJ) dígitos"
},
{
"tag": "Customer.FirstName",
"description": "Nome é requerido"
},
{
"tag": "Customer.FirstName",
"description": "É obrigatório enviar o nome completo"
},
{
"tag": "Customer.Email",
"description": "E-mail é requerido"
},
{
"tag": "Customer.Email",
"description": "E-mail deve ter formato válido"
},
{
"tag": "Customer.IpAddress",
"description": "Endereço IP é requerido"
},
{
"tag": "Customer.IpAddress",
"description": "Endereço IP deve ter formato válido"
},
{
"tag": "Customer.Address",
"description": "Endereço é requerido"
},
{
"tag": "Customer.City",
"description": "Cidade é requerida"
},
{
"tag": "Customer.State",
"description": "Estado é requerido"
},
{
"tag": "Customer.State",
"description": "Estado deve ter 2 caracteres (ex: SP)"
},
{
"tag": "Customer.ZipCode",
"description": "CEP deve ter 8 dígitos"
},
{
"tag": "Customer.Country",
"description": "País é requerido"
},
{
"tag": "Customer.Country",
"description": "País deve ter 2 caracteres (ex: BR)"
},
{
"tag": "CardInfo",
"description": "Token do cartão ou cartão criptografado é requerido quando vaultId não é fornecido"
},
{
"tag": "CardInfo.CardholderName",
"description": "Nome do portador é requerido quando vaultId não é fornecido"
},
{
"tag": "CardInfo.SecurityCode",
"description": "Código de segurança é requerido quando vaultId não é fornecido"
},
{
"tag": "CardInfo.SecurityCode",
"description": "Código de segurança deve ter 3 ou 4 dígitos"
},
{
"tag": "CardInfo.ExpirationMonth",
"description": "Mês de expiração é requerido quando vaultId não é fornecido"
},
{
"tag": "CardInfo.ExpirationMonth",
"description": "Mês de expiração deve estar entre 01 e 12"
},
{
"tag": "CardInfo.ExpirationYear",
"description": "Ano de expiração é requerido quando vaultId não é fornecido"
},
{
"tag": "CardInfo.ExpirationYear",
"description": "Ano de expiração deve ter 2 dígitos e ser atual ou futuro"
},
{
"tag": "CardInfo",
"description": "Deve ser fornecido vaultId ou numberToken para processar o pagamento"
}
]Campos da resposta de erro
A tabela reúne os campos presentes nos exemplos acima. Uma resposta HTTP sem corpo não inclui esses campos.
