Como propietario de una tienda online, puedes integrar PayPal en aplicaciones PHP en cuestión de minutos. Puedes aceptar pagos a través de plugins, addons, extensiones, o manualmente a través de las aplicaciones basadas en framework. Con PayPal integrado en aplicaciones PHP, también puedes encontrar bibliotecas PHP integradas y paquetes de compositores para acortar tu tiempo de desarrollo.
Integración de Pasarelas de Pago en PHP – Una Lista de Comprobación Rápida
Entraré en los detalles de la integración de PayPal en la pasarela de pago PHP, pero aquí tienes una lista rápida de pasos que debes seguir para configurar PayPal para tus aplicaciones PHP
- Empieza por obtener una cuenta de desarrollador de PayPal y consigue credenciales de sandbox. Esto es esencial para probar la integración.
- Crea la estructura de directorios adecuada para la integración.
- Empieza creando el archivo Pago.php
- Crea el payment_form.php para el formulario que el usuario podría utilizar para introducir la información relacionada con Paypal.
- Prueba la integración para ver si todo funciona como debe.
Aloja tus aplicaciones PHP con nosotros para un rendimiento 10 veces más rápido
No dejes que tus clientes huyan con los tiempos de inactividad. ¡Despliégate con nosotros hoy mismo!
¿Qué es PayPal?
PayPal es una empresa de procesamiento de pagos aclamada internacionalmente que ofrece métodos de pago en Internet seguros y fáciles de usar. Puedes registrar fácilmente tu(s) tarjeta(s) de crédito/débito en una cuenta PayPal y realizar tus pagos en Internet sin esfuerzo. Pueden utilizarlo diversas empresas, como autónomos, agencias digitales, propietarios de tiendas de comercio electrónico, etc.
Algunas de las mejores funciones que ofrece PayPal son:
- Aceptar tarjetas de crédito
- Facturación online
- Cuentas de comprador y vendedor
- Cesta de la compra
- Pagos por móvil
- Transferencia internacional de dinero
¿Cómo funciona PayPal?
Como ya hemos dicho, utilizar PayPal es bastante fácil. Sólo tienes que seguir tres pasos para realizar un pago en Internet con éxito.
1- Elige PayPal para pagar
2- Accede a tu cuenta
3- Confirma tu pago y paga.
Realmente parece un proceso fácil. Sin embargo, si trabajas con algún producto de software y necesitas aceptar pagos recurrentes o únicos, tendrás que esforzarte un poco más. Necesitarás ciertas claves API para integrar PayPal de forma segura en aplicaciones PHP, lo que requiere un poco de conocimiento técnico.
Por lo tanto, aquí tienes los pasos que pueden ayudarte a integrar PayPal en aplicaciones PHP.
Integración de PayPal en sitios web PHP
Vamos a aprender cómo integrar PayPal en sitios web PHP en unos pocos pasos:
Paso – 1 Crear una cuenta PayPal y obtener las credenciales del Sandbox
Crea una cuenta PayPal y obtén tus credenciales del sandbox desde tu cuenta de programador. Obtendrás credenciales tanto para cuentas de empresa como personales.

Entonces, necesitarás un correo electrónico de prueba para aceptar o enviar pagos. Al estar en un entorno de pruebas, no puedes utilizar correos electrónicos reales para aceptar pagos online.
Paso – 2 Crear archivos PHP para añadir el Código
Ahora, crea una carpeta directorio para añadir los archivos PHP. Comprueba la estructura en la imagen de abajo.

