Экспресс-проверка In-Context для Paypal

Итак, у меня есть система экспресс-оплаты PayPal, благодаря следующему руководству:

http://www.sanwebe.com/2012/07/paypal-expresscheckout-with-php

Но теперь я хотел бы интегрировать контекстный опыт, но еще раз документация совершенно бесполезна:

https://developer.paypal.com/docs/classic/express-checkout/in-context/integration/

Итак, я разберу мои вопросы на основе шагов, которые я должен предпринять:

1. Update your redirect URL to: https://www.paypal.com/checkoutnow/

Что они подразумевают под URL перенаправления? Это возврат или отмена URL? и то и другое? ни? Конечная точка API может быть? Там нет контекста для того, что я должен заменить или где.

  1. Мне нужно добавить следующий код на моем сайте:

    <form id="myContainer" method="post" action="/checkout"></form>

    <script>
    window.paypalCheckoutReady = function () {
    paypal.checkout.setup('<Your-Merchant-ID>', {
    environment: 'sandbox',
    container: 'myContainer'
    });
    };
    </script>
    <script src="//www.paypalobjects.com/api/checkout.js" async></script>

Справедливо. Но что такое action = «/ checkout»? Это не работает само по себе, так что я на самом деле должен положить туда? URL? Это должен быть файл на моем сервере? Если так, что мне нужно сделать в этом файле? ЧТО ЭТО ХОЧЕТ?

Я думаю, это основные проблемы, которые у меня возникли до сих пор. Я просто поражен, что так мало информации о том, как на самом деле настроить это.

3

Решение

In-Context в значительной степени больше изменений «переднего конца» в конце дня (к вашему существующий «перенаправление» интеграции Express Checkout). Итак, что сказал:

«Перенаправление», на которое они ссылаются, является URL Paypal куда вы в данный момент перенаправляете после получения ЕС token

  • этот образец, вероятно, лучше как вы можете видеть, как он используется (строка 51)
    var url = paypal.checkout.urlPrefix +token;

  • как показано, token вы получаете (так же, как вы в настоящее время делаете) добавляется к «новому URL перенаправления» — если вы проверяете консоль браузера для этого paypal.checkout.urlPrefix переменная, вы увидите, что ее значение в том, что «новый URL-адрес перенаправления» (песочница):
    https://www.sandbox.paypal.com/checkoutnow?token=

  • так /checkout это просто образец показывая, как вы, вероятно, назвали бы свою (существующую) реализацию EC бэкэнда, которая получает EC tokenв этот момент вместо выполнения HTTP-перенаправления вы передаете его внешнему интерфейсу, чтобы он мог обрабатываться потоком In-Context.

Hth …

3

Другие решения

Попробуйте это на ваших существующих кодах Express Checkout, буквально нет ничего, что вам нужно было бы подделать или изменить, так что это чисто «Front-end» изменение

  1. Ссылка JavaScript на странице оформления заказа
<script>
(function(d, s, id) {
var js, ref = d.getElementsByTagName(s)[0];
if (!d.getElementById(id)) {
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "//www.paypalobjects.com/js/external/paypal.v1.js";
ref.parentNode.insertBefore(js, ref);
}
}(document, "script", "paypal-js"));
</script>
  1. Замените тег кнопки «PayPal Checkout» этим, никаких изменений в параметре действия формы не требуется
<input type="image" data-paypal-button="true" data-paypal-sandbox="true" src="https://www.paypalobjects.com/webstatic/en_US/i/buttons/checkout-logo-large.png" alt="Check out with PayPal" />

Это немного отличается от инструкций на developer.paypal.com, поскольку это альтернативное решение, позволяющее избежать проблем, но не рекомендуется

1

По вопросам рекламы [email protected]