Overview
If you want to add additional functionality to the Order creation process, you can do so using pipelines.Pipelines
Adding an Order Pipeline
All pipelines are defined inconfig/lunar/orders.php
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
config/lunar/orders.php
'pipelines' => [
'creation' => [
Lunar\Pipelines\Order\Creation\FillOrderFromCart::class,
Lunar\Pipelines\Order\Creation\CreateOrderLines::class,
Lunar\Pipelines\Order\Creation\CreateOrderAddresses::class,
Lunar\Pipelines\Order\Creation\CreateShippingLine::class,
Lunar\Pipelines\Order\Creation\CleanUpOrderLines::class,
Lunar\Pipelines\Order\Creation\MapDiscountBreakdown::class,
// ...
],
],
<?php
namespace App\Pipelines\Orders;
use Closure;
use Lunar\Models\Contracts\Order;
class CustomOrderPipeline
{
public function handle(Order $order, Closure $next): mixed
{
// Do something to the order...
return $next($order);
}
}
'pipelines' => [
'creation' => [
// ...
App\Pipelines\Orders\CustomOrderPipeline::class,
],
],