Lo que necesitas
| Campo | Que hace |
|---|---|
| Client ID | Identifica tu aplicación PayPal en las llamadas a la API. Se empareja con el secreto. |
| Client secret | La mitad secreta de la autenticación API. Con el Client ID, crea la orden. Secreto. |
| Webhook ID | Identifica el webhook que PayPal firma, para que podamos verificar cada entrega. |
| Success URL / Cancel URL | Dónde aterriza el comprador después de pagar o retirarse. |
Por que pedimos cada campo
Client ID
Identifica tu aplicación PayPal en las llamadas a la API. Solo funciona cuando se empareja con el Client secret.
Client secret
La mitad privada de la autenticación API. Con el Client ID, nos permite crear la orden para que el pago se realice a través de tu cuenta.
Webhook ID
Cómo confirmamos que un webhook es genuinamente de PayPal: PayPal identifica cada webhook por un ID, y lo usamos para preguntarle directamente a PayPal si un mensaje dado es auténtico. Eso evita que alguien simule un evento "pagado".
Success and Cancel URL
Configuración simple: dónde aterriza el comprador después de pagar o retirarse. No es secreto.
Configurar
- Abre el panel de desarrollador de PayPal
Inicia sesión en developer.paypal.com. PayPal te da un Sandbox gratuito con cuentas de negocio y comprador falsas, para que puedas probar sin mover dinero real. Esta guía usa el Sandbox; el flujo en Vivo es idéntico, solo cambia el botón Sandbox / Live (arriba a la izquierda) y usa una cuenta PayPal for Business. Desde el panel, abre Apps & Credentials.
PayPal Developer → Apps & Credentials - Crea una aplicación
En la página API Credentials, confirma que el botón Sandbox está seleccionado, luego haz clic en Create App (arriba a la derecha).
PayPal → Apps & Credentials → Create App - Nómbrala y elige Merchant
Ingresa un nombre de aplicación (por ejemplo "Coin Moebius"), deja el Tipo en Merchant, elige tu cuenta comercial sandbox, y haz clic en Create App.
PayPal → Create App - Copia tu Client ID y Client secret
PayPal abre tu nueva aplicación. Copia el Client ID y revela y copia la Secret key. (También puedes copiar ambos de la fila Default Application en la lista API Credentials.) Guárdalos.
1. PayPal → API Credentials → tu aplicación en la lista 2. PayPal → tu aplicación → Client ID y Secret El Client secret es secreto, trátalo como una contraseña. La aplicación sandbox y la aplicación en vivo tienen su propio par, así que no las mezcles.
- Agrega un webhook
Desplázate hacia abajo en la página de la aplicación hasta la sección Sandbox Webhooks y haz clic en Add Webhook. En el campo Webhook URL, pega la dirección del webhook de tu proyecto en PayPal (abajo). Luego elige los eventos que Coin Moebius escucha y Guardar.
- Pagos únicos: CHECKOUT.ORDER.APPROVED, PAYMENT.CAPTURE.COMPLETED, PAYMENT.CAPTURE.DENIED, PAYMENT.CAPTURE.DECLINED, PAYMENT.CAPTURE.REFUNDED, PAYMENT.CAPTURE.REVERSED, CUSTOMER.DISPUTE.CREATED.
- Suscripciones (solo si las vendes): BILLING.SUBSCRIPTION.ACTIVATED, BILLING.SUBSCRIPTION.UPDATED, BILLING.SUBSCRIPTION.CANCELLED, BILLING.SUBSCRIPTION.PAYMENT.FAILED, PAYMENT.SALE.COMPLETED. Si no cobras de forma recurrente, omite estos.
- ¿Tienes prisa? Seleccionar All Events (el comodín en la parte superior) también funciona, ignoramos cualquier cosa que no usemos.
https://api.coinmoebius.com/webhook/paypal/<your project id>PayPal → tu aplicación → Add webhook Tu ID de proyecto está bajo el nombre del proyecto en el panel de Coin Moebius; sustitúyelo en la dirección anterior. La tarjeta de proveedor conectado (último paso) muestra la misma URL para referencia.
- Copia el Webhook ID
Tu webhook ahora aparece en la lista Sandbox Webhooks. Copia el Webhook ID que aparece junto a él. Así es como Coin Moebius le pide a PayPal que confirme que cada webhook es genuino. Registra un webhook separado en sandbox y en vivo.
PayPal → tu aplicación → Sandbox Webhooks → Webhook ID - De vuelta en Coin Moebius: Agregar proveedor → PayPal
En tu proyecto, abre la pestaña Providers, haz clic en Add provider, elige Connect a service, y selecciona PayPal. Establece tu Success URL y Cancel URL. ¿Probando con credenciales sandbox? Usa la pestaña Test (opcional) y pega tu Client ID, Client secret, y Webhook ID allí, luego haz clic en Save. ¿Yendo directo a vivo? Usa la pestaña Live. El grupo Test es todo o nada: los tres campos, o ninguno.
Coin Moebius → Add provider → PayPal - Ya estás conectado
PayPal ahora aparece en tu pestaña Providers con la fecha en que se conectó (etiquetado TEST cuando usaste credenciales sandbox). La tarjeta muestra la misma URL del webhook que pegaste en PayPal, más Edit y Disconnect.
Coin Moebius → Providers → PayPal (connected) - Prueba con un comprador sandbox
Para pagar a través de un checkout de prueba, necesitas tu inicio de sesión de comprador sandbox. En PayPal, abre Testing Tools → Sandbox Accounts para ver tus cuentas falsas de Business y Personal.
PayPal → Testing Tools → Sandbox Accounts - Obtén los detalles de inicio de sesión del comprador
Abre la cuenta Personal (comprador) para ver su Login Info: la URL del sandbox, el correo electrónico y la contraseña. Inicia sesión en sandbox.paypal.com con esos cuando un checkout de prueba te pida que pagues. No se mueve dinero real.
PayPal → Sandbox account → Login Info
Despues que conectes
Realiza un pago de prueba antes de ir a vivo:
- Crea un producto y establece su Environment en Testing. Eso ejecuta el producto en tus credenciales sandbox, para que puedas hacer un pedido completo sin mover dinero. (Si saltaste la configuración del sandbox, un producto de Testing vuelve a vivo, así que agrégalo primero.)
- Coloca el botón de compra en una página (un archivo HTML local funciona) apuntando a tu proyecto.
- Completa el checkout pagando con tu cuenta de comprador sandbox.
- Abre la pestaña Transactions. Aparece una nueva fila, etiquetada Testing. Cuando su estado llegue a succeeded, tus credenciales y webhook funcionan de extremo a extremo.
Cambia el producto Environment a Live cuando estés listo para pagos reales.
Resolucion de problemas
Comienza con Verify. En el panel, haz clic en Verify (o Verify test credentials para sandbox) para verificar tus credenciales de cliente.
Verify falla.
Vuelve a copiar el Client ID y Client secret. La aplicación sandbox y la aplicación en vivo tienen pares diferentes, así que no las mezcles.
El pago se completa pero la orden permanece pendiente.
El Webhook ID debe provenir de la misma aplicación y entorno que tus credenciales de cliente. Las credenciales en vivo necesitan el ID de webhook en vivo. Confirma que la URL del webhook coincida.
Confirma de extremo a extremo.
Panel de desarrollador de PayPal → Webhooks Simulator: envía un evento de muestra a tu URL de webhook, luego observa la actualización de la orden.
Bueno saber
Rotación de secretos. Genera un nuevo client secret en cualquier momento, luego pégalo. Los campos secretos permanecen en blanco en la edición.
Preguntas Join our Discord