Bulk Warranty Send
With this service, you can perform bulk warranty sends. Please note that this service operates asynchronously, so warranty IDs will not be returned immediately.
For most use cases, we recommend using the Send Warranty with Invoice endpoint instead. It automatically creates products if they don't exist, returns warranty IDs immediately (synchronous), and supports extended warranties.
This endpoint requires pre-registered products with matching merchantProductId. You can create products using the Product Creation service, or use the invoice endpoint which handles product creation automatically.
You can send a minimum of 1 and a maximum of 50 warranties at a time. :::
The externalOrderId should be a unique value in your system. This value will be used later to query or delete the warranty.
Request
curl --location --request POST '<BASE_URL>/individual-customers/warranty/bulk' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <jwtToken>' \
--data '{
"warranties": [
{
"merchantProductId": 123,
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+905551234567",
"countryCode": "TR",
"externalOrderId": "ORD-12345",
"purchaseDate": "15-01-2024 10:30",
"warrantyExpireDate": "15-01-2026 10:30"
},
{
"merchantProductId": 456,
"firstName": "Jane",
"lastName": "Smith",
"email": "jane.smith@example.com",
"phone": "+905559876543",
"countryCode": "TR",
"externalOrderId": "ORD-12346",
"purchaseDate": "16-01-2024 11:00"
}
]
}'
Here are examples of acceptable phone number formats:
544 333 22 115443332211+90544333221190544333221105443332211
The formats for the purchaseDate and warrantyExpireDate parameters must be: dd-MM-yyyy HH:mm (e.g., 01-01-2023 00:00).
- If
purchaseDateis not provided, today's date will be used. - If
warrantyExpireDateis not provided, it will be calculated based on the product's warranty period.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| warranties | Array | Yes | Array of warranty objects (1-50 items) |
Warranty Object
| Parameter | Type | Required | Description |
|---|---|---|---|
| merchantProductId | Integer | Yes | The ID of the product (e.g., 123) |
| firstName | String | Yes | Customer first name (e.g., "John") |
| lastName | String | Yes | Customer last name (e.g., "Doe") |
| externalOrderId | String | Yes | External order ID (e.g., "ORD-12345") |
| countryCode | Enum | No | Country code (default: TR) |
| String | No | Customer email (e.g., "john.doe@example.com") | |
| phone | String | No | Customer phone (e.g., "+905551234567") |
| identificationNumber | String | No | Customer ID number (e.g., "12345678901") |
| birthDate | String | No | Birth date (format: dd-MM-yyyy) |
| purchaseDate | String | No | Purchase date (format: dd-MM-yyyy HH:mm) |
| warrantyExpireDate | String | No | Warranty expiration date (format: dd-MM-yyyy HH:mm) |
TR // Turkey
US // United States
DE // Germany
GB // United Kingdom
AE // United Arab Emirates
NL // Netherlands
FR // France
UZ // Uzbekistan
Response
Returns HTTP 202 (Accepted) on successful submission. Since this is an asynchronous operation, warranties are processed in the background.
Example
{
"warranties": [
{
"merchantProductId": 101,
"firstName": "Ahmet",
"lastName": "Yilmaz",
"email": "ahmet@example.com",
"phone": "5321234567",
"countryCode": "TR",
"externalOrderId": "INV-2024-001"
},
{
"merchantProductId": 102,
"firstName": "Ayse",
"lastName": "Demir",
"email": "ayse@example.com",
"phone": "5329876543",
"countryCode": "TR",
"externalOrderId": "INV-2024-002"
},
{
"merchantProductId": 103,
"firstName": "Mehmet",
"lastName": "Kaya",
"email": "mehmet@example.com",
"phone": "5325551234",
"countryCode": "TR",
"externalOrderId": "INV-2024-003"
}
]
}