AffStackDev Help

Tax exemptions, reports and records

Let business customers apply for tax exemption and decide on the evidence (worked example: a camp in Minnesota), build business sales reports, export records, and what happens if you ever remove B2B.

Tax exemptions

An exemption is yours to grant: applying removes no tax. It belongs to one customer, for the destination and dates you approved, and a colleague in the same company does not inherit it. "An application stays taxable until it has a valid approval for the checkout destination."

Set it up

Tax exemptions → Tax setup has four sections: Eligibility and approval, Application questions, Price display and Messages. Everything starts switched off, with manual review.

Field (Eligibility and approval) At the start What it does
Enable tax exemption applications not ticked opens applications, once at least one destination is chosen
Permitted destination countries none where exemptions can apply. "Each approved certificate is limited to its reviewed country and state scope."
Eligible customers All approved business customers and, or instead, chosen Individual customers, Business groups and Customer roles. "Eligibility lets a customer apply. It does not approve an exemption or change their role."
Require at least one private supporting document not ticked applicants must attach evidence
Offer VAT validation with the applicant's explicit consent not ticked an official VAT number check, only with consent
Approve eligible validated VAT requests automatically not ticked only together with VAT validation; "A pending or unavailable validation never grants an exemption."
Allow guest applications on the tax exemption page not ticked needs a published page with [affstackdev_b2b_tax_exemption] (Tax exemption page); customers also get My Account → Tax exemptions
Default approval validity in days 365 1 to 1,825. "Every approval has an end date. Reviewers can choose a shorter period."

Application questions adds your own questions to the application. Price display can show Catalog price display and Cart price display with or without tax for chosen customers ("This changes price presentation only. It does not approve exemptions or remove checkout tax."). Messages holds the customer texts and emails, for example the status texts the customer reads on their Tax exemptions page.

Tax setup
Tax setup (the top of the screen; select the picture to see all of it)

The customer applies

Under My Account → Tax exemptions (or your public page): Business or legal name, Country where the exemption applies (with Update destination choices), Certificate scope (One state or province, or deliberately the whole country), State or province, What is this exemption for?, your questions, then Review application, then up to three documents (PDF, JPEG or PNG, 2 MB each) and Submit application. "Your request does not remove tax until it is approved."

You decide

Tax exemptions → Requests and approvals lists every request with Applicant, Destination scope, Status, Valid until and Open request. In a request, under Review this exemption:

Field What it does
Decision Approve for the reviewed destination or Do not approve (an approved one: Revoke approval)
I reviewed evidence that covers the entire requested country. only for a country-wide request; must be ticked to approve it
Valid from (UTC) "Approval starts at the beginning of this date." Today at the start.
Valid through (UTC) "Approval expires after the reviewed period." Today plus the default validity at the start.
Reason shown to the customer "Required. Explain the approval, the missing information, or why approval is ending."

Review changes, then Publish these changes. Grant an exemption records an exemption for a customer whose evidence you already checked ("This creates an approval record with your reason and validity dates.").

At checkout the exemption applies only for the approved destination and dates, and only to that customer. Each order keeps the tax decision made when it was placed.

Worked example: Pinecrest Summer Camp, Minnesota

Ben Okoye runs Pinecrest Summer Camp, a nonprofit camp with a Minnesota exemption certificate (form ST3).

  1. Harbor & Pine switches applications on: Enable tax exemption applications, Permitted destination countries United States, Eligible customers All approved business customers, validity 365 days.
Tax setup → Eligibility and approval: applications on, the United States
Tax setup → Eligibility and approval: applications on, the United States (the top of the screen; select the picture to see all of it)
  1. Ben applies for Minnesota under My Account → Tax exemptions ("Nonprofit summer camp; our Minnesota exemption certificate (form ST3) is on file with you."). His page lists the request as Awaiting review.
Ben's Tax exemptions page with the request waiting
Ben's Tax exemptions page with the request waiting
  1. Requests and approvals shows the request.
