While integrating with Poynt Billing is relatively simple and straightforward, the process of development and testing using the same package name that you would use for Live deployment could be challenging. As an app that requires the merchants to pay for subscriptions, you would need to make sure you handle one or more billing plans (as per your monetization strategy), managing existing and new subscriptions, receive and handle webhooks for start & stop of subscriptions and payments, and above all managing multiple versions of your app in different states of development, testing and deployment.

 

For these reasons, we recommend the following process for a seamless integration and deployment of your app using the Poynt Billing APIs (on terminal or on cloud).

  1. Application Setup
  2. Building a new App
  3. Adding billing to existing App with no prior billing
  4. Updating existing app with billing
  5. Billing use cases

 

Application setup

dev {
	initWith debug
       	applicationIdSuffix ".dev"
}

Please note that initWith debug statement will ensure that the dev variant is signed with Android Studio debug keys. Unsigned apps will fail to install on Poynt. Learn more about build variants on Android

Below you’ll find more detailed step by step process on how to setup your application based on in which state you are.

 

If you are building a brand new app:

  1. Create new dev variant with package name appended with “.dev” suffix.
  2. Create new Application on Poynt app Portal with the dev variant application.
  3. Create billing plans for development and testing.
  4. Contact Poynt Dev Support to mark the app available for testing through Poynt Apps Marketplace.
  5. Poynt Dev Support will approve your test billing plans and mark your app available for testing through Poynt apps Marketplace. Please note that this only enables for “Test Merchants”.
  6. Do your development and testing.
  7. When ready, generate your “release” build with your final package name.
  8. Create new app on Poynt app Portal with the release build apk.
  9. Create billing plans for Live
  10. Submit your app for review. Please note that you would need to complete all the formalities required for submitting an applications for review - failing so could delay your application review process.
  11. Poynt App review team, will review your billing plans and Application as per the Poynt App Review process, and approves for Live.
  12. Now your app will be available for merchants in Live Poynt Apps marketplace.

 

If you are updating an existing app with no prior billing plans:

  1. Create new dev variant with package name appended with “.dev” suffix.
  2. Create new Application on Poynt app Portal with the dev variant application.
  3. Create billing plans for development and testing.
  4. Contact Poynt Dev Support to mark the app available for testing through Poynt Apps Marketplace.
  5. Poynt Dev Support will approve your test billing plans and mark your app available for testing through Poynt apps Marketplace. Please note that this only enables for “Test Merchants”.
  6. Do your development and testing.
  7. When ready, generate your “release” build with your final package name.
  8. Upload your new release build apk for your existing Application on Poynt App Portal.
  9. Create billing plans for Live
  10. Submit your app for review. Please note that you would need to complete all the formalities required for submitting an applications for review - failing so could delay your application review process.
  11. Poynt App review team, will review your billing plans and Application as per the Poynt App Review process, and approves for Live.
  12. Now your app is available for merchants in Live Poynt Apps marketplace.

 

If you are updating an existing app with prior billing plans:

  1. If you’ve integrated with Poynt Billing before without a dev variant, please follow previous two section to create a new dev variant with package name appended with “.dev” suffix.
  2. Create new billing plans for development and testing. Note: You can leave existing billing plans as they are or submit request to Poynt Dev Support to deprecate your old plans.
  3. Contact Poynt Dev Support to mark the app available for testing through Poynt Apps Marketplace.
  4. Poynt Dev Support will approve your test billing plans and mark your app available for testing through Poynt apps Marketplace. Please note that this only enables for “Test Merchants”.
  5. Do your development and testing.
  6. When ready, generate your “release” build with your final package name.
  7. Upload your new release build apk for your existing Application on Poynt App Portal.
  8. Create new billing plans for Live.
  9. Submit your app for review. Please note that you would need to complete all the formalities required for submitting an applications for review - failing so could delay your application review process. Note that if you are changing your pre-existing billing plans, you must indicate so in the app submission process for Poynt App Review team to deprecate any plans as needed.
  10. Poynt App review team, will review your billing plans and Application as per the Poynt App Review process, and approves for Live.
  11. Now your app is available for merchants in Live Poynt Apps marketplace.

 

Billing use cases

While integrating with Poynt Billing, please consider the following scenarios and make sure your application code can handle these as necessary. Please refer to App Billing Best Practices to make sure your app covers all possible billing scenarios.

  1. merchant has a valid subscription but never used your app before (first time subscriber)
  2. merchant has a valid subscription and has used your app before (returning subscriber)
  3. merchant has a canceled subscription after using your app (canceled subscriber)
  4. merchant has no subscriptions and never used your app - although this is no longer possible once you’ve integrated with Poynt Billing, we still recommend you to handle this scenario to prevent any fraud that might occur in the future. (not a subscriber)
  5. merchant has no subscriptions and has used your app before - these are your existing merchants before you’ve switched to Poynt billing. You must make sure you grandfather these merchants to provide a more graceful upgrade process to billing. (grandfathered subscriber)
  6. merchant has a valid subscription but wants to upgrade or downgrade (upsell/downsell subscriber)