Andorpay
Navegación de la documentación

Documentación para desarrolladores

Crea tu primer pago

Obtén una clave de pruebas, crea una sesión alojada y confirma el resultado mediante un webhook firmado.

Antes de empezar

Necesitas un comercio activo, una cuenta Redsys de sandbox configurada, un producto activo y una URL HTTPS pública para recibir webhooks. El checkout de tarjeta requiere Redsys inSite habilitado para el terminal.

Preparar credenciales

  1. 1

    Configura Redsys

    Abre Dashboard, Configuración, Railes, Redsys, selecciona pruebas y guarda el FUC, terminal y secreto del sandbox.

  2. 2

    Genera una API key

    Abre Webhooks y API keys, genera una clave de pruebas y guárdala cuando se muestre. No debe llegar al navegador.

  3. 3

    Copia un productId

    Crea un producto en Productos. Copia su identificador ap_prod_... desde la tabla del dashboard.

  4. 4

    Define la variable de servidor

    export ANDORPAY_API_KEY="ap_test_..."

Crear el checkout

La petición autentica al comercio mediante la API key. No envíes merchantId, priceId ni Idempotency-Key.

Crear una sesión alojada
bash
curl https://api.andorpay.com/v1/checkouts \
  --request POST \
  --header "Authorization: Bearer $ANDORPAY_API_KEY" \
  --header "Andorpay-Version: 2026-01-01" \
  --header "Content-Type: application/json" \
  --data '{
    "productId": "ap_prod_starter_monthly",
    "externalCustomerId": "customer_42",
    "customer": {
      "email": "ana@example.com",
      "name": "Ana Garcia",
      "billingDetails": {
        "line1": "Carrer Prat de la Creu 12",
        "city": "Andorra la Vella",
        "postal_code": "AD500",
        "country": "AD"
      },
      "tax": {
        "value": "F-123456-Z",
        "type": "andorra_nrt"
      }
    },
    "successUrl": "https://shop.example.com/payment/success",
    "failUrl": "https://shop.example.com/payment/failed",
    "reconciliation": {
      "merchantReference": "cart_1048"
    }
  }'
ResultadoQué significa
201La sesión se creó y puede abrirse mediante hostedUrl.
401La API key falta, no es válida o ya no está activa.
403El producto requiere una capacidad no habilitada para el comercio.
404El producto no existe, no pertenece al comercio o no está activo.
503El rail o una dependencia necesaria no está disponible.
Respuesta 201
json
{
  "id": "ap_chk_01JQ8P9A3Y9B5J7V2V0M9R4S8T",
  "sessionId": "ap_chk_01JQ8P9A3Y9B5J7V2V0M9R4S8T",
  "hostedUrl": "https://shop.andorpay.com/checkout/ap_chk_01JQ8P9A3Y9B5J7V2V0M9R4S8T",
  "expiresAt": "2026-08-23T11:30:00.000Z",
  "request_id": "req_01JQ8T2M0D6F4Q7F3K8A9V2N1C"
}

Abrir el pago

Redirige al comprador exactamente al hostedUrl de la respuesta. La sesión caduca 30 minutos después de crearla. AndorPay presenta únicamente los métodos habilitados para el comercio y el dispositivo.

Verificar el resultado

Completa el pago con una tarjeta de sandbox y consulta la entrega payment.succeeded en el dashboard. Verifica Andorpay-Signature sobre el cuerpo sin procesar antes de aplicar fulfillment o acceso.

Una navegación a successUrl sólo indica qué pantalla vio el comprador. Un cierre, timeout o paso 3DS puede dejar el resultado pendiente de conciliación, por lo que el webhook sigue siendo la confirmación canónica.

Siguiente paso

WhatsApp