Orders API rejects IOSS_DDP label generation that the portal "Apply postage" screen accepts for the same order
Using the api the data makes it to Click and drop but will not print the label saying "Invalid data for shipping under IOSS"
If I select the order and generate a label in the portal then all is good, but thats not how the behavious is for all other shipments using the API. UK items work fine in this way and MPR but get charged tax again when a marketplace order.
The Orders API (api.parcel.royalmail.com/api/v1) doesn't currently support generating a label for an IOSS_DDP shipment via the API, even though the exact same order data works fine when postage is applied manually in the Click & Drop portal.
We ship Amazon orders where VAT is already collected via Amazon's IOSS number, and need Delivered Duty Paid so the flat EU duty is billed to our OBA account rather than the customer (Amazon's terms require this - recipient-pays isn't an option for marketplace orders).
What we're sending via the API: serviceCode BZX, deliveryTerm IOSSDDP, a correctly attached IOSSNumber, and the flat EU customsDutyCosts. The order creates successfully every time, but label generation then fails with:
"labelErrors": [{"message": "Invalid data for shipping under IOSS", "code": "IOSSREQUIREMENTS"}]
We also tried serviceCode MPR (rejected outright - "IOSS is not supported using the selected service to this destination") and BYH (rejected - "Service code 'BYH' is not valid for this account"). Deferring the label to a separate call after order creation fails differently: "Label generation only available for orders with postage applied status" - via the API alone, the order never progresses out of draft status at all.
The telling part: opening that exact same order in the Click & Drop portal and manually clicking "Apply postage" with the same service and IOSS_DDP delivery term works immediately and prints a real tracked label. So the underlying data is valid - your own manual flow accepts it - but the API path doesn't.
We'd like to be able to automate PDDP/IOSSDDP shipments to EU destinations via the API the same way we already can for domestic and USA orders, without needing someone to manually click through the portal for every EU parcel. Could Royal Mail either fix the API to accept the same data the manual flow accepts, or document which serviceCode/deliveryTerm combinations are actually supported for IOSSDDP via the API per destination country?