Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Модули импорта товаров / экспорта заказов


Recommended Posts

Здравствуйте!

Ищу профессионала, хорошо разбирающегося в OpenCart.

Нужно выполнить для начала 2 задачи:

1) Модуль импорта товаров из XML поставщика

2) Модуль экспорта заказов в процессинг поставщика

 

Исходные данные для реализации задачи:

I

API для получения XML товаров :

Внимание ! Скрипт принимает только данные отправленные методом POST !
url (cp1251): http://www.kitcash.ru/partner_api_products.php
url (utf8): http://www.kitcash.ru/partner_api_products_utf8.php
обязательная переменная key со значением текущего XML ключа
необязательная переменная id : возможные значения - коды товаров разделенные запятой
необязательная переменная category : возможные значения - коды категорий разделенные запятой

api ключ - 85dac13939060a9f229e4de8db184706

 

Импорт должен проходить гладко, без сбоев, можно в фоновом режиме поэтапно, если время исполнения на сервере ограниченное

 

II

API для экспорта заказов в процессинг :

Внимание ! Скрипт принимает только данные отправленные методом POST в кодировке cp1251 !
url : http://www.kitcash.ru/order_partner_create_api.php
обязательная переменная api_key со значением текущего XML ключа
обязательная переменная partner_site со значением УРЛ партнерского магазина (site.ru)
обязательная переменная order_product массив со значениями кодов товаров (kitai_id)
обязательная переменная order_quantity массив со значениями количеств товаров
обязательная переменная order_price массив со значениями цен товаров
обязательная переменная order_urls массив со значениями урлов страниц описаний товаров
обязательная переменная payment_type вид оплаты заказа (Наличные,Наложенный платёж)
обязательная переменная shipping_type способ доставки заказа (Курьер,Самовывоз,ЕМS)
обязательная переменная customer_email email покупателя
обязательная переменная customer_phone номер телефона покупателя
обязательная переменная customer_firstname имя покупателя
обязательная переменная customer_lastname фамилия покупателя (только для заказов с доставкой ЕМS)
обязательная переменная customer_otchestvo отчество покупателя (только для заказов с доставкой ЕМS)
обязательная переменная shipping_city город доставки
обязательная переменная shipping_state область/регион доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_zip почтовый индекс доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_address улица доставки 
обязательная переменная shipping_dom номер дома доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_korpus номер корпуса доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_podezd номер подъезда доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_kod код домофона доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_etaj этаж дома доставки (только для заказов с доставкой ЕМS)
обязательная переменная shipping_kvartira номер квартиры доставки (только для заказов с доставкой ЕМS)
обязательная переменная notify_client со значением "yes" - для оповещения покупателя по email о принятии заказа в обработку
необязательная переменная comment для комментария покупателя к заказу




Пример :

Для экспорта заказа со следующими исходными данными :
ФИО покупателя = Иванов Иван Иванович
Адрес покупателя = Приморский край, г. Владивосток, 690990, ул.Светланская 999, кв.777
Номер телефона = 423-999-88-77
Email = [email protected]
Вид оплаты = Наложенный платёж
Способ доставки = ЕМS
УРЛ партнерского магазина = site.ru
XML ключ = abcdefgh123456789
Заказанные товары : 
Zopo ZP900S Leader - MTK6577 на Android 4.0.4 Черный (kitai_id=510) 2шт по 8990р за единицу,
Карта памяти MicroSD 32GB (kitai_id=321) 3шт по 1990р за единицу

 

Необходимо создать следующий запрос в API :

function http_post ($url, $data) {
    $data_url = http_build_query ($data);
    $data_len = strlen ($data_url);
    return array ('content'=>file_get_contents ($url, false,
                            stream_context_create (array ('http'=>array ('method'=>'POST',
                                                                            'header'=>"Connection: close\r\nContent-Length: $data_len\r\n",
                                                                            'content'=>$data_url))
                                                                )
                                                                ),
                            'headers'=>$http_response_header );
}
 
$order_arr = array();
$order_product = array();
$order_quantity = array();
$order_price = array();
$order_urls = array();
$order_product[]="510";
$order_quantity[]="2";
$order_price[]="8990";
$order_urls[]="www.site.ru/product_510_url.html";
$order_product[]="321";
$order_quantity[]="3";
$order_price[]="1990";
$order_urls[]="www.site.ru/product_321_url.html";
$order_arr["order_product"] = $order_product;
$order_arr["order_quantity"] = $order_quantity;
$order_arr["order_price"] = $order_price;
$order_arr["order_urls"] = $order_urls;
$order_arr["payment_type"] = "Наложенный платёж";
$order_arr["shipping_type"] = "ЕМS";
$order_arr["shipping_city"] = "Владивосток";
$order_arr["shipping_state"] = "Приморский край";
$order_arr["shipping_zip"] = "690990";
$order_arr["shipping_address"] = "Светланская";
$order_arr["shipping_dom"] = "999";
$order_arr["shipping_korpus"] = "";
$order_arr["shipping_podezd"] = "";
$order_arr["shipping_kod"] = "";
$order_arr["shipping_etaj"] = "";
$order_arr["shipping_kvartira"] = "777";
$order_arr["customer_lastname"] = "Иванов";
$order_arr["customer_firstname"] = "Иван";
$order_arr["customer_otchestvo"] = "Иванович";
$order_arr["customer_phone"] = "423-999-88-77";
$order_arr["customer_email"] = "[email protected]";
$order_arr["comment"] = "Тестовый заказ для проверки API";
$order_arr["partner_site"] = $_SERVER["HTTP_HOST"];
$order_arr["api_key"] = "abcdefgh123456789";
$order_arr["notify_client"] = "yes";
 
$url = "http://www.kitcash.ru/order_partner_create_api.php";
$verify = http_post($url,$order_arr);
$kitcash_order_id = substr($verify["content"],14,-2);

Для преобразования массива с данными по заказу из любой кодировки в необходимую, рекомендуем использовать следующую функцию:

function recursive_iconv($in_charset, $out_charset, $arr){ 
    if (!is_array($arr)){ 
        return iconv($in_charset, $out_charset, $arr); 
    } 
    $ret = $arr; 
    function array_iconv(&$val, $key, $userdata){ 
        $val = iconv($userdata[0], $userdata[1], $val); 
    } 
    array_walk_recursive($ret, "array_iconv", array($in_charset, $out_charset)); 
    return $ret; 
} 
$order_cp1251 = recursive_iconv('utf-8','cp1251',$order_arr);

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

Спасибо за отклики!

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.