Skip to main content

وب‌هوک‌های پیش‌فاکتور

وب‌هوک‌های پیش‌فاکتور اطلاعات پیش‌فاکتور را پس از ایجاد یا ویرایش آن به آدرس مقصد ارسال می‌کنند. ساختار کلی Payload در هر دو رویداد یکسان است؛ با این تفاوت که در وب‌هوک ویرایش، آرایه changes مشخص می‌کند کدام اطلاعات پیش‌فاکتور در همان عملیات تغییر کرده‌اند.

ساختار داده ارسالی

object
اطلاعات کامل پیش‌فاکتوری است که وب‌هوک برای آن ارسال شده است. در وب‌هوک ایجاد، این Object وضعیت پیش‌فاکتوری تازه ایجادشده را نشان می‌دهد و در وب‌هوک ویرایش، آخرین وضعیت همان پیش‌فاکتور را پس از اعمال تغییرات در اختیار شما قرار می‌دهد.
array
تغییراتی که باعث ارسال وب‌هوک ویرایش پیش‌فاکتور شده‌اند در این Array قرار می‌گیرند. در وب‌هوک ایجاد، changes خالی است؛ چون پیش‌فاکتور تازه ساخته شده و نسخه قبلی‌ای برای مقایسه وجود ندارد. در وب‌هوک ویرایش، هر عضو مشخص می‌کند کدام فیلد تغییر کرده، مقدار آن پیش از ویرایش چه بوده و پس از ویرایش به چه مقداری تبدیل شده است. Object data وضعیت نهایی پیش‌فاکتور را نشان می‌دهد و changes فقط تغییرات همان عملیات را گزارش می‌کند.
object
اطلاعات فنی مربوط به خود رویداد وب‌هوک است، نه اطلاعات پیش‌فاکتور. این Object مشخص می‌کند چه عملیاتی انجام شده، رویداد متعلق به کدام بیزدامنه و پیش‌فاکتور است، چه کاربری آن را ایجاد کرده، تغییر از چه منبعی آمده و Payload توسط کدام تنظیم وب‌هوک و در چندمین تلاش ارسال شده است.

وب‌هوک ایجاد پیش‌فاکتور چه زمانی ارسال می‌شود؟

وب‌هوک ایجاد پیش‌فاکتور زمانی ارسال می‌شود که یک پیش‌فاکتور جدید با موفقیت در دیدار ثبت شود. آبجکت data شامل اطلاعات پیش‌فاکتور تازه ایجادشده است و آرایه changes خالی ارسال می‌شود، چون پیش از این عملیات رکوردی وجود نداشته که فیلدی از آن تغییر کرده باشد.

وب‌هوک ویرایش پیش‌فاکتور چه زمانی ارسال می‌شود؟

وب‌هوک ویرایش پیش‌فاکتور زمانی ارسال می‌شود که حداقل یکی از اطلاعات موجود در data تغییر کند. فیلدهایی که تغییر آن‌ها می‌تواند باعث ارسال این وب‌هوک شود عبارت‌اند از:
  • data.Id
  • data.BizDomainId
  • data.DealId
  • data.FinalPrice
  • data.CreatedOn
  • data.CreatorId
  • data.IsCanceled
  • data.InvoiceFormattedNumber
  • data.QuoteFormattedNumber
  • data.InvoiceType
  • data.Description
  • data.TotalPrice
  • data.TotalDiscount
  • data.TotalTaxPrice
  • data.TotalFinalPrice
  • data.QuoteExpirationDays
  • data.Items[].ProductId
  • data.Items[].ProductCode
  • data.Items[].VariantId
  • data.Items[].VariantCode
  • data.Items[].Title
  • data.Items[].VariantTitle
  • data.Items[].Description
  • data.Items[].Unit
  • data.Items[].UnitPrice
  • data.Items[].Quantity
  • data.Items[].Index
  • data.Items[].Discount
  • data.Items[].DiscountPercent
  • data.Items[].Price
  • data.Items[].TaxPrice
  • data.Items[].FinalPrice
  • data.DiscountRows
  • data.BuyerInfo
  • data.SellerInfo
اگر هیچ‌کدام از فیلدهای موجود در data تغییر نکنند، وب‌هوک ویرایش پیش‌فاکتور ارسال نمی‌شود. آرایه changes عامل Trigger نیست؛ این آرایه نتیجه تغییرات انجام‌شده را گزارش می‌کند و data آخرین وضعیت پیش‌فاکتور را پس از ویرایش نشان می‌دهد.

نمونه داده ارسالی