رفتن به محتوا

گزارش فروش، مرجوعی یا لغو

GET
/v1/reports/sales
curl --request GET \
--url 'https://api.seller360.ir/v1/reports/sales?type=sales&date_from=2026-10-23&date_to=2026-11-11' \
--header 'Authorization: Bearer <token>'

type تعیین می‌کند کدام اقلام شمرده شوند: sales فروش خالص (لغوشده‌ها بیرون و مرجوعی‌ها کسر شده)، returns اقلامی که دست‌کم یک واحد آن‌ها برگشته است (روی روز برگشت)، canceled اقلام کاملا لغوشده. فروش و لغو روی روز ثبت سفارش می‌نشینند.

type
string
default: sales
Allowed values: sales returns canceled
date_from
string format: date

Example

2026-10-23

اولین روز بازه (میلادی، YYYY-MM-DD). بدون date_from و date_to، بازه از ابتدای ماه شمسی جاری تا امروز است. هر بازه حداکثر ۴۰۰ روز است.

date_to
string format: date

Example

2026-11-11

آخرین روز بازه (میلادی)، خود این روز هم شمرده می‌شود.

گزارش فروش.

Media typeapplication/json
object
status
required
Allowed value: ok
data
required
data
required
object
type
required
string
Allowed values: sales returns canceled
range
required
object
from
required
string format: date
to
required
string format: date
days
required
integer
cutover

اولین روز تراکنش‌های این پنل؛ ارقام پیش از آن از صورت‌حساب‌های پایان‌یافته‌ی قدیم است و قطعی‌اند.

string | null format: date
totals
required
object
qty
required

تعداد واحد.

integer
amount
required

مبلغ ناخالص (قیمت × تعداد)، ریال.

integer
orders
required

تعداد اقلام سفارش.

integer
previous_range
required
object
from
required
string format: date
to
required
string format: date
days
required
integer
cutover

اولین روز تراکنش‌های این پنل؛ ارقام پیش از آن از صورت‌حساب‌های پایان‌یافته‌ی قدیم است و قطعی‌اند.

string | null format: date
previous_totals
required
object
qty
required

تعداد واحد.

integer
amount
required

مبلغ ناخالص (قیمت × تعداد)، ریال.

integer
orders
required

تعداد اقلام سفارش.

integer
change
required
object
amount_pct

خالی یعنی بازه‌ی پیش صفر بوده است.

number | null
qty_pct
number | null
daily
required
Array<object>
object
date
required
string format: date
qty
required
integer
amount
required
integer
orders
required
integer
maybe_incomplete
required

این روز ممکن است هنوز تغییر کند.

boolean
mix
required

ترکیب بازه به تفکیک نوع پرداخت، روش ارسال و دسته (شش گروه بزرگ‌تر و «سایر»).

object
payment
required
Array<object>
object
key
required

_ برای مقدار نامشخص و _rest برای «سایر».

string
label
required
string
amount
required
integer
qty
required
integer
shipping
required
Array<object>
object
key
required

_ برای مقدار نامشخص و _rest برای «سایر».

string
label
required
string
amount
required
integer
qty
required
integer
category
required
Array<object>
object
key
required

_ برای مقدار نامشخص و _rest برای «سایر».

string
label
required
string
amount
required
integer
qty
required
integer
return_conditions

فقط برای returns؛ تعداد واحدهای برگشتی در هر وضعیت.

object
resellable
integer
defective
integer
unknown
integer
data_freshness
required
object
last_sync_at
required

زمان آخرین دریافت سفارش‌ها.

string | null format: date-time
incomplete_from
required

اولین روزی که ارقامش ممکن است هنوز تغییر کند.

string | null format: date
unsettled_days
required

چند روز پیش از آخرین دریافت ممکن است هنوز تغییر کند.

integer
hours_since_sync
integer | null

Example

{
"status": "ok",
"data": {
"type": "sales",
"range": {
"from": "2026-10-23",
"to": "2026-11-11",
"days": 20
},
"totals": {
"qty": 96,
"amount": 3540000000,
"orders": 88
},
"previous_range": {
"from": "2026-10-23",
"to": "2026-11-11",
"days": 20
},
"previous_totals": {
"qty": 96,
"amount": 3540000000,
"orders": 88
},
"change": {
"amount_pct": 12.4,
"qty_pct": 9.1
},
"daily": [
{
"qty": 5,
"amount": 183500000,
"orders": 5
}
],
"mix": {
"payment": [
{
"key": "اعتباری",
"label": "اعتباری",
"amount": 640000000,
"qty": 17
}
],
"shipping": [
{
"key": "اعتباری",
"label": "اعتباری",
"amount": 640000000,
"qty": 17
}
],
"category": [
{
"key": "اعتباری",
"label": "اعتباری",
"amount": 640000000,
"qty": 17
}
]
},
"return_conditions": {
"resellable": 4,
"defective": 1,
"unknown": 7
},
"data_freshness": {
"unsettled_days": 2,
"hours_since_sync": 6
}
}
}
X-Request-Id
string

