Идея хорошая, но без логики. В управлении запасами и их размещении есть здравый смысл: если клиент приходит в ваш магазин, и у товара есть запасы, клиент может заказать этот запас, и этот запас должен быть заблокирован для него, либо процесс оплаты или уточнение деталей займет несколько недель.
Если случится так, что я приду в ваш магазин, я увижу, что вы продаете MacBook Air за 700 долларов и у вас есть две последние штуки, я бы заказал эти две штуки, и они должны быть заблокированы только для моего заказа. Но если Вы дождетесь моего платежа (потому что я заплатил банковским переводом) и установите статус «Ожидание клиента», пока акция не заблокирована и кто-то другой придет за мной и увидите эти две Airs по мере возможности и более быстрой оплаты (например, через PayPal), это означает, что пока мои деньги переводятся (это может длиться 1-X дней), вы уже продали товары, которые я заказал. Это означало бы, что вы, моя дорогая, очень несправедливый, ненадежный и недисциплинированный продавец.
Итак, как работает управление запасами в OpenCart, очень распространено (и справедливо): если вы установили в настройках, что запас вычитается после заказа (это делается для каждого продукта, соответственно, в его деталях в администрировании, вкладка Data
), после подтвержденного заказа запас вычитается (блокируется).
И запас остается вычтенным, если вы не отмените заказ по какой-либо причине (я предполагаю, что это именно статус заказа Отменен - вы можете проверить код, чтобы увидеть).
И к Вашему PayPal Express Checkout - я не знаю Вашей реализации, но я реализовал это несколько раз и всегда устанавливаю заказ как оплаченный, если только API PayPal не сообщает об ошибке или отказе. В любом случае вы можете создать столько статусов платежей, сколько пожелаете, а затем отредактировать реализацию PP EC, чтобы использовать эти статусы, но если заказ не отменен, запас для этого клиента должен быть заблокирован.
person
shadyyx
schedule
06.11.2013