Question: We are a small team of developers making and maintaining a software product with a high number of users. 

We are also in direct contact with users who ask us many requests about the product. 

We don't have access to business information (what kind of deal a specific user has with the company that employs us). 

We don't have enough resources to address all the user requests, and will have to refuse some of them. We treat in priority the requests that seem easier to comply with ; or that could benefit most users. 

How can we gracefully notify those users who made requests that we will not be able to process?  

How to tell them that what they asked for is not possible ; while avoiding frustrating them?

Answer: 
> 
> We don't have access to business information (what kind of deal a
>  specific user has with the company that employs us).
> 
> 
> 

This is the key thing. Unless you know the contractual details of a customer you can't make a decision as to how to reposed to a customers request.

The obvious thing is boot the request further up your managerial tree until it hits someone who can make that decision for you. 

In fact all change requests should be filtered through someone who is aware of the contractual requirements before you even start to work on them. As while you may think that an item seems reasonable, it may be totally out of the scope of what your customer has paid for, and by working on it you are effectively giving away free work.
The golden rule: The customer is always right - if the customer pays for it. If your manager comes to you and tells you that the customer is paying for a feature or a change, and tells you to do the work, then you do it. Otherwise you don’t. 

Find out who in the company can make a decision whether work will be done at all, and for what price. Then when you get a request, you say politely “I’m sorry, but this is something I cannot decide. Please contact so-and-so about it”.

PS Just because the customer is willing to pay doesn’t mean they get it. Someone quite high up needs to decide about the company’s strategy. Any request costs money, not just for the work done, but also for all the other work you *should* do instead.