Well, we have the Royal Mail Shipping API working, and working well.
We finally have the "Tracked 24" and "Tracked 48" services, which are volume related, aggregate prices, and quite useful services from Royal Mail.
We had based 1st and 2nd class, recorded, and normal pre-1pm Special delivery already. One wonders why anyone uses a franking machine as this is the same price or cheaper, but no machine rental, no ink, and RM even provide the labels.
Obviously, we're happy to provide consultancy to anyone that wants to integrate this in to their systems for a small(ish) fee :-)
The API is confusing - we found they list "service enhancements" for tracked signed, and safe place. But the Tracked services must not, in fact, have any of these set but instead have separate fields for such things. Indeed, we see no cases that do use those service enhancement codes. So annoying.
We have had great fun integrating with our systems to pick up the tracking details.
The Multiple Tracking Summary request is useless as it seems some types of delivery cause an error that means no response on any of the (up to 5) tracked items being queried. So we have to request one at a time. There is also a rate limiting (not just for out usage though) so we have to keep trying.
However, we have managed to create a polled tracking system to update, and if possible get "Proof of delivery" data. The API defines the signature image even.
However, some late addition to the API is that we get the size of the signature image in pixels, but not the image itself? Why? Data Protection. But the web tracking shows it. Indeed, one can grab the image from https://www.royalmail.com/track-your-item/proof-of-delivery-image/XXXXXXXXXXXGB with no session or cookies or anything, so we do, once we know there is a POD signature to get. How pointless to remove from the API FFS.
The most annoying and unexpected issue is international parcels. We have, this week, had cause to send a couple of small items to EU addresses. Previously we printed a stamp, that was it. Within EU no customs crap to sort.
But the API wants a load of crap, or so it seems: descriptions, country of manufacture, value, all sorts. The whole customs declaration crap. And what is worse, when we asked for an example, they sent one showing we need length, height and width of parcel (as well as weight).
But go for really special, and symptomatic of the support, the code they sent could not have been tested, they had the length of the parcel measured in grammes, whilst width and height were in centimetres.
Yes... That is right...
Royal Mail want us to say how many grammes long our parcel is!