سرویس رهگیری سفارش
مدیریت سفارشهای مشتری، بستههای غرفهداران و چرخه کامل سفارش با استفاده از سرویس رهگیری سفارش. این سرویس قابلیتهای جامعی برای دریافت و مدیریت سفارشها، پیگیری اقلام و جزئیات سفارش، مدیریت بستههای غرفهدار و حملونقل، تولید آمار سفارش و پایش وضعیت و بهروزرسانیهای سفارش فراهم میکند.
فهرست مطالب
متدهای رهگیری سفارش
متد | توضیحات | پارامترها |
---|---|---|
getOrders() | دریافت سفارشهای مشتری | filters: OrderFilter |
getOrder() | دریافت جزئیات یک سفارش | orderId |
getOrderItems() | دریافت آیتمهای مشتری | filters: ItemFilter |
getOrderItem() | دریافت جزئیات یک آیتم سفارش | itemId |
getOrdersParcels() | دریافت سفارشهای غرفهدار | filters: OrderParcelFilter |
getOrderParcel() | دریافت جزئیات یک سفارش | parcelId |
getOrderStats() | دریافت آمار سفارشها | resourceCount , vendorId , productId , customerId , couponCode , cacheControl |
مثالها
پیکربندی اولیه
<?php
use Basalam\SDK\BasalamClient;
use Basalam\SDK\Auth\PersonalToken;
$auth = new PersonalToken(
token: 'your_access_token',
refreshToken: 'your_refresh_token'
);
$client = new BasalamClient($auth);
دریافت سفارشها
<?php
use Basalam\SDK\OrderProcessing\Models\OrderFilter;
function getOrdersExample(): object
{
global $client;
$orders = $client->getOrders(
filters: new OrderFilter(
couponCode: 'SAVE10',
cursor: 'next_cursor_123',
customerIds: '123,456,789',
customerName: 'John Doe',
ids: '1,2,3',
itemsTitle: 'laptop',
paidAt: '2024-01-01',
parcelEstimateSendAt: '2024-01-15',
parcelStatuses: ['posted', 'delivered'],
perPage: 20,
productIds: '1,2,3',
sort: 'paid_at:desc',
vendorIds: '456,789'
)
);
return $orders;
}
دریافت یک سفارش
<?php
function getOrderExample(): object
{
global $client;
$order = $client->getOrder(
orderId: 123
);
return $order;
}
دریافت اقلام سفارش
<?php
use Basalam\SDK\OrderProcessing\Models\ItemFilter;
function getOrderItemsExample(): object
{
global $client;
$items = $client->getOrderItems(
filters: new ItemFilter(
createdAt: '2024-01-01',
cursor: 'next_cursor_123',
customerIds: '123,456,789',
ids: '1,2,3',
orderIds: '1,2,3',
perPage: 20,
productIds: '1,2,3',
sort: 'created_at:desc',
vendorIds: '456,789'
)
);
return $items;
}
دریافت یک قلم سفارش
<?php
function getOrderItemExample(): object
{
global $client;
$item = $client->getOrderItem(
itemId: 456
);
return $item;
}
دریافت بستههای سفارشها
<?php
use Basalam\SDK\OrderProcessing\Models\OrderParcelFilter;
function getOrdersParcelsExample(): object
{
global $client;
$parcels = $client->getOrdersParcels(
filters: new OrderParcelFilter(
createdAt: '2024-01-01',
cursor: 'next_cursor_123',
estimateSendAt: '2024-01-15',
ids: '1,2,3',
itemsCustomerIds: '123,456,789',
itemsOrderIds: '1,2,3',
itemsProductIds: ['1', '2', '3'],
itemsVendorIds: ['456', '789'],
perPage: 20,
sort: 'estimate_send_at:desc',
statuses: [3739, 3237, 3238]
)
);
return $parcels;
}
دریافت یک بسته
<?php
function getOrderParcelExample(): object
{
global $client;
$parcel = $client->getOrderParcel(
parcelId: 789
);
return $parcel;
}
دریافت آمار سفارش
<?php
use Basalam\SDK\OrderProcessing\Models\ResourceStats;
function getOrderStatsExample(): object
{
global $client;
$stats = $client->getOrderStats(
resourceCount: ResourceStats::NUMBER_OF_ORDERS_PER_VENDOR,
vendorId: 456
);
return $stats;
}
شرایط الزامی یا اختیاری بودن پارامترهای ورودی این متد متناسب با resourceCount
انتخابشده، متفاوت میباشد. برای مطالعه آن به مستندات API رهگیری سفارش مراجعه کنید. همچنین مقادیر مختلف resourceCount
توسط کلاس ResourceStats
پشتیبانی شده است.
وضعیتهای سفارش
وضعیتهای رایج سفارش شامل موارد زیر است:
pending
- سفارش در انتظار استconfirmed
- سفارش تأیید شدهprocessing
- سفارش در حال رهگیری استshipped
- سفارش ارسال شده استdelivered
- سفارش تحویل داده شدهcancelled
- سفارش لغو شدهrefunded
- سفارش بازپرداخت شده
وضعیتهای بسته
وضعیتهای رایج بسته شامل موارد زیر است:
pending
- بسته در انتظار استpreparing
- بسته در حال آمادهسازی استshipped
- بسته ارسال شده استin_transit
- بسته در مسیر حمل استdelivered
- بسته تحویل داده شده استreturned
- بسته بازگشت داده شده است
Last updated on