Due to an increased volume of orders for the holiday season, please note that processing and shipping times have been extended by a week. Please see shipping policy for standard processing times.

SHIPPING INFORMATION

Thor Kitchen ships via FedEx and LTL Freight
All items will be processed within 2 business day handling time

Domestic Shipping Rates

Standard ($9)7-10 business days
Expedited ($29)2-3 business days

International Shipping Rates

Standard ($55)7-10 business days

* Expedited delivery for backordered parts will be shipped out only after the item comes into stock in our warehouse. Standard processing times will still apply after backordered timeframe.
All appliance orders ship free with standard freight delivery.


DAMAGE OR DEFECTIVE SHIPMENTS

It is very important to open and inspect your order upon receipt. We require that you contact us within 48 hours of delivery if you discover a shipment shortage or damage with your order. Please contact us at 1-888-808-6906 and a Thor Kitchen Parts Representative will assist you.
Standard ground shipping time is 7 to 10 business days.
For inquiries, please contact us at customersupport@thorinternational.com
Shipping to PO boxes is not available.


RETURNS POLICY

There is a 15% restocking fee on all returns. The customer is responsible for paying for return shipping, unless part is delivered damaged or defective. Return Period Parts can be returned within 30 days of the original order date. Within that time period, if the product doesn’t work correctly or stops working, contact us, and we’ll be happy to replace the defective item.
Making a return please email us at customersupport@thorinternational.com with the following information:

  • Sales order
  • Name on the order
  • Contact information

LOST SHIPMENTS

Please refer to your tracking number provided with your shipment confirmation.
For packages that indicate were delivered but never received, or for orders not delivered but lost, please email us sales@thorinternational.com


REFUNDS

Refunds are issued 2 to 5 business days after the return is processed.


