If I understand it correctly all your links that you provide are only available after login?
And you never want to use the standard login froms?
That is not that easy unfortunately, but I have done this before for a customer.
When doing this, you need to know that the deeplink works based on records in the PendingLink entity. Whenever you trigger a deeplink, before redirecting, the module will create some records of the PendingLink entity type.
These entities should be used in the process.
So this is the process flow you want to go through, when logging in:
1. User opens link, application prepares/stores all deeplink info in the 'PendingLink' entity.
The deeplink should allow anonymous users
2. The deeplink module redirects to the default home page
Because the user didn't login yet, this will be your custom login page.
3. Do NOT run the deeplink information when opening this page.
4. The user logs in, the application triggers the login microflow.
In this login microflow you should change the reference of the 'PendingLink' object, to the new session.
5. The application opens the default home page, for the user that just logged in.
This is the moment where you trigger the deeplink logic as you would normally do.
I'm not sure I understand the problem. You want to deeplink users to a page, but you want them to log in first? To the best of my knowledge, if you disallow anonymous logins with the deeplink module, users will always be required to log in first. There should be no need to specifically link them to the Login page...