ایجاد محصول
این Endpoint برای ثبت یک محصول یا خدمت جدید در دیدار استفاده میشود. اطلاعاتی مثل عنوان، کد، واحد، گروه محصول، قیمت و زیرمحصولها را میتوانید هنگام ایجاد محصول مشخص کنیدPOST {{baseURL}}/api/product/save?apikey={{API_KEY}}
پارامترهای Query
| پارامتر | نوع | وضعیت | توضیح |
|---|---|---|---|
apikey | string | الزامی | کلید API دیدار. |
Header درخواست
Content-Type: application/json
بدنه درخواست
object
required
تمام اطلاعات محصول جدید داخل این آبجکت ارسال میشود. عنوان، کد، واحد و گروه محصول مشخص میکنند چه محصولی در دیدار ساخته شود و اطلاعاتی مثل قیمت، توضیحات، قیمت چندارزی و زیرمحصولها هم داخل همین آبجکت قرار میگیرند.
Show property
Show property
string
required
اسمی است که محصول با آن داخل دیدار نمایش داده میشود؛ مثلا «اشتراک یکساله» یا «لپتاپ مدل X». کاربرها هنگام اضافهکردن محصول به معامله، فاکتور یا پیشفاکتور این عنوان را میبینند.
number
کد اختصاصی محصول است و برای شناسایی دقیق آن بین سیستم شما و دیدار استفاده میشود. این کد باید بین محصولات دیدار تکراری نباشد.
Show شرایط ارسال
Show شرایط ارسال
کدی بفرستید که قبلا برای محصول دیگری در همین اکانت استفاده نشده باشد.
string
required
واحدی است که تعداد و قیمت محصول براساس آن محاسبه میشود؛ مثلا «عدد»، «بسته»، «کیلوگرم» یا «ساعت».
string
required
مشخص میکند محصول داخل کدام گروه محصول قرار بگیرد؛ مثلا محصول «اشتراک یکساله» میتواند در گروه «نرمافزار» قرار بگیرد.
Show وابستگیها
Show وابستگیها
این فیلد عنوان گروه را نمیپذیرد؛ باید
Id گروه محصول موجود در دیدار را بفرستید.- Get Product Categories —
Idگروه محصول را بردارید
string
عنوانی است که برای این محصول روی فاکتور و پیشفاکتور نمایش داده میشود. اگر این فیلد ارسال نشود، عنوان خود محصول یعنی
Product.Title استفاده میشود.string
توضیح تکمیلی محصول است؛ مثلا مشخصات و جزئیات بیشتر، شرایط ارائه یا هر نکتهای که فقط از روی عنوان محصول معلوم نمیشود.
number
قیمت پیشفرض یک واحد از محصول است. دیدار هنگام اضافهشدن محصول به معامله یا سند مالی، این عدد را بهعنوان قیمت اولیه در نظر میگیرد. مثلا اگر واحد محصول تعداد باشد و مقدار این فیلد هم برابر با 100000 باشد یعنی هر 1 عدد از این محصول ارزشی برابر با 100000 واحد دارد
boolean
مشخص میکند محصول برای استفادههای جدید فعال باشد یا نه. اگر این فیلد ارسال نشود، مقدار پیشفرض
true است.Show مقادیر مجاز
Show مقادیر مجاز
true— محصول فعال و قابل انتخاب استfalse— محصول برای انتخابهای جدید غیرفعال است
object
مقدار Custom Fieldهایی است که برای محصول ساختهاید. کلید هر پراپرتی، کلید فیلد و مقدار آن، دیتایی است که باید در همان فیلد ذخیره شود.
Show وابستگیها
Show وابستگیها
فقط از کلید Custom Fieldهایی استفاده کنید که برای محصول تعریف شدهاند و مقدار را متناسب با نوع همان فیلد بفرستید.
- Get Custom Fields — کلید فنی فیلد متناسب با Entity را بردارید
Show property
Show property
string
required
Field_Key نام ثابت نیست؛ آن را با کلید فنی واقعی Custom Field محصول، مثل Field_6_0_26، جایگزین کنید و مقدار موردنظر را روبهروی آن بفرستید.Show وابستگیها
Show وابستگیها
فقط از کلید Custom Fieldهایی استفاده کنید که برای محصول تعریف شدهاند و مقدار را متناسب با نوع همان فیلد بفرستید.
- Get Custom Fields — کلید فنی فیلد متناسب با Entity را بردارید
array
قیمت پیشفرض محصول را برای ارزهای مختلف نگه میدارد. اگر با چند ارز کار میکنید، برای هر ارز یک آیتم جدا داخل این آرایه بفرستید.
Show شرایط ارسال
Show شرایط ارسال
اگر فقط از
Product.UnitPrice استفاده میکنید و قیمت جداگانهای برای ارزهای دیگر ندارید، لازم نیست این آرایه را بفرستید.Show property
Show property
string
required
شناسه ارزی است که قیمت این آیتم براساس آن تعریف شده؛ عنوان یا علامت ارز را نفرستید و دقیقا
Id ارز موجود در دیدار را قرار دهید.number
required
قیمت یک واحد از محصول در ارزی است که
CurrencyId همین آیتم مشخص کرده است.number
تعداد رقمهای بخش اعشاری قیمت است؛ مثلا
0 یعنی بدون اعشار و 2 یعنی قیمت تا دو رقم اعشار نگه داشته شود.array
زیرمحصولهای محصول را مشخص میکند. زیرمحصول زمانی کاربرد دارد که یک محصول را در چند مدل یا حالت میفروشید؛ مثلا اشتراک سهماهه و یکساله.
Show شرایط ارسال
Show شرایط ارسال
اگر محصول مدل یا حالت جداگانه ندارد، این فیلد را ارسال نکنید یا آرایه خالی بفرستید.
Show property
Show property
string
required
نامی است که این زیرمحصول با آن داخل دیدار نمایش داده میشود؛ مثلا «اشتراک یکساله» یا «رنگ مشکی».
string
required
عنوانی است که برای همین زیرمحصول روی فاکتور و پیشفاکتور نمایش داده میشود.
boolean
مشخص میکند زیرمحصول حذفشده در نظر گرفته شود یا نه. مقدار پیشفرض
false است.Show مقادیر مجاز
Show مقادیر مجاز
true— زیرمحصول حذفشده در نظر گرفته میشودfalse— زیرمحصول حذفشده نیست
boolean
required
مشخص میکند این زیرمحصول انتخاب پیشفرض محصول باشد یا نه.
Show مقادیر مجاز
Show مقادیر مجاز
true— این زیرمحصول انتخاب پیشفرض استfalse— این زیرمحصول انتخاب پیشفرض نیست
number
required
قیمت پیشفرض یک واحد از همین زیرمحصول است و میتواند با قیمت محصول اصلی یا زیرمحصولهای دیگر فرق داشته باشد.
string
required
کد اختصاصی زیرمحصول است و برای شناسایی آن بین زیرمحصولهای همان محصول و سیستمهای متصل استفاده میشود.
Show شرایط ارسال
Show شرایط ارسال
کد هر زیرمحصول باید اختصاصی باشد و برای زیرمحصول دیگری تکرار نشود.
object
مقدار Custom Fieldهای مربوط به همین زیرمحصول را نگه میدارد. ساختارش مثل
Product.Fields است.Show وابستگیها
Show وابستگیها
فقط از کلید Custom Fieldهایی استفاده کنید که برای محصول تعریف شدهاند و مقدار را متناسب با نوع همان فیلد بفرستید.
- Get Custom Fields — کلید فنی فیلد متناسب با Entity را بردارید
Show property
Show property
string
Field_Key را با کلید فنی واقعی Custom Field محصول جایگزین کنید و مقدار موردنظر برای همین زیرمحصول را روبهروی آن بفرستید.Show وابستگیها
Show وابستگیها
فقط از کلید Custom Fieldهایی استفاده کنید که برای محصول تعریف شدهاند و مقدار را متناسب با نوع همان فیلد بفرستید.
- Get Custom Fields — کلید فنی فیلد متناسب با Entity را بردارید
قواعد و محدودیتها
- مقدار
Product.Codeباید برای هر محصول اختصاصی و غیرتکراری باشد.
{
"Product": {
"Title": "عنوان تست محصول",
"Code": "120235",
"Unit": "تعداد",
"UnitPrice": 200000,
"Description": "test description",
"IsActive": true,
"ProductCategoryId": "2c0ce978-8005-4f01-8c6a-006939f4ce33",
"Variants": [
{
"Title": "عنوان تست متغیر",
"TitleForInvoice": "عنوان تست متغیر",
"IsDeleted": false,
"IsDefault": true,
"UnitPrice": 250000,
"VariantCode": "10",
}
],
"Fields": {
"Field_6_0_26": "10"
},
"ProductPrices": [
{
"CurrencyId": "96107",
"Price": 100000,
"decimalLength": 0
},
{
"CurrencyId": "221243",
"Price": 2,
"decimalLength": 2
}
]
}
}
curl --location 'https://app.didar.me/api/product/save?apikey={{API_KEY}}' \
--header 'Content-Type: application/json' \
--data '{
"Product": {
"Title": "عنوان تست محصول",
"Code": "120235",
"Unit": "تعداد",
"UnitPrice": 200000,
"Description": "test description",
"IsActive": true,
"ProductCategoryId": "2c0ce978-8005-4f01-8c6a-006939f4ce33",
"Variants": [
{
"Title": "عنوان تست متغیر",
"TitleForInvoice": "عنوان تست متغیر",
"IsDeleted": false,
"IsDefault": true,
"UnitPrice": 250000,
"VariantCode": "10",
}
],
"Fields": {
"Field_6_0_26": "10"
},
"ProductPrices": [
{
"CurrencyId": "96107",
"Price": 100000,
"decimalLength": 0
},
{
"CurrencyId": "221243",
"Price": 2,
"decimalLength": 2
}
]
}
}'
{
"Response": {
"Id": "412c14f0-aef9-41b7-b186-53032c8e1e2b",
"Title": "عنوان تست محصول",
"Code": "120235",
"DidarId": 5027894,
"Description": "test description",
"ProfitMargin": 0.0,
"TitleForInvoice": "عنوان تست محصول",
"Unit": "تعداد",
"UnitPrice": 200000.0,
"Fields": "{\"Field_6_0_26\":\"10\"}",
"IsActive": true,
"Category": null,
"SaleTypeId": "00000000-0000-0000-0000-000000000000",
"ProductPrices": [
{
"Id": 4370799,
"ProductId": "412c14f0-aef9-41b7-b186-53032c8e1e2b",
"CurrencyId": 96107,
"Price": 200000.0
}
],
"Variants": [
{
"Id": "4364ffa6-5b8e-486f-8732-7b902f208f47",
"ProductId": "412c14f0-aef9-41b7-b186-53032c8e1e2b",
"Title": "عنوان تست متغیر",
"DidarId": 2569686,
"TitleForInvoice": "عنوان تست متغیر",
"IsDeleted": false,
"IsDefault": true,
"UnitPrice": 250000.0,
"VariantCode": "10",
"VariantPrices": [
{
"Id": 2572466,
"CurrencyId": 96107,
"Price": 0.0,
"VariantId": "4364ffa6-5b8e-486f-8732-7b902f208f47"
}
]
}
]
}
}