کد پیگیری این درخواست.

X-RateLimit-Limit
integer

سقف درخواست این نوع (خواندن یا نوشتن) در هر دقیقه برای این کلید.

X-RateLimit-Remaining
integer

درخواست‌های باقی‌مانده تا پایان دقیقه‌ی جاری.

X-RateLimit-Reset
integer

زمان شروع دقیقه‌ی بعد، به ثانیه از ۱۹۷۰ (Unix).

پارامتر یا بدنه‌ی نامعتبر.

Media typeapplication/json
object
status
required
Allowed value: error
error
required
object
code
required
string
Allowed values: missing_api_key invalid_api_key https_required scope_missing module_inactive panel_unavailable subscription_inactive not_found variant_not_found method_not_allowed invalid_parameter idempotency_key_required idempotency_mismatch idempotency_in_progress insufficient_stock version_conflict stock_write_locked sku_taken price_out_of_band price_managed_by_bot webhook_url_invalid webhook_limit_reached rate_limited digikala_rate_limited digikala_refused module_required digikala_outcome_unknown digikala_unavailable internal_error stock_split_in_progress kardex_disabled movement_type_not_allowed stock_count_finalized purchase_order_status_invalid product_key_unknown purchase_price_range_invalid product_locked_for_moderation catalog_row_invalid demo_panel_unsupported build_in_progress package_not_built_here shipping_write_unavailable pickup_unavailable feature_unavailable commitment_exceeded warehouse_not_listed slot_watch_exists draft_limit_reached draft_not_buildable draft_overdue draft_not_waiting consignment_not_allowed slot_unavailable no_open_slot replenish_rule_limit replenish_inactive price_managed_by_fx bot_strategy_required bot_quota_full strategy_not_found strategy_locked strategy_hidden strategy_title_reserved competitor_not_found change_not_undoable undo_window_expired already_undone undo_in_progress promotion_not_eligible promotion_managed_by_bot promotion_no_floor promotion_below_floor promotion_invalid promotion_not_active campaign_not_found campaign_closed fx_strategy_not_found fx_no_pending_price
message
required

پیام فارسی برای برنامه‌نویس.

string
detail

آنچه دقیقا نادرست بود، مثلا نام پارامتر.

string
doc_url
required
string format: uri
request_id
required
string

Example

{
"status": "error",
"error": {
"code": "missing_api_key"
}
}
X-Request-Id
string

کد پیگیری این درخواست.

X-RateLimit-Limit
integer

سقف درخواست این نوع (خواندن یا نوشتن) در هر دقیقه برای این کلید.

X-RateLimit-Remaining
integer

درخواست‌های باقی‌مانده تا پایان دقیقه‌ی جاری.

X-RateLimit-Reset
integer

زمان شروع دقیقه‌ی بعد، به ثانیه از ۱۹۷۰ (Unix).

کلید ارسال نشده یا نامعتبر است.

Media typeapplication/json
object
status
required
Allowed value: error
error
required
object
code
required
string
Allowed values: missing_api_key invalid_api_key https_required scope_missing module_inactive panel_unavailable subscription_inactive not_found variant_not_found method_not_allowed invalid_parameter idempotency_key_required idempotency_mismatch idempotency_in_progress insufficient_stock version_conflict stock_write_locked sku_taken price_out_of_band price_managed_by_bot webhook_url_invalid webhook_limit_reached rate_limited digikala_rate_limited digikala_refused module_required digikala_outcome_unknown digikala_unavailable internal_error stock_split_in_progress kardex_disabled movement_type_not_allowed stock_count_finalized purchase_order_status_invalid product_key_unknown purchase_price_range_invalid product_locked_for_moderation catalog_row_invalid demo_panel_unsupported build_in_progress package_not_built_here shipping_write_unavailable pickup_unavailable feature_unavailable commitment_exceeded warehouse_not_listed slot_watch_exists draft_limit_reached draft_not_buildable draft_overdue draft_not_waiting consignment_not_allowed slot_unavailable no_open_slot replenish_rule_limit replenish_inactive price_managed_by_fx bot_strategy_required bot_quota_full strategy_not_found strategy_locked strategy_hidden strategy_title_reserved competitor_not_found change_not_undoable undo_window_expired already_undone undo_in_progress promotion_not_eligible promotion_managed_by_bot promotion_no_floor promotion_below_floor promotion_invalid promotion_not_active campaign_not_found campaign_closed fx_strategy_not_found fx_no_pending_price
message
required

