www.sunsoft.gr

External Connection Web API

HTTP method POST

Try calls using method HTTP POST

URL Endpoint

api/BO

GetVersion

Call example: http://localhost:5600/api/BO/GetVersion

Summary

Gets the web service version.

Method Parameters

-

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

Login

Call example: http://localhost:5600/api/BO/Login?SerialFormat=json&ClientVersion=2.01.000&UserName=9999&Password=9999

Summary

Login to WebService and Get Companies, WareHouses and Sales Stations

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 5.01.002 BO WebServie compatibility
UserName String yes 9999 Username
Password String yes 9999 User's password


Success Response

HTTP 200 OK

{
  "Companies": [
        {
          "CompanyId": 1,
          "CompanyName": "Cental Mycompany"
        }
  ],
  "WHouses": [
        {
          "WHouseId": 7,
          "WHouseDescr": "Athinon 43-45",
          "CompanyId": 1
        }
  ],
  "Stations": [
        {
          "SalesStationId": 2,
          "SalesStationDescr": "Thrasivoulou 57",
          "WHouseId": 4
        }
  ],
  "UserId": 11
}

                        

SerializedData

NAME TYPE EXPLANATION
UserId int Login User ID

Companies

NAME TYPE EXPLANATION
CompanyId int Company Id
CompanyName string Company Description

WHouses

NAME TYPE EXPLANATION
WHouseId int WareHouse Id
WHouseDescr string Warehouse Description
CompanyId int Company of Wharehouse (FK)

Stations

NAME TYPE EXPLANATION
SalesStationId int Sales station Id
SalesStationDescr string Sales station Description
WHouseId int Wharehouse of Sales staion(FK)

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetVersion

Call example: http://localhost:5600/api/BO/GetDeviceTicket?SerialFormat=json&ClientVersion=2.01.000&UserId=11&devInfo=Eshop-1234

Summary

After Login sending UserID and DevInfo. Service response containing UserId and DeviceTicket. DevInfo is provided by Sunsoft.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 5.01.002 BO WebServie compatibility
UserId int yes 9999 User's User id. Provided by call Login
DevInfo string yes sunsoft-123456 Device Info. Provided by Sunsoft

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetWHouseOrderData

Call example: http://localhost:5600/api/BO/GetWHouseOrderData?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15619902&wHouseId=1

Summary

Gets the Selected WareHouse's Order, orderItems and Barcodes

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket int yes 12356612 Device Ticket. Aquired from GetDeviceTicket call
wHouseId int yes 1 Warehouse ID. Aquired from Login

Success Response

HTTP 200 OK
{
  "Order": {
		"OrderHdrId": 0,
		"FromWHouseId": 0,
		"ToWHouseId": 0,
		"OrderHdrStage": 0,
		"OrderHdrPriceType": 0,
		"OrderHdrStatus": 0,
		"OrderHdrCanc": 0,
		"OrderHdrDate": "2022-01-07T17:59:59.9069192+02:00",
		"OrderHdrNotes": ""
  },
  "OrderItems": [
		{
		  "OrderDtlId": 0,
		  "OrderHdrId": 0,
		  "ItemId": 5,
		  "OrderDtlQty": 0,
		  "OrderDtlNotes": "",
		  "ItemDescr": "SPRITE 500ml",
		  "ThemeCategDescr": "KABA",
		  "ThemeSubCategDescr": "ΑΝΑΨΥΚΤΙΚΑ",
		  "ItemTypeDescr": "ΠΟΤΑ",
		  "MeasureUnitDescr": "Τεμαχιο",
		  "ShopItemId": 362,
		  "ItemTypeId": 1,
		  "ThemeCategId": 2,
		  "ThemeSubCategId": 2
		},
		{
		  "OrderDtlId": 0,
		  "OrderHdrId": 0,
		  "ItemId": 6,
		  "OrderDtlQty": 0,
		  "OrderDtlNotes": "",
		  "ItemDescr": "ALOE",
		  "ThemeCategDescr": "KABA",
		  "ThemeSubCategDescr": "ΑΝΑΨΥΚΤΙΚΑ",
		  "ItemTypeDescr": "ΠΟΤΑ",
		  "MeasureUnitDescr": "Τεμαχιο",
		  "ShopItemId": 363,
		  "ItemTypeId": 1,
		  "ThemeCategId": 2,
		  "ThemeSubCategId": 2
		}
  ],
  "ItemBarcodes": [
		{
		  "BarCodeId": 18805,
		  "ItemId": 5,
		  "BarCode": "5"
		},
		{
		  "BarCodeId": 18806,
		  "ItemId": 5,
		  "BarCode": "5449000214775"
		},
		{
		  "BarCodeId": 10635,
		  "ItemId": 6,
		  "BarCode": "6"
		}
  ]
}
                        

