Is this right decision to define 5-6 foreign key in a single table...?
Foreign keys exist to enforce referential integrity i.e. to keep the data clean. This is a good thing.

However, there are no free lunches. The constraint will be checked on writes, adding latency. A FK may have an associated index. As such there will be an overhead during writes. The more FKs, the more overhead. Plus the extra disk and maintenance time.

If you have done design diligently and arrived at this table then I see no prima face problem. If testing at scale shows problems that's the time to consider alternate implementations.