USPS made a breaking change on 9, July 2023

10 months ago
With the new USPS rates that went into effect yesterday they introduced a breaking change. 'First Class Parcel' to 'Ground Advantage'. Since this is not a configuration selection for enabled USPS services in the plug-in it is not selectable.

Has anyone else been bit by this and have you managed to fix it? I'm using an older version of NOPCOmmerce 3.8 BTW.

Thanks,
Jeff
10 months ago
Interested in the same, or at the very least what to change the source code to in the plugin.
10 months ago
In 4.60, these are the available "Domestic Carrier Services"
 First-Class
First-Class Mail Letter
Priority Mail Express Sunday/Holiday Guarantee
Priority Mail Express Flat-Rate Envelope Sunday/Holiday Guarantee
Priority Mail Express Hold For Pickup
Priority Mail Express Flat Rate Envelope Hold For Pickup
Priority Mail Express
Priority Mail Express Flat Rate Envelope
Priority Mail
Priority Mail Flat Rate Envelope
Priority Mail Small Flat Rate Box
Priority Mail Medium Flat Rate Box
Priority Mail Large Flat Rate Box
Standard Post
Bound Printed Matter
Media Mail Parcel
Library Mail Parcel


So, the only "Parcel" I see is Media Mail and Library Mail.   What services do you have selected.

FYI, I tested the USPS API, and got back these domestic services for a package 1 lb, 6" x 3" x 1"
(formatted here as   "Id: name rate" )
Count = 50
    [0]: "3: USPS Priority Mail Express 1-Day® 48.75"
    [1]: "2: USPS Priority Mail Express 1-Day® Hold For Pickup 48.75"
    [2]: "4001: USPS Priority Mail Express 1-Day® HAZMAT 48.75"
    [3]: "6001: USPS Priority Mail Express 1-Day® Parcel Locker 48.75"
    [4]: "4058: USPS Ground Advantage™ HAZMAT 8.40"
    [5]: "1058: USPS Ground Advantage™ 8.40"
    [6]: "2058: USPS Ground Advantage™ Hold For Pickup 8.40"
    [7]: "6058: USPS Ground Advantage™ Parcel Locker 8.40"
    [8]: "13: USPS Priority Mail Express 1-Day® Flat Rate Envelope 28.75"
    [9]: "27: USPS Priority Mail Express 1-Day® Flat Rate Envelope Hold For Pickup 28.75"
    [10]: "30: USPS Priority Mail Express 1-Day® Legal Flat Rate Envelope 28.95"
    [11]: "31: USPS Priority Mail Express 1-Day® Legal Flat Rate Envelope Hold For Pickup 28.95"
    [12]: "4096: USPS Ground Advantage™ Cubic HAZMAT 0.00"
    [13]: "1096: USPS Ground Advantage™ Cubic 0.00"
    [14]: "2096: USPS Ground Advantage™ Cubic Hold For Pickup 0.00"
    [15]: "6096: USPS Ground Advantage™ Cubic Parcel Locker 0.00"
    [16]: "62: USPS Priority Mail Express 1-Day® Padded Flat Rate Envelope 29.45"
    [17]: "63: USPS Priority Mail Express 1-Day® Padded Flat Rate Envelope Hold For Pickup 29.45"
    [18]: "1: USPS Priority Mail® 11.75"
    [19]: "33: USPS Priority Mail® Hold For Pickup 11.75"
    [20]: "4010: USPS Priority Mail® HAZMAT 11.75"
    [21]: "6010: USPS Priority Mail® Parcel Locker 11.75"
    [22]: "4012: USPS Priority Mail® Large Flat Rate Box HAZMAT 22.80"
    [23]: "22: USPS Priority Mail® Large Flat Rate Box 22.80"
    [24]: "34: USPS Priority Mail® Large Flat Rate Box Hold For Pickup 22.80"
    [25]: "6012: USPS Priority Mail® Large Flat Rate Box Parcel Locker 22.80"
    [26]: "4013: USPS Priority Mail® Medium Flat Rate Box HAZMAT 17.10"
    [27]: "17: USPS Priority Mail® Medium Flat Rate Box 17.10"
    [28]: "35: USPS Priority Mail® Medium Flat Rate Box Hold For Pickup 17.10"
    [29]: "6013: USPS Priority Mail® Medium Flat Rate Box Parcel Locker 17.10"
    [30]: "4014: USPS Priority Mail® Small Flat Rate Box HAZMAT 10.20"
    [31]: "28: USPS Priority Mail® Small Flat Rate Box 10.20"
    [32]: "36: USPS Priority Mail® Small Flat Rate Box Hold For Pickup 10.20"
    [33]: "6014: USPS Priority Mail® Small Flat Rate Box Parcel Locker 10.20"
    [34]: "16: USPS Priority Mail Flat Rate® Envelope 9.65"
    [35]: "37: USPS Priority Mail Flat Rate® Envelope Hold For Pickup 9.65"
    [36]: "44: USPS Priority Mail® Legal Flat Rate Envelope 9.95"
    [37]: "45: USPS Priority Mail® Legal Flat Rate Envelope Hold For Pickup 9.95"
    [38]: "29: USPS Priority Mail® Padded Flat Rate Envelope 10.40"
    [39]: "46: USPS Priority Mail® Padded Flat Rate Envelope Hold For Pickup 10.40"
    [40]: "38: USPS Priority Mail® Gift Card Flat Rate Envelope 9.65"
    [41]: "39: USPS Priority Mail® Gift Card Flat Rate Envelope Hold For Pickup 9.65"
    [42]: "42: USPS Priority Mail® Small Flat Rate Envelope 9.65"
    [43]: "43: USPS Priority Mail® Small Flat Rate Envelope Hold For Pickup 9.65"
    [44]: "40: USPS Priority Mail® Window Flat Rate Envelope 9.65"
    [45]: "41: USPS Priority Mail® Window Flat Rate Envelope Hold For Pickup 9.65"
    [46]: "6: USPS Media Mail Parcel 3.92"
    [47]: "6076: USPS Media Mail Parcel Parcel Locker 3.92"
    [48]: "7: USPS Library Mail Parcel 3.72"
    [49]: "6075: USPS Library Mail Parcel Parcel Locker 3.72"