Order

NAME TYPE EXPLANATION
OrderHdrId int Order's Header ID
FromWHouseId int Sender's Warehouse ID
ToWHouseId int Reciever's Warehouse ID
OrderHdrStage int Order's Stage
OrderHdrPriceType int Order's Price Type
OrderHdrStatus int Order's Status
OrderHdrCanc int Order Canceled. 1 for True. 0 for False
OrderHdrDate DateTime Order's Initial date
OrderHdrNotes string Order's Notes

OrderItems

NAME TYPE EXPLANATION
OrderDtlId int Order Item's ID
OrderHdrId int Order Header's ID (FK)
ItemId int Item's ID
OrderDtlQty double Item's Quantity in Order
OrderDtlNotes string Item's Notes in Order
ItemDescr string Item's Description
ThemeCategDescr string Item's Category Description
ThemeSubCategDescr string Item's Subcategory Description
ItemTypeDescr string Item's Type Description
MeasureUnitDescr string Measurment's Unit Description
ShopItemId int Shop Item's ID
ItemTypeId int Item's Type ID
ThemeCategId int Item's Category ID
ThemeSubCategId int Item's Subcategory ID

ItemBarcodes

NAME TYPE EXPLANATION
BarCodeId int Barcode's ID
ItemId int Item's ID (FK)
BarCode string Barcode

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetInventoryData

Call example: http://localhost:5600/api/BO/GetInventoryData?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15627902&wHouseId=1

Summary

Gets the Selected WareHouse's Inventory Items and Barcodes

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 5.01.002 BO WebServie compatibility
DeviceTicket int yes 12356612 Device Ticket. Aquired from GetDeviceTicket call
wHouseId int yes 1 Warehouse ID. Aquired from Login

Success Response

HTTP 200 OK
{
    "InventoryItems": [
        {
            "ShopItemId": 362,
            "ItemId": 5,
            "ItemDescr": "SPRITE 500ml",
            "ThemeCategDescr": "ΚΑΒΑ",
            "ThemeSubCategDescr": "ΑΝΑΨΥΚΤΙΚΑ- ΜΠΥΡΕΣ",
            "ItemTypeDescr": "ΠΟΤΑ",
            "MeasureUnitDescr": "ΤΕΜΑΧΙΟ",
            "ItemSMicro": 1,
            "SalesStationId": 0,
            "InitDate": "2022-01-10T00:00:00+02:00",
            "MainQuantity": 0,
            "MicroQuantity": 0,
            "Quantity": 0,
            "ItemTypeId": 1,
            "ThemeCategId": 2,
            "ThemeSubCategId": 2
        },
        {
            "ShopItemId": 363,
            "ItemId": 6,
            "ItemDescr": "ALOE",
            "ThemeCategDescr": "ΚΑΒΑ",
            "ThemeSubCategDescr": "ΑΝΑΨΥΚΤΙΚΑ- ΜΠΥΡΕΣ",
            "ItemTypeDescr": "ΠΟΤΑ",
            "MeasureUnitDescr": "ΤΕΜΑΧΙΟ",
            "ItemSMicro": 1,
            "SalesStationId": 0,
            "InitDate": "2022-01-10T00:00:00+02:00",
            "MainQuantity": 0,
            "MicroQuantity": 0,
            "Quantity": 0,
            "ItemTypeId": 1,
            "ThemeCategId": 2,
            "ThemeSubCategId": 2
        }
	],
    "ItemBarcodes": [
        {
            "BarCodeId": 18805,
            "ItemId": 5,
            "BarCode": "5"
        },
        {
            "BarCodeId": 18806,
            "ItemId": 5,
            "BarCode": "5449000214775"
        },
        {
            "BarCodeId": 10635,
            "ItemId": 6,
            "BarCode": "6"
        }
	]
}
                        

