Notification API aracılığıyla siparişlerin statüleriyle ilgili herhangi bir değişiklik olduğunda ORDER_CHANGEbildirimi gönderilir. Bu sayfada ORDER_CHANGE bildirim türüne nasıl abone olunacağı ve kullanım senaryoları verilmiştir.
ORDER_CHANGE bildiriminin sağladığı kolaylıkları:
- Sipariş statüleri değiştiğinde Orders API'yi kullanmak yerine bildirim alırsınız ve servis kullanım limitini aşmamış olursunuz.
- Alıcı iptal talebinde bulunduğunda bildirim alırsınız.
- Bildirimlere filtre ekleyerek daha detaylı bilgi alabilirsiniz.
ORDER_CHANGE bildirimlerini kullanmadan önce;
- Geliştirici profilinizde "Envanter ve Sipariş Takibi" ve Amazon Lojistik rollerinin seçilmiş olması gerekir.
- Bir AWS hesabına ve NOTIFICATION SQS yapısının kurulmuş olmasına ihtiyacınız vardır.
Bu süreç için ilk olarak kurulum yapıp gerekli izinlerle birlikte kuyruğunuzu oluşturmalısınız. Bunun için ilk olarak bir AWS hesabı oluşturmalısınız. Hesap oluşturmak için verilen adımları takip edin.
Daha önce bir AWS hesabı oluşturduysanız aynı hesabı kullanabilirsiniz.
AWS hesabınız kurulduktan ve gerekli izinler alındıktan sonra bildirim alabilmek için gerekli SQS (Simple Queue Service) kuyruğunun kurulumu yapılmalı.
- İlk olarak bir destination oluşturmanız gerekmektedir. Bu adımla birlikte adımların ilgili kuyruğa iletilmesi sağlanır. Bunun için createDestination servisi kullanılır.
- Bu servis bildirimleri almak amacıyla destination oluşturmaya yarayan servistir.
- Servisin teknik detayları için : bknz. Servisin Uzantısı :
POST /notifications/v1/destinations
- Ardından abonelik oluşturmanız gerekmektedir. Bu abonelik, oluşturulan kuyruğa istenilen bildirim türlerine ait bildirimlerin iletilmesini sağlar. Aşağıda verilen adımlar ile ORDER_CHANGE bildirim türüne abone olunacaktır. Her bir bildirim türü için ayrı abonelik oluşturulmalıdır.
- Bunun için createSubscription sercisi kullanılır.
- Bu servis ile istediğiniz bildirim türüne abone olabilirsiniz. Bu servisi kullanmadan önce createDestination servisi çağrılmış ve destination oluşturulmuş olmalıdır.
- Servisin teknik detayları için : bknz. Servisin Uzantısı :
POST /notifications/v1/subscriptions/ORDER_CHANGE
processingDirective
, bildirimlerin işlenmesini kontrol etmek amazıyla aboneliğe ek bilgi iletmek için kullanılır. Örneğin, belirli bir Sipariş Değişikliği Türü için bildirimleri filtrelemek üzereeventFilter
parametresini ekleyebilirsiniz.- ORDER_CHANGE bildirimlerinde
eventFilter
'ı kullanmak için, abonelik oluşturma adımında body'eeventFilterType
veorderChangeTypes
'ı eklediğinizden emin olun. - Alıcıların iptal talepleri gibi değişikliklerin bildirimlerini almak istiyorsanız
orderChangeTypes
'aBuyerRequestedChange
'i eklemeniz gerekir. Tüm sipariş değişikliği türlerinden sipariş bildirimleri almak için, bu bildirime abone olurkeneventFilterType
ayarını ekleyin.
POST https://sellingpartnerapi-na.amazon.com/notifications/v1/subscriptions/ORDER_CHANGE
{
"payloadVersion": "1.0",
"destinationId": "e22gf420-1606-47c4-a393-91df6648d3da",
"processingDirective": {
"eventFilter": {
"orderChangeTypes": [
"OrderStatusChange",
"BuyerRequestedChange"
],
"eventFilterType": "ORDER_CHANGE"
}
}
}
{
"payload": {
"subscriptionId": "92d519e4-f208-493b-9092-d70cf546c383",
"destinationId": "e22gf420-1606-47c4-a393-91df6648d3da",
"payloadVersion": "1.0",
"processingDirective": {
"eventFilter": {
"orderChangeTypes": [
"OrderStatusChange"
],
"eventFilterType": "ORDER_CHANGE"
}
}
}
}
Yapılan aboneliğin başarılı olup olmadığını kontrol etmek amacıyla AWS hesabınızdan ilgili kuyruğa girip manuel olarak mesajlar kontrol edilip çekilebilir. Bunu yapabilmek için kuyruğa tıkladıktan sonra “Send and Receives Messages” butonuna tıklanıp sayfanın aşağında belirginleşen “Poll for Messages” butonuna tıklanabilir.
{
"NotificationVersion" : "1.0",
"NotificationType" : "ORDER_CHANGE",
"PayloadVersion" : "1.0",
"EventTime" : "2025-04-04T11:45:45.926Z",
"Payload" : {
"OrderChangeNotification" : {
"NotificationLevel" : "OrderLevel",
"SellerId" : "A297A7DJHEYXBY",
"AmazonOrderId" : "408-9812214-5408368",
"OrderChangeType" : "OrderStatusChange",
"OrderChangeTrigger" : {
"TimeOfOrderChange" : "2025-04-04T11:45:40.000Z",
"ChangeReason" : "Order Status Change"
},
"Summary" : {
"MarketplaceId" : "A33AVAJ2PDY3EV",
"OrderStatus" : "Pending",
"PurchaseDate" : "2025-04-04T11:44:25.148Z",
"DestinationPostalCode" : null,
"FulfillmentType" : "MFN",
"OrderType" : "StandardOrder",
"OrderPrograms" : [ "Premium" ],
"ShippingPrograms" : [ ],
"OrderItems" : [ {
"OrderItemId" : "47937510142202",
"SellerSKU" : "SellerSKUID1",
"SupplySourceId" : null,
"Quantity" : 1
} ]
}
}
},
"NotificationMetadata" : {
"ApplicationId" : "amzn1.sp.solution.8591b031-e6aa-4841-bf1a-550e5953dca9",
"SubscriptionId" : "bf179734-1f67-4645-9623-8b8c29521e50",
"PublishTime" : "2025-04-04T11:45:47.222Z",
"NotificationId" : "91e63afd-36d2-4706-9480-abd6f494065c"
}
}
{
"NotificationVersion" : "1.0",
"NotificationType" : "ORDER_CHANGE",
"PayloadVersion" : "1.0",
"EventTime" : "2025-04-04T13:31:25.656Z",
"Payload" : {
"OrderChangeNotification": {
"NotificationLevel": "OrderLevel",
"SellerId": "A297A7DJHEYXBY",
"AmazonOrderId": "903-8868176-2219830",
"OrderChangeType": "BuyerRequestedChange",
"OrderChangeTrigger": {
"TimeOfOrderChange": "2025-04-04T13:31:20.000Z",
"ChangeReason": "Buyer Requested Cancel"
},
"Summary": {
"MarketplaceId": "A33AVAJ2PDY3EV",
"OrderStatus": "Unshipped",
"PurchaseDate": "2025-04-04T11:44:25.148Z",
"DestinationPostalCode": "48110",
"FulfillmentType": "MFN",
"OrderType": "StandardOrder",
"NumberOfItemsShipped": 0,
"NumberOfItemsUnshipped": 1,
"EarliestDeliveryDate": "2025-04-04T11:44:25.148Z",
"LatestDeliveryDate": "2025-04-04T11:44:25.148Z",
"EarliestShipDate": "2022-11-07T19:42:04.284Z",
"LatestShipDate": "2025-04-04T11:44:25.148Z",
"CancelNotifyDate": "2025-04-04T11:44:25.148Z",
"OrderPrograms": ["Business"],
"ShippingPrograms": ["EasyShip"],
"EasyShipShipmentStatus": "Delivered",
"ElectronicInvoiceStatus": "NotFound",
"OrderItems": [
{
"OrderItemId": "47937510142202",
"SellerSKU": "SellerSKUID1",
"SupplySourceId": "d7679e14-031b-4ab3-a81b-ec4fc7a460b3",
"OrderItemStatus": "Unshipped",
"Quantity": 1,
"QuantityShipped": 0,
"IsBuyerRequestedCancel": true,
"ItemEarliestDeliveryDate": "2025-04-04T11:44:25.148Z",
"ItemLatestDeliveryDate": "2025-04-04T11:44:25.148Z"
}
]
}
}
},
"NotificationMetadata" : {
"ApplicationId" : "amzn1.sp.solution.8591b031-e6aa-4841-bf1a-550e5953dca9",
"SubscriptionId" : "bf179734-1f67-4645-9623-8b8c29521e50",
"PublishTime" : "2025-04-04T13:31:26.028Z",
"NotificationId" : "1681d452-f811-4dc1-86e2-1a2010148cd2"
}
}
BuyerRequestedChange: Alıcının bir iptal başlattığını bildirir.
OrderStatusChange: Sipariş durumunun değiştiğini gösterir.
ORDER_CHANGE bildiriminin yükü artık ilgili siparişten OrderItems sağlar. OrderItems bilgilerini kullandığınızda, bir siparişte hangi ürünlerin olduğunu bilmek için getOrderItems işlemini çağırmanız gerekmez.
Kuyruğa iletilen bildirimleri kontrol edip mesaj geldiğinde çekmeniz gerekmektedir. Bu işlemi düzenli periyotlarda ya da ihtiyaçlarına uygun özellikte otomatik olarak yapabilirsiniz.