Standing Orders
Use these methods to create, update, or delete a Standing Order through Komet's API. You can also retrieve a list of Standing Orders using the GET method.
Existing Prebooks are not modified by any of these requests.
Request
URL: https://api.kometsales.com/api/v2/standing-order
Method: POST
Content-Type: Application/JSON
Header
authenticationToken (required)(string:50)
Komet Sales security token.
Input parameters
customerId (required: if customerCode is not given) (integer:20): The Customer ID. You can get this value from the customer.list API method.
customerCode (required: if customerId is not given) (string:20): The Customer code.
customerDescription (required: if customerId is not given) (string:200): The Customer name.
carrierId (required: if carrierCode is not given) (integer:20) : The Carrier ID. You can get this value from the carrier.list API method.
carrierCode (required: if carrierId is not given) (string:20) : The Carrier code.
carrierDescription (required: if carrierId is not given) (string:200) : Carrier name.
startDate (required) (date): Start date of the Standing Order. Date format: YYYY-MM-DD.
endDate (optional) (date): End date of the Standing Order. Date format: YYYY-MM-DD.
shipViaId (logical)(integer:1): Ship Via ID. 0 = Warehouse and 1 = Grower.
customerPO (optional)(string:20): Customer Purchase Order number.
companyLocationId (optional)(string:20): The Location ID. Only Applies to Multi-Location Companies.
companyLocationCode (Required for Multi-Location Companies)(string:20): Location code.
recurrence: (Required) (number): The frequency of Purchase Order generation in weeks. Valid range: 1-4.
truckDays (Required) (string:20): The Truck Days for the Purchase Orders.
comments (optional)(string:200): Special instructions or comments.
invoiceNotes (optional)(string:1000): Additional notes for the Standing Order. Maximum 200 characters.
items: Product arrays.
identifier (optional)(string:30): Use this parameter to identify your product lines and receive equal values in the response.
vendorId (optional)(integer:20): Vendor or Grower ID. You can get this value from vendor.list API method.
vendorCode (required if vendorId is not used)(string:20): Vendor or Grower code.
vendorName (required if vendorId is not used)(string:200): Vendor or Grower name.
productId (required: if productCode is not given)(integer:20): product ID. You can get this value from the product.list API method.
productCode (required: if productId is not given)(string:20): Product Code.
productDescription (required: if productId is not given)(string:200): Product description.
itemType (string:3): Item type. Values: BOX or UN (Unit). Default is BOX.
boxTypeId (required if boxTypeCode is not given and the itemType is box)(integer:20): box type ID. You can get this value from the boxtype.list API method.
boxTypeCode (required: if boxTypeId is not given and the itemType is box)(string:3): Box type code.
boxTypeDescription (required: if boxTypeId is not given and the itemType is box)(string:3): Box type name.
boxes (required if the itemType is box) (integer:10): Amount of boxes.
totalUnits (required if the itemType is UN) (integer:10): Number of Units.
unitType (required) (string:5): Valid Values: Stem and Bunch.
bunches (required if the itemType is box) (integer:10): Number of Bunches per Box.
stemsBunch (required if the itemType is box) (integer:10): Stems per Bunch. Leave this field empty for mixed Boxes.
price (optional) (decimal:10,2): Weighted Average Unit price. Use the price according to the unitType selected.
cost (optional) (decimal:10,2): weighted average Unit cost. Use the cost according to the unitType selected. If the token belongs to a vendor, the system will accept this field if the vendor has enabled the Allow changing cost setting.
markCode (optional)(string:50): Product Mark Code.
generalNotes (optional)(string:1000): Additional notes.
vendorNotes (optional)(string:1000): Notes for the Vendor.
customFields (array)
name (string)
value (string)
breakdowns (optional): Breakdown of products:
identifier (optional)(string:30): Use this parameter to identify your product lines and receive equal values in the response.
productId (required: if productCode is not given) (integer:20): Product ID. You can get this value from the product.list API method.
productCode (required: if productId is not given)(string:20): Product code.
productDescription (required: if productId is not given)(string:200): Product description.
bunches (required) (integer:10): Total Bunches per Box.
stemsBunch (required) (integer:10): Stems per Bunch.
cost (required)(decimal:10,2): Cost of the product by Unit type.
price (required for tokens type company)(decimal:10,2): Price of the product by Unit type.
{
"authenticationToken": "token_info_goes_here",
"customerId": "131313",
"customerCode": "Fresh",
"customerDescription": "Mr. Fresh",
"carrierId": "1360",
"carrierCode": "ARM",
"carrierDescription": "Armellini",
"startDate": "2022/04/13",
"endDate": "2022/12/13",
"shipViaId": "1",
"customerPO": "122344",
"companyLocationId": "147",
"companyLocationCode": "MIA",
"recurrence": "1",
"truckDays": "Monday, Wednesday, Friday",
"comments": "Keep it fresh",
"invoiceNotes": "",
"items": [
{
"identifier": "1123",
"vendorId": "33",
"vendorCode": "333",
"vendorName": "33 Flowers",
"productId": "21",
"productCode": "Lucky",
"productDescription": "Black Monstera",
"itemType": "BOX",
"boxTypeId": "QB",
"boxTypeCode": "QB21",
"boxes": "21",
"totalUnits": "777",
"unitType": "Stem",
"bunches": "13",
"stemsBunch": "7",
"price": "1.21",
"cost": "1.01",
"markCode": "BCK",
"generalNotes": "Ship it",
"vendorNotes": "Thank you",
"customFields": [
{
"name": "",
"value": ""
}
],
"breakdowns": [
{
"identifier": "Assorted 1",
"productId": "3",
"productCode": "BK",
"productDescription": "Black King Rose",
"bunches": "13",
"stemsBunch": "13",
"cost": "1.33",
"price": "0.99"
}
]
}
]
}
Response
status (integer:1): Creation status. 1 = Success, 0 = Failure.
message (string:500): Description of the status of the transaction.
standingOrderId(integer:20): Standing Order ID.
standingOrderNumber (integer:10): Standing Order number.
items (array):
identifier (string:20): The value that identifies the line. This is the same value of the request, if added during the request.
status: (integer:1): Transaction status. 1 = Success, 0 = Failure.
message (string:500): Description of the status of the transaction.
standingOrderItemId (integer): The item ID.
{
"standingOrderId": 3228,
"standingOrderNumber": "S03228",
"message": "Standing Order # S03228 was successfully saved.",
"items": [
{
"identifier": "P001",
"status": 1,
"message": "Item was successfully added.",
"standingOrderItemId": 10611
}
],
"status": 1
}
Returns a list of Standing Orders with their corresponding details based on the applied filters.
Request
URL: https://api.kometsales.com/api/standing.order.list
Method: GET
Content-Type: URL Parameters.
Input parameters
authenticationToken (required)(string:50): Komet Sales security token.
dateFrom (required)(date): Start Date. (format YYYY-MM-DD).
dateTo (required)(date): End Date. (format YYYY-MM-DD).
customer (optional)(string:50): customer name or code.
customerId (optional)(integer:10): Customer Komet Sales internal ID. This parameter is used to search standing orders from only one customer. You can obtain this value from the customer.list API method.
number (optional)(string:10): standing order number.
locationId (optional)(integer:10): location Komet Sales internal ID. You can obtain this value from the location.list API method.
status (optional)(string:20): it's used if you want to load only some orders with a specific status. Valid values: All, Active, Cancelled. If this filter is not set, the system will return only the active standing orders.
The filters work in the following way:
Filtering by customerId, status, number and locationId uses an exact match.
Filtering by customer uses a "LIKE" expression.
Filters are not case sensitive.
https://api.kometsales.com/api/standing.order.list?
authenticationToken=token_info_goes_here&
dateFrom=2015-01-01&dateTo=2015-12-31
Response
status (integer:1): transaction status. 1 for success or 0 for failure.
message (string:500): description of the status of the transaction.
standingOrders: array of standing orders.
id (integer:20): Komet Sales internal standing order ID.
number (integer:10): purchase order number.
customerName (string:200): customer name.
priceList (string:200): price list associated to the customer.
carrierName (string:200): carrier name.
recurrence (integer:1): the recurrence of the standing order.
days (string:100): the list of the days when the order will be generated separated by a comma. e.g.: Sunday, Monday.
startDate (date): date when the SO starts. (date format YYYY-MM-DD).
endDate (date): date when the SO finishes. (date format YYYY-MM-DD).
salesperson (string:200): salesperson name.
locationCode (string:20): location code.
locationName (string:200): location name.
shipToName (string:200): Ship To Name.
shipToCarrier (string:200): Default Carrier of the Ship-To.
shipToStreet (string:200): Ship To Street.
shipToCity (string:200): Ship To City.
shipToState (string:200): Ship To State.
shipToZipcode (string:200): Ship To Zip Code.
shipToCountry (string:200): Ship To Country.
shipToPhone (string:200): Ship To Phone.
shipToFax (string:200): Ship To Fax.
customerCode (string:50): Customer Code
details: array of purchase orders details
soItemId (integer:20): SO Item Komet Sales Internal ID.
productId (integer:20): product Komet Sales internal ID.
productDescription (string:200): Product description.
units (integer:10): Units per Box.
unitType (string:5): Stem or Bunch.
bunches (integer:10): Number of bunches per box.
totalBoxes (integer:10): The total boxes.
totalUnits (integer:10): The total units.
unitPrice (decimal:10,2): unit flower price.
totalPrice (decimal:10,2): total units flower price.
unitCost (decimal:10,2): unit flower cost.
totalCost (decimal:10,2): total units flower cost.
stemsBunch (integer:10): stems per bunch.
markCode (string:20): special mark code or slot number.
boxType (string:3): box type code. (HB, QB, EB, etc).
vendorName (string:200): vendor name.
isAssorted (boolean:1): if the product is assorted is true, otherwise it will be false.
breakdowns: array of breakdowns
productId (integer:20): product Komet Sales internal ID.
productDescription (string:200): product description.
stemsBunch (integer:10): stems per bunch.
bunches (integer:10): number of bunches.
price (decimal:10,2): unit flower price.
customField: array of custom fields. You can have several custom fields.
name (string:45): the name of the custom field.
description (string:200): custom field description.
Request
URL: https://api.kometsales.com/api/v2/standing-order
Method: PUT
Content-Type: Application/JSON
Header
authenticationToken (required)(string:50): Komet Sales security token.
Input parameters
customerId (required: if customerCode is not given) (integer:20): The Customer ID. You can get this value from the customer.list API method.
customerCode (required: if customerId is not given) (string:20): The Customer code.
customerDescription (required: if customerId is not given) (string:200): The Customer name.
carrierId (required: if carrierCode is not given) (integer:20) : The Carrier ID. You can get this value from the carrier.list API method.
carrierCode (required: if carrierId is not given) (string:20) : The Carrier code.
carrierDescription (required: if carrierId is not given) (string:200) : Carrier name.
startDate (required) (date): Start date of the Standing Order. Date format: YYYY-MM-DD.
endDate (optional) (date): End date of the Standing Order. Date format: YYYY-MM-DD.
standingOrderID (required)(integer:20): Komet Sales Standing Order ID that you want to update. You can get this value from the standing-order.create API method.
standingOrderItemId (requires)(integer:20):
shipViaId (logical)(integer:1): Ship Via ID. 0 = Warehouse and 1 = Grower.
customerPO (optional)(string:20): Customer Purchase Order number.
companyLocationId (optional)(string:20): The Location ID. Only Applies to Multi-Location Companies.
companyLocationCode (Required for Multi-Location Companies)(string:20): Location code.
recurrence: (Required) (number): The frequency of Purchase Order generation in weeks. Valid range: 1-4.
truckDays (Required) (string:20): The Truck Days for the Purchase Orders. Valid values: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday.
comments (optional)(string:200): Special instructions or comments.
invoiceNotes (optional)(string:1000): Additional notes for the Standing Order. Maximum 200 characters.
shipToId (Optional)(integer:200): Ship-To number ID. You can get this ID by using the customer.shipto.list method.
items: Product arrays.
identifier (optional)(string:30): Use this parameter to identify your product lines and receive equal values in the response.
vendorId (optional)(integer:20): Vendor or Grower ID. You can get this value from vendor.list API method.
vendorCode (required if vendorId is not used)(string:20): Vendor or Grower code.
vendorName (required if vendorId is not used)(string:200): Vendor or Grower name.
productId (required: if productCode is not given)(integer:20): product ID. You can get this value from the product.list API method.
productCode (required: if productId is not given)(string:20): Product Code.
productDescription (required: if productId is not given)(string:200): Product description.
itemType (string:3): Item type. Values: BOX or UN (Unit). Default is BOX.
boxTypeId (required if boxTypeCode is not given and the itemType is box)(integer:20): box type ID. You can get this value from the boxtype.list API method.
boxTypeCode (required: if boxTypeId is not given and the itemType is BOX)(string:3): Box type code.
boxTypeDescription (required: if boxTypeId is not given and the itemType is BOX)(string:3): Box type name.
boxes (required if the itemType is BOX) (integer:10): Amount of boxes.
totalUnits (required if the itemType is UN) (integer:10): Number of Units.
unitType (required) (string:5): Valid Values: Stem and Bunch.
bunches (required if the itemType is box) (integer:10): Number of Bunches per Box.
stemsBunch (required if the itemType is box) (integer:10): Stems per Bunch. Leave this field empty for mixed Boxes.
price (optional) (decimal:10,2): Weighted Average Unit price. Use the price according to the unitType selected.
cost (optional) (decimal:10,2): weighted average Unit cost. Use the cost according to the unitType selected. If the token belongs to a vendor, the system will accept this field if the vendor has enabled the Allow changing cost setting.
markCode (optional)(string:50): Product Mark Code.
generalNotes (optional)(string:1000): Additional notes.
vendorNotes (optional)(string:1000): Notes for the Vendor.
customFields (array)
name (string)
value (string)
breakdowns (optional): Breakdown of products.
identifier (optional)(string:30): Use this parameter to identify your product lines and receive equal values in the response.
productId (required: if productCode is not given) (integer:20): Product ID. You can get this value from the product.list API method.
productCode (required: if productId is not given)(string:20): Product code.
productDescription (required: if productId is not given)(string:200): Product description.
bunches (required) (integer:10): Total Bunches per Box.
stemsBunch (required) (integer:10): Stems per Bunch.
cost (required)(decimal:10,2): Cost of the product by Unit type.
price (required for tokens type company)(decimal:10,2): Price of the product by Unit type.
Response
message (string:500)
Description of the status of the transaction.
status (integer:1)
Creation status. 1 = Success | 0 = Failure
If the Assorted and Custom fields fail, the Standing Order line item is not updated.
Request
URL: https://api.kometsales.com/api/v2/standing-order/item?standingOrderItemId={standingOrderItemId}&standingOrderId={standingOrderId}
Method: DELETE
Content-Type: Application/JSON
Header
authenticationToken (required)(string:50)
Komet Sales security token.
Input parameters
standingOrderId (required)(integer:20)
Komet Sales Standing Order ID.
You can get this value from the standing-order.create API method.
standingOrderItemId (required)(number:20)
The Komet Sales Standing Order item ID.
You can get this value from the standing-order.create API method.
Response
message (string:500)
Transaction status description.
status (integer:1)
Transaction status. 1 = Success | 0 = Failure
Related Articles
-
Page:Delete a Prebook 1.0 (API)
-
Page:Getting Started (API)
-
Page:Data Import (Knowledge Base)
-
Page:Add Inventory (API)
-
Page:Set Up the Order Confirmation Webhook (Knowledge Base)