Paypal PHP integración con ejemplo completo
Paypal PHP integración con ejemplo completo. PayPal es una empresa pionera en el rubro de transacciones por internet y es la pasarela de pago más usada en el mundo para integrar en su sitio web para recibir pagos en todo el mundo. Por lo tanto, podemos usarlo para comprar o para recibir pagos de una manera sencilla.
Ahora, si observamos el proceso de pago es muy importante para cualquier empresa que tiene su página web de comercio electrónico. Sin embargo, existen muchas compañías similares a PAYPAL pero esta compañía es la más preferida por millones de usuarios en todo el mundo.

Paypal PHP integración con ejemplo completo
Ser la compañía más popular del mundo en transacciones financieras no la detiene, es más trata constantemente de innovar con nuevos productos y servicios para la satisfacción de sus usuarios. Por lo tanto, PayPal, creo una nueva característica llamada «PayPal Express Checkout»
¿Cómo funciona el sistema integración PayPal Express Checout?
Su uso es sistematizar la venta en tiempo real, veamos algunas características.
- Permitirá a los compradores una experiencia de pago simple.
- Segura que los mantiene locales para el sitio web.
- Mantiene en la aplicación móvil durante el proceso de pago.
- Ventana flotante.
- No abandona el sitio web donde realiza la compra.

PayPal Express Checkout es una solución final de cliente y necesita usar el código PayPal Checkout.js. Así que hoy en este tutorial aprenderá a integrar PayPal Express Checkout en su sitio web con PHP.
Estructura del sistema PayPal PHP integración
A continuación, veremos los recursos que necesitamos para integrar PayPal Express Checkout con PHP. Ahora, veremos los principales archivos para este sistema.
- index.php.- En este archivo contendrá el carrito de compras con la integración PayPal.
- config.php.- La configuración se realizara en este archivo, por ejemplo PayPalClientId, entre otras variables necesarias para el funcionamiento.
- payPalCheckout.php
- orderDetails.php
- header.php
- contenedor.php

Configuración del sistema PayPal PHP integración
Detallaremos los pasos para una correcta implementación del sistema.
Paso 01: Configurar la cuenta de Sandbox de PayPal
- Primeramente tenemos que ir a https://developer.paypal.com y crear una cuenta de PayPal Sandbox para poner en marcha el siguiente ejemplo.
- Necesitamos también crear una aplicación de API de REST pasando por el enlace de aplicaciones REST API en el panel de Sandbox de PayPal.
- Cuando se crea la aplicación REST API, se obtendrá detalles de Sandbox y de la aplicación con ID de cliente y clave secreta para integrar PayPal Express Checkout.

Paso 02: Crear configuración
Esta parte es muy importante, porque se trata de la configuración del sistema y estamos hablando del archivo config.php
. Sin embargo, en este archivo definiremos la configuración de Sandbox para integrar PayPal Express Checkout.
La variable ProPayPal
está definida con el valor 0 para probar la funcionalidad en modo de prueba. Por lo tanto, tenemos que cambiar a 1 cuando entremos en modo real.
<?php //ProPayPal es vital para declarar si es demo o prueba las transacciones //define('ProPayPal', 0); // El cero simboliza entorno de Prueba //define('ProPayPal', 1); // El 1 simboliza entorno de producción define('ProPayPal', 0); if(ProPayPal){ define("PayPalClientId", "*********************"); define("PayPalSecret", "*********************"); define("PayPalBaseUrl", "https://demo.baulphp.com/paypal-php-integracion-con-ejemplo-completo/"); define("PayPalENV", "production"); } else { define("PayPalClientId", "AVACP5vOuQheKwTdBy_tlt2CY3g9CT4NAK3D8j3gEpMIpiO79WuRXaGi--I1ycXOhlaTfzXauydINNoS"); define("PayPalSecret", "EMA6lVCQBJ20WMKOj93Z-M3t9cB5_sq0lV3AZgB0eu8pX2PKuFAsHus87bz3N6EdVyVmfyX1B3QqsEHG"); define("PayPalBaseUrl", "https://demo.baulphp.com/paypal-php-integracion-con-ejemplo-completo/"); define("PayPalENV", "sandbox"); } ?>
Entorno de producción PayPal
Si estas intentando crear un entorno real y/o produccion debes de considerar estos pasos:
ProPayPal es vital para declarar si es demo o prueba las transacciones
define(‘ProPayPal’, 0); // El 0 simboliza entorno de Prueba
define(‘ProPayPal’, 1); // El 1 simboliza entorno de producción
Ahora, en paypal para desarrolladores puedes acceder desde este enlace
Pasos para crear una Apps en PayPal desarrolladores
- Primer paso: Elegir My Apps & Credentials
- Segundo paso: Marcar la opción Live (si es de pruebas marcas sandbox )
- Tercer paso: Clic en crear App
Imagen referencial para obtener las credenciales en producción
Paso 03: Mostrar detalles del elemento con el botón de pago exprés PayPal
Todos los datos del producto con el botón de compra será ejecutada desde el archivo index.php. Por lo tanto, en este fichero se mostrarán los detalles del elemento con el botón PayPal Express Checkout.
También incluiremos el archivo «paypalCheckout.php» para mostrar el botón PayPal Express Checkout de manera dinámica.
<div class="container"> <h2>Paypal Express Checkout demostracion en PHP/h2> <br> <table class="table"> <tr> <td style="width:150px"><img src="demo_product.png" style="width:50px" /></td> <td style="width:150px">$<?php echo $productPrice; ?></td> <td style="width:150px"> <?php include 'paypalCheckout.php'; ?> </td> </tr> </table> </div>

