Pular para o conteúdo principal
Nesta página

Integre Bizum como meio de pagamento na sua aplicação através da API direta DEUNA.

Visão geral#

Bizum é um método de pagamento instantâneo espanhol que permite aos usuários pagar usando seu número de celular. A DEUNA integra o Bizum através do Redsys TPV Virtual usando um modelo de redirecionamento: após iniciar a compra através da API DEUNA, o usuário é redirecionado para uma página hospedada pelo Redsys para completar a autenticação do Bizum e depois retorna ao seu site.

Requisitos:

  • Disponível apenas na Espanha
  • Moeda: apenas EUR
  • O usuário deve ter uma conta Bizum ativa vinculada a um banco espanhol

Comprar v2#

As compras V2 realizam a criação do pedido e o início do pagamento em um único endpoint.

O processo de compra do Bizum é o seguinte:

  1. Chamadas de usuário POST v2/merchants/order/purchase com as informações do pedido.
  2. DEUNA cria o pedido e inicia a transação Bizum com Redsys.
  3. DEUNA retorna um URL de redirecionamento na resposta.
  4. Você redireciona o usuário para esse URL para concluir a autenticação Bizum na página Redsys.
  5. Após a autenticação, Redsys redireciona o usuário de volta ao seu site.
  6. DEUNA escuta a notificação de servidor para servidor da Redsys para confirmar o status do pagamento final.

Integre Bizum por API#

1. Faça uma compra Bizum

Faça uma solicitação ao Compra V2 endpoint.

Para fazer uma compra Bizum com DEUNA, a carga útil V2 deve conter:

  • Os dados do pedido
  • URLs de retorno de chamada para redirecionar o usuário após o pagamento
  • Opcionalmente, o número do celular do usuário para preencher previamente a tela do Bizum

Exemplo de solicitação

JSON
{
  "order_type": "DEUNA_CHECKOUT",
  "payment_source": {
    "method_type": "bank_transfer",
    "processor": "redsys_bizum",
    "method_type_specific_fields": {
      "bizum_mobile_number": "+34700000000"
    }
  },
  "callback_urls": {
    "on_success": "https://example.com/success",
    "on_error": "https://example.com/error"
  },
  "order": {
    "order_id": "d81fe7bf-748b-4a7a-bc8f-7be98c8ae748",
    "store_code": "all",
    "currency": "EUR",
    "total_amount": 1050,
    "items_total_amount": 1050,
    "sub_total": 1050,
    "items": [
      {
        "id": "1",
        "name": "Cinema ticket",
        "description": "Standard ticket",
        "total_amount": {
          "amount": 1050,
          "currency": "EUR",
          "currency_symbol": "€"
        },
        "unit_price": {
          "amount": 1050,
          "currency": "EUR",
          "currency_symbol": "€"
        },
        "quantity": 1
      }
    ]
  }
}

2. Redirecione o usuário

Após o início da compra, a API responde com um URL de redirecionamento no next_action node.

  1. Pegue o URL
  2. Redirecione o usuário para esse URL.
  3. O usuário completa a autenticação Bizum na página Redsys:
    • Insere o número do celular
    • Insere seu PIN Bizum
    • Confirma via OTP (SMS ou no aplicativo)
  4. Após a autenticação, o Redsys redireciona o usuário de volta para o seu callback_urls.on_success ou callback_urls.on_error.
  5. Ouça os webhooks da DEUNA para confirmar o status do pagamento final.

Exemplo de resposta

JSON
{
  "order_type": "DEUNA_CHECKOUT",
  "order_token": "db3fc147-2a4e-460f-a874-f6f79b1e651c",
  "order": {
    "order_id": "d81fe7bf-748b-4a7a-bc8f-7be98c8ae748",
    "currency": "EUR",
    "total_amount": 1050,
    "status": "pending",
    "payment": {
      "data": {
        "status": "pending",
        "method_type": "bank_transfer",
        "processor": "redsys_bizum",
        "next_action": {
          "action": "authorization_bank_transfer",
          "authorization_bank_transfer": {
            "redirect_url": "https://sis-t.redsys.es:25443/sis/realizarPago"
          }
        }
      }
    }
  }
}

Testes#

Para fins de teste, você pode usar os dados a seguir.

  • Se for solicitado um código PIN ou SMS, você deverá inserir 1234 como o PIN e 123456 como o código SMS:

Usuário Bizum:

  • Bem sucedido: 700.000.000
  • Negado: ko@ko.ko

Observe que, dependendo do valor enviado e do tipo de operação testada, o resultado pode variar.

  • Abaixo de 5€: sucesso
  • Entre 5€ e 10€: negado
  • Tenha em atenção que o valor da transação não deve exceder 10€; caso contrário, a operação será rejeitada.