No. Unfortunately it is not possible to create a Recurring App charge for 1 year (I've asked a few times but I never get a response). Only '30 days' is available. Docs here: https://help.shopify.com/en/api/reference/billing/recurringapplicationcharge
If you do create a recurring yearly payment then I think it should be Ok to go outside of Shopify (since they aren't taking care of the billing) however that is not allowed. Your only recourse is to create a one time charge and take care of asking the customer to pay again at the due date. Of course that is putting the onus back on you as the developer to manage the intrincacies - pausing payment, expired cards, retries etc.
Nick here from Shopify.
Just to follow up and confirm what Gavin is saying. The only ways to accept payment currently when charging for an app in the app store is a recurring monthly payment or a once off payment. I will take this feedback back to the partner team to look into for further consideration on your behalf though.
All the best, Nick
I will definitely do that James. Thank you again for letting us know. Feedback like this is hugely beneficial to our team to let us know what developers like yourself are looking for moving forward.