In my test environment (pointing to an app connected to a test subscription of Accounting) I'm able to do what I want - create, list and edit invoices, for example. When I point to the live environment (after changing the client id etc to make sure that it is only that one app connected to the subscription) I get access tokens back and can refresh my tokens but as soon as I try to list invoices I get an unauthorised response: [{"$severity":"error","$dataCode":"AuthorizationFailure","$message":"No active subscription. (MSE)","$source":""}]
The app has been authorised and connected to a live, active subscription and I can't see why I'd be getting that. Any thoughts or obvious gotchas?