Saleor Webhook 비동기 이벤트
비동기(Async) 이벤트는 fire-and-forget 방식이다. Saleor가 응답을 기다리지 않으므로 흐름을 차단하거나 수정할 수 없다. 후처리(알림, 동기화, 로깅)에 사용한다. 약 134개.
도메인별 이벤트 수
| 도메인 | 이벤트 수 | 주요 이벤트 |
|---|---|---|
| Order (Draft 포함) | 12 | ORDER_CREATED/CONFIRMED/PAID/FULLY_PAID/CANCELLED/FULFILLED, DRAFT_ORDER_CREATED/UPDATED/DELETED |
| Product/Variant | 15 | PRODUCT_CREATED/UPDATED/DELETED, VARIANT_OUT_OF_STOCK/BACK_IN_STOCK |
| Account/Address/Customer | 15 | CUSTOMER_CREATED, ACCOUNT_CONFIRMATION_REQUESTED, ADDRESS_CREATED |
| Checkout | 5 | CHECKOUT_CREATED/UPDATED/FULLY_PAID |
| Fulfillment | 5 | FULFILLMENT_CREATED/CANCELED/TRACKING_NUMBER_UPDATED |
| Discount (Sale/Promotion) | 12 | PROMOTION_CREATED/STARTED/ENDED, SALE_CREATED |
| Voucher | 7 | VOUCHER_CREATED/UPDATED/DELETED/CODES_CREATED/CODES_DELETED |
| Channel | 5 | CHANNEL_CREATED/UPDATED/STATUS_CHANGED |
| Shipping | 7 | SHIPPING_PRICE_CREATED, SHIPPING_ZONE_CREATED |
| Invoice | 3 | INVOICE_REQUESTED/DELETED/SENT |
| Collection/Category | 7 | COLLECTION_CREATED, CATEGORY_CREATED |
| Staff/Permission | 7 | STAFF_CREATED, PERMISSION_GROUP_CREATED |
| Gift Card | 7 | GIFT_CARD_CREATED/SENT/STATUS_CHANGED |
| Page/PageType | 6 | PAGE_CREATED/UPDATED/DELETED |
| Attribute | 6 | ATTRIBUTE_CREATED/UPDATED/DELETED, ATTRIBUTE_VALUE_* |
| Menu/MenuItem | 6 | MENU_CREATED, MENU_ITEM_CREATED |
| Warehouse | 4 | WAREHOUSE_CREATED/UPDATED/DELETED |
| Translation | 2 | TRANSLATION_CREATED/UPDATED |
| 기타 | 3 | THUMBNAIL_CREATED, SHOP_METADATA_UPDATED, OBSERVABILITY |
Deferred Payload
Order 관련 이벤트 대부분과 Checkout 일부는 is_deferred_payload: True로 payload 생성 자체도 비동기 큐에서 처리된다. 고부하 환경에서 API 응답 속도 보호 목적. 정확한 대상은 코어 소스코드의 is_deferred_payload 플래그에서 확인할 것 — 공식 문서에서 명세하지 않는 내부 구현 세부사항이다.
커스터마이징 관점
비동기 이벤트는 흐름을 변경할 수 없고 관찰만 가능하다. 한국형 커스터마이징에서의 용도:
ORDER_CREATED→ 외부 ERP/WMS 동기화INVOICE_REQUESTED→ 세금계산서 발행 App 트리거FULFILLMENT_TRACKING_NUMBER_UPDATED→ 배송추적 알림PRODUCT_VARIANT_OUT_OF_STOCK→ 재입고 알림CHECKOUT_FULLY_PAID→ 결제 완료 알림톡 발송