Перейти к содержанию
View in the app

A better way to browse. Learn more.

Русскоязычное сообщество Opencart

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

В связи с блокировкой банка QIWI оплата через сайт не возможна.
Для оплаты и получения дополнений просьба писать в личные сообщения 
Admin*у
или в Телеграмм https://t.me/pascha_opencart
После оплаты Вам так же будет доступно скачивание дополнений и обновлений на данном форуме

API в OpenCart

Рекомендуемые сообщения

Опубликовано

API

Для использования OpenCart API вы должны предварительно включить его в административной части вашего сайта.
Перейдите в Система > Пользователи > API, и вы увидите пользователя, созданного по умолчанию, с API Username "Default".
При добавлении нового пользователя по умолчанию не будет никакого API-ключа, его необходимо с генерировать, нажав на кнопку "Генерировать" и установив "Статус" в положение "Включено.
Затем добавьте свой IP-адрес в список разрешенных для доступа к API на вкладке "IP адрес".

API доступен через URL-адрес, такой, как

http://example.com/index.php?route=api/cart/add

где в параметре route указывается нужный контроллер.

Примечание:

  • У API пользователей поле customer_id всегда  '0'. У них есть свой собственный api_id.
  • Для примеров использована библиотека python-requests, но основная идея заключается в описании параметров, поэтому console curl будет достаточно.
  • И в описаниях предполагается, что у нас есть префикс "oc_" в таблицах БД.

В первую очередь, вы можете и обязательно должны получить токен для вашей сессии - вы получаете файл cookie, и сервер OpenCart будет идентифицировать вашу активность таким образом.

import requests

s = requests.Session()

username = 'Default'
key='L3MYyzlYMRL8gBcpCm6CdrVarFUXtPORZkJKP7vgaY8M8EIZWOr3EJxq'
# Actually, key is 256 character-long

s.post(
    'http://myopencart.example.com/index.php?route=api/login',
    data={'username':username, 'key':key}
).text

Если все было сделано правильно, вы получите json-ответ с помощью api_token для вашего сеанса. Проверьте страницу API в административной части сайта, нажмите "Редактировать" на пользователе API и откройте вкладку "Сессия" - там вы можете увидеть установленную сессию.

Что вы можете сделать с OpenCart API?

Логин - Вход

api/login

Создание сессии для пользователя API по ключу PARAMS:

DATA:
username: username из таблицы oc_api
key: key из oc_api

ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/shipping/address',
    params={'api_token':'768ef1810185cd6562478f61d2'},
    data={
        'username':username,
        'key':key
    }
)

Валюта

api/currency

ОПИСАНИЕ: изменить валюту сессии
PARAMS:
api_token
DATA:
currency: code из таблицы oc_currency
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/currency',
    params={'api_token':'768ef1810185cd6562478f61d2'},
    data={'currency':'USD'}
)

Корзина

api/cart/add

ОПИСАНИЕ: добавление товара в корзину
PARAMS:
api_token
DATA:
product_id: product_id из таблицы oc_cart
quantity: quantity из таблицы oc_cart
option: option array из  таблицы oc_cart
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/cart/add',
    params={'api_token':'768ef1810185cd6562478f61d2'},
    data={
        'product_id':'100'
        'quantuty':'1'
    }
)

api/cart/edit

ОПИСАНИЕ: редактирование количества товара в корзине
PARAMS:
api_token
DATA:
key: cart_id из таблицы oc_cart
quantity: quantity из таблицы oc_cart
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/cart/edit',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
        'key':'10'
        'quantuty':'2'
    }
)

api/cart/remove

ОПИСАНИЕ: удаление товара из корзины
PARAMS:
api_token
DATA:
key: cart_id из таблицы oc_cart
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/cart/remove',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
        'key':'10'
    }
)

api/cart/products

ОПИСАНИЕ: содержимое корзины
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/cart/products',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={}
)

Купоны

api/coupon

ОПИСАНИЕ: применить существующий купон
PARAMS:
api_token
DATA:
coupon: code из таблицы oc_coupon;
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/coupon',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
        'coupon':'2222'
    }
)

Покупатель

api/customer

ОПИСАНИЕ: назначить покупателя для текущей сессии
PARAMS:
api_token
DATA:
firstname:
lastname:
email:
telephone:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/customer',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    'firstname':'Dear',
    'lastname':'Customer',
    'email':'customer@example.com',
    'telephone':'+1 879 2548022'}
    }
)

Подарочные сертификаты

api/voucher

ОПИСАНИЕ: применить существующий подарочный сертификат
PARAMS:
api_token
DATA:
voucher: code из таблицы oc_voucher;
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/voucher',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
        'voucher':'VOU-7271'
    }
)

api/voucher/add

ОПИСАНИЕ: добавить новый подарочный сертификат для текущей сессии
PARAMS:
api_token
DATA:
from_name: from_name из таблицы oc_voucher
from_email: from_email из таблицы oc_voucher
to_name: to_name из таблицы oc_voucher
to_email: to_email из таблицы oc_voucher
amount: amount из таблицы oc_voucher в выбранной валюте
code: code из таблицы oc_voucher
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/voucher/add',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
        'from_name':'MyOpenCart Admin'
        'from_email':'admin@example.com'
        'to_name':'Dear Customer'
        'to_email':'customer@example.com'
        'amount':'100'
        'code':'VOU-7177'
    }
)

Доставка

api/shipping/address -

ОПИСАНИЕ: добавить адрес доставки к текущей сессии
PARAMS:
api_token
DATA:
firstname
lastname
address_1
city
country_id
zone_id
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/shipping/address',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    'firstname':'Customer',
    'lastname':'Dear',
    'address_1':'Somewhere',
    'city':'KLD',
    'country_id':'RUS',
    'zone_id':'KGD'
    }
)

api/shipping/methods

ОПИСАНИЕ: возврат доступных способов доставки
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/shipping/methods',
  params={'api_token':'768ef1810185cd6562478f61d2'},
)

api/shipping/method

ОПИСАНИЕ: установить способ доставки для текущей сессии
PARAMS:
api_token
DATA:
shipping_method
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/shipping/method',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    'shipping_method':'pickup.pickup'
    }
)

Бонусы

api/reward

ОПИСАНИЕ: 
PARAMS:
api_token
DATA:
EXAMPLE:

session.post(
    'http://myopencart.example.com/index.php?route=api/reward',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

api/reward/maximum

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/reward/maximum',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

api/reward/available

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/reward/avaliable',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

Заказ

api/order/add

ОПИСАНИЕ: новый заказ по содержимому корзины и информации об оплате / доставке был установлен в текущй сессии
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/order/add',
  params={'api_token':'768ef1810185cd6562478f61d2'},
)

api/order/edit

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/order/edit',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

api/order/delete

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/order/delete',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

api/order/info

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/order/info',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

api/order/history

ОПИСАНИЕ:
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/order/history',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    }
)

Оплата

api/payment/address

ОПИСАНИЕ: установить адрес оплаты для этой сессии
PARAMS:
api_token
DATA:
firstname
lastname
address_1
city
country_id
zone_id
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/payment/address',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    'firstname':'Customer',
    'lastname':'Dear',
    'address_1':'Somewhere',
    'city':'KLD',
    'country_id':'RUS',
    'zone_id':'KGD'
    }
)

api/payment/methods

ОПИСАНИЕ: возврат доступных способов оплаты
PARAMS:
api_token
DATA:
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/payment/methods',
  params={'api_token':'768ef1810185cd6562478f61d2'},
)

api/payment/method

ОПИСАНИЕ: настройка способа оплаты доступна в api/payment/methods
PARAMS:
api_token
DATA:
payment_method
ПРИМЕР:

session.post(
    'http://myopencart.example.com/index.php?route=api/payment/method',
  params={'api_token':'768ef1810185cd6562478f61d2'},
  data={
    'payment_method':'bank_transfer'
    }
)

 

  • Это тема был закреплено и закрыто
  • тема был открыт

Последние посетители 0

  • Ни одного зарегистрированного пользователя не просматривает данную страницу

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.