Ver Mensaje Individual
  #9 (permalink)  
Antiguo 03/01/2018, 13:31
Avatar de xfxstudios
xfxstudios
 
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Validar respuesta desde PayPal después de pagar

Como tuto adicional, podrías utilizar el nuevo metodo por promesas ajax de paypal:

Paso 1.- Ingresas a la siguiente URL con tu cuenta sandbox o la creas alli: https://developer.paypal.com

Una vez ingreses veras una pantalla como esta:



Alli veras opciones como

Dashborad > My Apps Credentials
Dashborad > My Acoount

Sandbox > Accounts
Sandbox > Notifications
etc..

En esa pantalla verás un boton casi al final que dice Create App, este será al igual que en facebook la que se encargara de gestionar las peticiones de api desde tu web.

Una vez creada la app, te proporsionara los codigos de api y secret necesarios para tus peticiones desde la web.

Paso 2.- En tuu web en el header de la pagina que se encargara de gestionar los pagos llamas al archivo de enlace de paypal:

Código HTML:
Ver original
  1. <script src="https://www.paypalobjects.com/api/checkout.js"></script>

Luego indicas donde se va a mostrar el boton de pago de PayPal:

Código HTML:
Ver original
  1. <div id="paypal-buttonA"></div>

posteriormente antes del fin del body, colocas el codigo que se encargara de todo:

Código Javascript:
Ver original
  1. var state = 'sandbox';//production-sandbox (Aqui indicas si el codigo esta en modo sandbox o produccion)
  2.     paypal.Button.render({
  3.         env: state,
  4.         style: {
  5.             size: 'medium',//Tamaño del boton
  6.             color: 'blue',//Color del boton
  7.             shape: 'pill',//Tipo de Boton
  8.             fundingicons: false,
  9.             branding: true // Impresion del boton en el html
  10.         },
  11.         client: {
  12.             sandbox:    'CODIGO API PARA SANDBOX',
  13.             production: 'CODIGO API PARA PRODUCCION'
  14.         },
  15.         commit: true,//Mostramos el boton en el html
  16.         payment: function(data, actions) {
  17.             return actions.payment.create({
  18.                 payment: {
  19.                     transactions: [
  20.                         {
  21.                             amount: { total: MONTO A COBRAR, currency: 'USD' },
  22.                             description:'Descripcion Basica del Producto',
  23.                             custom:'INFORMACION ADICIONAL DE LA COMPRA'
  24.                         }
  25.                     ]
  26.                 }
  27.             });
  28.         },
  29.         onAuthorize: function(data, actions) {
  30.             return actions.payment.execute().then(function(payment) {
  31.                 console.log(payment);
  32.             });
  33.         },
  34.         onCancel: function(data, actions) {
  35.             console.log(data);
  36.         }
  37.     }, '#paypal-buttonA');

Esto te retornara un objeto con la informacion de la transacción:



Donde podras ver:
cart: el codigo del carro de venta en paypal
crete_time: fecha de la transaccion
id: ID/Referencia de la transaccion

payer > payer_info > country_code: Codigo de pais del comprador
payer > payer_info > email: Email del Comprador
payer > payer_info > first_name: Nombre del Comprador
payer > payer_info > last_name: Apellido del Comprador
payer > payer_info > payer_id: ID del comprador en PayPal
payer > payer_info > Shipping_addres: DIreccion de envio si es especificada durante la compra
payer > payer_info > payment_method: Metodo de pago del cliente PayPal, TDC, etc
payer > payer_info > status: Estado de la cuenta del cliente

state: Estado del Pago

transaction > 0 > ammount > currency: Moneda de pago del cliente
transaction > 0 > ammount > total: Total pagado por el cliente
transaction > 0 > ammount > custom: La informacion adicional del pago pasada desde el script

ya con eso puedes gestionar los pagos sin que el cliente salga de tu sitio web, mejorando la experiencia de este.

Hay otras opciones y configuraciones que podrás ver en el sitio web de PayPal.

Saludos
__________________
[email protected]
HITCEL