Como puedes ver, hay diferentes archivos en la imagen anterior. Definiré el código que debes poner en cada uno de los archivos. Como he desplegado la aplicación en Cloudways, debes tener una cuenta para subir archivos. Regístrate y ejecuta el servidor PHP, luego conéctate a FileZilla a través de SFTP y sube los archivos.
Volvamos al código. Después de crear el directorio, debes instalar Omnipay a través de Composer. Accede a la cuenta SSH y navega hasta tu aplicación. Ejecuta el siguiente comando.
Omnipay es una biblioteca de procesamiento de pagos para PHP. Se ha esbozado, basándose en ideas de Dynamic Merchant, implicando también experiencia en la implementación de docenas de pasarelas para CI Merchant. Incluye una API clara y estable, y está completamente probada por unidades, y de hecho viene con un caso de aplicación para inducirte a empezar
composer require omnipay/PayPal
Esto instalará el paquete y podremos configurar PayPal fácilmente. Omnipay te permite configurar las siguientes opciones de PayPal:
- PayPal_Express (Pago exprés de PayPal)
- PayPal_ExpressInContext (Pago exprés en contexto de PayPal)
- PayPal_Pro (Pagos en el sitio Web de PayPal Pro)
- PayPal_Rest (API Rest de PayPal)
Utilizaré PayPal Express con Omnipay. Tras la instalación, verás el archivo composer.json con el siguiente código.
{
"name": "root/phpPayPal",
"authors": [
{
"name": "Ahmed Khan",
"email": "[email protected]"
}
],
"require": {
"league/omnipay": "^3.0",
"omnipay/PayPal": "^3.0"
}
}
Si trabajas localmente, también puedes crear este archivo y añadir el código mencionado manualmente y luego ejecutar `composer install` para añadir Omnipay en el proyecto.
Paso – 3 Crear el archivo Payment.php
Crea una carpeta llamada src y añade un archivo, payment.php en ella. Añade el siguiente código en el archivo y guárdalo. El código contiene comentarios que se explican por sí mismos.
<?php
namespace Payment;
use Omnipay\Omnipay;
class Payment
{
/**
* @return mixed
*/
public function gateway()
{
$gateway = Omnipay::create('PayPal_Express');
$gateway->setUsername("[email protected]");
$gateway->setPassword("ARySNgUCvyU9tEBp-zsd0WbbNO_7Nxxxxoi3xxxxh2cTuDxRh7xxxxVu9W5ZkIBGYqjqfzHrjY3wta");
$gateway->setSignature("EOEwezsNWMWQM63xxxxxknr8QLoAOoC6lD_-kFqjgKxxxxxwGWIvsJO6vP3syd10xspKbx7LgurYNt9");
$gateway->setTestMode(true);
return $gateway;
}
/**
* @param array $parameters
* @return mixed
*/
public function purchase(array $parameters)
{
$response = $this->gateway()
->purchase($parameters)
->send();
return $response;
}
/**
* @param array $parameters
*/
public function complete(array $parameters)
{
$response = $this->gateway()
->completePurchase($parameters)
->send();
return $response;
}
/**
* @param $amount
*/
public function formatAmount($amount)
{
return number_format($amount, 2, '.', '');
}
/**
* @param $order
*/
public function getCancelUrl($order = "")
{
return $this->route('http://phpstack-275615-1077014.cloudwaysapps.com/cancel.php', $order);
}
/**
* @param $order
*/
public function getReturnUrl($order = "")
{
return $this->route('http://phpstack-275615-1077014.cloudwaysapps.com/return.php', $order);
}
public function route($name, $params)
{
return $name; // ya change hua hai
}
}
Ahora, tienes que añadir el espacio de nombres Omnipay para utilizar las funciones de la biblioteca. Puedes añadirlo encima utilizando Omnipay\Omnipay.
Ahora, declara el modo de pago PayPal que utilizarás para aceptar pagos. Para este tutorial, estoy utilizando PayPal Exprés. A veces necesitas añadir credenciales de API como nombre de usuario, contraseña y firma. Puedes encontrar estas credenciales en Herramientas -> Todas las herramientas -> Pestaña Integrar PayPal -> Credenciales API. Comprueba la captura de pantalla que aparece a continuación.

Ahora puedes empezar a utilizar los métodos PayPal preconstruidos para la compra, el formato del importe, la URL de retorno, etc. No olvides establecer esta línea en true para probar la pasarela.
$gateway->setTestMode(true);
Paso – 4 Crear el archivo payment_form.php
El siguiente paso es crear un formulario para enviar los pagos a PayPal. Este formulario incluye los siguientes campos.
<?php
include "vendor/autoload.php";
include "src/Payment/payment.php";
use Payment\Payment;
$payment = new Payment;
// ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Pay with PayPal</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-6">
<form class="form-horizontal" method="POST" action="https://www.sandbox.PayPal.com/cgi-bin/webscr ">
<fieldset>
<!-- Form Name -->
<legend>Pay with PayPal</legend>
<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="amount">Payment Amount</label>
<div class="col-md-4">
<input id="amount" name="amount" type="text" placeholder="amount to pay" class="form-control input-md" required="">
<span class="help-block">help</span>
</div>
</div>
<input type='hidden' name='business' value='[email protected]'>
<input type='hidden' name='item_name' value='Camera'>
<input type='hidden' name='item_number' value='CAM#N1'>
<!--<input type='hidden' name='amount' value='10'>-->
<input type='hidden' name='no_shipping' value='1'>
<input type='hidden' name='currency_code' value='USD'>
<input type='hidden' name='notify_url' value='<?php echo $payment->route("notify", "") ?>'>
<input type='hidden' name='cancel_return' value='<?php echo $payment->route("http://phpstack-275615-1077014.cloudwaysapps.com/cancel.php", "") ?>'>
<input type='hidden' name='return' value='<?php echo $payment->route("return", "http://phpstack-275615-1077014.cloudwaysapps.com/return.php") ?>'>
<input type="hidden" name="cmd" value="_xclick">
<!-- Button -->
<div class="form-group">
<label class="col-md-4 control-label" for="submit"></label>
<div class="col-md-4">
<button id="submit" name="pay_now" class="btn btn-danger">Pay With PayPal</button>
</div>
</div>
</fieldset>
</form>
</div>
</div>
</div>
</body>
</html>
El formulario anterior mostrará el campo de entrada básico que pide la cantidad deseada para procesar. Cuando envíes el importe, serás redirigido al sitio sandbox de PayPal para iniciar sesión. Puedes iniciar sesión con las credenciales de prueba que he mostrado arriba en la primera imagen de este tutorial.
Probando PayPal para el envío de pagos.
En esta fase, todos los archivos deben cargarse en el servidor de alojamiento web PHP de Cloudways. Busca la URL de la aplicación en la página Detalles de acceso a la aplicación. La URL será como
http://phpstack-275615-1077014.cloudwaysapps.com/payment_form.php
Verás un formulario básico como el que se muestra a continuación:

