Работа из 1С с API PayPal

Публикация № 1119312 08.09.19

Интеграция - WEB-интеграция

PayPal HTTP APIPapPal TransactionPayPal JSON XDTO

PayPal - международная платежная система является очень популярной за пределами СНГ для онлайн торговли и не только. API PayPal достаточно хорошо документирован. При попытке связать 1C с PayPal пришлось столкнуться с несколькими нюансами, которыми и хотелось бы поделиться в этой статье с примерами программного кода.

   При попытке связать 1с с PayPal пришлось столкнуться с несколькими нюансами, которыми и хотелось бы поделиться в этой статье. В принципе через API PayPal с аккаунтом можно делать вообще практически все что угодно – не только получать информацию, но при желании даже управлять перечислениями средств, возвратами и т.п. У меня была более простая задача – получить информацию об оплатах клиентов в 1С.

В первую очередь идем за официальной документацией сюда https://developer.paypal.com/docs/api/overview/

После прочтения документации сложилась общая картина взаимодействия с API по принципам похожая на работу с мессенджером Slack – считаю его самым удобным для разработчиков. (если интересно, то пишите комментарии чтобы появился стимул для статьм как работать из 1С со Slack и даже при желании создать там своего бота).

Связь с API PayPal настраивал через HTTP запросы. Вкратце – нужно включить доступ по API и настроить в терминах PayPal что-то типа Приложение, у которого взять нужные для связи ClientID и ClientSecret, далее через спец. запросы получать временный токен доступа для работы и уже используя полученный токен доступа делать запросы. Как включить работу через API см. на картинках.

Получаем то, ради чего мы включали API

Далее желательно проверить работу полученной связки через Postman, инструкция https://developer.paypal.com/docs/api/get-an-access-token-postman/ нам в помощь. У меня долго не получалось получить временный Токен доступа, то ли версия Postman была другая, то ли документация устаревшая, но в итоге если задать получение токена вручную