10 months ago
When I wrote 'First Class Parcel' it would have been more correct to write 'First Class' parcel. There is (was) also First Class mail, i.e. regular letters so the designation 'First Class' does (did) not in itself differentiate between the two.

This is shown in your choices listed for 4.6:
First-Class
First-Class Mail Letter

Anyhow, you can see from your API dump that 'First Class' (parcel) is absent. In its place is 'USPS Ground Advantage'. Assuming that 'USPS Ground Advantage' has the same weight restrictions as 'First Class' parcel it is only valid for parcels <= 13oz which is why the 'USPS Ground Advantage' responses in your dump show a 0.00 price.

I would guess from a brief look at the USPS plug-in code that it needs to be modified to expect 'USPS Ground Advantage' rather than 'First Class'. I'm not sure if the USPS plug-in has been changed between 3.8 and 4.6. I have thus far resisted upgrading as 3.8 does what I need it to do. I would also then have to figure out how to carry over a few changes I made to 3.8.
10 months ago
Found out more information on this change.

New on July 9th, 2023 USPS is merging First Class Package and Parcel Select Ground and renaming them Ground Advantage. The way those services work remains the same, and they'll still have their slower 2-5 day delivery speed—they're just changing the names.

For Ground Advantage there will be the same ounce-based rates for packages under 1 pound (previously known as First Class Package), and weight-based rates plus dimension-based Cubic rates for packages that weigh more than 1 pound (previously known as Parcel Select Ground and Parcel Select Ground Cubic).
10 months ago
I have managed to remove 'First Class' package and add 'Ground Advantage' and 'Ground Advantage Cubic'. Once I am sure all is working properly how can I go about sharing the modified USPS shipping plug-in DLL?
10 months ago
It could be that " 'First Class' is absent " from my response because I used 1 lb.  I think 'First Class' is meant for letters.   But in any case, I agree that the new  Ground Advantage needs to be supported.

RE: "...Assuming that 'USPS Ground Advantage' has the same weight restrictions as 'First Class' parcel it is only valid for parcels <= 13oz ..."
According to USPS, it's up to 70 lbs.

