Hola,
Leyendo sobre la interfaz de PayPal me he encontrado con algunos inconvenientes... este es mi ejemplo ilustrativo:
Supongamos que quiero implementar una interfaz propia con PayPal u otro Payment Gateway en PHP. Supongamos también que tengo una página en la que se pueden elegir *diversos* productos con *diversos* precios, quitando la opción de crear un botón en PayPal y pegar el código.
Entonces tengo unos datos X en PHP, con una venta esperando pago. El usuario debe redirigirse para poder pagar con tarjeta, e inmediatamente luego de pagar, ser capaz de obtener un código de descarga, o datos de contacto (caso de MercadoLibre/eBay).
Como es inmediato, no hay trabajo de backoffice como pegar un número de factura, o un monto a nombre de X persona (como pasa a veces con las compañías de hosting)... NO: El usuario debe pagar y descargar. Pagar y ver datos. Pagar y que reaccionemos.
¿Cómo implementarían algo así?
Eso se puede hacer con la API de PayPal, se llama IPN (Instant Payment Notification).
Te dejo unos tutoriales para implementarlo con PHP:
_Using PayPal's Instant Payment Notification with PHP (http://net.tutsplus.com/tutorials/php/using-paypals-instant-payment-notification-with-php/).
_PHP Paypal IPN Integration Class (http://www.micahcarrick.com/php-paypal-ipn-integration-class.html).
Y una librería para trabajar con la API de PayPal:
_PayPal Web Service (http://sourceforge.net/projects/paypal/).