и вставить также потом вручную токен в ключ Authorization обязательно после слова Bearer c пробелом, то запросы и ответы у меня в Postman заработали.

   Далее уже дело техники и кода в самом 1C. В первую очередь перед запросами получаем программно токен доступа.

 
 Получаем токен доступа

    Здесь ничего сложного, кроме того, что строку ClientD+ClientSecret перед передачей надо обернуть в Base64 – об этом в официальной документации не было ни слова или я плохо искал или это считается по-умолчанию уж не знаю, но так как 1с на зарубежных форумах, к сожалению ((( и рассчитываю что только пока вообще не представлен, то помогли подсказки с других форумов, в частности спасибо ребятам по PHP.

    Ну может теперь можно уже посылать любые нужные нам запросы через API...?!..., но и здесь есть подводные камни. Первое: если ответ API превышает более 100-500 строк (где-то в дебрях настроек PayPal выставляется– не успел нарезать скриншоты, но найти несложно), то ответ разбивается на страницы по 100-500 ответов и находясь в контексте 1С &НаСервере – ни в какую не хотели страницы "перелистываться". Пришлось делать цикл &НаКлиенте и собирать ответы с сервера.

 
 Получаем данные

    Чтобы получить именно список транзакций, где содержится нужная мне информация предварительно следует отдельно её включить и подождать 3 часа. Я не проверял точность и продолжил на следующий день.

   Приведенные примеры должны работать на любой конфигурации с УФ с версией платформы 8.3. Тестировал в КА 2.4 на платформе 8.3.13.

Другие мои публикации на Инфостарте:

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. twilight_dream 12.05.20 14:53 Сейчас в теме
Интересно. Чем то напомнило REST API вукомерса. правда не понял, пр ичем здесь SOAP в таком случае, если это типичный REST интерфейс с первого взгляда.
2. nastrou1c 22 30.09.20 18:24 Сейчас в теме
Добрый день!
Спасибо за статью. Настраиваю интеграцию с PayPal и она направляет в нужное русло.
Однако у меня возникли сложности при получении токена по вашему алгоритму.
Подскажите, пожалуйста, какие параметры надо задавать в Host и GetTokenURL, чтобы функция сработала.
Если я указываю Host = "https://api.sandbox.paypal.com" и GetTokenURL = "";/"v1/oauth2/token"- получаю ошибку: "Ошибка работы с Интернет: Couldn't resolve host name". И действительно https://api.sandbox.paypal.com браузером не находится.
И если указываю Host = "https://api.sandbox.paypal.com/v1/oauth2/token"; и GetTokenURL = ""; тоже такая ошибка.
Хотя в браузере "https://api.sandbox.paypal.com/v1/oauth2/token" открывается.

p.s. при получении токена по инструкции "https://developer.paypal.com/docs/api/get-an-access-token-postman/" нужно не забывать указывать параметры подключения для sandbox аккаунта подключения к api, т.к. адрес "https://api.sandbox.paypal.com/v1/oauth2/token" подходит только для них и видимо это было причиной проблемы о которой вы упоминаете в статье.
Прикрепленные файлы:
4. da_1c 173 08.02.21 19:19 Сейчас в теме
3. YA_1130000018920043 07.02.21 19:00 Сейчас в теме
Скажите в кудир потому данные корректно можно вытянуть?
5. da_1c 173 08.02.21 19:19 Сейчас в теме
6. YA_1130000018920043 08.02.21 19:51 Сейчас в теме
(5) как с вами связаться? )
7. KrivosheevEV 16.03.21 15:37 Сейчас в теме
Для работы с API PayPal нужно иметь корпоративный счёт?
Можно работать как физ.лицо?
Оставьте свое сообщение

См. также

Serverless (Faas) в 1С. Создание и вызов Yandex Cloud Functions

WEB-интеграция Облачные сервисы, хостинг Платформа 1С v8.3 Бесплатно (free)

"Я не могу просто взять и скопировать код с гитхаба", "у нас 1С микросервисами окружена", "возможностей мало" - частые фразы 1С разработчиков. которым не хватает возможностей платформы в современном мире. Faas, конечно, история не новая, но нас сдерживало 152ФЗ и задержки по пингам. Для того, чтобы действительно использовать в 1С код, к примеру, на Python, надо было приложить усилия. Теперь всё намного проще - берём и используем.

28.12.2020    12903    comol    32    

108

Online телефонный справочник из 1С: Зарплата и управление персоналом

WEB-интеграция Платформа 1С v8.3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    28861    ruha    21    

36

Кэширование COM-соединения. Три способа

Внешние источники данных WEB-интеграция Обмен между базами 1C Платформа 1С v8.3 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    44876    Infostart    46    

59

Методика интеграции HTML редакторов в поле HTML документа базы 1С

WEB-интеграция Платформа 1С v8.3 Платформа 1C v8.2 Бесплатно (free)

В статье описаны критерии WYSIWYG HTML редакторов и общая картина интеграции с платформенными механизмами. На момент платформы 1С 8.3 и возможно для будущих релизов описание будет скорее всего актуально. Апробировано на 1С 8.3.20 и 8.2.12, а также на мобильной платформе 8.3.19.59.

12.04.2022    1950    user1206119    2    

13

Что делать, когда методы объекта ПолеHTMLДокумента.Документ (УФ) недоступны?

WEB-интеграция Управляемые формы 8.3.14 Бесплатно (free)

Начиная с версии 8.3.14 некорректно загружаются некоторые веб-страницы в поле HTML-документа на УФ - методы ПолеHTMLДокумента.Документ недоступны. Методом "научного втыка" удалось обойти этот глюк системы.

27.02.2023    534    romasna    2    

8

Возможности доработки выгрузки из 1С в Битрикс

WEB-интеграция Платформа 1С v8.3 Управленческий учет Бесплатно (free)

В статье собраны некоторые полезные и интересные примеры доработок выгрузки из 1С на сайты на платформе Битрикс (Возможно, что-то подойдёт и для WordPress и других платформ, принимающих типовую выгрузку на сайт из 1С). Доработки рассмотрены без привязки к конкретным конфигурациям, примеры кода взяты в основном из доработок УТ 10 и 11. Некоторые доработки требуют изменений на стороне Битрикса, некоторые укладываются в типовой функционал. Примеры взяты из личного опыта, возможно, описание где-то не полное, т.к. доработки делались в разное время. Если материал будет интересен или будут аналогичные актуальные задачи, буду стараться дополнять статью более подробным описанием и примерами.

01.11.2022    1445    de0nis    2    

13

Подключение к HTTP-сервису с авторизацией посредством передачи клиентского SSL-сертификата

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

В статье хочу поделиться опытом настройки подключения 1С к стороннему HTTP-сервису, использующему авторизацию посредством передачи клиентского SSL-сертификата.

07.12.2021    11476    kholkin    12    

106

Подробная настройка работы с сервисом 1С:Сверка

WEB-интеграция Анализ учета Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье будет описано, что такое сервис 1С:Сверка, для каких целей он необходим и как его корректно настроить, а именно: подключать 1С сервис, привязывать к нему электронную почту, отправлять запросы поставщикам, получать от них ответы, сверять данные, а также отвечать и писать клиентам.

19.01.2023    731    Koder_Line    0    

0

Пагинация в 1С

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Те, кому приходилось делать REST API на базе HTTP-сервисов 1С, могли в какой-то момент столкнуться с необходимостью разработки методов, которые позволяли бы возвращать данные с пагинацией, т.е. последовательными порциями. В языках общего назначения пагинация реализуется простым использованием операторов OFFSET и LIMIT в SQL-запросе к базе данных. В языке запросов 1С оператора OFFSET нет, поэтому всем приходится решать эту задачу обходными способами. Один из таких обходных способов представлен в этой статье.

09.01.2023    2739    aleksei_adamov    36    

21

1С бакэнд (каталог товаров)

WEB-интеграция Платформа 1С v8.3 1С:Розница 2 Россия Бесплатно (free)

Серверная часть на 1с8 для веб каталога. Попробую поделиться опытом, как я использовал 1С в качестве веб сервера для веб витрины.

01.01.2023    1548    aldar    7    

20

Новый SimpleWEB – тот же Simple, теперь еще web

WEB-интеграция Мобильная разработка Мобильная платформа Бесплатно (free)

Представляю новый отдельный проект на старой семантике – фремйворк для создания веб приложений. Для разработчика симпла ничего не меняется – все тот же стек разработки, тот же конфигуратор и принципы разработки, но конфигурации теперь можно запускать не только на Андроид, но и в виде веб – приложений. Т.е. теперь платформы две – мобильная и веб, в два раза больше поводов перейти на этот стек разработки. Проект пока на стадии альфы, но развивается.

19.12.2022    2834    informa1555    9    

39

Goods info - приложение для получения информации о товарах

WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 Оптовая торговля, дистрибуция, логистика Бесплатно (free)

Мобильное приложение предназначено для получения информации о товарах. Кроме этого, можно произвести сборку заказа и отправить на email или в мессенджер.

04.09.2020    2431    hpi    11    

6

Реализация нестандартных (для 1С) интерфейсных решений в Web-клиенте

WEB-интеграция Идеи и тренды в разработке Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Онлайн-сервисы, построенные на 1С, могут использовать все многообразие веб-технологий. О том, как спроектировать, реализовать и красиво оформить интерфейс продукта 1С, в докладе на конференции Infostart Event 2021 Post-Apocalypse рассказал CTO компании WiseAdvice Олег Филиппов.

21.10.2022    7102    comol    15    

70

Модуль переводов и платежей QIWI

Розничная торговля WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 Россия Бесплатно (free)

Инструкция по установке и работе "Модуля переводов и платежей QIWI" для УТ11.4. Публикация создана с целью размещения актуальной онлайн инструкции по работе пользователей с функционалом оформления платежей или переводов КИВИ через РМК в УТ11.4, а также для описания установки модуля в УТ 11.4 и размещения необходимых библиотек dll.

03.06.2022    760    Rastopchinss    5    

2

Rest API от чайника для чайников

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На написание статьи побудило чтение книги "Технологии интеграции "1С:Предприятия 8.3"" Хрусталевой Е.Ю. В первой главе там постоянно чередуются слова REST, REST-интерфейс, архитектура REST и т.д. Мне стало интересно, я начал копать, что это такое, и тема оказалась достаточно интересной.

06.06.2022    14518    zeltyr    2    

11

Организация HTTP публикации каталога товаров используя PostgREST

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье опишу порядок установки настройки и использования PostgREST на примере организации каталога товаров.

05.10.2020    3001    malikov_pro    2    

17

Загрузка выпусков подкаста Радио 1С Энтерпрайз

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Код для загрузки всех выпусков подкаста Радио 1С Энтерпрайз для оффлайн-прослушивания.

29.04.2022    1232    q_i    9    

16

УПП: Ошибка при взаимодействии с ФСС

Регламентированный учет и отчетность WEB-интеграция Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

При обновлении релиза УПП до 1.3.178.2 пользователи начали жаловаться, что не отправляются в ФСС документы "Ответ на запрос ФСС для расчета пособия" и "Сведения о застрахованных лицах, ФСС". В статье предложен вариант обхода данной ошибки, возможно, это кому-то поможет.

28.04.2022    1532    alex_bob    8    

3

Создание кодогенератора для Postman

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Опишу порядок разработки кодогенератора для Postman c использованием OneScript и HTTPКоннектор.

13.03.2022    1552    malikov_pro    4    

9

Как из 1С отдать миллионы строк в BI и успеть это сделать быстро

Консолидация данных Анализ и проектирование ИТ-систем WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На онлайн-митапе «Бизнес-анализ по данным базы 1С. Интеграция c платформами BI» выступил ведущий разработчик WiseAdvice.tech Дмитрий Фурцев. Дмитрий рассказал о том, как отдать миллионы строк из 1С в платформу бизнес-аналитики и не потратить на это сутки.

14.02.2022    5364    Fudj1k    11    

22

Передача сообщений из 1С в MS Teams

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример организации уведомлений в канал MS Teams.

09.02.2022    2306    Alex_YAM    4    

24

Работа с 1С через протокол OData

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В данной статье мы будем рассматривать работу с данными информационной базы через протокол OData (далее OData).

17.12.2021    34963    ProgrammingStore    27    

88

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С (Часть 2)

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Это вторая часть цикла статей, посвящённых типовому модулю интеграции 1С Предприятия и Битрикс24. Цель данной части: рассмотреть тонкости, связанные с обменом товарами и сопутствующими сущностями (спойлер - единицы измерения и свойства товаров). Также затронем некоторые нюансы связи сущностей 1С и Б24 (относящиеся не только к товарам) и их побочное влияние при переносе данных из модуля в модуль (при смене конфигурации, переустановки или обновлении модуля).

27.11.2021    9198    freegman74    16    

19

Web консоль управления сеансами 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Мы дали ему название adm1c, он позволяет посредством веб доступа удалять или смотреть на сеансы в 1С базах и при необходимости удалять их. Да и что тут такого, сказали бы, есть же консоль на win, с нее же это можно делать, и все верно, но есть пара но.

26.11.2021    3156    4ernuy    16    

28

Реализация перевода текста средствами Azure

WEB-интеграция Локализация решений Платформа 1С v8.3 Россия Бесплатно (free)

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

19.11.2021    764    user1559835    2    

4

Ограничение доступа к HTTP публикациям 1С сервера используя NGINX

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье опишу вариант ограничения доступа к HTTP публикациям 1С сервера используя NGINX.

02.07.2020    14619    malikov_pro    14    

87

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Цель статьи - указать на подводные камни и нюансы, о которых “не пишут на заборах” и которые встретились мне за время внедрения типового модуля интеграции 1С и Битрикс24. Будет интересна для людей, кто подумывает о том, чтобы настроить интеграцию, и хотят понять, с чем столкнутся. А также для тех, кто уже работает с подобным обменом, столкнулся с какими-то из описанных ситуаций и хочет понять, что пошло не так и “как жить дальше”. Постараюсь все описать “человеческим” языком с минимальной долей терминов, так как статья, надеюсь, будет полезна не только программистам.

07.11.2021    12990    freegman74    13    

37

Окей, Google

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Пример интеграции Google Ассистента с 1С. В основе которого лежит платформа Dialogflow CX для понимания естественного языка.

28.10.2021    2176    Soloist    6    

29

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB-интеграция HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    4941    sorter1    3    

47

WEB/HTTP сервисы. Базовые отличия и применение на практике

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    30031    Neti    23    

114

Быстрое чтение составных http сообщений multipart/form-data

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Алгоритм быстрого разбора составного http сообщения multipart/form-data.

26.09.2021    3129    cherkasovvitalik    4    

56

Использование Yandex Translate (Яндекс.Переводчик)

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье опишу вариант подключения и использования Yandex Translate.

08.07.2020    15096    malikov_pro    8    

19

Интеграция 1С с Битрикс24 через вебхуки

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Пример получения токена и http запрос к API битрикса.

15.09.2021    9768    TyurinArt    11    

32

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

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

07.09.2021    11410    ix5s    25    

67

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Все чаще разработчики склоняются к использованию 1C в качестве бэкенда при разработке веб-приложений. Но благодаря встраиванию веб-клиента 1С в сайт можно получить еще больше готовой функциональности. О том, как реализовать гибридное приложение за счет связки 1С с другими веб-технологиями, рассказал разработчик компании Neti Эльдар Мингалиев.

06.09.2021    5296    Бэнни    12    

51

Работа с WEB-сервисами под HTTPS на примере прямого обмена между базами (1С – 1С) 

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Использование веб-сервисов 1С при обмене 1С – 1С позволяет быстро передавать достаточно большие объемы данных из базы-источника в базу-приемник в объектах языка 1С. Данный метод обмена может применяться при бесшовной интеграции между двумя базами 1С, но требует определенной серверной инфраструктуры (установленного и настроенного WEB-сервера).

03.09.2021    12248    UltraUnion2005    9    

35