Lenguaje PHP

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
Paypal PHP integración con ejemplo completo

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 Checkout orden y pagar ahora, vista general
Paypal Checkout orden y pagar ahora, vista general

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
integracion pasarela pago con paypal y php
integracion pasarela pago con paypal y 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.
Creacion de cuenta en developer paypal
Creacion de cuenta en developer paypal

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>
PayPal Express Checkout con integración PHP
PayPal Express Checkout con integración PHP

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ón

Script corregido

paypal-php-integracion-con-ejemplo-completo_corregido

 

Mostrar más

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.
Botón volver arriba
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad