Оплачу создание модуля для интеграции Российской сборки Magento с курьерской службой Qwintry Air

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Антон Сидашин
  • Группа: Пользователь
  • Сообщений: 0
  • Регистрация: 29.10.2015

29.10.2015 00:22

В этом документе описываются детали базовой интеграции службы доставки Qwintry Air и скриптов магазинов.

Описание нашего API:
http://logistics.qwintry.com/api-docs

Qwintry Logistics это платформа в которой сочетаются доставка и таможенное оформление в стране получателя, наша аудитория - владельцы ecommerce магазинов США, Китая и Европы (в данный момент фокусируемся на US-based магазинах) - заинтересованные в покупателях из России, Беларуси, Ю.Кореи, Индии, и других стран, куда отправлять через UPS/Fedex/DHL дорого и геморройно, а через Почту - дорого и опасно.


У нас в каждой стране-отправителе есть pickup hub - склад куда магазин может отправить заказы для дальнейшей обработки нами. (Настраивается хаб в настройках модуля)

А в стране доставки у нас связи с таможенными брокерами и курьерскими службами, что позволяет сделать доставку быстрой, недорогой и качественной (по сравнению, опять же, с DHL/UPS/USPS).

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



Схема в большинстве ecommerce платформ одинаковая:
на шаге№1 кастомер подтверждает корзину
на шаге№2 кастомер вводит адрес доставки
на шаге№3 магазин показывает выбор типов доставки.

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



Что нам надо сделать:
После шага№2 используем апи метод http://logistics.qwi...i-docs#api-cost и если логистика возвращает success => true и стоимость доставки - значит мы можем на шаге№3 показать в опциях доставки Qwintry Air.

На шаге №3 если выбран метод Qwintry Air то нам надо
Показать стоимость (метод cost юзаем, опять же)
Показать для стран доставки RU/BY/KZ помимо курьерской доставки опцию доставки в самовывозы. Если Кастомер выбирает доставку в самовывоз - показываем ему селектбокс точек ПВЗ ( http://logistics.qwi...-locations-list ) и ссылку "View all pickup points on map here" ведущую (в новом окне) на logistics.qwintry.com/cities . В остальных странах (Ю.Корея, скоро сюда добавятся еще пяток стран) у нас только курьерка - там возможность выбора ПВЗ не нужна.
На шаге №3 мы уже знаем страну доставки, и если кастомер выбрал Qwintry Air - мы дополнительно ему показываем инфу про таможенные пошлины и нужные доки которые у него могут запросить для растаможки (метод http://logistics.qwi...-countries-list c выбранной страной доставки ?country=RU)

Важно - для метода /cost используем retail_pricing => 0 (потому что магазины обычно предлагают клиентам оптовый тариф доставки, не навариваясь на этом), hub_code выбранный в настройках аддона, insurance => false

Админка
В админке после подтверждения заказа когда админ нажимает кнопку выгрузки данных по заказу в курьерку (“Create shipment in Qwintry Logistics”) - используем метод http://logistics.qwi...create-shipment и если он вернул success => true и присвоенный заказу трекинг - то по этому трекингу дергаем http://logistics.qwi...api-print-label который возвращает пдфку курьерского лейбла (в base64) и выплевываем этот лейбл админу. Обычно в ecommerce платформах у ордера может быть несколько шипментов - вот по идее нам надо создавать в магазине шипмент и аттачить его к ордеру в этот момент.

Тут важно понимать, что в методе create-shipment для магазинов (когда они создают свой аккаунт на сайте logistics.qwintry.com ) мы активируем метод Lazy Workflow когда доп. данные для растаможки (номер паспорта, сканы паспорта, …) мы собираем с кастомера сами. Поэтому обязательно от магазина получить емейл кастомера и телефон, а поля passport_number, passport_issue_date, passport_issue_info, passport_address, passport_scans наоборот нам от него не нужны.
(А вот поле invoices лучше использовать по назначению и залить сгенерированный магазином инвойс).
Пишите Антону чтобы он для вашего тестового аккаунта в Логистике активировал Lazy Workflow и Extended Geography Coverage и настроил Measurement units!

Валюта: в логистике используется USD во всех методах!

В админке у нас еще есть форма настроек модуля.
В этой форме нам надо сделать:
селектбокс для выбора “Исходящего пикап хаба” (сейчас это будет DE1 - US, SZ1 - CN, EU1 - GERMANY - для получения списка доступных хабов юзаем метод http://logistics.qwi...s#api-hubs-list ) - по дефолту ставим DE1 во всех методах если что (т.к. целимся в первую очередь на американские магазины)
Текстовое поле для апи ключа.
Селектбокс live/test (влияющий на поле test в методе package/create )
(?) Селектбокс measurement units ( LB-INCHES / KG-CM ) - в апи методах /cost и /package-create вместо параметров weight и dimensions для KG-CM надо использовать поля weight_kg и dimensions_cm
Инструкция по использованию метода доставки:


===========

1. Sign up on http://logistics.qwintry.com/signup , get api key from your profile page

2. Put api key to addon settings

3. Create shipments and attach labels to shipments

4. Put all the shipments into Preship container (bigger box) and send them (via any domestic carrier like UPS or USPS) to:

[Your company name] <- тут подставить имя магазина из настроек Magento/Opencart/..
825 Dawson Dr <- тут подставить адрес выбранного выше хаба
Qwintry Suite 12-109058
Newark, DE 19712-0825
Phone 858-633-6353

5. Use logistics.qwintry.com control panel to attach preship tracking

Before creating real packages, please call us at +1-844-QWINTRY or send an email to logistics@qwintry.com to activate your account!
=============

Поделиться темой: