If your server uses Discord's Onboarding, new members only see its default channels and the ones their onboarding answers add. Put the channel your plans panel is in on that list, under Server Settings → Onboarding → Default Channels.
As the owner you see every channel in the server. A member who joined through Onboarding sees a shorter list: the default channels, plus the ones their answers to your onboarding questions added. A channel on neither list is still there, but nothing puts it in front of them.
The only way they reach it is by going looking, through Browse Channels in the channel list. A panel in a channel like that goes unseen by everyone who joins after it was posted.
Open Server Settings → Onboarding → Default Channels and tick the channel you ran /flatpass panel in. From then on, everyone who joins sees it in their channel list.
It can stay read-only. Discord only needs one of your default channels to be somewhere everyone can read and send messages, so a channel where only you and the panel speak is fine. A private channel shows Unlock instead of a box: the panel needs to be in a channel everyone can already see.
If the offer is only meant for some of your members, you can tie the channel to an answer in one of your onboarding questions instead, so only the people who pick that answer get it.
Default channels apply to people as they join. Anyone who was already in the server when you changed the list can still add the channel themselves through Browse Channels in the channel list, so it is worth a line in your announcements telling them where it is.
Then this isn’t the cause. Check who the channel is visible to in its own permissions instead.
/flatpass panel in the channel you want it in and pin the plans panel it posts; members subscribe from its buttons.Ask in the flatpass Discord, or email support@flatpass.io. Both are read by the people who build it.