I had the same problem since i started to integrate the subscriptions payment method in the app we are developing at my company. At the begining i thought it was no way to build the subscription products load from the google play store without hard coding it, but today I found the solution after read the plugin code (here) and testing it.
The problem comes with the iap.v3 plugin docuementation. They say the plugin signature is the following:
store.loadProducts( productIdentifiers, productListener )
but it’s not quite true. The loadProducts method accepts these two ways of call:
store.loadProducts( managedProductIdentifiers, productListener )
store.loadProducts( managedProductIdentifiers, subscriptionProductIdentifiers, productListener )
They test if the second parameter it’s a lua table and then they request it as subscriptions. When the second parameter it’s the listener they don’t query the subscription products. In the listener the products key it’s returned as a single array with all the products managed and subscriptions.
You can find the reference at the plugin implementation of loadProducts (here line 213 to 265).
With that method in combination with another undocumented method _purchaseSubscription _it seems to work well.
Hope this help you and other people having the same problem.