Requests and approvals
Requests and approvals
  1. Open request: the destination ("Minnesota, United States (US)"), the reason, the customer, and what the customer reads. Under Review this exemption: Decision Approve for the reviewed destination, the dates as they start (today to the same day next year), Reason shown to the customer "Your Minnesota exemption certificate (form ST3) is checked. Approved for deliveries to Minnesota for one year."
The request with the decision filled in
The request with the decision filled in
  1. Review changes, then Publish these changes.
Review changes on the decision
Review changes on the decision
Published: the exemption is approved
Published: the exemption is approved

Ben's page now shows the request as Approved with its end date. Orders he places for delivery to Minnesota within those dates are exempt; deliveries elsewhere are taxed as usual.

What Ben sees now
What Ben sees now

Sales reports

Sales reports ("Build a dated report from accepted business order records. Account changes do not reclassify past orders."):

  1. Choose Orders and quotes created from and Created through (the current month at the start, in your site's time zone; at most 366 days).
  2. Build fresh report. The report is built in batches: "Building report: 43 orders and 0 quotes examined. Totals appear after all batches finish."
  3. Finish remaining batches completes it (or Continue building report one batch at a time, which works without JavaScript; Pause after this batch stops). "You can leave this page and return to this report within one hour."

The finished report shows its coverage ("Coverage: 5 accepted business orders; 16 consumer orders excluded; 22 unclassified orders excluded from business sales.") and, per currency, Business orders, Paid orders, Verified net merchandise sales, Average verified merchandise order and Native refunds on paid orders; the tables Top business customers, Top business groups and Top products and variations; the Quote pipeline ("3 conversations created; 2 received an offer; ..."); and the Order drilldown: each order with its Historical audience (who the customer was when they ordered, for example Business · account and group recorded at checkout or Not classified · no checkout record for an order B2B kept no checkout record of, such as one placed before B2B was installed), its Status and Net merchandise. Download dataset with Download CSV exports it. Everything is as it was when each order was placed; currencies are never combined. How these figures are calculated explains every figure. A report does not change when orders change later: build a fresh one for current figures.

Sales reports: a report built for the month so far
Sales reports: a report built for the month so far (the top of the screen; select the picture to see all of it)
Note: Before B2B 2.0.7, Finish remaining batches stopped with "The next batch did not finish. Reload this report to check its progress before continuing." Continue building report worked. Update to 2.0.7.

Records, diagnostics and connections

Tools & connections:

Tools & connections
Tools & connections (the top of the screen; select the picture to see all of it)

Removing B2B

Deactivating or deleting B2B keeps its business records, settings and order evidence; there is no bulk erase. Tools & connections → Removing B2B offers Freeze and prepare removal only when no business records or rules still depend on B2B. To keep using B2B after preparing, choose Cancel retirement there.

When it does not work

You or the customer see It means
"Select at least one destination before enabling applications. ..." Permitted destination countries is empty.
"Tax settings changed. Reopen this form and review the current settings." Someone saved Tax setup while you had it open.
"The form did not arrive completely. Reload it and check the server input limit before trying again." The server cut a large form short.
"No tax exemption requests match this view." The filter shows no requests.
"Tax changes are currently unavailable. Existing records remain readable." No active license; nothing can be decided until it is active.
"The next batch did not finish. Reload this report to check its progress before continuing." A report batch failed (before 2.0.7: always, see the note above). Reload; Continue building report goes on from where it stopped.

Questions

Does an approved exemption cover the whole company?

No, only the customer it was approved for.

What happens when an approval ends?

The status becomes Expired; checkout taxes apply again until a renewal is approved. Expired and revoked records stay in history.

Can I approve a request without documents?

Yes, unless Require at least one private supporting document is on. The reason you write is kept with the decision.

Do reports include consumer orders?

No. They count accepted business orders; consumer orders and orders that cannot be classified safely are listed as excluded.

Page What it covers
Business accounts Who is an approved business customer.
Getting started Hiding sections you do not use.
B2B overview All B2B sections at a glance.