Files
proyecto-final/docs/views/paypal_execute.md

1.4 KiB

paypal_execute

Archivo: tienda/views.py
URL: /tienda/paypal/ejecutar/
Tipo: Vista privada (requiere autenticación)
Decorador: @login_required

Descripción

Procesa la confirmación de un pago de PayPal después de que el usuario lo aprueba en el portal de PayPal. PayPal redirige al usuario a esta URL con los parámetros PayerID y el token de la transacción.

El proceso es:

  1. Obtiene payment_id de la sesión y PayerID de los parámetros GET.
  2. Configura y ejecuta el pago en PayPal.
  3. Si el pago es exitoso, llama a create_order_from_cart para crear el pedido.
  4. Limpia las claves de sesión relacionadas con el pago.
  5. Renderiza la página de éxito con el pedido.

Firma

def paypal_execute(request: HttpRequest):

Parámetros

Nombre Tipo Descripción
request HttpRequest Petición HTTP de Django.

Parámetros GET (de PayPal)

Parámetro Descripción
PayerID ID del pagador proporcionado por PayPal.

Template (en caso de éxito)

tienda/checkout_success.html

Redirecciones

Caso Destino
Datos incompletos / error en el pedido checkout