Managing tickets
Tickets are issues related to orders that have been raised either by the buyer or the seller. They are always bound to order units (for more information about orders and order units, see the Managing Orders page). Once a ticket has been opened, the seller, the buyer or the customer service communicate with each other through sending messages. A ticket has a N-to-N relation with order units. This means that a ticket can include multiple order units and an order unit can have multiple tickets.
Retrieving open tickets
You can retrieve the unresolved tickets on your sales by sending a GET
request to the
/tickets
endpoint with the
status=opened
query parameter. The is_seller_responsible
flag indicates that the customer
is waiting for you to respond. When it is set to true
and you write a message for the ticket, this flag
will automatically be changed to false
, indicating that you have done everything you can and now you're
waiting for a response or reaction from the customer.
Example output:
{
"data": [
{
"id_ticket": "0011234567",
"ids_order_units": [
123456789,
987654321
],
"id_buyer": 123456789,
"ts_created_iso": "2021-07-24T19:26:05Z",
"ts_updated_iso": "2021-07-24T19:26:05Z",
"status": "opened",
"open_reason": "product_not_as_described",
"topic": "delivery_not_received",
"is_seller_responsible": false,
"fulfillment_type": "fulfilled_by_merchant"
}
],
"pagination": {
"offset": 30,
"limit": 10,
"total": 200
}
}
Note: by default this endpoint only returns tickets related to orders fulfilled by the seller. To get tickets related to orders fulfilled by Kaufland, an appropriate filter parameter needs to be applied. Read more about FBK.
Responding to a ticket
If you want to respond to a ticket, you only need the id_ticket
of the related ticket. Then you should
send a POST
request to the /tickets/{id_ticket}/messages
endpoint passing the id_ticket
via the URL.
For example, to send a message to the buyer who opened ticket #2308211 with the reason
product_not_delivered
:
POST https://sellerapi.kaufland.com/v2/tickets/0012308211/messages
Request body:
{
"text": "I'm sorry you did not receive the item you ordered. I will ship another one immediately."
}
By default, sending a message will flip the is_seller_responsible
flag to indicate that you have done
everything you can and you are now waiting for a response or reaction from the customer. However, sometimes you just
want to tell the customer that you are working on the issue, but you're not done yet. For these situations, you can
suppress the automatic behavior by adding the "interim_notice": true
property to your request. If you
do, the is_seller_responsible
flag will stay in the true
state, indicating that you will
follow up with another message.
For example, if you send a message for the ticket #2308212 for which the is_seller_responsible
flag
indicates that you should respond, the flag will not be changed by sending a message with the following request:
POST https://sellerapi.kaufland.com/v2/tickets/0012308211/messages
Request body:
{
"text": "Just to inform you: I have received your return and I am working on it.",
"interim_notice": true
}
If you'd like to attach one or more files to your ticket message, you can do so by adding an
ticket_message_files
array to the request. Each of the files has to have a name, the correct
mime_type and the corresponding data encoded in base64. No additional API
parameters required:
POST https://sellerapi.kaufland.com/v2/tickets/0012308211/messages
{
"text": "Just to inform you: I have received your return and I am working on it.",
"interim_notice": true,
"ticket_message_files": [
{
"filename": "Test.jpg"
"mime_type": "image/jpeg"
"data": "data:image/jpeg;base64,..."
}
...
]
}
-
Valid Mime Types:
- text/plain - Plain Text
- image/png - PNG Image
- image/jpeg - JPEG Image
- image/gif - GIF Animation
- image/tiff - TIFF Image
- application/pdf - PDF
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet - MS Excel Sheet (XLSX)
- application/vnd.openxmlformats-officedocument.wordprocessingml.document - MS Word Document (DOCX)
- application/msword - MS Word Document (DOC)
Closing a ticket
You can close a ticket by sending a PATCH
request to the
/tickets/{id_ticket}/close
endpoint,
passing the ticket id via the URL.
Example:
PATCH https://sellerapi.kaufland.com/v2/tickets/0012308211/close
Opening a ticket
You can open a ticket for one or multiple order units by sending a POST
request to the
/tickets
endpoint.
A ticket can only be opened for order units belonging to the same order.
Example: Opening a ticket for two order units. (assuming they belong to the same order)
POST https://sellerapi.kaufland.com/v2/tickets
{
"id_order_unit": [
314567849803494,
314567849803495,
],
"reason": "product_return",
"message": "An article was missing in your return."
}
Allowed values for the field reason
are:
product_not_as_described
: Ordered article was not in described condition/versionproduct_defect
: An ordered article has a defectproduct_not_delivered
: An ordered article was not delivered yetproduct_return
: Return of an ordered articlecontact_other
: Miscellaneous question