На странице оформления заказа, загружая PayPal Javascript SDK, я предоставляю несколько идентификаторов продавца (где [my_client_id]
, конечно, заменяется моим идентификатором), указанные адреса электронной почты были изменены из соображений конфиденциальности:
<script src="https://www.paypal.com/sdk/js?client-id=[my_client_id]¤cy=EUR&locale=de_DE&merchant-id=*"
data-merchant-id="lobo***@gmail.com,suic***@squar***.de,einkauf@***-games.de,paypal@***.events,***@kst***.at"></script>
Затем я создаю отдельную смарт-кнопку Paypal для каждого из продавцов. Но хотя я предоставляю несколько идентификаторов продавца, я получаю следующую ошибку, как только нажимаю кнопку оплаты:
Error: Payee(s) passed in transaction does not match expected merchant
id. Please ensure you are passing merchant-id=****55TUNG or
merchant-id=lobo***@gmail.com to the sdk url.
Но этот идентификатор продавца равен в URL как вы можете видеть выше. Если я нажимаю кнопку оплаты другого продавца, я получаю то же сообщение об ошибке, но с идентификатором этого продавца, указанным в сообщении об ошибке.
Получатель, переданный сценарием PHP с помощью createOrder, является соответствующим адресом электронной почты продавца На 100 процентов правильно.
Это ошибка в SDK PayPal, или я неправильно указываю идентификаторы продавцов в URL-адресе SDK (хотя PayPal так описал это в обсуждении на github )?
ВАЖНОЕ ЗАМЕЧАНИЕ: Если я полностью не укажу идентификаторы продавца в URL-адресе SDK, я получаю Javascript предупреждения об отсутствии идентификатора продавца, но кнопки оплаты работают нормально (что дает мне уверенность в том, что серверный скрипт PHP работает на 100% правильно), платежи обрабатываются.
Что тоже интересно: если я опущу продавца -ids в URL-адресе SDK, PayPal отобразит четыре различных варианта оплаты, если я включу идентификаторы продавца в URL-адрес, будут показаны только два (и оба выдаст ошибку).
Все это относится к производственному режиму.