This method allows you to create an invoice
in Komet Sales with its corresponding product items.
Tip |
---|
Valid Tokens: Company. |
Info |
---|
Invoices created through this method are subject to a transaction fee of 1.5%. |
Multicurrency Option Enabled
If the customer for who you are creating an invoice has a different currency, you should enter prices in your customer's currency and the system will generate the invoice in your company's currency, based on the exchange rate set up at the time of the transaction.
Filter by label (Content by label) | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Request
URL: https://api.kometsales.com/api/invoice.create
Method: POST
Content-Type: Application/JSON
Input Parameters
authenticationToken (required)(string:50)
Komet Sales security token.
customerId (required
if customerCode
is not given)(integer:20)
Customer ID. You can
if customerId
is not given)(string:20)
Customer code.
customerDescription (required: if customerId
is not given) (string:200)
Customer name.
carrierId (required
if carrierCode
is not given)(integer:20)
Carrier ID.
You can
if carrierId
is not given)(string:20)
Carrier code.
carrierDescription (required
if carrierId
is not given)(string:200)
Carrier name.
shipDate (required)(date)
Shipping date
.
Date format: YYYY-MM-DD
shipToId (optional)(integer:20)
Ship-To ID.
You can
get this value from
API method.
poNumber (optional)(string:20)
Customer PO#.
reference (optional)(string:20)
Reference or
AWB number.
warehouseInstructions (optional)(string:200)
Instructions for warehouse.
invoiceNotes (optional)(string:200)
Notes to print on the invoice.
returnAvailableBoxes (optional)(boolean
)
If the system should return available boxes.
Valid values: 0 = No | 1 = Yes
Default is zero.
statusDraft (optional)(boolean
)
Leave the order status as Draft instead of Pending Approval.
Valid values: 0 = Pending Approval | 1 = Draft
Default is zero.
This value must be
1 if you want to use the invoice.checkout API method once the order is finalized within your site.
locationId (optional)(integer:20)
Komet Sales internal Location ID.
Only applies to Multi-Location companies.
You can
get this value from the location.list API method.
locationCode (optional)(string:10)
Location code.
Only applies to Multi-Location companies.
You can get this value from the location.list API method.
autoConfirm (optional)(boolean)
If you want the system to automatically confirm the order.
Valid values: True | False
Default is false.
createCarrierIfNotExists (optional)(boolean)
Create a Carrier.
If you want
to create
a new Carrier, you
must send the carrierCode
and carrierDescription
parameters with valid values.
Valid values: True | False
Default is False.
useUnknownCustomerIfNotExists (optional)(boolean)
Use Unknown Customer if the specified Customer does not exist.
Valid values: True = Use Unknown Customer | False = Return an error requesting the correct Customer
additionalCharges (optional)
(array)
An array of additional charges associated
with the order.
code (required)(string:10)
Additional charge code.
If it's doesn't exist
, the system
will create it
automatically.
name (optional)(string: 50)
Additional charge name. This field is
required if the code
does not exist.
value (required)(decimal:10,3)
The amount of the additional charge.
items
(array)
An array containing item lines that will be added to the invoice.
orderItemId (required: if productCode
is not given)(integer:20)
Komet Sales internal inventory item
if orderItemId
is not given)(string:20)
Komet Sales inventory item
product code.
You can
if orderItemId
is not given)(string:3)
Komet Sales inventory item
if orderItemId
is not given)(integer:10)
Total units per box.
unitType (required
if orderItemId
is not given)(string:5)
Unit type.
Valid values: Stem or Bunch
boxes (required)(integer:10)
Number of boxes.
price (required)(decimal:10,2)
Unit price.
markCode (optional)(string:20)
Item mark code.
productAlias (optional)(string:50)
Product description alias.
notes (optional)(string:200)
Item notes.
You can use
customerId
or
customerCode
and customerName
but you cannot use both parameters at the same time. We recommend you to use
customerId
which can be obtained from the customer.list API method.
You can use either carrierId
or carrierCode
and carrierName
but you cannot use both parameters at the same time. We recommend you to use the carrierId
which can be obtained from the carrier.list API method.
Code Block |
---|
{
"authenticationToken": "token_info_goes_here",
"customerCode": "ANG",
"customerDescription": "Ang Flowers LLC",
"carrierCode": "AR",
"carrierDescription": "Armellini",
"poNumber": "2728",
"reference": "This is a reference",
"shipDate": "2014-09-10",
"warehouseInstructions": "This is where the instructions to the warehouse go.",
"invoiceNotes": "Invoice notes go here",
"returnAvailableBoxes":1,
"items":
[
{
"productCode": "RSAS60",
"boxes": 10,
"price":0.30,
"boxTypeCode": "HB",
"unitsPerBox": 6,
"unitType": "Bunch"
}
]
}
|
Response
status (integer:1)
Transaction status. 1
= Success | 0 = Failure
message (string:500)
Transaction status description.
invoiceId (integer:20)
Invoice ID.
invoiceNumber (integer:10)
Invoice number.
items (array)
An array containing items in the Invoice.
orderItemId (integer:10)
Item Id, only applies if you sent the orderItemId
.
productCode (string:20)
Product code. Only applies if you sent the productCode
.
status: (integer:1)
Transaction status. 1 = Success | 0 = Failure
availableBoxes (integer:10)
Number of boxes that are available if returnAvailableBoxes
was requested.
invoiceItemId (array)
An array
containing product line IDs that were added to the order.
When
orderItemId
is given, the system will add only 1 item to the invoice. However, when
productCode
is given, the system may add more than 1 line to order and for that reason, the system may return a few IDs.
Code Block |
---|
{
"status": "0",
"message": "Item is not available",
"invoiceId": 111111111,
"invoiceNumber": 85443,
"items": [
{
"availableBoxes": 9,
"productCode": "RSAS60",
"status": 1,
"invoiceItemId": [
3427612,
3427613,
3427614
]
}
]
} |
Multicurrency Option Enabled
If the customer for who you are creating an invoice has a different currency, you should enter prices in your customer's currency and the system will generate the invoice in your company's currency, based on the exchange rate set up at the time of the transaction.