Introduce el importe e inicia sesión en tu cuenta de prueba con las credenciales de prueba, por ejemplo:
Correo electrónico: [email protected]
Contraseña: #qYxx$x4

El proceso tardará algún tiempo. Una vez completado el proceso, verás la ventana Pagar ahora. Haz clic en ella y el importe se abonará desde tu cuenta de pruebas.
Comprueba la demo a continuación:

También he establecido la URL de redireccionamiento. Si quieres cancelar el pago, haz clic en el enlace de cancelación de la parte inferior y serás redirigido a la página de cancelación. Del mismo modo, puedes crear diferentes páginas como éxito, notificar, etc. utilizando la misma práctica.
Cancelación del pago (cancel.php)
Cuando un comprador cancela un pago, suele volver a la página principal. En cambio, puedes utilizar la función onCancel para mostrar la página de cancelación o ser redirigido al carrito de la compra.
paypal.Buttons({
onCancel: function (data) {
// Show a cancel page, or return to the cart
}
}).render('#paypal-button-container');
Configurar la devolución automática y la transferencia de pagos de PayPal
Sigue los pasos
- Inicia sesión en tu cuenta PayPal (Empresas)
- En la pestaña «Mi cuenta», haz clic en «Perfil».
- Haz clic en Pagos en el sitio web, en «Productos y servicios», a la izquierda de la página.
- Haz clic en «Actualizar» junto a «Preferencias del sitio web».
- Pulsa Activar en «Retorno automático».
- Ahora, bajo los Servicios de Pago Alojados, haz clic en «Preferencias de Pagos en Internet»
- Selecciona el botón de opción «Retorno automático» e introduce la URL de redireccionamiento en el campo URL
. Asimismo, selecciona el botón de opción «Transferencia de datos de pago». - Pulsa «Guardar».
Aloja sitios web PHP con facilidad [A partir de 10 $ de crédito].
- Puesta en escena gratuita
- Copia de seguridad gratuita
- PHP 8.0
- Sitios web ilimitados

Palabras finales
En este tutorial, he demostrado el proceso de cómo puedes integrar PayPal en una aplicación PHP. Puedes ampliarlo a usos más complejos como tiendas online, etc. También puedes guardar los pagos de productos en la base de datos con su estado. PayPal lleva a cabo un fuerte control de las cuentas para detectar cualquier actividad fraudulenta, por lo que te sugiero que no lo utilices para pagos falsos, de lo contrario, tu cuenta será bloqueada.
Si aún tienes más preguntas sobre este artículo, no dudes en escribirlas a continuación en la sección de comentarios.
Q. ¿Cómo integro PayPal en mi sitio web?
A. Puedes integrar PayPal registrándote para obtener una cuenta de empresa, generando credenciales de API y utilizando el SDK o la API REST de PayPal para añadir funcionalidad de pago a tu sitio. Hay guías detalladas disponibles en el portal del programador de PayPal.
Q. ¿Cómo integrar un método de pago en PHP?
A. Para integrar un método de pago en PHP, elige una pasarela de pago (como PayPal o Stripe), obtén claves API y utiliza el SDK PHP o la documentación API de la pasarela para configurar el procesamiento de pagos en tu sitio web.
Q. ¿Cómo implementar PayPal en PHP?
A. Para implementar PayPal en PHP, utiliza el SDK PHP o la API REST de PayPal. Empieza por obtener las credenciales de la API de tu cuenta PayPal, integra el SDK en tu proyecto y sigue la guía de integración de PayPal para crear flujos de pago.
Q. ¿La integración de PayPal es gratuita?
A. Sí, PayPal proporciona herramientas de integración y API gratuitas. Sin embargo, PayPal cobra comisiones de transacción por procesar los pagos. Puedes consultar su estructura de tarifas en el sitio web de PayPal.
Start Growing with Cloudways Today.
Our Clients Love us because we never compromise on these
Shahzeb Ahmed
Un creativo de día (con una taza de té) y un creativo de noche. Ahmad Kamran es redactor de contenidos estacionales y Ejecutivo de Marketing Senior en Cloudways. Puedes encontrarle en su escritorio escribiendo, elaborando estrategias o jugando. Y en caso de que no puedas encontrarle aquí, estará en la montaña o junto a la orilla del río.