Статті на: Розробникам
Ця стаття також доступна на:

Синхронізація цін та наявності вашого сайту з Pricer24

Pricer24 має функціонал, що дозволяє повідомити вашу систему про зміну ціни чи наявності товару.

Для підключення послуги вам необхідно реалізувати end-point, який буде обробляти запити від Pricer24 і повідомити його адресу в нашу техпідтримку.

Принцип роботи



При зміні ціни та наявності у Pricer24, система додає інформацію про це у чергу.
За замовчуванням раз у 2 хвилини запускається служба, яка групує зміни по 100 штук і послідовно відправляє POST-запити на end-point по протоколу HTTP/HTTPS.
При отриманні коду відповіді 200, зміни позначаються як оброблені, система відправляє наступний пакет зі змінами. В іншому випадку служба переривається і при наступному запуску зміни будуть відправлені повторно, і так поки код відповіді не буде 200.
Ліміт на обробку запиту – 1 хвилина, після чого служба буде зупинена, а обробка запиту вважатиметься неуспішною.


Запити формуються не тільки при зміні ціни, але й при зміні будь-якої властивості товару, наприклад, назви або тегів.

Контракт



Система формує і відправляє POST-запити на ваш end-point.

Приклад запиту:

{
	"Data": [
		{
			"EntityType": "product",
			"EntityId": "273555",
			"Entity": {
				"Id": "2db16c12-40a6-4e6c-848d-0f139bd8ef54",
				"ExternalId": "273555",
				"Name": "1stPlayer B7-R1 Color LED без БП Black",
				"Availability": {
					"Id": "eda9817f-9c2a-4aa1-9caa-5a12fa90cfcc",
					"UnifiedName": "in_stock",
					"IsAvailable": true
				},
				"Tags": [
					{
						"Id": "de71e492-b4dd-4d97-b88a-372358a1ed8f",
						"Name": "new",
						"Color": "#000000"
					}
				],
				"Prices": [
					{
						"Id": "500aea54-e841-4778-9777-9c2b39236291",
						"Name": "Главная",
						"UnifiedName": "price",
						"IsMain": true,
						"Price": 1328.0,
						"Currency": "UAH"
					},
					{
						"Id": "1bd3c67f-de03-482b-a507-b852053000dd",
						"Name": "TEST_PRICE",
						"UnifiedName": "test",
						"IsMain": false,
						"Price": 52.0,
						"Currency": "USD"
					}
				]
			}
		}
	],
	"Secret": ""
}


Інформація про зміни міститься у масиві Data.
EntityType – тип об’єкту, що був змінений
EntityId – код об’єкту (товару) в системі клієнта
Entity – інформація про сам об’єкт (товар)

Secret – секретний ключ, який потрібен щоб можна було валідувати запити, які приймає ваш end-point (щоб ви могли бути впевнені, що запити надходять саме від нас).

У цій статті ми розглядаємо виключно запити для об'єкту product (товар)

Об’єкт Entity


Id – код товару у Pricer24
ExternalId – код товару у системі клієнта
Name – назва товару
Availability – наявність товару
Tags – масив тегів товару массив тегів товару
Prices – масив цін товару


Об’єкт Availability

Id – код наявності у Pricer24
UnifiedName – псевдонім наявності
IsAvailable – товар в наявності чи ні


Об’єкт Tag

Id – код тегу у Pricer24
UnifiedName – псевдонім тегу
Color – колір тегу у форматі HEX


Об’єкт Price

Id – код типу ціни у Pricer24
Name – назва типу ціни у Pricer24
UnifiedName – псевдонім типу ціни
IsMain – чи є тип ціни основним
Price – ціна (nullable)
Currency – ISO-код валюти ціни (nullable)

Оновлено: 07/06/2024

Чи була ця стаття корисною?

Поділіться своїм відгуком

Скасувати

Дякуємо!