You are only allowed to downlad code or functionality through the In-App Purchase mechanism. The code or functionality enablers must reside on your own servers, or in the iOS itself, but the availability check must go through the In-App system.
It is however also possible to enable certain features in your application based on external subscriptions, etc. This can for instance be seen in the TripIt application, where "Pro" account holders have access to more functionality. If you decide to go down that path you should thread very carefully since Apple may decide to reject your application if for instance buttons appears dimmed because the user have not been granted access to a certain feature. The way TripIt seems to have "circumvented" this is simply to completely hide this information to the non-Pro user.