հասանելի տեղեկատվությունը արդյունքների ստուգման – ի կազմում
- Պատվերի համարը և արտադրանքի դիրքերի վերծանումը ձեր կողմից մնացորդներից հետագա դեբետավորման/դուրս գրելու համար (կարգավորվում է ինքնուրույն):
- Սկանավորված գծանշումների հետագա հեռացման համար.
Կարգավիճակներ, որոնց դոպքում հնարավոր է արդյունքների ստուգման ուղարկել
- հավաքագրողը հավաքել է պատվերը (մինչ առաքիչին փոխանցելը).
- Պատվերը չեղարկվել է հավաքագրողի կողմից պատվերը հավաքագրելուց հետո
- Պատվերը հավաքվել և փոխանցվել է առաքիչին — Չեղարկված է կամ Առաքված է, կախված չեն պատվերի հետագա կարգավիճակից.
- Պատվերը առաքված կամ չեղարկված է առաքիչին հանձնելուց հետո.
ուղարկման կարգավորումներ
Հաջող կարգավորելու համար տվյալները փոխանցեք մենեջերի միջոցով:
- աշխատանքային URL վերջավորությամբ
/result-check; - տոկեն/token , որը մենք կօգտագործենք թույլտվություն (авторизация) ստանալու համար՝ առաջին կետից նշված հասցեին հարցում կատարելիս
- հավաքածու կարգավիճակների, որի համար հարկավոր է ստանալ резалт-чек.
Սխեմա
swagger: "2.0"
info:
title: Result Check API
description: Result Check API
version: 1.0.0
schemes:
- http
basePath: /
consumes:
- application/json
produces:
- application/json
paths:
/result-check:
post:
operationId: PostResultCheck
security:
- Bearer: [ ]
description: Отправка результирующего чека Ստացված/ավարտական չեկն ուղարկելը
parameters:
- $ref: '#/parameters/ResultCheckRequest'
responses:
200:
description: Ok
404:
description: Ошибка валидации - Վավերացման սխալ
schema:
$ref: '#/definitions/Error'
422:
description: Ошибка валидации - Վավերացման սխալ
schema:
$ref: '#/definitions/Error'
500:
description: Серверная ошибка - Սերվերի սխալ
schema:
$ref: '#/definitions/Error'
securityDefinitions:
Bearer:
description: 'Bearer <token here>'
type: apiKey
name: Authorization
in: header
parameters:
ResultCheckRequest:
in: body
name: ResultCheckRequest
schema:
type: object
properties:
externalOrderId:
description: id заказа в системе партнера - պատվերը գործընկերոջ համակարգում
type: string
status:
description: статус заказа – Պատվերի կարգավիճակ
type: string
enum:
- done
- ready
- delivered
- canceled
positions:
description: позиции заказа – պատվեչի դիրք
type: array
items:
$ref: "#/definitions/OrderPosition"
totalPrice:
description: Суммарная стоимость позиций без скидок - Ապրանքների ընդհանուր արժեքը առանց զեղչերի
type: string
discountTotalPrice:
description: Суммарная стоимость позиций со скидками - Զեղչերով ապրանքների ընդհանուր արժեքը
type: string
deliveredDateTime:
description: պատվերի կարգավիճակի "Доставлен" "առաքված" անցնելու ամսաթիվը և ժամը
type: string
format: date-time
statusSetAt:
description: дата и время перехода заказа в статус - պատվերի կարգավիճակին անցնելու ամսաթիվը և ժամը
type: string
format: date-time
canceledDateTime:
description: дата и время перехода заказа в статус "Отменен" – Պատվերի կարգավիճակի "չեխարկված" անցնելու ամսաթիվը և ժամը
type: string
format: date-time
shopId:
description: собственный id магазина в системе партнера –Խանութի անձնական id գործընկերոջ համակարգում
type: string
x-nullable: false
definitions:
OrderPosition:
type: object
properties:
markings:
description: Массив отсканированных маркировок - Սկանավորված գծանշումների/ մարկիրովկաների զանգված
type: array
items:
type: string
productId:
description: ապրանքի id
type: string
originalQuantity:
description: Кол-во товара, исходно заказанное. Штуки или граммы – ի սկզբանե պատվիրված ապրանքի քանակը: Հատ կամ գրամ
type: integer
quantity:
description: Кол-во товара в заказе собранное. Штуки или граммы – պատվերում հավաքագրված ապրանքների քանակը։ Հատ կամ գրամ
type: integer
price:
description: Полная стоимость собранного товара без учета скидки - Հավաքված ապրանքների ամբողջական արժեքը՝ առանց զեղչի
type: string
discountPrice:
description: Полная стоимость собранного товара с учетом скидки - Հավաքված ապրանքների ամբողջական արժեքը՝ ներառյալ զեղչը
type: string
unitPrice:
description: Цена за единицу товара без учета скидки – Միավոր ապրանքի գինը՝ առանց զեղչի
type: string
dicountUnitPrice:
description: Цена за единицу товара с учетом скидки – Միավոր ապրանքի գինը ներառյալ զեղչը
type: string
Error:
description: Ошибка. - սխալ
type: object
required:
- message
properties:
message:
description: Сообщение. - նամակ
type: string
x-nullable: false
code:
description: Код сообщения. – նամակի կոդ
type: integer
x-nullable: false
Резалт-чека – ի մարմին body
{
"canceledDateTime": "0001-01-01T00:00:00.000Z",
"deliveredDateTime": "2024-01-12T10:34:10.770Z",
"discountTotalPrice": "69.41",
"externalOrderId": "12-22-2201",
"positions": [
{
"discountPrice": "37.41",
"markings": [],
"originalQuantity": 1000,
"price": "412.11",
"productId": "1111",
"unitPrice": "393.23",
"discountUnitPrice": "35.7",
"quantity": 1048
},
{
"discountPrice": "32",
"markings": [],
"originalQuantity": 1,
"price": "32",
"productId": "7574",
"unitPrice": "32",
"discountUnitPrice": "32",
"quantity": 1
}
],
"shopId": "XX113",
"status": "ready",
"statusSetAt": "2024-01-12T10:34:10.770Z",
"totalPrice": "444.11"
}
Резалт-чека – ի պարունակության յուրահատկություն
- резалт-чеке ում զրոյական քանակը նշանակում է, որ տվյալ անուն-ապրանքը ջնջվել է պատվերի միջից հավաքագրողի կողմից
- եթե արդյունքում միայն
discountPrice— դա պատվերում կրկին հետ ավելացրած անուն-ապրանքն է
Ապրանքի գին
Կատալոգը պարունակում է ապրանքի գինը (unitPrice) և զեղչված գնինը(discountUnitPrice). Դրանցից արդյունքների ստուգման -ի сհամար համարվում է price և discountPrice հատևյալ կանուններով:
-
քաշով (կգ-ով վաճառվող)_ապրանքների համար:
price=quantity/ 1000 ×unitPrice;discountPrice=quantity/ 1000 ×discountUnitPrice;
-
Հատով ապրանքների համար:
price=quantity×unitPrice;discountPrice=quantity×discountUnitPrice;canceledDateTimeиdeliveredDateTime— դաշտերը կլցվեն արժեքով0001-01-01T00:00:00.000Z, մինչև պատվերի առաքումը կամ չեղարկումը: