Skip to main content

Notificações de pagamento#

Sobre este guia#

Devido à natureza de alguns métodos de pagamento, nem sempre eles serão confirmados instantaneamente, como é o caso de pagamentos com boleto, por exemplo. Através de notificações (webhooks), o EBANX informa aos merchants sobre mudanças de status de pagamento no momento em que eles ocorrem. Neste guia iremos demonstrar como você pode implementar este recurso.

Como funciona#

  1. Mudança no status do paramento para CO ou CA

    Quando o status de um pagamento é alterado para confirmado (CO) ou cancelado (CA), o EBANX envia uma notificação ao seu sistema por meio da URL de notificação que você deve fornecer à nossa equipe de integração. Para mais detalhes você pode entrar em contato com nossos especialistas em integração.

  2. Consultando detalhes do Pagamento

    Após receber a notificação em seu sistema, você deverá fazer uma requisição para o end-point /ws/query via EBANX Direct API para obter mais detalhes do pagamento, além do status.

    Cada vez que o status do pagamento é alterado, o servidor EBANX fará uma requisição POST para a URL registrada e esperará um código HTTP 200 como resposta. Esta solicitação conterá o Content-Type como x-www-form-url-encoded, com 3 parâmetros mostrados no exemplo abaixo:

    operation=payment_status_change&notification_type=update&hash_codes=PAYMENT_HASH_HERE

    Parâmetros:

    ParâmetroDescrição
    operationO valor sempre será payment_status_change.
    notification_typeO evento que acionou a notificação
    hash_codesUm único hash ou uma matriz de hashes separados por vírgulas.

    O parâmetro notification_type pode ter os seguintes valores:

    • update: o status do pagamento mudou de PE (Pendente) para CO (Confirmado) ou CA (Cancelado);
    • chargeback: foi emitido um estorno para este pagamento;
    • refund: um reembolso foi emitido para este pagamento;
    • chargeback_credit: foi emitido um crédito de estorno para este pagamento;

    Aqui está um exemplo de notificação:

    https://staging.ebanx.com.br/ws/query?integration_key=YOUR_KEY&hash=PAYMENT_HASH_HERE

    O servidor EBANX enviará um objeto JSON como resposta, incluindo o status do pagamento. Aqui está um exemplo:

    {
    "payment": {
    "hash": "PAYMENT_HASH_HERE",
    "pin": "020593132",
    "merchant_payment_code": "1120a8eb178",
    "order_number": null,
    "status": "CO",
    "status_date": "2017-11-22 20:50:18",
    "open_date": "2017-11-22 20:50:18",
    "confirm_date": "2017-11-22 20:50:18",
    "transfer_date": null,
    "amount_br": "100.38",
    "amount_ext": "100.00",
    "amount_iof": "0.38",
    "currency_rate": "1.0000",
    "currency_ext": "BRL",
    "due_date": "2017-11-25",
    "instalments": "3",
    "payment_type_code": "visa",
    "details": {
    "billing_descriptor": ""
    },
    "transaction_status": {
    "acquirer": "EBANX",
    "code": "OK",
    "description": "Sandbox - Test credit card, transaction captured",
    "authcode": "45101"
    },
    "pre_approved": true,
    "capture_available": false
    },
    "status": "SUCCESS"
    }
  3. Informe ao EBANX que você recebeu nossa resposta

    Responda a notificação com um status HTTP 200. Sugerimos imprimir qualquer mensagem mostrando que você recebeu a notificação, indicando que a notificação foi bem-sucedida.

Obtendo Ajuda#

Nós esperamos que este artigo tenha sido esclarecedor, mas caso não tenhamos tirado suas dúvidas você tem as seguintes opções para continuar buscando respostas:

  • Se você ainda não é nosso parceiro e deseja saber mais sobre nossos preços e condições, entre em contato com nossa equipe comercial.
  • Caso você já seja nosso parceiro, entre em contato com nossa equipe de suporte em faleconosco@ebanxpay.com.
Last updated on by Samuell Oliveira