Все дороги ведут в Checkout Андрей Церкус Magento Developer, Magento Core Team, Magento Inc. - презентация
Содержание
- 2. Все дороги ведут в Checkout Андрей Церкус Magento Developer, Magento Core Team, Magento Inc.
- 3. Три кита Чекаута Сбор данных Сумма Оплата
- 4. Расчет итоговой суммы Стоимость товаров Скидки Налоги Бонусные программы Сложно. Но лишь на первый взгляд.
- 5. 1 - Термины
- 6. Value / Base Value $virtualAmount += $item->getRowTotal(); $baseVirtualAmount += $item->getBaseRowTotal(); … $subtotal = $price * $qty;
- 7. Виртуальные товары Виртуальная квота присоединяется к Billing-адресу. Virtual Downloadable (наследник Virtual) Configurable, к которому подключен Virtual
- 8. Nominal item Служит для Recurring Profiles – автоматических платежей с определенным периодом Бета-версия – есть ограничения
- 9. Subtotal / Grand Total Subtotal – это стоимость позиций товара Grand Total = Subtotals + все
- 10. Тax rate Налоговая ставка для комбинации Налогов может быть несколько покупатель тип товара адрес покупателя
- 11. Weee / FPT Фиксированный (не процентный) налог на единицу продукции Модуль Magento – Weee. В интерфейсе
- 12. Цена товаров включает налоги В интерфейсе – Catalog prices including tax Необходимо определять чистую цену товара
- 13. Метод расчета налогов Unit price: ∑ [(Product Price * Tax Rate) * Qty] Row total: ∑
- 14. Ура! Теперь общие термины понятны и не страшны! :)
- 15. 2 - Процесс
- 16. Алгоритм Quote Billing & shipping addresses collectTotals() collector 1 collector 2 collector 3 … … …
- 17. Квота перебирает адреса и у каждого вызывает метод collectTotals() Каждый адрес перебирает список моделей-коллекторов и у
- 18. Список коллекторов Настраивается в config.xml, как обычно это делается в Magento Можно управлять порядком, так как
- 19. Порядок коллекторов
- 20. Mage_Sales_Model_Quote_Address_Total_Nominal Коллектор специально для Nominal Items Реализует свой собственный стек коллекторов, такой же как общий стек
- 21. Mage_Sales_Mode_Quote_Address_Total_Subtotal Общая цена позиций 1 телевизор * $100 = $100 2 телефона * $200 = $400
- 22. Mage_SalesRule_Model_Quote_Freeshipping Freeshipping – Да/Нет Правила бесплатной доставки
- 23. Mage_Tax_Model_Sales_Total_Quote_Subtotal Телевизор: $100 incl. tax, $90 excl. tax Телефоны: $400 incl. tax, $310 excl. tax Subtotal:
- 24. Mage_Sales_Model_Quote_Address_Total_Shipping Доставка выбранным методом UPS: $20 Вариант UPS Very Quick: $40 Вариант FedEx: $30 Вычисление стоимости
- 25. Mage_Weee_Model_Total_Quote_Weee 1 телевизор * $10 = $10 Weee Tax 2 телефона * $15 = $30 Weee
- 26. Mage_Tax_Model_Sales_Total_Quote_Shipping Налог на доставку = стоимость UPS $20 * 10% = $2 Начисление налогов на доставку.
- 27. Mage_SalesRule_Model_Quote_Discount Скидка по акции за 2 телефона = $400 * -10% = -$40 Подключение всех скидок
- 28. Mage_Tax_Model_Sales_Total_Quote_Tax Налог на телевизор: ($90 excl. tax + $10 weee) * 10% = $10 Налог на
- 29. Mage_Sales_Model_Quote_Address_Total_Grand Телевизор: $90 Телефоны: $310 Доставка: $20 Weee: $40 Discount: -$40 Налоги: $72 ------------------- Grand Total
- 30. Enterprise: Rewards, GiftCard, CustomerBalance GrandTotal: $572 Rewards: -$22 GiftCard: -$20 Balance: -$31 ------------------------ Grand Total (Итого):
- 31. Ура! Теперь и процесс понятен! :)
- 32. 2. P.S. – Спецтермины налогов
- 33. Rounding Deltas
- 34. Rounding Deltas $delta = 0; foreach ($items as $item) { $realTax = $item->getPrice() * $taxRate; $tax
- 35. Чистая цена товара при Catalog Prices incl. tax X = цена Y = налог $100 (задана
- 36. Magento считает, что стоимость товара указана включая налог, который действует на Retail Customer, находящегося в Shipping
- 37. 3 – Сам!
- 38. Идея Хотим красиво упаковывать товары! платит за упаковку покупатель каждому товару добавим атрибут “wrapping_price”. Сумму выставляет
- 39. Реализация Помним основы Magento: свой неймспейс (Zerkella) наш модуль – в локальном codepool: app/code/local Итого модуль
- 40. Подключение в коллекторы – в config.xml. Путь ноды: config/global/sales/quote/totals zerkella_wrapping/total_wrapping grand_total
- 41. ‘wrapping’ – код коллектора Можно использовать и Можно в них через запятую перечислять коды коллекторов Наша
- 42. Обязательный метод collect(): $totalWPrice = 0; $totalWBasePrice = 0; foreach ($this->_getAddressItems($address) as $item) { if ($item->getProduct()->isVirtual())
- 43. Пусть будет видно на фронте, метод fetch(): $amount = $address->getWrappingAmount(); if ($amount != 0) { $title
- 46. Напоследок Легко, но лишь начало: модели для nominals, инвойсов, shipping, refunds (creditmemo) и генерации pdf Только
- 47. Спасибо Андрей Церкус, skype: andrey.tserkus Magento Developer, Magento Core Team, Magento Inc.
- 49. Скачать презентацию














































Запись шахматной партии. Урок № 29
Гигиена девушки. Урок технологии
Рациональное питание школьника
Презентация на тему Основание греческих колоний
proektnyy_metod_v_deyatelnosti_doshkolnogo_uchrezhdeniya
Изложение
НОМИНАЦИЯ «Добро и Зло»
Итоги 2007 года Наталья Кутушева
Процессоры. Виды процессоров
Тренинг привития навыков доброжелательного общения со сверстниками для детей
Повышения цен на газ избежать уже нельзя
Задачи и трудности подросткового возраста
Программное обеспечение учёта рабочего времени универсального
Презентация на тему Задачи на смеси и сплавы (9 класс)
Стафилококки и Стрептококки
Земельная рента.Виды Земельной ренты
Дом мечты доступен каждому. Строительство частных домов. Варианты
Баннер. Компания DELTA
История становления логопедической службы общеобразовательных школ г.о. Саранск
Тренажёр Единицы измерения длины
Роль взрослого при преодолении психолого-педагогических трудностей в процессе обучения
От математики к красоте и гармонии
Презентация на тему Василий Тёркин
Основы общей гигиены и гигиены адаптивной физической культуры. Лекция 1
Уважаемые Дамы и Господа! Предлагаем Вашему вниманию серию Экскурсионных автобусных туров по Испании, Франции, Андорре и Италии.
Regulation and Taxation of Marijuana
Маркировка зарубежных полупроводниковых компонентов
Печенье. Историческая справка