Содержание
Как работает
Если вы не разработчик, прочитайте эту статью, она значительно облегчит использование API 2.0.
Вы можете создать счет, формируя запрос к API сервиса программными методами.
Запрос передаётся методом POST в формате URLencode на адрес: https://username.expertam.ru/api/createorder, где username — это логин пользователя в системе и его домен 3-его уровня в сервисе Expertam.
В ответ на запрос ваша система получит результат выполнения функции в формате JSON. Например, такой:
1 |
{"error_code":0,"error_text":"OK","result":[],"hash":"******************************"} |
Подробнее смотрите «Ответы API сервиса».
Параметры передаваемые в запросе
Параметры запроса следующие, обязательным параметром является «rps_key» — ваш ключ API:
- rpsKey — ключ API; ключ для вашего аккаунта находится в разделе «Интеграция и API», ссылка на раздел находится в футере личного кабинета или вот /shops/setts/apisettings/
- customer_email — email контакта, на который оформить счет; строка
- customer_first_name — имя контакта; строка
- customer_last_name — фамилия контакта; строка
- customer_middle_name — отчество контакта; строка
- customer_phone — телефон контакта; строка
- order_ip — строка (IP адрес счета/контакта)
- customer_shipping- адрес доставки; строка
- customer_shipping_phone — номер телефона покупателя; строка
- customer_shipping_address_2 — адрес доставки (рекомендуется использовать как дополнительное поле в случае сложных адресов); строка
- customer_shipping_city — адрес доставки (рекомендуется использовать для города); строка
- customer_shipping_state- адрес доставки (рекомендуется использовать для области/штата); строка
- customer_shipping_zip — адрес доставки (рекомендуется использовать для индекса); строка
- customer_shipping_country_code = строка ([ISO country codes](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes), ex. «US»,»CA» etc)
- customer_billing_address_1 — строка
- customer_billing_address_2 — строка
- customer_billing_city — строка
- customer_billing_state — строка
- customer_billing_zip — строка
- customer_billing_country_code — код страны доставки; строка; передавать в формате [ISO country codes] (ex. «US»,»CA» etc), автоматически заменится на страну (например, «US» станет «Соединенные Штаты Америки»)
- order_tag — тег счета, может быть только один (не путать с тегом контакта); строка
- note — заметка к счету, видна в карточке счета; строка
- order_created_at — дата и время создания счета (30.01.2020 04:22:16 or 2019-07-30 04:22:16); строка
- order_paid_at — дата и время оплаты счета (30.01.2020 04:22:16 or 2019-07-30 04:22:16); строка
- order_status — статус создаваемого/изменяемого счета (Expected, Paid, Cancel or MoneyBack); строка
- order_confirmed — подтвержден счет или нет (Yes, No, True, False or Сonfirmed); строка
- order_sales_manager — id персонального менеджера для контакта (id берется из ссылки редактирования сотрудника /shops/access/)
- product_names — обязательный параметр; id продуктов, включенных в счет; значения через запятую (берутся из ссылки на страницу заказа)
- product_prices — не обязательный параметр, цена продукта; значения через запятую; если не указать, будет взята цена из настроек продукта в личном кабинете; если в счете 5 продуктов, а цен явно указано только — 3, то последние два имени будут с ценой из настроек в личном кабинете (в конкретном продукте)
- payment_method — строка (Card2Card, Expertam, Api, PayPal, Яндекс, PayU)
- coupon — id купона скидки (из адресной строки при редактировании купона в личном кабинете; также можно получить методом getcoupons); строка
- affiliates — логины партнеров; строка; через запятую; партнер, указанный первым будет партнеров первого уровня, вторым — второго и т. д.
- utm_medium — ютм-метка, строка
- utm_source — ютм-метка, строка
- utm_campaign — ютм-метка, строка
- utm_content — ютм-метка, строка
- utm_term — ютм-метка, строка
Чтобы изменить значение дополнительного поля, передайте значение параметра
ex_fields[3]
где «3» — это id дополнительного поля. Взять его можно в колонке «id», для дополнительных полей CRM
Пример на PHP (cURL)
Пример на PHP (cURL)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://username.expertam.ru/api/createorder', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS => 'rpsKey=>customer_email=>customer_first_name=>customer_last_name=>customer_middle_name=>customer_phone=>order_ip=>customer_shipping=>customer_shipping_phone=>customer_shipping_address_2=>customer_shipping_city=>customer_shipping_state=>customer_shipping_zip=>customer_shipping_country_code=>customer_billing_address_1=>customer_shipping_city=>customer_shipping_state=>customer_shipping_zip=>customer_billing_address_1=>customer_billing_address_2=>customer_billing_city=>customer_billing_state=>customer_billing_zip=>customer_billing_country_code=>order_tag=>note=>order_created_at=>order_paid_at=>order_status=>order_confirmed=>order_sales_manager=>product_prices=>payment_method=>coupon=>affiliates=>utm_medium=>utm_source=>utm_campaign=>utm_content=>utm_term=', CURLOPT_HTTPHEADER => array( 'Content-Type: application/x-www-form-urlencoded' ), )); $response = curl_exec($curl); curl_close($curl); echo $response; |
Postman (импорт коллекции Expertam API)
У вас установлен Postman? Тогда вы можете импортировать всю коллекцию API по этой ссылке: https://www.getpostman.com/collections/9d1c9b989f68a5ac0f75
Для этого нужно:
- В вашем Postman клиенте нажать на кнопку «Import»
- Выбрать вкладку «Import from link»
- Ввести ссылку на нашу коллекцию https://www.getpostman.com/collections/9d1c9b989f68a5ac0f75
- Нажать на кнопку «Import»