The eQuote payload sends a quote from your system, such as your eCommerce platform or ERP system, to the TradeCentric platform so that we can make the quote available for the buyer to open. For standard integrations that send JSON payloads, we accept the eQuote payload in our standard JSON format.
This article describes the standard JSON format to use for this payload.
Note: For the request URL of your POST request, use the return_url from the session request payload that we sent.
Jump to:
Request payload (to TradeCentric)
The code block below shows an example eQuote request payload in our standard JSON format:
{
"header": {
"quote_number": "Q1234",
"quote_name": "Custom Sourced Products",
"quote_date": "2023-02-08",
"quote_expiration": "2023-03-08 23:59:59",
"quote_type": "standing",
"match_reference": "123456798",
"buyer_contact_name": "Buyer Contact",
"buyer_contact_email": "buyer.contact@buyercorp.com",
"sales_contact_name": "Supplier Contact",
"sales_contact_email": "supplier.contact@suppliercorp.com"
},
"items": [
{
"line_number": 1,
"part_id": "45L017",
"aux_part_id": "Q1234/1",
"classification": "56101720",
"classdomain": "UNSPSC",
"description": "Low Arc Kitchen Faucet: Dominion Faucets, Silver, Chrome Finish, 1.75 gpm Flow Rate, CEC Compliant",
"quantity": 3,
"uom": "EA",
"unit_price": 41.15
}
],
"details": {
"currency": "USD",
"totals": [
{
"label": "Discount",
"value": "1.99"
}
],
"total": "1234.56",
"comment": "Items quoted as requested"
}
}
Back to top
Request field details
A standard eQuote request JSON payload has a header object, an items array, and a details object. The subsections below explain each object and its fields.
Required Max use: 1
Provides identifying information about the quote
Example
"header": {
"quote_number": "Q1234",
"quote_name": "Custom Sourced Products",
"quote_date": "2023-02-08",
"quote_expiration": "2023-03-08 23:59:59",
"quote_type": "standing",
"match_reference": "123456798",
"buyer_contact_name": "Buyer Contact",
"buyer_contact_email": "buyer.contact@buyercorp.com",
"sales_contact_name": "Supplier Contact",
"sales_contact_email": "supplier.contact@suppliercorp.com"
}
Header field breakdown
-
quote_number
Quote identifier
RequiredType: String
Provides the quote identifier that your organization generated
Example: "Q1234"
-
quote_name
Quote name
RequiredType: String
Provides a name to identify the quote
Example: "Custom Sourced Products"
-
quote_date
Quote date
RequiredFormat: YYYY-MM-DD
Provides the quote's issue date
Example: "2023-02-08"
-
quote_expiration
Quote expiration date
OptionalFormat: YYYY-MM-DD HH:MM:SS
Provides the date when the quote will expire, meaning the buyer can no longer open it
Example: "2023-03-08 23:59:59"
Note: This expiration doesn't apply to associated POs, so the buyer can still convert the quote to a PO after this date.
-
quote_type
Quote type
RequiredType: StringValues: standing
Specifies whether the buyer can open the quote more than once
Values: "standing" = more than once, blank = only once
-
match_reference
Secondary quote identifier
OptionalType: String
Provides a secondary identifier that, in combination with the quote number, allows the buyer to open the quote
Example: "123456798"
-
buyer_contact_name
Buyer contact name
RequiredType: String
Provides the name of the buyer contact who will receive a notification when the quote is available for the buyer to open
Example: "Buyer Contact"
-
buyer_contact_email
Buyer contact email address
RequiredType: String
Provides the email address of the buyer contact who will receive a notification when the quote is available for the buyer to open
Example: "buyer.contact@buyercorp.com"
-
sales_contact_name
Supplier contact name
OptionalType: String
Provides the name of the supplier contact who will receive a notification when TradeCentric has received the quote
Example: "Supplier Contact"
-
sales_contact_email
Supplier contact email address
OptionalType: String
Provides the email address of the supplier contact, or team mailbox, who will receive a notification when TradeCentric has received the quote
Example: "supplier.contact@suppliercorp.com"
Items
Required Max use: Many
Provides details about each of the line items in the quote
Note: Repeat the object for each line item, using curly braces to group the item's fields.
Example
"items": [
{
"line_number": 1,
"part_id": "45L017",
"aux_part_id": "Q1234/1",
"classification": "56101720",
"classdomain": "UNSPSC",
"description": "Low Arc Kitchen Faucet: Dominion Faucets, Silver, Chrome Finish, 1.75 gpm Flow Rate, CEC Compliant",
"quantity": 3,
"uom": "EA",
"unit_price": 41.15
}
]
Items field breakdown
-
line_number
Line number
RequiredType: Number
Provides the line number for the item
Example: 1
-
part_id
Supplier item identifier
RequiredType: String
Provides the item identifier, such as a part number or stock keeping unit (SKU)
Example: "45L017"
-
aux_part_id
Supplier line identifier
RequiredType: String
Provides a unique, additional line item identifier, such as a combination of the quote number and line number
Example: "Q1234/1"
-
classification
Classification code
OptionalType: String
Provides the item classification code, which we can map to the buyer's accepted format before sending the final payload
Example: "56101720"
-
classdomain
Classification type
OptionalType: String
Specifies the type of classification code provided
Example: "UNSPSC" = United Nations Standard Products and Services Code
-
description
Item description
RequiredType: String
Provides the item description
Example: "Low Arc Kitchen Faucet: Dominion Faucets, Silver, Chrome Finish, 1.75 gpm Flow Rate, CEC Compliant"
-
quantity
Item quantity
RequiredType: Number
Provides the quoted item quantity
Example: 3
-
uom
Unit of measure
RequiredType: String
Provides the item unit of measure, which we can map to the buyer's accepted format before sending the final payload
Example: "EA"
-
unit_price
Unit price
RequiredType: Number
Provides the price of one unit of the item after applying any discounts or special pricing
Example: 41.15
Details
Required Max use: 1
Provides total values for the quote
Example
"details": {
"currency": "USD",
"totals": [
{
"label": "Discount",
"value": "1.99"
}
],
"total": "1234.56",
"comment": "Items quoted as requested"
}
Details field breakdown
-
currency
Currency
RequiredFormat: ISO 4217
Specifies the currency for these values
Example: "USD"
-
totals
Additional totals
OptionalMax use: Many
Groups any additional total values for the quote
Note: Repeat the object for each total value, using curly braces to group the entry's fields.
label Label
OptionalType: String
Provides a label for the type of total value, such as a discount
Example: "Discount"
value Monetary value
OptionalType: String
Provides the monetary value
Example: "1.99"
-
total
Quote total
RequiredType: String
Provides the total value of the quote
Example: "1234.56"
-
comment
Quote comment
OptionalType: String
Provides any additional details about the quote
Example: "Items quoted as requested"
Note: Typically, the buyer doesn't receive quote comments, but comments go to the TradeCentric Portal.
Back to top
Response payload (from TradeCentric)
Once our platform receives the eQuote request, we'll validate it and then return a plain text response. This response will indicate whether we received the quote and made it available for the buyer to open.
The code block below shows an example response payload:
Back to top
Response field details
The success response contains the unique quote identifier generated by our platform. This response indicates that the quote was received and is ready for the buyer to open.
Back to top