پیام فارسی برای برنامه‌نویس.

string
detail

آنچه دقیقا نادرست بود، مثلا نام پارامتر.

string
doc_url
required
string format: uri
request_id
required
string

Example

{
"status": "error",
"error": {
"code": "missing_api_key"
}
}

کلید دسترسی لازم را ندارد، یا ماژول یا پنل فعال نیست.

Media typeapplication/json
object
status
required
Allowed value: error
error
required
object
code
required
string
Allowed values: missing_api_key invalid_api_key https_required scope_missing module_inactive panel_unavailable subscription_inactive not_found variant_not_found method_not_allowed invalid_parameter idempotency_key_required idempotency_mismatch idempotency_in_progress insufficient_stock version_conflict stock_write_locked sku_taken price_out_of_band price_managed_by_bot webhook_url_invalid webhook_limit_reached rate_limited digikala_rate_limited digikala_refused module_required digikala_outcome_unknown digikala_unavailable internal_error stock_split_in_progress kardex_disabled movement_type_not_allowed stock_count_finalized purchase_order_status_invalid product_key_unknown purchase_price_range_invalid product_locked_for_moderation catalog_row_invalid demo_panel_unsupported build_in_progress package_not_built_here shipping_write_unavailable pickup_unavailable feature_unavailable commitment_exceeded warehouse_not_listed slot_watch_exists draft_limit_reached draft_not_buildable draft_overdue draft_not_waiting consignment_not_allowed slot_unavailable no_open_slot replenish_rule_limit replenish_inactive price_managed_by_fx bot_strategy_required bot_quota_full strategy_not_found strategy_locked strategy_hidden strategy_title_reserved competitor_not_found change_not_undoable undo_window_expired already_undone undo_in_progress promotion_not_eligible promotion_managed_by_bot promotion_no_floor promotion_below_floor promotion_invalid promotion_not_active campaign_not_found campaign_closed fx_strategy_not_found fx_no_pending_price
message
required

پیام فارسی برای برنامه‌نویس.

string
detail

آنچه دقیقا نادرست بود، مثلا نام پارامتر.

string
doc_url
required
string format: uri
request_id
required
string

Example

{
"status": "error",
"error": {
"code": "missing_api_key"
}
}

سقف درخواست گذشته است.

Media typeapplication/json
object
status
required
Allowed value: error
error
required
object
code
required
string
Allowed values: missing_api_key invalid_api_key https_required scope_missing module_inactive panel_unavailable subscription_inactive not_found variant_not_found method_not_allowed invalid_parameter idempotency_key_required idempotency_mismatch idempotency_in_progress insufficient_stock version_conflict stock_write_locked sku_taken price_out_of_band price_managed_by_bot webhook_url_invalid webhook_limit_reached rate_limited digikala_rate_limited digikala_refused module_required digikala_outcome_unknown digikala_unavailable internal_error stock_split_in_progress kardex_disabled movement_type_not_allowed stock_count_finalized purchase_order_status_invalid product_key_unknown purchase_price_range_invalid product_locked_for_moderation catalog_row_invalid demo_panel_unsupported build_in_progress package_not_built_here shipping_write_unavailable pickup_unavailable feature_unavailable commitment_exceeded warehouse_not_listed slot_watch_exists draft_limit_reached draft_not_buildable draft_overdue draft_not_waiting consignment_not_allowed slot_unavailable no_open_slot replenish_rule_limit replenish_inactive price_managed_by_fx bot_strategy_required bot_quota_full strategy_not_found strategy_locked strategy_hidden strategy_title_reserved competitor_not_found change_not_undoable undo_window_expired already_undone undo_in_progress promotion_not_eligible promotion_managed_by_bot promotion_no_floor promotion_below_floor promotion_invalid promotion_not_active campaign_not_found campaign_closed fx_strategy_not_found fx_no_pending_price
message
required

پیام فارسی برای برنامه‌نویس.

string
detail

آنچه دقیقا نادرست بود، مثلا نام پارامتر.

string
doc_url
required
string format: uri
request_id
required
string

Example

{
"status": "error",
"error": {
"code": "missing_api_key"
}
}
Retry-After
integer

چند ثانیه صبر کنید و دوباره تلاش کنید.

X-RateLimit-Limit
integer

سقف درخواست این نوع (خواندن یا نوشتن) در هر دقیقه برای این کلید.

X-RateLimit-Remaining
integer

درخواست‌های باقی‌مانده تا پایان دقیقه‌ی جاری.

X-RateLimit-Reset
integer

زمان شروع دقیقه‌ی بعد، به ثانیه از ۱۹۷۰ (Unix).