Saltar al contenido principal
En esta página

Integra Bizum como método de pago en tu aplicación a través de la API directa de DEUNA.

Descripción general#

Bizum es un método de pago instantáneo español que permite a los usuarios pagar mediante su número de teléfono móvil. DEUNA integra Bizum a través del TPV Virtual de Redsys mediante un modelo de redireccionamiento: tras iniciar la compra a través de la API de DEUNA, el usuario es redirigido a una página alojada en Redsys para completar la autenticación de Bizum y posteriormente regresa a su sitio.

Requisitos:

  • Disponible sólo en España
  • Moneda: solo EUR
  • El usuario deberá tener una cuenta Bizum activa vinculada a un banco español

Compra v2#

Las compras V2 realizan la creación del pedido y el inicio del pago en un único punto final.

El proceso de compra en Bizum es el siguiente:

  1. Llamadas de usuario POST v2/merchants/order/purchase con la información del pedido.
  2. DEUNA crea el pedido e inicia la transacción Bizum con Redsys.
  3. DEUNA devuelve una URL de redireccionamiento en la respuesta.
  4. Rediriges al usuario a esa URL para completar la autenticación Bizum en la página de Redsys.
  5. Después de la autenticación, Redsys redirige al usuario a su sitio.
  6. DEUNA escucha la notificación de servidor a servidor de Redsys para confirmar el estado del pago final.

Integra Bizum por API#

1. Realizar una compra en Bizum

Realizar una solicitud al Compra V2 endpoint.

Para realizar una compra Bizum con DEUNA, el payload V2 debe contener:

  • los datos del pedido
  • URL de devolución de llamada para redirigir al usuario después del pago
  • Opcionalmente, el número de teléfono móvil del usuario para precompletar la pantalla de Bizum

Ejemplo de solicitud

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. Redirigir al usuario

Una vez iniciada la compra, la API responde con una URL de redireccionamiento en el next_action node.

  1. Toma la URL
  2. Redirigir al usuario a esa URL.
  3. El usuario realiza la autenticación Bizum en la página de Redsys:
    • Introduce su número de teléfono móvil.
    • Introduce su PIN Bizum
    • Confirma vía OTP (SMS o en la aplicación)
  4. Después de la autenticación, Redsys redirige al usuario nuevamente a su callback_urls.on_success o callback_urls.on_error.
  5. Escuche los webhooks de DEUNA para confirmar el estado del pago final.

Ejemplo de respuesta

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"
          }
        }
      }
    }
  }
}

Pruebas#

Para fines de prueba, puede utilizar los siguientes datos.

  • Si se solicita un código PIN o SMS, deberá ingresar 1234 como el PIN y 123456 como el código SMS:

Usuario Bizum:

Tenga en cuenta que, dependiendo del importe enviado y del tipo de operación probada, el resultado puede variar.

  • Por debajo de 5€: exitoso
  • Entre 5€ y 10€: denegado
  • Tenga en cuenta que el importe de la transacción no debe exceder los 10 €; en caso contrario, la operación será rechazada.