Fix USPS Shipping Methods Not Showing at Checkout

Setting up USPS isn't the easiest thing to do in Magento. After signing up for Web Tools and entering the gateway URL and my User ID in the USPS shipping method, the only method that showed at checkout was Library Mail. Fix this by doing the following:

Copy app/code/core/Usa/Model/Shipping/Carrier/Usps.php to:

app/code/local/Mage/Usa/Model/Shipping/Carrier/Usps.php

Find this line of php around line number 279:

foreach ($xml->Package->Postage as $postage) {

On the next line, paste in this code:

$postage->MailService = str_replace("**","",(string)$postage->MailService);
$postage->MailService = str_replace("<sup>™</sup>","",(string)$postage->MailService);
$postage->MailService = str_replace("<sup>®</sup>","",(string)$postage->MailService);

Find this line of php around line number 298:

foreach ($xml->Package->Service as $service) {

On the next line, paste in this code:

$service->SvcDescription = str_replace("**","",(string)$service->SvcDescription);
$service->SvcDescription = str_replace("<sup>™</sup>","",(string)$service->SvcDescription);
$service->SvcDescription = str_replace("<sup>®</sup>","",(string)$service->SvcDescription);

Copy app/code/core/Mage/Usa/etc/config.xml to:

app/code/local/Mage/Usa/etc/config.xml

Find this section of the code(around line 186):

<methods>Bound Printed Matter,Express Mail,Express Mail Flat-Rate....

Add these new methods

First-Class Mail Package, First-Class Mail Large Envelope

Save files, clear Magento caches, select the new methods in the admin - and you should be good to go. I was!