Integración de Python con PayPal: Pagos y Facturación
PayPal es una plataforma de pago en línea que permite a los usuarios enviar y recibir dinero de forma segura y sencilla. En este tutorial, aprenderemos a integrar Python con PayPal para realizar pagos y facturación.
Requisitos
Para seguir este tutorial, necesitarás lo siguiente:
- Una cuenta de PayPal
- Python 3.8 o superior
- El módulo de Python
requests
Instalación del módulo requests
Para instalar el módulo requests
, ejecuta el siguiente comando en la terminal:
pip install requests
Creación de un cliente de PayPal
Para empezar, crearemos un cliente de PayPal. Un cliente de PayPal es un objeto que nos permite interactuar con la API de PayPal.
import requests
from paypal import PayPalClient
# Crea un cliente de PayPal con tu ID de cliente y secreto de API
client = PayPalClient(
client_id="YOUR_CLIENT_ID",
client_secret="YOUR_CLIENT_SECRET",
)
Realización de pagos
Para realizar un pago con PayPal, utilizaremos el método create_payment
del cliente de PayPal. Este método devuelve un objeto Payment
que contiene información sobre el pago, como el ID del pago, el importe y el estado.
# Crea un objeto de pago
payment = client.create_payment(
amount="10.00",
currency="EUR",
intent="sale",
payer={
"email": "payer@example.com",
"name": "John Doe",
},
)
# Imprime el ID del pago
print(payment.id)
Generación de enlaces de pago
Podemos generar enlaces de pago que los usuarios pueden utilizar para realizar pagos. Para ello, utilizaremos el método create_payment_link
del cliente de PayPal. Este método devuelve un objeto PaymentLink
que contiene un enlace al pago.
# Crea un enlace de pago
payment_link = client.create_payment_link(
amount="10.00",
currency="EUR",
intent="sale",
payer={
"email": "payer@example.com",
"name": "John Doe",
},
)
# Imprime el enlace de pago
print(payment_link.href)
Facturación
Para realizar la facturación con PayPal, utilizaremos el método create_invoice
del cliente de PayPal. Este método devuelve un objeto Invoice
que contiene información sobre la factura, como el ID de la factura, el importe y el estado.
# Crea un objeto de factura
invoice = client.create_invoice(
amount="100.00",
currency="EUR",
items=[
{"name": "Producto 1", "quantity": 1, "price": 50.00},
{"name": "Producto 2", "quantity": 2, "price": 25.00},
],
payer={
"email": "payer@example.com",
"name": "John Doe",
},
)
# Imprime el ID de la factura
print(invoice.id)
Recepción de pagos
Para recibir pagos con PayPal, utilizaremos el método get_payment_details
del cliente de PayPal. Este método devuelve un objeto PaymentDetails
que contiene información sobre el pago, como el ID del pago, el importe y el estado.
# Obtiene los detalles del pago
payment_details = client.get_payment_details(payment_id="PAYMENT_ID")
# Imprime el importe del pago
print(payment_details.amount)
Conclusión
En este tutorial, hemos aprendido a integrar Python con PayPal para realizar pagos y facturación.