Upgrading From 3.16 To 3.17
To follow the zero-downtime strategy when upgrading to 3.17, It is recommended to first migrate to at least 3.16.2 and turn on the Celery worker to process all data migrations asynchronously. Otherwise, you will need to downtime your solution to ensure correct data migration.
Migrating from NOTIFY_USER
Starting from Saleor 3.16, the NOTIFY_USER
webhook event will be deprecated. If your app uses this webhook, you should migrate to dedicated webhook events. The following is a list of webhook events that replace specific notifications. All webhook events that replace NOTIFY_USER
support subscription queries, which allow you to define the payload you want to receive for your notifications.
The table below shows sub-types of NOTIFY_USER
events (represented as the notify_event
field in the legacy payloads), their GraphQL subscription replacements, and the Saleor version in which they were or will be introduced.
NOTIFY_USER event | Subscription | Saleor version |
---|---|---|
ACCOUNT_CHANGE_EMAIL_CONFIRM | AccountEmailChanged | 3.15 |
ACCOUNT_CHANGE_EMAIL_REQUEST | AccountChangeEmailRequested | 3.15 |
ACCOUNT_CONFIRMATION | AccountConfirmationRequested | 3.15 |
ACCOUNT_DELETE | AccountDeleteRequested | 3.15 |
ACCOUNT_PASSWORD_RESET | AccountSetPasswordRequested | 3.15 |
ACCOUNT_SET_CUSTOMER_PASSWORD | AccountSetPasswordRequested | 3.15 |
ACCOUNT_SET_STAFF_PASSWORD | StaffSetPasswordRequested | 3.15 |
ACCOUNT_STAFF_RESET_PASSWORD | StaffSetPasswordRequested | 3.15 |
CSV_EXPORT_FAILED | ProductExportCompleted, GiftCardExportCompleted | 3.16 |
CSV_EXPORT_SUCCESS | ProductExportCompleted, GiftCardExportCompleted | 3.16 |
INVOICE_READY | InvoiceSent | 3.2 |
ORDER_CANCELED | OrderCancelled | 3.2 |
ORDER_CONFIRMATION | OrderCreated | 3.2 |
ORDER_CONFIRMED | OrderConfirmed | 3.2 |
ORDER_FULFILLMENT_CONFIRMATION | FulfillmentCreated | 3.4 |
ORDER_FULFILLMENT_UPDATE | FulfillmentTrackingNumberUpdated | 3.16 |
ORDER_PAYMENT_CONFIRMATION | OrderFullyPaid | 3.2 |
ORDER_REFUND_CONFIRMATION | OrderRefunded | 3.14 |
SEND_GIFT_CARD | GiftCardSent | 3.13 |
STAFF_ORDER_CONFIRMATION | OrderCreated | 3.2 |
To migrate to new events, you need to create new webhooks in Saleor and provide subscription queries for the events you want to receive.
Payload changes
Some fields that were available in the NOTIFY_USER
payload are not available in subscription payloads of the new events:
domain
- the domain of the Saleor instance, can be fetched from the API using the shop query.site_name
- same as above.logo_url
- if needed, apps should handle providing the logo URL themselves.
Deprecation of the externalNotificationTrigger
mutation
Starting from Saleor 3.16, the externalNotificationTrigger mutation will be deprecated. Apps that send custom notifications should implement their own logic for this purpose.