Fatal error: Uncaught exception 'Aws\S3\Exception\S3Exception' with message 'Error executing "ListObjectsV2" on "https://thorkitchenstage.s3.us-west-1.amazonaws.com/?list-type=2&delimiter=%2F&prefix=uploads%2Fwpcf7_uploads%2F"; AWS HTTP error: Client error: `GET https://thorkitchenstage.s3.us-west-1.amazonaws.com/?list-type=2&delimiter=%2F&prefix=uploads%2Fwpcf7_uploads%2F` resulted in a `403 Forbidden` response: <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>User: arn:aws:iam::905418160207:user/s3a (truncated...) AccessDenied (client): User: arn:aws:iam::905418160207:user/s3access_stage is not authorized to perform: s3:ListBucket on resource: "arn:aws:s3:::thorkitchenstage" because no identity-based policy allows the s3:ListBucket action - <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>User: arn:aws:iam::905418160207:user/s3access_stage is not authorized to perform: s3:ListBucket on resource: "arn:aws:s3:::thorkitchenstage" because no identity-based policy allows the s3:ListBucket action</Message><RequestId>ME1WZKM0WG3QDCSZ</RequestId><HostId>Tzeb7DSGdR4vuaV8oQCOWikfVJYQ1gbgh5bQFcFRd7/cv2+Hu+2DyDk0mKhfzK76K3VTwdhQgciRGNw5lwbj/PfrrZChCOaf0mczZ/0YffY=</HostId></Error>' GuzzleHttp\Exception\ClientException: Client error: `GET https://thorkitchenstage.s3.us-west-1.amazonaws.com/?list-type=2&delimiter=%2F&prefix=uploads%2Fwpcf7_uploads%2F` resulted in a `403 Forbidden` response: <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>User: arn:aws:iam::905418160207:user/s3a (truncated...) in /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113 Stack trace: #0 /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Middleware.php(72): GuzzleHttp\Exception\RequestException::create() #1 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(209): GuzzleHttp\Middleware::GuzzleHttp\{closure}() #2 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(158): GuzzleHttp\Promise\Promise::callHandler() #3 /var/www/stagesite/vendor/guzzlehttp/promises/src/TaskQueue.php(52): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}() #4 /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(163): GuzzleHttp\Promise\TaskQueue->run() #5 /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(189): GuzzleHttp\Handler\CurlMultiHandler->tick() #6 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(251): GuzzleHttp\Handler\CurlMultiHandler->execute() #7 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(227): GuzzleHttp\Promise\Promise->invokeWaitFn() #8 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(272): GuzzleHttp\Promise\Promise->waitIfPending() #9 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(229): GuzzleHttp\Promise\Promise->invokeWaitList() #10 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(272): GuzzleHttp\Promise\Promise->waitIfPending() #11 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(229): GuzzleHttp\Promise\Promise->invokeWaitList() #12 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(69): GuzzleHttp\Promise\Promise->waitIfPending() #13 /var/www/stagesite/vendor/aws/aws-sdk-php/src/AwsClientTrait.php(58): GuzzleHttp\Promise\Promise->wait() #14 /var/www/stagesite/vendor/aws/aws-sdk-php/src/ResultPaginator.php(139): Aws\AwsClient->execute() #15 /var/www/stagesite/vendor/aws/aws-sdk-php/src/functions.php(52): Aws\ResultPaginator->valid() #16 /var/www/stagesite/vendor/aws/aws-sdk-php/src/functions.php(69): Aws\map() #17 [internal function]: Aws\flatmap() #18 /var/www/stagesite/wp-content/plugins/s3-uploads/inc/class-stream-wrapper.php(695): Generator->valid() #19 [internal function]: S3_Uploads\Stream_Wrapper->dir_readdir() #20 /var/www/stagesite/wp-content/plugins/contact-form-7/includes/file.php(362): readdir() #21 /var/www/stagesite/wp-includes/class-wp-hook.php(322): wpcf7_cleanup_upload_files() #22 /var/www/stagesite/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #23 /var/www/stagesite/wp-includes/plugin.php(517): WP_Hook->do_action() #24 /var/www/stagesite/wp-includes/load.php(1280): do_action() #25 [internal function]: shutdown_action_hook() #26 {main} Next Aws\S3\Exception\S3Exception: Error executing "ListObjectsV2" on "https://thorkitchenstage.s3.us-west-1.amazonaws.com/?list-type=2&delimiter=%2F&prefix=uploads%2Fwpcf7_uploads%2F"; AWS HTTP error: Client error: `GET https://thorkitchenstage.s3.us-west-1.amazonaws.com/?list-type=2&delimiter=%2F&prefix=uploads%2Fwpcf7_uploads%2F` resulted in a `403 Forbidden` response: <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>User: arn:aws:iam::905418160207:user/s3a (truncated...) AccessDenied (client): User: arn:aws:iam::905418160207:user/s3access_stage is not authorized to perform: s3:ListBucket on resource: "arn:aws:s3:::thorkitchenstage" because no identity-based policy allows the s3:ListBucket action - <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>User: arn:aws:iam::905418160207:user/s3access_stage is not authorized to perform: s3:ListBucket on resource: "arn:aws:s3:::thorkitchenstage" because no identity-based policy allows the s3:ListBucket action</Message><RequestId>ME1WZKM0WG3QDCSZ</RequestId><HostId>Tzeb7DSGdR4vuaV8oQCOWikfVJYQ1gbgh5bQFcFRd7/cv2+Hu+2DyDk0mKhfzK76K3VTwdhQgciRGNw5lwbj/PfrrZChCOaf0mczZ/0YffY=</HostId></Error> in /var/www/stagesite/vendor/aws/aws-sdk-php/src/WrappedHttpHandler.php:196 Stack trace: #0 /var/www/stagesite/vendor/aws/aws-sdk-php/src/WrappedHttpHandler.php(98): Aws\WrappedHttpHandler->parseError() #1 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(209): Aws\WrappedHttpHandler->Aws\{closure}() #2 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(174): GuzzleHttp\Promise\Promise::callHandler() #3 /var/www/stagesite/vendor/guzzlehttp/promises/src/RejectedPromise.php(49): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}() #4 /var/www/stagesite/vendor/guzzlehttp/promises/src/TaskQueue.php(52): GuzzleHttp\Promise\RejectedPromise::GuzzleHttp\Promise\{closure}() #5 /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(163): GuzzleHttp\Promise\TaskQueue->run() #6 /var/www/stagesite/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(189): GuzzleHttp\Handler\CurlMultiHandler->tick() #7 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(251): GuzzleHttp\Handler\CurlMultiHandler->execute() #8 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(227): GuzzleHttp\Promise\Promise->invokeWaitFn() #9 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(272): GuzzleHttp\Promise\Promise->waitIfPending() #10 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(229): GuzzleHttp\Promise\Promise->invokeWaitList() #11 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(272): GuzzleHttp\Promise\Promise->waitIfPending() #12 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(229): GuzzleHttp\Promise\Promise->invokeWaitList() #13 /var/www/stagesite/vendor/guzzlehttp/promises/src/Promise.php(69): GuzzleHttp\Promise\Promise->waitIfPending() #14 /var/www/stagesite/vendor/aws/aws-sdk-php/src/AwsClientTrait.php(58): GuzzleHttp\Promise\Promise->wait() #15 /var/www/stagesite/vendor/aws/aws-sdk-php/src/ResultPaginator.php(139): Aws\AwsClient->execute() #16 /var/www/stagesite/vendor/aws/aws-sdk-php/src/functions.php(52): Aws\ResultPaginator->valid() #17 /var/www/stagesite/vendor/aws/aws-sdk-php/src/functions.php(69): Aws\map() #18 [internal function]: Aws\flatmap() #19 /var/www/stagesite/wp-content/plugins/s3-uploads/inc/class-stream-wrapper.php(695): Generator->valid() #20 [internal function]: S3_Uploads\Stream_Wrapper->dir_readdir() #21 /var/www/stagesite/wp-content/plugins/contact-form-7/includes/file.php(362): readdir() #22 /var/www/stagesite/wp-includes/class-wp-hook.php(322): wpcf7_cleanup_upload_files() #23 /var/www/stagesite/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #24 /var/www/stagesite/wp-includes/plugin.php(517): WP_Hook->do_action() #25 /var/www/stagesite/wp-includes/load.php(1280): do_action() #26 [internal function]: shutdown_action_hook() #27 {main} thrown in /var/www/stagesite/vendor/aws/aws-sdk-php/src/WrappedHttpHandler.php on line 196