Agency CRM: How to collect tax on pricing plans

This document will walk you through setting up automatic tax collection for your pricing plans

Do you even need to collect taxes on your SaaS reselling pricing plans or your Agency pricing plans? Maybe not. Please discuss this with your tax preparer and come back here if he thinks it is even necessary.

STEP 1: SETUP STRIPE FOR TAX COLLECTION

  1. Log in to your Stripe account and in the 'More' dropdown in the top nav, select 'Tax'.
  2. Set your default product category as 'Software as a Service' or whatever your tax preparer tells you to use. NOTE: You will be able to set product categories for each of your pricing plans, so this doesn't really matter.
  3. Click the 'Add Registrations' button for each jurisdiction you want to collect tax in. You must choose at least one or our integration will not work. Ask your tax preparer which you need to register in.
  4. Go to the bottom of the page and switch on 'Enable automatic tax calculation'.
  5. At the top of the page, in the search field enter 'Webhooks' and click 'Developers  >  Webhooks'.
  6. Click 'Add endpoint' and use these settings:
    1. Endpoint URL: https://www.sociamonials.com/agency_crm_stripe_payment_status.php?sm_stripe_callback=sm_stripe_callback_notify
    2. Description: Pricing plan tax collection
    3. Check the 'Listen to events on Connected accounts' checkbox
    4. Click 'Select events' and check these three events: 
      1. invoice.payment_succeeded (in the Invoice section)
      2. invoice.payment_failed (also in the Invoice section)
      3. checkout.session.completed (in the Checkout section)

STEP 2: SETUP TAX COLLECTION IN EACH PRICING PLAN

  1. Edit the first pricing plan where you want to collect taxes
  2. Check the 'Charge tax for this plan' checkbox
  3. If you want to pay the tax on behalf of your client, choose 'Yes' in the 'Does the price already include tax?' dropdown. If you want the client to pay tax on top of your advertised price, choose 'No'.
  4. In the Tax Code field, be sure to click the 'View List' link to find your product tax code. For example, your tax preparer might advise you to use code 'txcd_10103000' if you aren't providing services (selling SaaS only). This field is case sensitive.
  5. Repeat above process for each pricing plan that requires tax collection.

STEP 3: TEST

The only way to test is if you enter an address within the location you are registered to collect tax. If you haven't added a registration for the location within Stripe, we will not collect taxes, it will show as 0.00 owed. Complete a sale from within the jurisdiction and make sure it collected the tax.


MANAGING CLIENTS WITH TAX SWITCHED ON

If ANY of your pricing plans have tax collection switched on, Stripe will work differently. We are forced to create a Subscription within Stripe versus us managing the subscription internally and charging via Stripe at the appropriate time. Now, you must make sure that when you lose a client and switch off 'Charge for access' or delete the workspace it removes the subscription from your Stripe account. Search for the client's email address to find them, then look at their Customer screen. It should NOT show a green active subscription there. If it is still there, delete it manually so they aren't charged again. It is here where you would refund them if you agreed to do that. NOTE: We use the API to attempt to delete this subscription, but always verify that it worked.

👆 You’re all caught up