Después de ti
# step 0: get token curl --request POST --compressed --silent 'https://api-m.sandbox.paypal.com/v1/oauth2/token' --header 'accept: application/json' --header 'accept-language: en_us' --user '<clientid>:<secret>' --data 'grant_type=client_credentials' # step 1: create the order (use the token from step 0) curl --request POST --compressed --silent 'https://api-m.sandbox.paypal.com/v2/checkout/orders' --header 'content-type: application/json' --header 'authorization: bearer <token>' \ --data '{ "intent": "CAPTURE", "purchase_units": [{"amount": {"value":"10.00", "currency_code":"USD"}, "description": "hello", "application_context": {"brand_name":"mybrand", "shipping_preference":"NO_SHIPPING", "return_url":""}}] }'le muestra al usuario la página de aprobación, donde puede ingresar sus credenciales y aprobar el pago:
# step 2: show the user the approval page https://www.sandbox.paypal.com/checkoutnow?<order_id> Estoy tratando de implementar el paso 2 en el cliente, con Javascript, sin redireccionamientos (es decir, sin pasar un return_url a /checkout/orders en el paso 1) y sin usar los botones de PayPal que vienen con JS SDK.
Esto significa que abres una nueva ventana.
window.open('https://www.sandbox.paypal.com/checkoutnow?<order_id>')y dejar que el usuario haga lo suyo.
Tengo todo funcionando bien, excepto la parte que cierra la ventana de aprobación en el paso 2.
Después de que el usuario inicie sesión y apruebe el pedido en la ventana recién creada, ¿cómo puedo cerrarlo automáticamente?