RE: " which is why the 'USPS Ground Advantage' responses in your dump show a 0.00 price."
Check again; you'll see that it's all the Cubic's that have 0.00.   I don't know what that would mean.  Typically the API returns "valid" services for the weight / dims of the packages in the request.  E.g., it would not return any "Letters" in my sample.  So, returning 0.00 seems odd, it should just not return those services.  (Possibly, because the plugin does not send dimensions.  I did not check the code.)
I don't see any real info on Cubic in the USPS site.  Here's a 3rd party that explains it as "Ground Advantage Cubic is the dimension-based rating for USPS's ground-only service. "
https://www.pirateship.com/usps/ground-advantage-cubic#:~:text=Ground%20Advantage%20is%20the%20cheapest,%F0%9F%97%BA

FYI, the plugin code currently supports these for domestic
["NONE (disable all domestic services)"] = "NONE",
["First-Class"] = "0",
["First-Class Mail Letter"] = "letter",
["Priority Mail Express Sunday/Holiday Guarantee"] = "23",
["Priority Mail Express Flat-Rate Envelope Sunday/Holiday Guarantee"] = "25",
["Priority Mail Express Hold For Pickup"] = "2",
["Priority Mail Express Flat Rate Envelope Hold For Pickup"] = "27",
["Priority Mail Express"] = "3",
["Priority Mail Express Flat Rate Envelope"] = "13",
["Priority Mail"] = "1",
["Priority Mail Flat Rate Envelope"] = "16",
["Priority Mail Small Flat Rate Box"] = "28",
["Priority Mail Medium Flat Rate Box"] = "17",
["Priority Mail Large Flat Rate Box"] = "22",
["Standard Post"] = "4",
["Bound Printed Matter"] = "5",
["Media Mail Parcel"] = "6",
["Library Mail Parcel"] = "7"


If I remove al the "noise" (HAZMAT, Cubic, Locker, Hold, etc.) from my API result above, I see these (but again, I had 1 lb in cart)
"3: USPS Priority Mail Express 1-Day® 48.75"
"1058: USPS Ground Advantage™ 8.40"
"13: USPS Priority Mail Express 1-Day® Flat Rate Envelope 28.75"
"62: USPS Priority Mail Express 1-Day® Padded Flat Rate Envelope 29.45"
"1: USPS Priority Mail® 11.75"
"22: USPS Priority Mail® Large Flat Rate Box 22.80"
"17: USPS Priority Mail® Medium Flat Rate Box 17.10"
"28: USPS Priority Mail® Small Flat Rate Box 10.20"
"16: USPS Priority Mail Flat Rate® Envelope 9.65"
"29: USPS Priority Mail® Padded Flat Rate Envelope 10.40"
"42: USPS Priority Mail® Small Flat Rate Envelope 9.65"
"6: USPS Media Mail Parcel 3.92"
"7: USPS Library Mail Parcel 3.72"
10 months ago
Ground Advantage is for packages 16oz or less. Ground Advantage Cubic is for >16oz and takes into consideration dimensional weight, thus you would need to pass the package dimensions.

I found out how to share the dll and source, so I'll get that done tomorrow.
10 months ago
I tried to upload the modified code here, but it is a rather obnoxious process and will take 24 hours to be approved. Alternitivly, you can download it from here:

https://1drv.ms/u/s!AtH4vpaZnzX7lvN5eYZ600EUO6yMwA?e=HeAUdh

The snippet of code that needs to be changed is below. After compiling replace the old DLL on your website with the new one. A precompiled DLL is in ZIP folder linked above. You will then need to stop/start the site and go into USPS shipping configuration and enable Ground Advantage.

When I tried adding Ground Advantage Cubic it returned $0.00 which I'm guessing because total package dimensions were not provided.


namespace Nop.Plugin.Shipping.USPS.Domain
{
    /// <summary>
    /// Class for USPS V3 XML rate class -holds services offered by USPS
    /// </summary>
    public static class USPSServices
    {
        #region Fields

        /// <summary>
        /// USPS Domestic Services
        /// </summary>
        private static readonly Dictionary<string, string> _domesticServices = new Dictionary<string, string>
        {
            {"NONE (disable all domestic services)", "NONE"},
            //{"First-Class", "0"},
            {"Ground Advantage", "1058"},
            //{"Ground Advantage Cubic", "1096"},
            {"First-Class Mail Letter", "letter"},
            {"Priority Mail Express Sunday/Holiday Guarantee", "23"},
            {"Priority Mail Express Flat-Rate Envelope Sunday/Holiday Guarantee", "25"},
10 months ago
Jeff_Birt wrote:
I tried to upload the modified code here, ...

It's best to use GitHub