Erros

HTTP Status Codes

A nossa API valida cada um dos campos enviados na requisição antes de prosseguir com a criação, consulta ou gerenciamento dos pedidos, transações e recursos.

Utilizamos os códigos de resposta convencionais do HTTP para indicar o sucesso ou a falha de uma requisição. Sendo assim, códigos 2xx indicam sucesso, 4xx indicam erros por algum dado informado incorretamente (por exemplo, algum campo obrigatório não enviado ou um cartão sem data de validade) e 5xx indicando erros nos servidores do Pagar.me.

Tabela dos HTTP Status Code:

CódigoStatusDefinição
200OKSucesso
400Bad RequestRequisição inválida
401UnauthorizedChave de API inválida
403ForbiddenBloqueio por IP/Domínio
404Not FoundO recurso solicitado não existe
412Precondition FailedParâmetros válidos mas a requisição falhou
422Unprocessable EntityParâmetros inválidos
429Too Many RequestsQuantidade de requisições realizadas pelo IP maior que o permitido pela Pagar.me
500Internal Server ErrorOcorreu um erro interno

Possíveis erros

{
    "message": "Customer not found."
}

"Cliente não encontrado": Ocorre quando não identificamos o objeto customer ou customer_id na requisição de criação do pedido.

{
    "message": "The request is invalid.",
    "errors": {
        "order.customer.name": [
            "The name field is required."
        ]
    },
  ...

"O campo nome é obrigatório": Ocorre quando não identificamos o campo name dentro do objeto customer. É necessário adicionar o nome do cliente aos dados informados na requisição de requisição de criação do pedido.

{
    "message": "The request is invalid.",
    "errors": {
        "order.payments[0].credit_card.card": [
            "The number field is not a valid card number"
        ]
    },
  ...

"O campo do número não é um número de cartão válido": Ocorre quando o campo number dentro do objeto card não é um número de cartão válido. É necessário revisar o número do cartão informado na requisição de criação do pedido.

{
    "message": "The request is invalid.",
    "errors": {
        "card.number": [
            "The field number must be a string with a minimum length of 13 and a maximum length of 19."
        ]
    },
  ...

"O número do campo deve ser uma string com comprimento mínimo de 13 e máximo de 19": Ocorre quando o campo number tem a quantidade de caracteres incorreta. É necessário revisar o número do cartão informado na requisição de criação do cartão.

{
    "message": "The request is invalid.",
    "errors": {
        "order.items": [
            "The items field is required"
        ]
    },
  ...

"O campo itens é obrigatório": Ocorre quando não encontramos o objeto items na requisição. Para realizar a criação de um pedido, é obrigatório informar os itens.

Possíveis erros - Integração PSP

...               
"gateway_response": {
    "code": "412",
    "errors": [
        {
            "message": "At least one customer phone is required."
        }
    ]
},
  ...

"É necessário pelo menos um telefone do cliente": O erro ocorre quando não encontramos o objeto phones dentro do objeto customer. Para clientes Pagar.me PSP é obrigatório enviar o telefone dentro junto aos dados do cliente. Mais sobre o objeto phones.

📘

Dados obrigatórios PSP x Gateway

A integração PSP ou Gateway afeta os dados necessários para efetuar certas solicitações, como a criação de um pedido.

Portanto, leve em consideração o seu modelo de negócios ao seguir as orientações da nossa Referência da API e consultar a assistência de nossas equipes de suporte.