2026-07-19 18:27:24 +03:00
|
|
|
<?php
|
|
|
|
|
|
2026-09-03 15:58:51 +03:00
|
|
|
namespace Modules\Core\Shipping\DTOs;
|
2026-07-19 18:27:24 +03:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Carrier-agnostic input for CarrierFulfillmentInterface::createShipment().
|
|
|
|
|
* Every field is optional — a carrier reads only what it needs and ignores
|
|
|
|
|
* the rest (e.g. destinationLocationId only matters to locker-delivery
|
|
|
|
|
* carriers like Box Now; ACS has no use for it).
|
|
|
|
|
*/
|
|
|
|
|
class ShipmentRequest
|
|
|
|
|
{
|
|
|
|
|
public function __construct(
|
|
|
|
|
public readonly ?float $weight = null,
|
|
|
|
|
public readonly int $packageCount = 1,
|
|
|
|
|
public readonly ?string $destinationLocationId = null,
|
|
|
|
|
public readonly ?string $paymentMode = null,
|
|
|
|
|
public readonly ?float $amountToCollect = null,
|
|
|
|
|
) {}
|
|
|
|
|
}
|