How is this different from web development?
Web development can add a defined feature or integration. A custom systems project usually involves a wider process with several user roles, related records and actions across multiple steps.
Can staff and customers have different access?
Yes. Role-based access can be designed around the records and actions each user needs. The permissions need to be part of the agreed scope and tested with the workflow.
Can a portal connect to a public website?
Yes, where the architecture supports it. Decide which data should be shared, which should stay private and how accounts and permissions are managed.
How do I get a useful estimate?
Send a real example of the process, the people involved, the records used and the biggest problem. Include any existing systems that must connect. That gives me a clearer basis than a feature wish list alone.