InventoryItems

NAME TYPE EXPLANATION
ShopItemId int Shop Item's ID
ItemId int Item's ID
ItemDescr string Item's Description
ThemeCategDescr string Item's Category Description
ThemeSubCategDescr string Item's Subcategory Description
ItemTypeDescr string Item's Type Description
MeasureUnitDescr string Measurment's Unit Description
ItemSMicro double Quantity multiplier for Recipies
SalesStationId int Item's Sales Station ID
InitDate DateTime Item's Initial Date
MainQuantity double Quantity at WareHouse
MicroQuantity double Quantity for Recipies
Quantity double Quantity
ItemTypeId int Item's Type ID
ThemeCategId int Item's Category ID
ThemeSubCategId int Item's Subcategory ID

ItemBarcodes

NAME TYPE EXPLANATION
BarCodeId int Barcode's ID
ItemId int Item's ID (FK)
BarCode string Barcode

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

ExternalWHouseOrderNote

Call example: http://localhost:5600/api/BO/ExternalWHouseOrderNote?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15627902&UserId=11&CompanyId=1
OrderData: Body raw parameter with json data in string

'{"Order":{"OrderHdrId":0,"OrderHdrNotes":"","FromWHouseId":1,"ToWHouseId":7, "OrderHdrStage":0,"OrderHdrPriceType":0,"OrderHdrStatus":0,"OrderHdrCanc":0, "OrderHdrDate":"2021-12-02", "OrderItems":[{"OrderHdrId":0,"ItemId":8,"OrderDtlQty":3,"OrderDtlId":0,"OrderDtlNotes":"","ItemDescr":"AMITA", "ThemeCategDescr":"KABA","ThemeSubCategDescr":"XYMOI", "ItemTypeDescr":"POTA","MeasureUnitDescr":"ΤΕΜΑΧΙΟ","ShopItemId":365,"ItemTypeId":0,"ThemeCategId":0,"ThemeSubCategId":0}]}}'

Summary

SendOrder From a Warehouse to another Warehouse. Service Responds containing the new order ID.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 5.01.002 BO WebServie compatibility
DeviceTicket int yes 12356612 Device Ticket. Aquired from GetDeviceTicket call
CompanyId int yes 1 Company ID. Aquired from Login
OrderData string yes Body raw parameter
'{"Order":{ "OrderHdrId": 0, "OrderHdrNotes":"", "FromWHouseId": 1, "ToWHouseId": 7, "OrderHdrStage": 0, "OrderHdrPriceType": 0, "OrderHdrStatus": 0, "OrderHdrCanc": 0, "OrderHdrDate": "2021-12-02", "OrderItems": [ { "OrderHdrId":0, "ItemId": 8, "OrderDtlQty": 3, "OrderDtlId":0, "OrderDtlNotes": "", "ItemDescr": "AMITA", "ThemeCategDescr": "KABA", "ThemeSubCategDescr": "XYMOI", "ItemTypeDescr": "POTA", "MeasureUnitDescr": "ΤΕΜΑΧΙΟ", "ShopItemId": 365, "ItemTypeId": 0, "ThemeCategId": 0, "ThemeSubCategId": 0 } ] }}'
Serialized order data

Order Attributes

