کد وضعیت 401
token ارسالی اشتباه می باشد.
کد وضعیت 400
عملیات به شکست خورده برای اطلاعات بیشتر می توانید پاسخی که داده شده را مطالعه فرمائید.
فراموش نکنید !
تمامی درخواست های ارسالی و دریافتی تنها بر روی متد
POST
صورت میگیرد و تمام پاسخ ها و خواندن های شکلات به زبان
JSON
می باشد.
نکته ی کنکوری !
شکلات تنها ID های خودش را متوجه می شود. شاید منظور را بد متوجه شده باشید بگذارید
شفاف تر بگوییم.
در صورتی که شما محصولی در نرم افزار خود دارید یا جدید ثبت کرده اید کد شناسایی آن
یا همان ID برای شکلات نامفهوم هست. شکلات تنها IDهای خودش را میفهمد.
هنگامی که محصول جدید را در شکلات ثبت میکنید در پاسخ، شکلات ID که خودش ثبت کرده
است را برای شما میفرستد دقیقا مانند یک فرد ایرانی هست که وارد آمریکا می شود
کد ملی فرد ایرانی در آمریکا کاملا بی معنی هست.
جهت برقراری ارتباط دو طرفه شکلات با نرم افزار شما نیاز به دریافت
Accesses Token
یا به اختصار AT می باشید جهت دریافت AT به منوی فعال سازی مراجعه و با فعال کردن وب سرویس
شعبه مربوطه کد AT را دریافت نمائید.
مراقب باشید ...
کد AT محرمانه می باشد. از افشای این کد جدا خودداری نمائید.
افراد غریبه با داشتن این کد به راحتی می توانند به اطلاعات شما دسترسی و
در پنل شما اطلاعات جدید ثبت یا ویرایش نمایند.
اشتباه نکنید !
شما برای اتصال شکلات به نرم افزار خود یک توکن میتوانید تعریف کنید که با مراجعه به
منوی وب
سرویس زیر منوی فعال سازی؛ پس از فعال سازی
شعبه مورد نظر شما میتوانید یک توکن خارجی نیز تعریف کنید. پس از تعریف این توکن از این
به بعد
شکلات برای درخواست هایی که برای شما ارسال میکند این توکن را نیز میفرستد تا به راحتی
بتوانید
او را
شناسایی کنید و بدانید مربوط به چه شعبه ای نیز هست.
در مرحله ی بعدی شما باید آدرس های فراخوانی خود را به شکلات معرفی کنید. برای این کار به
منوی
وب سرویس و زیرمنوی تنظیمات مراجعه کنید
و به شکلات بگویید در صورت ثبت مشتری جدید یا محصول و یا حتی فاکتور جدید چه آدرسی را
فراخوانی
کند.
زیبا نیست ؟ به همین راحتی شما میتوانید از امکانات وب سرویس استفاده کنید.
حال برای شما سوال پیش می آید چه اطلاعاتی شکلات برای من میفرستد و چه اطلاعاتی می توانم از
شکلات دریافت کنم ؟
بیایید با هم شروع کنید ...
تغییرات این نسخه
توضیح |
تغییر در فرمت پاسخ دهی |
تغییر وب هوک های محصولات |
افزودن وب هوک کاهش و افزایش امتیاز |
افزودن وب هوک رویدادها |
دریافت لیست مشخصات مشتریان شکلات
شما میتوانید لیست مشخصات تمام مشتریان شکلات را همراه با کد شناسایی آن ها (ID) دریافت کنید.
آدرس :
/api/webhook/v2/customers/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
[
{
"id": "کد شناسایی در شکلات",
"name": "نام مشتری",
"family": "نام خانوادگی مشتری",
"mobile": "موبایل مشتری",
"status": "وضعیت مشتری : 1 به معنی فعال و 0 به معنی غیر فعال",
"card_no": "شماره کارت مشتری",
"last_buy": "تاریخ آخرین خرید مشتری",
},
.
.
.
]
دریافت امتیاز، اعتبار و مشخصات یک مشتری
با ارسال پارامترهای زیر، می توانید امتیازکل، امتیاز باقی مانده، اعتبار ، گروه مشتری و دیگر مشخصات مشتری را
دریافت کنید.
میتوانید یکی از پارامترهای "customer_id" و یا "mobile" را ارسال کنید و نیازی به ارسال هر دو پارامتر نیست.
آدرس :
/api/webhook/v2/customer/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اختیاری(در صورتی که شماره موبایل را ارسال نمی کنید اجباری می باشد) |
کد شناسایی مشتری در شکلات |
3 |
mobile |
اختیاری (در صورتی که آیدی مشتری را ارسال نمی کنید اجباری است) |
شماره موبایل مشتری |
فرمت پاسخ :
{
"all_score": "امتیاز کل",
"remaining_score": "امتیاز باقی مانده",
"credit": "میزان اعتبار باقی مانده",
"group": "نام گروه مشتری",
"name": "نام",
"family": "نام خانوادگی",
"registration_code": "شماره عضویت مشتری",
"customer_id": "customer id in Shokolat",
}
چی ماله چیه ؟!
میزان اعتبار باقی مانده
در شعبه ای هست که کد AT آن در پارامتر Token برای این API
ارسال می شود اما
امتیاز کل
و
امتیاز باقی مانده
در کل فروشگاه می باشد.
دریافت لیست گروه مشتریان
در این API شما میتوانید لیست گروه های مشتریان را به راحتی دریافت کنید.
آدرس :
/api/webhook/v2/customer/groups/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
[
{
"id": "کد گروه مشتری در شکلات",
"name": "نام گروه مشتری",
"is_starting_group": "آیا گروه آغازین می باشد ؟ 1 به معنی بله و 0 به معنی خیر"
},
.
.
.
]
نکن این اشتباه رو ...
لازم به ذخیره کردن گروه مشتریان در پایگاه داده خود ندارید! چرا ؟! چون ممکنه گروهی به
این لیست افزوده بشه و خوب
جدول شما به روز نمیشه از یک طرف دیگه هم فقط زمانی به این لیست نیاز دارید که بخواهید
مشتری جدیدی ثبت کنید و گروه او را در شکلات
مشخص کنید پس به راحتی این API را صدا بزنین و کد گروه مشتری رو برای ما بفرستید.
بقیه کارها را بسپارید به ما :)
افزودن مشتری جدید به شکلات
با صدا زدن این API شما به راحتی آب خوردن می توانید یک مشتری جدید اضافه کنید
پیامک ارسال شد ...
با توجه به تنظیمات ثبت شده در شکلات، در هنگام ثبت مشتری جدید پیامک، ایمیل و اعلان اپ
اندروید برای مشتری
ثبت شده ارسال می شود. اگر میخواهید ارسال نشود در منوی تنظیمات زیر منوی پیکربندی
اعلان ها آن را غیرفعال کنید. به همین سادگی :)
آدرس :
/api/webhook/v2/customer/push
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
name |
اجباری |
نام مشتری |
3 |
family |
اجباری |
نام خانوادگی مشتری |
4 |
mobile |
اجباری |
موبایل مشتری |
5 |
city |
اختیاری |
شهر سکونت مشتری |
6 |
group_id |
اختیاری |
کد گروه شکلات مشتری |
فرمت پاسخ :
{
"id": "کد مشتری ثبت شده در شکلات",
"mobile": "موبایل مشتری ثبت شده"
}
میدونم میدونم!
مشتری تکراری توی شکلات جایی نداره! اگر موبایل تکراری وارد شود نه تنها مشتری
ثبت نمیشود بلکه
مشتری ارسال شده عضو فروشگاه شما شده و کد
مشتری که با این موبایل ثبت شده است برای شما ارسال میشود.
در صورتی که گروه مشتری را ارسال نکنید،مشتری در گروه پایه عضو خواهد شد
همگام سازی مشتریان با شکلات
با صدا زدن این API شما می توانید لیست مشتریان خود را برای شکلات بفرستید و شکلات
آنها را ذخیره کرده و سپس ID های آنها را برای شما فرستاده و
به دنبال آن لیست مشتریان خود را نیز برای شما ارسال میکند
مهم مهم مهم ...
اگر این API را باردیگر صدا بزنید لیست مشتریان خودتان را نیز برای شما ارسال میکند
پس مدیریت این امر به عهده شما می باشد.
از کجا میاره ؟
قبل از هرکاری ابتدا شما باید آدرس API خودتان را برای شکلات مشخص کنید. برای این کار
وارد منوی
وب سرویس سپس به زیر منوی تنظیمات مراجعه کرده و فیلد آدرس دریافت لیست مشتریان را وارد
کنید.
شکلات آدرس شما را به صورت POST و به همراه توکن خارجی که برای آن شعبه تعریف کرده اید
ارسال میکند. اگر تعریف نکرده اید وارد منوی وب سرویس شده و در زیرمنوی فعال سازی برای
شعبه مربوطه توکن خارجی تعریف کنید.
فرمت پاسخ شما باید به صورت زیر باشد، هرگونه اطلاعات اضافی پردازش نمیشود :
[
{
"name": "نام مشتری شما",
"family": "نام خانوادگی مشتری شما",
"mobile": "موبایل مشتری شما"
},
.
.
.
]
موبایلتو بده :)
برای ما موبایل خیلی مهم هست. پس مشتریانی که موبایل ندارند ثبت نمی شوند؛
اگر هم با این موبایل یک مشتری موجود باشد به راحتی ما آن مشتری را عضو فروشگاه
شما کرده
و کد او را برای شما میفرستیم.
آدرس :
/api/webhook/v2/customers/sync
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
{
"inserted_customers": [
{
"id": "کد شناسایی مشتری ثبت شده در شکلات",
"mobile": "موبایل مشتری ثبت شده در شکلات",
},
.
.
.
],
"customers": [
{
"id": "کد شناسایی در شکلات",
"name": "نام مشتری",
"family": "نام خانوادگی مشتری",
"mobile": "موبایل مشتری",
"status": "وضعیت مشتری : 1 به معنی فعال و 0 به معنی غیر فعال"
},
.
.
.
]
}
کد وضعیت 500
اگر از طرف API شما پاسخی دریافت نشود یا اروری بدهد با کد وضعیت 500 پاسخ زیر ارسال می
شود.
{
"error": "no response from your server"
}
کسر از اعتبار مشتری
با ارسال پارامترهای زیر، میتوانید مقدار مورد نیاز را از اعتبار مشتری کسر کنید؛ فقط کافی است
مشتری اعتبار
کافی جهت کسر کردن داشته باشد.
آدرس :
/api/webhook/v2/customer/expend/credit
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
credit |
اجباری |
میزان اعتبار به صورت عدد و به واحد ریال |
4 |
factor_code |
اختیاری |
شماره فاکتور |
5 |
description |
اختیاری |
توضیحات |
فرمت پاسخ :
{
"msg": "اعتبار با موفقیت از حساب مشتری کاسته شد."
}
شرایط رو بی خیال !
در اینجا ما شرایط مصرف اعتبار را در نظر نمیگیریم و مستقیم از حساب
کاربر کم می کنیم.
چه خطاهایی می دهیم ؟!
خطاهای زیر با کد وضعیت 500 ارسال می شوند.
{
"msg": "میزان اعتبار وارد شده از میزان اعتبار مشتری بیشتر است."
}
{
"msg": "مشتری اعتبار ندارد"
}
افزایش اعتبار مشتری
با ارسال پارامترهای زیر، میتوانید مقدار مورد نیاز به اعتبار مشتری اضافه کنید.
آدرس :
/api/webhook/v2/customer/inc/credit
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
credit |
اجباری |
میزان اعتبار به صورت عدد و به واحد ریال |
4 |
expire |
اجباری |
انقضاء اعتبار به روز |
4 |
branches |
اختیاری |
لیست توکنهای شعبههای مصرف اعتبار به صورت آرایه. مثال: ["nb767km","tgx145"] |
5 |
description |
اختیاری |
توضیحات |
فرمت پاسخ :
{
"msg": "اعتبار با موفقیت به مشتری افزوده شد."
}
پس بقیه ؟!
با استفاده از این API شما فقط قادر خواهید بود اعتبار مشتری را در شعبه ای که
با token به این API متصل می شود شارژ کنید و این اعتبار در دیگر شعبه ها قابل دسترسی
نمی باشد.
اعتبارِ اعتبار !
اعتبار ارسالی شما به صورت عدد می باشد و از بازه 0 الی بازه مورد نظر شما می باشد
مثلا اگر شما 0 ارسال کنید
انقضاء اعتبار تا ساعت 12 شب روز جاری می باشد و اگر شما 1 را ارسال کنید تا ساعت 12
روز بعد؛
به همین ترتیب برید جلو ...
افزایش امتیاز مشتری
با ارسال پارامترهای زیر، میتوانید مقدار مورد نیاز را به امتیاز مشتری اضافه کنید.
آدرس :
/api/webhook/v2/customer/inc/score
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
score |
اجباری |
میزان امتیاز به صورت عدد |
4 |
description |
اختیاری |
توضیحات |
فرمت پاسخ :
{
"msg": "امتیاز با موفقیت به مشتری افزوده شد."
}
کسر از امتیاز مشتری
با ارسال پارامترهای زیر، میتوانید مقدار مورد نیاز را به امتیاز مشتری اضافه کنید.
آدرس :
/api/webhook/v2/customer/expend/score
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
score |
اجباری |
میزان امتیاز به صورت عدد |
4 |
description |
اختیاری |
توضیحات |
فرمت پاسخ :
{
"msg": "امتیاز با موفقیت از مشتری کسر شد."
}
دریافت لیست مشخصات محصولات شکلات
شما میتوانید لیست مشخصات تمام محصولات شکلات را همراه با کد شناسایی آن ها (ID) دریافت کنید.
آدرس :
/api/webhook/v2/products/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
[
{
"id": "کد شناسایی در شکلات",
"name": "نام محصول",
"barcode": "بارکد محصول",
"price": "مبلغ محصول که به ریال می باشد",
"status": "وضعیت محصول : 1 به معنی فعال و 0 به معنی غیر فعال",
"stock_count": "موجودی انبار"
},
.
.
.
]
دریافت لیست محصول های یک گروه
در این API شما میتوانید لیست محصول های گروه را به راحتی دریافت کنید.
آدرس :
/api/webhook/v2/group/products/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
group_id |
اجباری |
کد گروه محصول در شکلات |
فرمت پاسخ :
[
{
"id": "کد شناسایی در شکلات",
"name": "نام محصول",
"barcode": "بارکد محصول",
"price": "مبلغ محصول که به ریال می باشد",
"status": "وضعیت محصول : 1 به معنی فعال و 0 به معنی غیر فعال",
"stock_count": "موجودی انبار"
},
.
.
.
]
دریافت لیست گروه محصولات
در این API شما میتوانید لیست گروه های محصولات را به راحتی دریافت کنید.
آدرس :
/api/webhook/v2/product/groups/pull
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
[
{
"id": "کد گروه محصولات در شکلات",
"name": "نام گروه محصولات"
},
.
.
.
]
نکن این اشتباه رو ...
لازم به ذخیره کردن گروه محصولات در پایگاه داده خود ندارید! چرا ؟! چون ممکنه گروهی به
این لیست افزوده بشه و خوب
جدول شما به روز نمیشه از یک طرف دیگه هم فقط زمانی به این لیست نیاز دارید که بخواهید
محصول جدیدی ثبت کنید و گروه او را در شکلات
مشخص کنید پس به راحتی این API را صدا بزنین و کد گروه محصول رو برای ما بفرستید.
افزودن محصول جدید به شکلات
با صدا زدن این API شما به راحتی آب خوردن می توانید یک محصول جدید اضافه کنید
واحد پولی
تمام واحدهای پولی شکلات به ریال می باشد.
آدرس :
/api/webhook/v2/product/push
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
name |
اجباری |
نام محصول |
3 |
price |
اجباری |
مبلغ محصول به ریال |
4 |
barcode |
اجباری |
شماره بارکد محصول |
5 |
stock_count |
اجباری |
موجودی در انبار |
6 |
status |
اجباری |
وضعیت محصول: 1 به معنی فعال و 0 به معنی غیر فعال |
7 |
product_group_ids |
اجباری | آرایه |
کد گروه محصولات در شکلات به صورت آرایه مثال :
product_group_ids = [7,9,5]
|
فرمت پاسخ :
{
"id": "کد محصول ثبت شده در شکلات"
}
محصول تکراری
ما هیچ گونه بررسی بر روی محصولات برای تکراری بودن نمیکنیم برای همین
مدیریت این کار به عهده شما می باشد که محصولات تکراری شما داخل شکلات نشیند.
ما کد محصول برایمان خیلی مهم هست؛ تمام کارهامون با این کد هست پس من فقط این کد رو
میشناسیم...
کد 500
اگر با کد وضعیت 500 و یا خطای سیستمی مواجه شدید یک جای کار میلنگد؛ قیمت باید به صورت
عدد باشد؛ کد گروه محصول هم حتما باید موجود باشد در غیر این صورت
به شما خطای 500 میدهد.
ویرایش محصول موجود در شکلات
در اینجا شما می توانید به راحتی یک محصول را ویرایش کنید.
آدرس :
/api/webhook/v2/product/patch
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
product_id |
اجباری |
کد محصول در شکلات |
3 |
name |
اجباری |
نام محصول |
4 |
price |
اجباری |
مبلغ محصول به ریال |
5 |
barcode |
اجباری |
شماره بارکد محصول |
6 |
stock_count |
اجباری |
موجودی در انبار |
7 |
status |
اجباری |
وضعیت محصول: 1 به معنی فعال و 0 به معنی غیر فعال |
فرمت پاسخ :
{
"id": "کد محصول ویرایش شده در شکلات"
}
مالک محصول باید خودتان باشید
شما فقط اجازه دارید محصولات خودتان را ویرایش کنید. ما این اجازه را نمیدهیم محصولات
دیگران را ببینید یا ویرایش کنید.
کد 500
اگر با کد وضعیت 500 و یا خطای سیستمی مواجه شدید یک جای کار میلنگد؛ قیمت باید به صورت
عدد باشد؛ کد گروه محصول هم حتما باید موجود باشد در غیر این صورت
به شما خطای 500 میدهد.
همگام سازی محصولات با شکلات
با صدا زدن این API شما می توانید لیست محصولات خود را برای شکلات بفرستید و شکلات
آنها را ذخیره کرده و سپس ID های آنها را برای شما فرستاده و
به دنبال آن لیست محصولات خود را نیز برای شما ارسال میکند
مهم مهم مهم ...
اگر این API را باردیگر صدا بزنید لیست محصولات خودتان را نیز برای شما ارسال میکند
پس مدیریت این امر به عهده شما می باشد.
از کجا میاره ؟
قبل از هرکاری ابتدا شما باید آدرس API خودتان را برای شکلات مشخص کنید. برای این کار
وارد منوی
وب سرویس سپس به زیر منوی تنظیمات مراجعه کرده و فیلد آدرس دریافت لیست محصولات را وارد
کنید.
شکلات آدرس شما را به صورت POST و به همراه توکن خارجی که برای آن شعبه تعریف کرده اید
ارسال میکند. اگر تعریف نکرده اید وارد منوی وب سرویس شده و در زیرمنوی فعال سازی برای
شعبه مربوطه توکن خارجی تعریف کنید.
فرمت پاسخ شما باید به صورت زیر باشد، هرگونه اطلاعات اضافی پردازش نمیشود :
[
{
"name": "نام محصول شما",
"barcode": "بارکد محصول شما",
"price": "مبلغ محصول شما به ریال",
"status": "وضعیت محصول شما : 0 به معنی غیرفعال و 1 به معنی فعال",
"stock_count": "موجودی انبار کالا"
},
.
.
.
]
آدرس :
/api/webhook/v2/products/sync
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
فرمت پاسخ :
{
"inserted_products": [
{
"name": "نام محصول شما",
"barcode": "بارکد محصول شما",
"shokolat_id": "کد شناسایی محصول ثبت شده در شکلات",
},
.
.
.
],
"products": [
{
"id": "کد شناسایی در شکلات",
"name": "نام محصول",
"barcode": "بارکد محصول",
"price": "مبلغ محصول که به ریال می باشد",
"status": "وضعیت محصول : 1 به معنی فعال و 0 به معنی غیر فعال"
"stock_count": "موجودی انبار"
},
.
.
.
]
}
کد وضعیت 500
اگر از طرف API شما پاسخی دریافت نشود یا اروری بدهد با کد وضعیت 500 پاسخ زیر ارسال می
شود.
{
"error": "no response from your server"
}
ثبت صورتحساب جدید در شکلات
شما میتوانید به راحتی یک فاکتور در شکلات ثبت کنید. کافی است پارامترهای زیر را ارسال کنید تا
فاکتور با موفقیت ثبت شود.
آدرس :
/api/webhook/v2/factor/push
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
factor_static_id |
اجباری |
کد فاکتور شما فقط به صورت عددی |
4 |
date |
اجباری |
تاریخ فاکتور به صورت میلادی به همراه ساعت مانند مثال زیر :
|
5 |
sum |
اجباری |
جمع فاکتور به ریال |
6 |
discount_price |
اجباری |
جمع کل تخفیف به ریال |
7 |
amount_payable |
اجباری |
مبلغ قابل پرداخت به ریال |
8 |
pay_by_credit |
اجباری |
مبلغ پرداخت شده از اعتبار به ریال |
9 |
description |
اختیاری |
توضیحات فاکتور |
10 |
factor_details |
اجباری | JSON |
موارد فاکتور باید به صورت JSON و به فرمت زیر ارسال شود :
[
{
"product_id": "کد شناسایی محصول در شکلات",
"is_gift": "آیا این محصول هدیه است ؟ 1 به معنی بله و 0 به معنی خیر",
"unit_price": "مبلغ واحد به ریال",
"count": "تعداد محصول"
},
.
.
.
]
|
فرمت پاسخ :
{
"id": "کد فاکتور ثبت شده در شکلات"
}
اگر مشتری اعتبار نداشت ؟!
اگر مشتری اعتبار نداشت و شما خواستید از اعتبار او کسر کنید یا با توجه به شرایط
فاکتور؛ شرایط مصرف اعتبار
فراهم نشد با خطای زیر مواجه می شوید و فاکتور ثبت نمی شود.
{
"status": 420,
"error": "مشتری اعتبار ندارد"
}
کد وضعیت 500
در صورت مشاهده چنین وضعیتی یعنی شکلات آب شده است و در ثبت فاکتور به شکست خورده؛ شما
باید پارامترها را بررسی و دوباره تلاش کنید.
پیش پردازش فاکتور
از اسمش نترسید چیزی نیست. با استفاده از این API شما می توانید ببینید با توجه به شرایط
فاکتور چه طرح هایی شامل حال آن شده و همچنین میزان اعتبار قابل مصرف مشتری در داخل این فاکتور
و همچنین امتیاز کاربر و اعتبار کلی او چه میزان می باشد.
آدرس :
/api/webhook/v2/factor/process
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
2 |
item_count |
اجباری |
تعداد کل اقلام فاکتور |
4 |
factor_date |
اجباری |
تاریخ فاکتور به صورت شمسی به همراه ساعت مانند مثال زیر :
|
2 |
factor_price |
اجباری |
مبلغ فاکتور به صورت ریال |
2 |
product_item |
اجباری |
لیست کدهای شناسایی شکلات محصولات داخل فاکتور؛ مثال :
[
,"کد شناسایی محصول در شکلات"
,"کد شناسایی محصول در شکلات"
.
.
.
]
|
فرمت پاسخ :
{
"score": "میزان امتیاز دریافتی بابت این فاکتور",
"credit": "میزان اعتبار دریافتی بابت این فاکتور",
"credit_can_use": "میزان اعتبار قابل مصرف در این فاکتور",
"discount": "مجموع میزان تخفیف دریافتی بابت طرح ها در این فاکتور",
"plan_name": [
"نام طرح ها متعلق به این فاکتور",
"نام طرح ها متعلق به این فاکتور",
.
.
.
],
"product_id": [
"کد محصول در شکلات تعلق گرفته توسط طرح ها",
"کد محصول در شکلات تعلق گرفته توسط طرح ها",
.
.
.
],
"product_name": [
"نام محصول در شکلات تعلق گرفته توسط طرح ها",
"نام محصول در شکلات تعلق گرفته توسط طرح ها",
.
.
.
],
"product_price": [
"مبلغ محصول در شکلات تعلق گرفته توسط طرح ها",
"مبلغ محصول در شکلات تعلق گرفته توسط طرح ها",
.
.
.
],
"product_discount": [
"درصد تخفیف محصول در شکلات تعلق گرفته توسط طرح ها",
"درصد تخفیف محصول در شکلات تعلق گرفته توسط طرح ها",
.
.
.
]
}
فراخوانی رویداد
شما میتوانید رویداد جدیدی در پنل ثبت کنید. در صورتی که نوع آن را سفارشی بگذارید و آن را ثبت نمائید؛
پس از ثبت یک کد برای شما در لیست رویدادهایتان نمایش داده می شود. با این کد می توانید این رویداد را از طریق این API فراخوانی کنید.
آدرس :
/api/webhook/v2/event/call
پارامترها :
# |
نام پارامتر |
اختیاری/اجباری |
توضیحات |
1 |
token |
اجباری |
کد AT شناسایی شعبه مربوطه |
2 |
customer_id |
اجباری |
کد شناسایی مشتری در شکلات |
3 |
event_code |
اجباری |
کد فراخوانی رویداد |
فرمت پاسخ :
{
"result" : "رویداد با موفقیت فراخوانی شد."
}
اگر مشتری امتیاز نداشت ؟!
در ثبت رویداد شما میتوانید حتی از امتیاز اون نیز بکاهید. در صورتی که مشتری امتیاز کافی را نداشته باشد API به شما پاسخ مربوط را میدهد.
{
"result" : "امتیاز مشتری ناکافی می باشد."
}
رویداد اجرا نشد !
در صورتی که رویداد غیرفعال یا پیدا نشود API به شما پاسخ زیر را میدهد.
{
"result" : "در فراخوانی رویداد به شکست برخوردیم."
}