As requested by some of the Magento customers, here are the steps to fix the problem with Zip+4 not calculating at checkout (Version: 1.7x and up).
1. Log into your site using a ftp clients.
2. Download app/code/core/Mage/Tax/Model/Resource/Calculation.php
3. Make a new folder in the local section (/Mage/Tax/Model/Resource/)
4. Look for he following code in Calculation.php (around line 235)
$postcode = $request->getPostcode();
5. Replace the above code with the following codes
$postcode = substr($request->getPostcode(),0,5);
6. Save the Calculation.php and upload it to the new folder created ealier
Test the code after the above steps are done and make sure that it works.