NAME TYPE REQUIRED EXAMPLE NOTES
OrderHdrId int yes 0 0 for new order, else the ID of the modifying order
OrderHdrNotes string no some notes Order's Notes
FromWHouseId int yes 1 Seder Warehouse ID
ToWHouseId int yes 7 Reciever Warehouse ID
OrderHdrStage int yes 0 Preorder Stage. 0 unfullfilled, 1 fullfilled
OrderHdrPriceType int yes 0 0 = Lowest Price, 1 = Last Price, 2 = deal price, 3 = AVG Price
OrderHdrStatus int yes 0 0 = not Finalized, 1 = FInalized
OrderHdrCanc int yes 0 0 for normal, 1 for cancel order
OrderHdrDate Date yes 2021-12-02 Order's Date
OrderItems[] OrderItem yes [{"OrderHdrId":0,"ItemId":8,"OrderDtlQty":3,"OrderDtlId":0,"OrderDtlNotes":"",
"ItemDescr":"AMITA","ThemeCategDescr":"KABA","ThemeSubCategDescr":"XYMOI",
"ItemTypeDescr":"POTA" "MeasureUnitDescr":"ΤΕΜΑΧΙΟ","ShopItemId":365,
"ItemTypeId":0,"ThemeCategId":0,"ThemeSubCategId":0}]
Properties of Order Item

Order Item Attributes

NAME TYPE REQUIRED EXAMPLE NOTES
OrderHdrId int yes 0 Order ID of Order Item. 0 for New
ItemId int yes 5 Item's ID
OrderDtlQty double yes 3 Item's Quantity for Transfer
OrderDtlId int yes 0 0 for new detail, detail ID for Modification
OrderDtlNotes string no some notes item's notes
ItemDescr string yes AMITA Item's Description
ThemeCategDescr string yes KABA Item's Category Description
ThemeSubCategDescr string yes XYMOI Item's Subcategory Description
ItemTypeDescr string yes POTA Item's Type Description
MeasureUnitDescr string yes ΤΕΜΑΧΙΟ Item's Quantity Mesurment Description
ShopItemId int yes 355 Shop Item's ID
ItemTypeId int yes 5 Item's Type ID
ThemeCategId int yes 5 Item's Category ID
ThemeSubCategId int yes 5 Item's Subcategory ID

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetCustomer

Call example: http://localhost:5600/api/BO/GetCustomer?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15651902&CustomerId=11&SignInName=&cachedVersion

Summary

GetCustomer Provides basic information for specific customer.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket long yes 12345678 Device Ticket that was obtained from GetDeviceTicket
CustomerId Int yes 11 Customer Id
SignInName String yes Test Name Customer's Name

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

UpdateCustomer

Call example: http://localhost:5600/api/BO/UpdateCustomer?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15571902&cachedVersion=&CustomerId=11
&SignInName=FromDate&FullName=&IsRetailCustomer=1&Gender&AFM=&PriceListId=&DoyId=&Email&ProfessionDescr&Address&AddressNo&ZipCode&City&Country&Phone&Fax&WebSite

Summary

Updates Customer.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket long yes 12345678 Device Ticket that was obtained from GetDeviceTicket
CustomerId Int yes 11 Customer Id
SignInName String yes Test Name Customer's Name
FullName String no Test Name Customer's Name
isRetailCustomer int No 1 for Retail Customer / 0 for non retail Customer Flag for Retail Customer
Gender int No 1 for Retail Customer / 0 for non retail Customer Flag for Retail Customer
Afm string No 45632177 Customer's AFM
PriceListId Int No 1 Customer's PriceList
DoyId Int No 1 Customer's TaxOffice Id
Email string No sunsoft@sunsoft.gr Customer's Email
ProfessionDescr string No Attornet at law Customer's Profession
Address string No Machis Analatou Customer's Address
AddressNo string No 456 Customer's Address No
ZipCode string No 17562 Customer's ZipNo
City string No Athens Customer's City
Country string No Greece Customer's Country
Phone string No 45632177 Customer's Phone
Fax string No 45632177 Customer's Fax
Website string No www.sunsoft.gr Customer's Website

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetPayWays

Call example: http://localhost:2878/api/BO/GetPayWays?SerialFormat=json&ClientVersion=2.01.000&CachedVersion&DeviceTicket=15651902

Summary

Get Companies's PayWays.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket long yes 12345678 Device Ticket that was obtained from GetDeviceTicket

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

AddSalesNote

Call example: http://localhost:5600/api/BO/AddSalesNote?SerialFormat=json&ClientVersion=2.01.000&DeviceTicket=15571902&cachedVersion=¬eKey=CustomerOrder¬eDate=2020-12-31&customerId=11&payWayId=6¬es&items=[{"ItemOID":5,"Quantity":1,"NetPrice":1}]&extraCharges=[]&wHouseId=4

Summary

Sends a customer's order. Service Responds containing the new order ID.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
noteKey string yes CustomerOrder A key which represents Customer Order
noteDate DateTime yes 2021-12-31 Note's Date
CustomerId int yes 11 Customers's Id
PayWayId int yes 11 Order's PayWay Id
Notes string no Notes Order's Notes
Items string yes [{"ItemOID":5,"Quantity":1,"NetPrice":1}] An object array with items
ExtraCharges string no [] An object array with Extra Charges
WHouseId int yes 1 The Warehouse that Order will be sent

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetExtraCharges

Call example: http://localhost:5600/api/BO/GetExtraCharges?SerialFormat=json&ClientVersion=2.01.000&CachedVersion&DeviceTicket=15651902

Summary

GetCustomer Provides basic information for specific customer.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket long yes 12345678 Device Ticket that was obtained from GetDeviceTicket

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

GetItemSalesHistory

Call example: http://localhost:5600/api/BO/GetItemSalesHistory?SerialFormat=json&ClientVersion=3.00.000&DeviceTicket=15571902&cachedVersion=0&ItemId=0&ShopItemId=98&WHouseId=0&DateFrom=2022-02-01&DateTo=2022-02-15

Summary

Gets sales info for specific item. Search should be made by ShopItemId or by Item and warehouse combination. Result contains info for number of sails and last sale price based on date range.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 2.01.002 BO WebServie compatibility
DeviceTicket number yes 123456 Device Ticket from login
ItemId number no 1 BackOffice ItemId
ShopItemId number no 1 BackOffice ShopItemId
WHouseId number no 1 BackOffice WHouseId
DateFrom DateTime no 2022-02-01 Date From
DateTo DateTime no 2022-02-28 Date To

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...

ExternalWHouseOrderNote

Call example: http://localhost:5600/api/BO/ExternalAddSalesNote?SerialFormat=json&ClientVersion=3.00.000&DeviceTicket=15571902
OrderData: Body raw parameter with json data in string

'{"NoteKey":"CustomerOrder", "NoteDate":"2022-02-10", "CustomerId":23, "PayWayId":6, "Notes":"mpla mpla", "Items":[{"ItemOID":11, "Quantity":1, "NetPrice":0}], "ExtraCharges":[], "wHouseId":12}'

Summary

Creates a Customer order in the database. Service response contains the new order's Id.

Method Parameters

NAME TYPE REQUIRED EXAMPLE NOTES
SerialFormat string yes json Form of the serialized data. (json/xml)
ClientVersion string yes 3.00.002 Service Version
DeviceTicket long yes 18249903 Ticket for user. Returned from login
OrderData string yes Body raw parameter
'{"NoteKey":"CustomerOrder", "NoteDate":"2022-02-10", "CustomerId":23, "PayWayId":6, "Notes":"mpla mpla", "Items":[{"ItemOID":11, "Quantity":1, "NetPrice":0}], "ExtraCharges":[], "wHouseId":12}'
Serialized order data

Success Response

HTTP 200 OK

Error Response

HTTP 500 Internal Server Error
Error Message
Go to top...