Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titlePOST - Create a Standing Order

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.

Sample Request


Code Block
languagejs
{
  "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

Output


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.

Sample Response

Code Block
languagejs
{
    "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
}

Expand
titleGET - Retrieve a Standing Order list

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.

curl

Code Block
languagejs
https://api.kometsales.com/api/standing.order.list?
authenticationToken=token_info_goes_here&
dateFrom=2015-01-01&dateTo=2015-12-31

Response

Output


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.

Code Block
{
    "message": "OK",
    "status": "1",
    "standingOrders": [
        {
            "id": 7165,
            "number": "S07165",
            "customerName": "AB Flower Shop",
            "priceList": "",
            "carrierName": "Armellini",
            "recurrence": 1,
            "days": "Sunday, Monday",
            "startDate": "2015-05-18",
            "endDate": "2015-05-27",
            "salesPerson": "none",
            "locationCode": "",
            "locationName": "",
            "shipToName": "Diane",
            "shipToCarrier": "",
            "shipToStreet": "45 Elm ave 2",
            "shipToCity": "Miami",
            "shipToState": "FL",
            "shipToZipCode": "33172",
            "shipToPhone": "306589675415",
            "shipToCountry": "USA",
            "shipToFax": "302123456789",
			"customerCode": "1034",
            "details": [
                {
                    "soItemId": 28569,
                    "productId": 140294,
                    "productDescription": "Calla Yellow Florex Gold 50 cm",
                    "units": 14,
                    "unitType": "Bunch",
                    "bunches": 14,
                    "totalBoxes": 10,
                    "totalUnits": 140,
                    "unitPrice": 1.25571,
                    "totalPrice": 175.7994,
                    "unitCost": 0.577,
                    "totalCost": 80.8,
                    "stemsBunch": null,
                    "markCode": "",
                    "boxType": "EB",
                    "vendorName": "",
                    "breakdowns": [
                        {
                            "productId": 140294,
                            "productDescription": "Calla Yellow Florex Gold 50 cm",
                            "bunches": 10,
                            "stemsBunch": 5,
                            "price": 1.53
                        },
                        {
                            "productId": 335312,
                            "productDescription": "Flower Food Blue 10gr Crysal",
                            "bunches": 4,
                            "stemsBunch": 6,
                            "price": 0.57
                        }
                    ],
                    "assorted": true
                },
                {
                    "soItemId": 28570,
                    "productId": 139489,
                    "productDescription": "Pom Cushion White Sefiros 70 Cm",
                    "units": 10,
                    "unitType": "Bunch",
                    "bunches": 10,
                    "totalBoxes": 10,
                    "totalUnits": 100,
                    "unitPrice": 1.53,
                    "totalPrice": 153,
                    "unitCost": 0.3,
                    "totalCost": 30,
                    "stemsBunch": 12,
                    "markCode": "",
                    "boxType": "EB",
                    "vendorName": "Agro Roses of the North",
                    "breakdowns": [],
                    "assorted": false
                }
            ]
        }
    ]
}

Expand
titlePUT - Update a Standing Order

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.

Sample Request

Code Block
languagejs
{
  "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",
  "standingOrderId": 3228,
  "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": "HB",
      "boxTypeCode": "QB21",
      "boxes": "35",
      "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

Output


message (string:500)

:

Description of the status of the transaction.


status (integer:1)

:

Creation status. 1 = Success

,

| 0 = Failure

.Sample Response


Code Block
languagejs
{
    "standingOrderId": 3228,
    "standingOrderNumber": "S03228",
    "message": "Item was successfully updated.",
    "items": [
        {
            "identifier": "P001",
            "status": 1,
            "message": "Item was successfully added.",
            "standingOrderItemId": 10611
        }
    ],
    "status": 1
}
Info

If the Assorted and Custom fields fail, the Standing Order line item is not updated.

...