Paso 4: Configurar PayPal Express Checkout
Primero configurar el fichero paypalCheckout.php, para mostrar el botón y procesar el pago con respuesta de la plataforma. Sin embargo, llamaremos a orderDetails.php para mostrar los detalles del proceso de pago con los valores requeridos para poder comprobarlo en vivo. A continuación, un ejemplo.
<div id="paypal-button-container"></div> <div id="paypal-button"></div> <script src="https://www.paypalobjects.com/api/checkout.js"></script> <script> paypal.Button.render({ env: '<?php echo PayPalENV; ?>', client: { <?php if(ProPayPal) { ?> production: '<?php echo PayPalClientId; ?>' <?php } else { ?> sandbox: '<?php echo PayPalClientId; ?>' <?php } ?> }, payment: function (data, actions) { return actions.payment.create({ transactions: [{ amount: { total: '<?php echo $productPrice; ?>', currency: '<?php echo $currency; ?>' } }] }); }, onAuthorize: function (data, actions) { return actions.payment.execute() .then(function () { window.location = "<?php echo PayPalBaseUrl ?>orderDetails.php?paymentID="+data.paymentID+"&payerID="+data.payerID+"&token="+data.paymentToken+"&pid=<?php echo $productId; ?>"; }); } }, '#paypal-button'); </script>
Paso 5: comprobar los detalles del proceso de pago
Ya estamos en la etapa final del proceso de pago. Ahora, la respuesta será mostrada en el fichero orderDetails.php. Así que comprobaremos los valores devueltos en el proceso de pago, veamos los resultados.
a) ID de token.
b) ID de pago.
c) ID de pagador.
d) ID de producto.
<?php if(!empty($_GET['paymentID']) && !empty($_GET['payerID']) && !empty($_GET['token']) && !empty($_GET['pid']) ){ $paymentID = $_GET['paymentID']; $payerID = $_GET['payerID']; $token = $_GET['token']; $pid = $_GET['pid']; ?> <div class="alert alert-success"> <strong>Success!</strong> Su pago ha sido procesado correctamente. </div> <table> <tr> <td>Payment Id: <?php echo $paymentID; ?></td> <td>Payer Id: <?php echo $payerID; ?></td> <td>product Id: <?php echo $pid; ?></td> </tr> </table> <?php } ?>
CONCLUSIÓN DEL SISTEMA
- Este sistema es básico para iniciar en el mundo del comercio electrónico ya que con este ejemplo verán como funciona los procesos de pago por internet.
- Si está pensando en promocionar y vender productos estas en el lugar correcto. Porque, con esta simple aplicación y su correcta configuración podemos recibir pagos por los productos que estemos promocionando por internet.
- Su uso es muy recomendado, porque tenemos el respaldo de una gran compañía llamada PAYPAL.
DESCARGA DEL SISTEMA
A continuación, les dejare un ejemplo completo de este pequeño sistema para que lo usen como base en proyectos futuros.
Ver DemostraciónScript corregido
paypal-php-integracion-con-ejemplo-completo_corregido