For sats to flow thru lightning you need channels.
To receive sats you need channels with inbound liquidity,
to send sats you need outbound liquidity.
Let's say you fire up a node.
If you want to receive sats, someone else needs to open up a channel to you so you get inbound liquidity.
If you want to send sats (and haven't received any before), you need to open up a channel to some other node so you get outbound liquidity.
To open/close a channel means to do an on-chain-transaction, so it can be quite costly.