1. I'll be there(=in prison) for seven years for making fake money.

2. I'll be there (=in prison) for seven years for having made fake money.

(Which expression is grammatical?)

1 answer

both are syntactically correct, but the first is better.

The crime was making fake money.
Of course, having made it, you are guilty of making it.