cboard-org/cboard-api

Subscriptions don't necessarily get synchronized fully

Opened this issue · 0 comments

When calling the syncSubscriptions route, we don't necessarily retrieve all subscriptions from Google Play, PayPal, and the database. For example, our current implementation of paypal.listPlans won't return more than 10 plans, and we don't specify a page size when calling Google Play so we'll get at most 50 subscriptions back.

The route probably works fine at the moment since we have a very small number of subscriptions and plans, but if that number grows we will eventually stop synchronizing plans properly.

Acceptance criteria

  • We retrieve all plans from PayPal.
  • We retrieve all subscriptions from Google Play.
  • We retrieve all subscriptions from the database.
  • Optionally, we stop fetching individual subscriptions from the database here. We're already getting the entire set of subscriptions so we can avoid making additional queries.