# Inverse Paradox

- Site: https://ip.ipdev2.cloud/

## Hello world!

- Link: https://ip.ipdev2.cloud/hello-world/
- Published: 2026-11-08T00:21:42+00:00
- Author: neilharner

Welcome to WordPress. This is your first post. Edit or delete it, then start writing!

The post [Hello world!](https://ip.ipdev2.cloud/hello-world/) appeared first on 
[Inverse Paradox](https://ip.ipdev2.cloud).

## Before You Vibe Code Your WooCommerce Store, Talk to Us

- Link: https://ip.ipdev2.cloud/before-you-vibe-code-your-woocommerce-store-talk-to-us/
- Published: 2026-11-03T14:42:10+00:00
- Author: neilharner

AI tools can now write a full WordPress theme in an afternoon. You describe the 
look you want, paste the code into your site, and a new design appears. We understand
the appeal, and our own developers use AI every day. We like what it does for small
business marketing sites and for building tools.

An online store asks for more care. When a store owner without development experience
uses AI to rebuild a WooCommerce theme or rewrite parts of a live site, the trouble
tends to show up weeks later: in checkout, in server load, or in a plugin update
that fails. This post walks through the risks we see and explains where Inverse 
Paradox stands on supporting stores that change this way.

## A story from our own customers

This fall, one of our eCommerce clients used AI to vibe code a whole new frontend
for their WooCommerce store. They did not tell us. Our team was partway through 
building a feature at the time, and all of that work depended on the theme and codebase
we had in a Git repository.

The new design looked fresher than the old one. Underneath, we found problems. A
shopper who clicked “Add to cart” got no sign that anything had happened: no message
on screen and no count on the cart icon. The AI code went into WordPress with no
version history, so we had no clean way to see what had changed or to roll it back.
Finishing the work now needed a significant amount of extra time, because our developers
had to redo work built for an original codebase that no longer existed.

Additionally and more significantly, the coding was so radical that we were put 
in the difficult position where we had to make the determination that we could no
longer reliably manage the website or take responsibility to support it. 

## The risks of vibe coding a WooCommerce store

“Vibe coding” means building software by prompting an AI and accepting what it produces,
often without reading the code. For a prototype or a simple landing page, that can
work. A store takes payments, tracks inventory, and holds customer data, and vibe
coding often skips the steps that keep those systems safe.

### No version control

Professional developers keep a site’s code in Git. Each change has a record, a reviewer,
and a way back. Code pasted into the theme editor or a snippets plugin has none 
of that. If checkout breaks on a Saturday, nobody can say which change caused it
or restore the version that worked on Friday.

### The AI does not know your business

An AI model sees the prompt you give it. It does not see your shipping rules, your
subscription plugin, your payment gateway settings, or the custom work your developers
built last year. AI tools also invent WordPress and WooCommerce hooks that do not
exist. The result can look fine in a preview and still break the cart or checkout.

### Your developers and your AI end up competing

Say your agency builds a feature on Monday and an AI rewrite replaces the theme 
on Tuesday. Two sets of changes now collide on the same site. Without a shared workflow,
each side undoes the other’s work, and you pay for both.

### Design and accessibility gaps

AI output can look polished in a screenshot and still fail real shoppers. The missing
cart confirmation in our story is one small example. We also find missing labels
for screen readers, weak color contrast, and buttons a keyboard user cannot reach.
Those gaps cost sales and can expose a store to [accessibility complaints](https://ip.ipdev2.cloud/2021/08/urgent-a-need-for-accessibility/).

### Slow pages and server errors

AI often writes database queries without knowing how large your catalog is or how
your site caches pages. On a busy store, those queries pile up. Pages slow down,
the server starts returning errors, and hosting costs climb.

### **Riskier plugin updates**

WooCommerce and its extensions update often, and plugin authors test against WordPress
coding standards. Custom AI code rarely follows those standards, so each update 
becomes a gamble on what breaks next.

### Security holes

Attackers use AI too. SureBright reports that [Google’s threat intelligence team confirmed](https://www.surebright.com/blog/ai-promised-to-fix-woocommerce-plugin-bloat-merchants-got-malware-fake-discounts-and-a-store-that-still-breaks-after-checkout)
a criminal group used AI to build a working zero day exploit. The same article describes
a developer whose weekend AI plugin began serving malware to visitors three weeks
later, because the code skipped basic security checks.

## Giving AI the keys to a live store

Newer tools let an AI agent connect to WooCommerce and change products, orders, 
and settings for you. WooCommerce, as of this writing, labels its own AI connection(
MCP) a [developer preview](https://developer.woocommerce.com/docs/features/mcp/).
[Urumi points out](https://urumi.ai/blog/woocommerce-ai-agent/) that product edits
through these tools have no undo, and that an order status change can send customer
emails and trigger fulfillment. An AI can change hundreds of products in seconds.
Fixing that by hand can take days.

AI that talks to your customers carries its own risks. A UK merchant reported that
an AI chat assistant offered a shopper 80% off, and the shopper then placed an order
worth more than £8,000 ([SureBright](https://www.surebright.com/blog/ai-promised-to-fix-woocommerce-plugin-bloat-merchants-got-malware-fake-discounts-and-a-store-that-still-breaks-after-checkout)).
Order records also hold names, addresses, and emails, so connecting an AI tool sends
that personal data to an outside model provider. If you sell to customers in the
EU, the EU AI Act now requires you to tell visitors when they are talking with an
AI.

## How we use AI at Inverse Paradox

We use AI every day, inside a workflow built for it. On client stores, that workflow
looks like this:

 1. The site’s code lives in Git, with a history for each change.
 2. AI drafts and refactors code on a local copy or a staging copy of the site.
 3. A developer reviews each change and tests it on staging, including cart, checkout,
    and account pages.
 4. Changes reach the live store only after review, with a rollback ready.

LaFleur, another agency, [describes this setup](https://lafleur.marketing/blog/beware-of-risky-ai-website-building-practices/)
as a “walled garden” where AI can try ideas without touching live systems. We agree
with that framing.

We also think AI fits small business marketing websites, and we use it to build 
internal tools. On those projects, a mistake costs an afternoon. On a store, a mistake
can cost a weekend of orders.

## Where we stand

Inverse Paradox will not be able to provide ongoing development support for a WooCommerce
store whose owner makes AI generated code changes outside a shared workflow with
us. Supporting code we cannot track puts both sides at risk. You end up paying us
to fix problems we did not cause, and we end up responsible for code we never reviewed.

We are happy to help you use AI well. If you want to try AI on your store, talk 
to us first. We can set up a staging site, put your theme under version control,
and agree on who changes what. You keep the speed, and your checkout keeps working.

## Before you paste that code

Ask yourself four questions:

 * Do you have a full backup and a staging copy of the site?
 * Will the change live in version control?
 * Does your developer or agency know about it?
 * After the change, will someone test the cart, checkout, and account pages on 
   a phone?

If any answer is no, wait and [contact us](https://ip.ipdev2.cloud/our-story/contact/)
to discuss your goals first.

The post [Before You Vibe Code Your WooCommerce Store, Talk to Us](https://ip.ipdev2.cloud/before-you-vibe-code-your-woocommerce-store-talk-to-us/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Support Requests

- Link: https://ip.ipdev2.cloud/support-requests/
- Published: 2026-09-10T16:00:33+00:00
- Author: neilharner

Getting the website support you need from Inverse Paradox is a streamlined process
designed to resolve your issues efficiently. To submit a support request, simply
email **[support@inverseparadox.net](https://ip.ipdev2.cloud/support-requests/support@inverseparadox.net)**.
This automatically creates a ticket in our Zendesk system, and you will immediately
receive an auto-reply confirming your request is logged and in our queue.

## How We Process Requests

Once your ticket is received, our team evaluates the scope of work. If your request
appears to take less than 3 hours, we will begin work immediately. For requests 
requiring more time or heavy revisions, we will provide an estimate for your approval
before proceeding, which may require further escalation and project scheduling. 
You may also explicitly request an estimate upfront at any time.

## Billing and Cancellation

All support work is billed on a time-and-materials basis, rounded to the nearest
15 minutes. By submitting a ticket, you agree to all billing associated with the
resolution of the request. At any time, you have the right to cancel service on 
a ticket; however, you will be billed for the time accrued up until the point of
cancellation.

## Support Rates

Our most up to date helpdesk support/helpdesk hourly rates are always sent in an
auto-reply to your ticket submission.

## Turnaround Times and Priorities

While we assess and determine the priority level of standard tickets based on the
nature of the request, we strive to resolve all issues within the following windows:

 * **Normal:** 3-5 business days
 * **Urgent (Determined by Inverse Paradox):** 1-2 business days
 * **Escalated:** Estimate provided based on scope
 * **Emergency:** Best-effort immediate response (target: same-day)

## Emergencies

If you are experiencing a critical business disruption (e.g., website down, broken
checkout), email **[emergency@inverseparadox.net](https://ip.ipdev2.cloud/support-requests/emergency@inverseparadox.net)**.
This alerts our entire company and pulls team members from their current work for
immediate resolution at the Emergency Support rate. We recommend using this channel
sparingly and only under extreme circumstances.

## Policy Notices

A notice of up-to-date turnaround times and rates is automatically sent with your
ticket confirmation e-mail with every ticket sent. Inverse Paradox reserves the 
right to update rates and policies or accept/deny service requests (tickets) with
or without notice at any time.

The post [Support Requests](https://ip.ipdev2.cloud/support-requests/) appeared 
first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Urgent: The New Threat to Your Website – Data Privacy Compliance

- Link: https://ip.ipdev2.cloud/urgent-the-new-threat-to-your-website-data-privacy-compliance/
- Published: 2026-08-03T10:19:28+00:00
- Author: neilharner

If you own or manage a website, there’s a new and rapidly growing threat you need
to be aware of. Just as we saw a massive surge in [predatory lawsuits targeting businesses for not meeting Web Content Accessibility Guidelines (WCAG)](https://ip.ipdev2.cloud/2021/08/urgent-a-need-for-accessibility/),
a similar wave of claims is now hitting companies over data privacy violations.

This time, the target is website tracking and data collection, specifically under
the California Invasion of Privacy Act (CIPA). The issue is escalating quickly, 
and we are already seeing our clients receiving demand letters.

### **What is Happening?**

A 1960s-era wiretapping law in California (CIPA) is being aggressively repurposed
by claimants to target modern website technologies. These technologies include common
tools you likely use every day, such as tracking pixels, cookies, analytics software,
and chat widgets.

Here is the kicker that makes this so dangerous for businesses: under CIPA, a California
resident does _not_ need to prove they were harmed. Furthermore, the law carries
a built-in penalty of **$5,000 per violation**.

In the digital world, a single website visit can trigger multiple tracking scripts
or cookies. If a user receives 20 cookies without proper consent, that could equal
20 violations—amounting to a potential $100,000 penalty for just one visitor.

### **Who is Being Targeted?**

The short answer: Everyone.

These claims are not limited to massive corporations or businesses physically located
in California. Courts have determined that as long as the website user is in California,
CIPA can apply to companies based entirely outside of the state.

We are currently seeing a specific trend of [individuals](https://www.bakerdonelson.com/california-federal-court-declares-serial-cipa-plaintiff-vivek-shah-a-vexatious-litigant-what-you-need-to-know)
utilizing bots to scan the internet, looking for websites that do not have compliant
cookie consent or data privacy tools in place. They are identifying hundreds of 
websites and sending mass demand letters seeking quick settlements. You can[ read more about this specific surge in claims here](https://www.jw.com/news/insights-california-invasion-privacy-act-claims-surge/).

No business is too small, and no industry is off-limits.

### **Most Important: How to Protect Your Business**

The best defense against these predatory claims is strict compliance with data privacy
regulations. This means ensuring your website has the proper tracking and consent
frameworks in place.

Here are the critical steps every website owner needs to take immediately:

**1. Implement a Compliant Consent Management Platform (CMP)** You can no longer
simply have a banner that says, “By using this site, you agree to cookies.” You 
must implement a robust CMP, such as [CookieYes](https://www.cookieyes.com/) _(for
WordPress)_ or [Consentmo](https://apps.shopify.com/gdpr-backpack) _(for Shopify)_.
These platforms allow users to actually control their data preferences.

Crucially, your CMP must be properly configured with [Google Consent Mode v2](https://support.google.com/google-ads/answer/10000067?hl=en)
inside your Google Tag Manager (GTM) container, ensuring that all tracking tags 
automatically adjust their behavior and respect user consent choices in real time.

**2. Understand Explicit vs. Implicit Consent** Depending on the user’s location
and the laws applicable to them, the type of consent required changes.

 * **Explicit Consent (Opt-In):** The user must actively agree (e.g., check a box
   or click “Accept”) _before_ any tracking scripts or cookies are loaded.
 * **Implicit Consent (Opt-Out):** Tracking can occur when the user visits the site,
   but they must be given a clear and easy way to opt-out.

**3. Configure “Do Not Sell or Share My Personal Information” Tools** California
law requires businesses to provide a clear and conspicuous link on their website
titled “Do Not Sell or Share My Personal Information.” This must give users a straightforward
way to opt out of the sale or sharing of their data.

**4. Update Privacy Policies** Your privacy policy must be accurate, up-to-date,
and clearly disclose exactly what data is being collected, how it is being used,
and who it is being shared with.

### **Marketing Impact**

It is crucial for your marketing team to prepare for an inevitable side effect: 
properly implementing compliant consent banners will lead to a visible drop in your
reported tracked traffic and conversions. Industry benchmarks show that standard
sites routinely experience a **25% to 35% decline in tracked analytics data** once
explicit consent controls and tools like Google Consent Mode are activated. It’s
vital to understand that these visitors and customer conversions haven’t actually
vanished; they are simply no longer visible in dashboards like Google Analytics 
or Meta Ads Manager because the tracking scripts were blocked prior to user consent.
While this creates a reporting gap for campaign attribution, operating with clean,
compliant data must take precedence over vanity metrics to protect your organization
from crippling litigation.

### **Optional Additional Measures**

To soften this data loss while remaining strictly compliant, businesses are increasingly
implementing server-side tagging using Google Tag Manager (sGTM) hosted on platforms
like [Stape.io](http://stape.io). Traditional tracking relies on client-side scripts
running directly in a user’s browser which makes them fragile and heavily disrupted
by ad blockers, browser restrictions (like Safari’s ITP), and script execution delays.
By setting up sGTM through a custom sub-domain on Stape.io, data is routed through
your own server first before being forwarded to third-party endpoints. This approach
offers huge operational benefits:

 * **Enhanced Page Performance:** It offloads heavy JavaScript execution from the
   user’s device, drastically speeding up page load times.
 * **Data Control & Anonymization:** You gain complete governance over what data
   leaves your server, allowing you to sanitize, redact, or hash sensitive user 
   information before routing it to ad platforms.
 * **Resilient Infrastructure:** When coupled with proper consent signals, server-
   side tracking delivers far more accurate conversion signals to platforms like
   Meta (via Conversions API) and Google, recovering lost attribution modeling without
   violating user privacy choices.

### **Immediate Next Steps**

This is not an issue that can be ignored or put off until later. The financial risk
is simply too high, and the automated nature of these attacks means it is only a
matter of time before your website is scanned.

We strongly recommend reviewing your website’s data privacy compliance immediately.
If you are unsure if your website is compliant, or if you need assistance configuring
platforms like CookieYes or Consentmo, please [reach out to us](https://ip.ipdev2.cloud/urgent-the-new-threat-to-your-website-data-privacy-compliance/hello@inverseparadox.com).

### **Proactive Protection with Routine Compliance Audits**

Depending on the complexity of your website, Inverse Paradox offers Routine Compliance
Audits (RCA) to ensure long-term protection. This ongoing service provides recurring
auditing and remediation across three core areas: data privacy compliance, accessibility(
WCAG), and general website security. Please note that before routine services can
be established, your site must first have baseline accessibility in place as well
as a properly configured CMP. Following a preliminary evaluation of your website,
RCA is offered at a custom, fixed monthly price to provide predictable and proactive
ongoing compliance.

_Disclaimer: We cannot offer legal advice, and any practices and policies should
be reviewed by an attorney. Should you need an attorney with knowledge and experience
with these issues, we strongly advise you to seek legal counsel._

The post [Urgent: The New Threat to Your Website – Data Privacy Compliance](https://ip.ipdev2.cloud/urgent-the-new-threat-to-your-website-data-privacy-compliance/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Infinite Source Earns Secure Hosting Alliance Trust Seal

- Link: https://ip.ipdev2.cloud/infinite-source-earns-secure-hosting-alliance-trust-seal/
- Published: 2026-05-11T10:00:38+00:00
- Author: neilharner

In a significant move for the web hosting industry, Infinite Source has officially
been awarded the Secure Hosting Alliance (SHA) Trust Seal, a prestigious certification
that highlights the company’s commitment to security, transparency, and ethical 
operations. To earn this seal, Infinite Source underwent a rigorous verification
process centered on the SHA’s four core pillars: maintaining public-facing transparency,
implementing strict infrastructure misuse protocols, ensuring high network resource
reliability, and following lawful procedures for government data requests. This 
certification distinguishes Infinite Source as a verified, responsible provider 
in an increasingly complex threat landscape, offering customers third-party assurance
that their digital infrastructure is managed with the highest standards of accountability
and resilience. By achieving this milestone, Infinite Source joins an elite group
of hosting leaders dedicated to self-regulation and the collective improvement of
the global internet ecosystem.

The post [Infinite Source Earns Secure Hosting Alliance Trust Seal](https://ip.ipdev2.cloud/infinite-source-earns-secure-hosting-alliance-trust-seal/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Standard Operating Procedure: Plugin & Core Update Process

- Link: https://ip.ipdev2.cloud/standard-operating-procedure-plugin-core-update-process/
- Published: 2026-05-11T09:53:00+00:00
- Author: neilharner

## Overview & Purpose

This document outlines the standardized workflow for managing plugin, theme, and
WordPress core updates. The primary objective is to ensure site stability, security,
and high performance while minimizing disruption to users during peak certification
periods.

## Scheduling & Cadence

 * **Deployment Window:** Updates must be deployed during the **beginning or middle
   of the month**.
 * **Blackout Dates:** These are specific per the client based on their customers
   and business needs.
 * **Bi-Annual Reconciliation:** Twice per year, all development and PMA environments
   must be fully synced with Production. This maintenance cycle must include a comprehensive
   purge of error logs across all instances.

## Execution Workflow

### Phase I: Preparation & Audit (WEEK 1)

**Step 1: Environment Readiness:** Verify with the Inverse Paradox (IP) internal
team that no active development is occurring on the PMA environments. At the end
of the PMA, the deploy should be a clean merge from the PMA branch to the Production
branch, therefore only PMA-related development activities should take place in this
environment. _Action: If active work is detected, notify the Project Manager to 
pause development or adjust the environment set-up before proceeding._

**Step 2: Version Auditing**

 * **Comparison:** Cross-reference website plugins against developer changelogs 
   to identify the most recent stable versions. The WordPress updates will include
   update versions for plugins available from the WordPress.org Plugin Repository,
   but **_all_** commercially available plugins will require verification of the
   latest version from the vendor website. Based on the comparison of this list,
   these are the plugins that will be updated.
 * **Documentation:** Depending on the scope of the PMA and site, all proposed updates,
   additions, or removals will be recorded in a PMA report.

---

### Phase II: Development & Testing (WEEK 2)

**Step 3: Implementation:** Execute updates on the PMA environment for the following:

 * Update plugins to the latest version available.
    - Plugins available from the WordPress.org plugin repository can be updated 
      via automatic pull requests from inside the WordPress Dashboard.
    - Commercial plugins will need to be updated manually _one at a time_.
 * Verify WordPress core is at the latest possible version.
 * Update any backup themes in the repository to the latest versions.
 * Check PHP Version and update to the recommended version.

**Step 4: Internal Quality Assurance (QA)**

 * When all updates are completed on the PMA environment, IP will conduct a comprehensive
   functional audit. Client specific “Critical Path” items will be tested.
 * _Remediation:_ All issues must have tasks created and assigned in the ClickUp
   PMA board under the _QA Issue Remediation _task. All issues must be resolved 
   before moving to Phase III.

---

### Phase III: Client Review & Approval (WEEK 3)

**Step 5: Client Notification & Feedback:** When QA is complete and all issues have
been resolved, notice will be sent to the client via ClickUp.

 * **Deliverables:** IP provides the finalized list of updated components.
 * **Review Cycle:** Client performs independent QA. Any discovered bugs are logged
   in ClickUp for IP remediation under the _QA Issue Remediation _task. This cycle
   repeats until all QA items pass and all remediation tasks are completed.

**Step 6: Formal Approval:** Client provides official written approval for deployment.
Both parties will then coordinate a specific deployment date and time.

---

### Phase IV: Deployment & Post-Launch (WEEK 4)

**Step 7: Production Deployment:** On the scheduled date, all approved updates (
Plugins, Core, Theme, and Remediation Code) are pushed to the live Production environment.

**Step 8: Post-Deployment QA:** IP immediately performs a second round of “Critical
Path” testing (identical to Step 4) on the live site.

 * _Action:_ Any post-launch regressions must have tasks created and assigned in
   ClickUp under a post-launch issue block for immediate priority remediation. Once
   remediation is completed for _all _QA issues, proceed to the final step.

**Step 9: Final Sign-off:** Once post-deployment remediation is complete, IP notifies
the client via ClickUp. Following a final verification by the client, the update
cycle is officially closed. If the client finds any further issues, they are sent
to clickup for resolution.

The post [Standard Operating Procedure: Plugin & Core Update Process](https://ip.ipdev2.cloud/standard-operating-procedure-plugin-core-update-process/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Navigating the Maze: A Founder’s Guide to eCommerce Sales Tax

- Link: https://ip.ipdev2.cloud/navigating-the-maze-a-founders-guide-to-ecommerce-sales-tax/
- Published: 2025-12-09T10:52:08+00:00
- Author: neilharner

**Disclaimer:** _Inverse Paradox provides eCommerce consulting and is not a Certified
Public Accountant (CPA). The following information is for educational purposes only.
For specific tax advice and compliance, please always consult with a qualified tax
professional._

---

One of the most daunting aspects of running an online store isn’t sourcing products
or designing the website—it’s handling sales tax. It is the invisible friction that
keeps many founders up at night.

If you are confused, you aren’t alone. The landscape of digital sales tax has shifted
dramatically in the last few years. The good news? Your eCommerce platform is likely
doing the heavy lifting for you—but only if it is configured correctly.

Here is a breakdown of how sales tax works for modern online retailers, why “Nexus”
matters, and why your product categorization is more important than you think.

## The “Physical Presence” Rule

Historically, you were only required to collect sales tax in states where you had
a “physical presence.” This is often referred to as **Physical Nexus**.

If you have a brick-and-mortar shop, a warehouse, a remote employee, or even inventory
stored in a third-party fulfillment center in a specific state, you likely have 
physical nexus there. In these states, you are legally required to register and 
collect sales tax on orders shipped to customers within that state.

For most small businesses starting out, this means you only collect taxes in your
home state.

## The New Reality: Economic Nexus

Here is where it gets complicated. In 2018, the Supreme Court ruled in _[South Dakota v. Wayfair, Inc.](https://www.supremecourt.gov/opinions/17pdf/17-494_j4el.pdf)_
that states could require remote sellers to collect tax even without a physical 
presence, provided they meet certain “economic” thresholds.

This concept is called **Economic Nexus**.

States realized that if every small website selling a $5.00 item had to register
and file taxes, the administrative cost for the state would outweigh the tax revenue
collected. To solve this, they established thresholds. You generally only have to
register and collect tax in a new state if you surpass their specific annual revenue
or transaction count limits.

**The thresholds vary wildly by state:**

 * **California:** Generally requires registration if you surpass **$500,000** in
   gross sales into the state.
 * **South Dakota:** Requires registration if you surpass **$100,000** in gross 
   sales.

Modern eCommerce platforms (like BigCommerce, WooCommerce, or Shopify) have built-
in “tax monitors” that attempt to track your sales against these thresholds. They
will often alert you if you are approaching a limit in a specific state, recommending
that you register. However, these platforms cannot enforce the law or file for you,
that is where your accountant comes in.

## Destination-Based Tax

Once you have established that you _do_ need to collect tax in a specific state (
either due to physical presence or economic nexus), the rate you charge is almost
always based on the **Shipping Address** of the customer.

If you are based in Pennsylvania and ship to a customer in California (and you haven’t
hit California’s $500k threshold), you generally do not charge that customer sales
tax. If you ship to a neighbor in Pennsylvania, you do.

_Note: This is evolving rapidly. Digital goods, software, and non-deliverable services
are increasingly being pulled into these tax nets, so keep an eye on your specific
industry regulations._

## The “Fun” Nuance: Product Categorization

Setting up your nexus is only half the battle. You also have to ensure your products
are tagged correctly in your system.

Why? Because not all products are taxed equally. States have complex taxonomies 
regarding what is considered a “necessity” versus a “luxury.”

**The “Formal Wear” Example:** Here in Pennsylvania, home of Inverse Paradox, everyday
clothing is generally tax-exempt; you don’t pay the standard sales tax on a t-shirt.
However, the state distinguishes “formal wear” as a luxury.

 * **Everyday Dress:** Tax-Exempt ($0.00 tax).
 * **Formal Gown:** Taxable (Standard Sales Tax Rate).

If your online store treats every product as a generic “physical good,” you might
be over-collecting tax (upsetting customers) or under-collecting tax (upsetting 
the state).

## What You Should Do Now

 1. **Review Your Store Configuration: **Go into your platform’s settings and verify
    that every physical location where you hold inventory or have staff is listed and
    tax collection configurations are accurate. This ensures your “physical nexus” 
    baseline is accurate. If you believe you already have economic nexus in other states
    for which you are not collecting, consult with your accountant immediately.
 2. **Audit Your “Taxable” Flags:** Ensure your products are set to “taxable” by default,
    unless they are specific exempt items like Gift Cards (which are taxed when redeemed,
    not when purchased).
 3. **Categorize Your Products:** Don’t just list items; assign them to the correct
    product tax categories in your platform’s backend (e.g., _Apparel & Accessories
    > Clothing_ vs. _Sporting Goods_). This allows the automated tax engines to apply
    the correct state-specific exemptions.
 4. **Watch Your Thresholds:** Keep an eye on your platform’s tax settings for alerts
    regarding Economic Nexus in states where your sales are growing.

The post [Navigating the Maze: A Founder’s Guide to eCommerce Sales Tax](https://ip.ipdev2.cloud/navigating-the-maze-a-founders-guide-to-ecommerce-sales-tax/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Case Study: Migrating Legacy BLOX CMS Websites to WordPress for Carpenter Media Group

- Link: https://ip.ipdev2.cloud/case-study-migrating-legacy-blox-cms-websites-to-wordpress-for-carpenter-media-group/
- Published: 2025-11-20T10:35:13+00:00
- Author: neilharner

# Background

[Carpenter Media Group](https://www.carpentermediagroup.com/), a leading acquirer
of local newspapers across the United States, faced a significant technical challenge
after purchasing dozens of publications. Dozens of these newspapers operated websites
built on [BLOX CMS](https://www.bloxdigital.com/solutions/content/) (formerly TownNews),
a platform that exports content and media in ZIP archives using the [News Industry Text Format (NITF)](https://iptc.org/standards/nitf/)—
an XML-based standard designed specifically for organizing news content.

The News Industry Text Format (NITF) was developed in the late 1990s by the International
Press Telecommunications Council (IPTC) and the Newspaper Association of America(
NAA). NITF was designed to standardize the structure of news content and metadata
for syndication, archiving, and cross-platform distribution. While once widely adopted,
NITF has seen declining usage in favor of more modern formats like JSON and web-
native APIs. Still, it remains common in legacy systems and continues to be used
by platforms like BLOX CMS, presenting unique challenges when migrating to content
management systems like WordPress, which are not natively compatible with NITF’s
complex structure. Unfortunately, no comprehensive, off-the-shelf solution had been
created for migrating NITF content to WordPress.

# Challenges

 * Each exported ZIP file could contain tens or hundreds of thousands of articles
   and media files in XML format.
 * NITF XML structures include granular metadata (e.g., publish dates, authors, 
   keywords), which needed to be preserved in the WordPress environment.
 * Articles had to be formatted into Gutenberg-compatible posts, despite the source
   format’s complexity.
 * Media needed to be uploaded, timestamped, and associated with correct content
   entries.
 * The solution had to support [WordPress VIP](https://wpvip.com/)’s secure, enterprise-
   grade infrastructure as well as other hosting environments.

# Partnering with Inverse Paradox

WordPress VIP introduced Carpenter Media Group to Inverse Paradox, a digital agency
with deep expertise in enterprise WordPress development. As the company was considering
partners for this project, they vetted several options and their team hit it off
immediately with Inverse Paradox. Kevin Cooper, Senior Vice President & COO shares,“
They quickly understood what our needs work and efficiently built out a solution
that would work for us and within the bounds of our long partnership with WordPress
VIP. The combination of IP and WPVIP has been a rock solid one for us.”

Inverse Paradox was tasked with architecting and delivering a solution to facilitate
the bulk migration of NITF-formatted content into WordPress, including support for
multisite environments and strict enterprise-grade standards. This required the 
successful migration of a preliminary 3 websites’ content within 90-days.

# Technical Discovery

Initial research led the development team to exploring the following open-source
tools:

 * The [WordPress Publishing Importer plugin](https://github.com/netzstrategen/wordpress-publishing-importer)
   on GitHub by ​​German agency, [Netz Strategen](https://netzstrategen.com/), which
   provided early insight into working with XML formats. This was useful as a starting
   point, but it’s not actively maintained and lacks support for media handling 
   and complex metadata.
 * [David Megginso](https://en.wikipedia.org/wiki/David_Megginson)’s [NITF-to-HTML conversion modules](https://metacpan.org/author/DMEGG),
   a set of Python scripts/modules designed to convert NITF XML into HTML. This 
   focuses primarily on content transformation, not direct WordPress integration;
   however this was instrumental in understanding how to parse and render NITF content
   as usable HTML.

Although these were great sources to better understand NITF data, the BLOX CMS had
some unique nuances and slight variation which differed from whatever libraries 
they were working with. Having these references as well as a thorough review of 
the exported data, Inverse Paradox’s [Ben Martin](https://ip.ipdev2.cloud/our-story/)
led the development of a custom WordPress plugin purpose-built for NITF migration
both for Carpenter Media Group but also any other newspaper requiring a similar 
migration.

# Solution Development

The first objective was to ensure the solution would be flexible to be compatible
with most hosting platforms including WordPress VIP. The plugin provides the options
of either manually uploading the ZIPs to a specific uploads directory on the server
or to retrieve the ZIPs from an alternative server.

The plugin then decompresses all of the ZIPs on the server temporarily and runs 
an index of each file’s content. Following the assets being indexed, the plugin 
begins by walking through all of the files related to article content, creating 
the initial post objects from these files. While each article is processed, the 
article content will be scanned for any associated media files. If detected, the
related media file(s) will then be pulled into the media library. These media IDs
will then be added to the post’s meta. Once all articles and their associated media
have been processed, a new routine begins to handle any media that was not associated
with an article. Those are then added to the media library. Unfortunately, due to
the sophisticated nature of Gutenberg, the articles are imported into a Gutenberg“
Classic” block as HTML.

Some of the features include:

 * Support for WordPress multisite
 * Ability to import keywords as tags
 * Creating & assigning content categories
 * Creating data available for custom media galleries
 * Associating one or multiple authors
 * Ability to generate 301 redirects for legacy URL structures.
 * Creating custom meta fields for maintaining other data points which can then 
   be leveraged in the website’s theme

For developers, the plugin includes:

 * Cleansing of invalid or outdated markup (e.g., removal of Adobe Flash embeds).
 * Escaped tag correction and cleanup of deprecated content formats.
 * Error logging for troubleshooting malformed XML or unexpected edge cases.
 * Automatic cleanup of temporary file storage and database tables post-import with
   a single button-click.
 * Automation to recheck and requeue any failed import actions.

# Validation & Training

As part of the project scope, Inverse Paradox managed the migration of 3 websites
in order to debug the plugin including accounting for any unique edge-cases and 
validating the migration processes. Following proving the migration, training was
provided so that Carpenter Media could manage their own migrations internally with
minimum development support. This allowed for them to assign multiple individuals
to run imports so that they could quickly perform migrations and build out their
new WordPress websites.

# Known Limitations

## File Uploads

There are a few known limitations related to file uploads and data handling which
can vary by hosting provider. For example, while the official upload limit on WordPress
VIP is 2GB, Inverse Paradox was able to extend this to 5GB per upload, though it
may fall outside their terms of service. Larger exports, such as a 100GB dataset
from 2024 for Carpenter Media Group, has to be split into 5GB ZIPs for upload. Although
this is a small challenge, it can still be processed efficiently in a single run
once uploaded.

## Image Sizes

Many content management systems do not restrict file sizes or perform any server
side processing to resize images. The result is that legacy articles might have 
images which are very large. This was the case with Carpenter Media Group, “We’re
finding around mid-2010s some of the sites seem to have enormous amounts of images(
4,500 in a single month is the biggest I’ve seen yet) and some of the images are
equally enormous (20MB to 40MB jpegs). We’ve found running all the images through
a Photoshop script to resize them down to 1200 pixels or less speeds up the processing
time.” So in some cases, it might be beneficial to pre-process all of the media 
through Photoshop and recompress the exported images before uploading the ZIP of
NITF data and images to the server to further speed up the process.

## Blox CMS vs. NITF Data

Although the plugin was developed for NITF data, as previously mentioned, there 
are some unique attributes to how the data is exported from the Blox CMS which are
factored into the plugin. NITF Data exports from other sources might require further
advancement of the plugin to account for the source.

# Successful Migrations

“The Inverse Paradox team was a fantastic partner to us. Great communication and
they delivered their work on the timeline that we agreed upon at the outset. We 
had migrated NITF archives in the past both using off-the-shelf import solutions
and customized scripts to help us clean things up. All of those options were slow
and, quite frankly, pretty messy. With that experience and given the number sites
and the voluminous archives some of those sites had, we knew we needed help in architecting
a solid, scalable solution. Inverse Paradox delivered that solution. “ -Kevin Cooper,
Senior Vice President & COO

A few of the websites migrated by the Inverse Paradox team include:

 * [Bowling Green Daily News](https://bgdailynews.com/) which included over 210,000
   articles dating back to 1997
 * [The Valdosta Daily Times](https://valdostadailytimes.com/) which included over
   215,000 articles dating back to 2005.
 * [The Daily Iberian](https://thedailyiberian.com/) which included 60,000 articles
   dating back to 2011.

Since implementation, Carpenter Media Group has successfully migrated more than 
30 sites in less than 4 months independent of any agency support. A few examples
of websites successfully migrated include the [Redmond Spokesman](https://redmondspokesman.com/),
[The Meridian Star](https://meridianstar.com/), and [The News Courier](https://enewscourier.com/).

Although it can be difficult to fully benchmark the speed of the process due to 
the variability in the number of articles, media assets and their sizes, the import
process proved to be remarkably efficient, even when handling large volumes of data.
For example, importing a 3GB archive containing 435 articles and 2,000 media assets
took approximately 20 minutes on WordPress VIP. Carpenter Media was able to queue
up multiple ZIP files at a time, allowing the process to run in the background while
they continued to focus on other tasks. According to Kevin Cooper, “We were able
to import 10 to 20 years of archives in a matter of a few days in some cases. That’s
light years faster than we had been able to work those using our past methods. At
this point, we’ve imported the archives of just under three dozen news sites. That’s
terabytes of data, tens of millions of articles and media files.”

# Do you need BLOX CMS or NITF data migration to WordPress?

Inverse Paradox has partnered with Carpenter Media Group to extend this migration
solution to other newspaper publishers seeking to transition their BLOX CMS or NITF-
based content to WordPress. While the plugin is not currently available for public
distribution, licensing options and professional migration services are available
upon request. For more information, contact [Inverse Paradox](https://ip.ipdev2.cloud/our-story/contact/).

**About Inverse Paradox**

As a WordPress VIP partner, [Inverse Paradox](https://ip.ipdev2.cloud/) is a Philadelphia-
based digital agency specializing in custom WordPress and eCommerce solutions for
businesses of all sizes. Inverse Paradox blends strategic thinking with expert design
and development to deliver tailored digital experiences that drive results. With
a focus on collaboration, transparency, and long-term partnerships, the agency helps
their clients grow and thrive online.

**About Carpenter Media**

[Carpenter Media Group](https://www.carpentermediagroup.com/) is a leading community-
focused media organization dedicated to uplifting local journalism, empowering businesses,
and fostering career growth across a multitude of traditional print newspapers, 
digital news sites and affiliated magazines in more than 240 communities  in the
U.S. and Canada.

_Images_

![](https://ip.ipdev2.cloud/wp-content/uploads/2025/11/nitfimporter.png?w=640)

NITF Importer Plugin main options and import

![](https://ip.ipdev2.cloud/wp-content/uploads/2025/11/image.png?w=640)

Import Processing

![](https://ip.ipdev2.cloud/wp-content/uploads/2025/11/migrationnitf.png?w=640)

Offsite File Downloader

![Sample article layout with heading, meta, image, and content](https://ip.ipdev2.
cloud/wp-content/uploads/2025/11/image-8.png?w=492)

Sample article with headline, date/time, author, featured image, image caption, &
article

The post [Case Study: Migrating Legacy BLOX CMS Websites to WordPress for Carpenter Media Group](https://ip.ipdev2.cloud/case-study-migrating-legacy-blox-cms-websites-to-wordpress-for-carpenter-media-group/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## 2015-2025 – 2 (more!) at Inverse Paradox Celebrate 10 Years

- Link: https://ip.ipdev2.cloud/2015-2025-2-more-at-inverse-paradox-celebrate-10-years/
- Published: 2025-06-24T09:59:40+00:00
- Author: neilharner

In 2025, Inverse Paradox is celebrating the 10 year anniversaries for two of our
team: Tim and Katie! They join team members [Shawn and Sarah](https://ip.ipdev2.cloud/2021/09/2011-2021-3-at-ip-celebrate-10-years/)
who have been with IP for over 10 years. We are very grateful to have four people
with the commitment and dedication that they’ve shown!

## **Tim McGlynn – Client Support Manager & Developer**

![](https://ip.ipdev2.cloud/wp-content/uploads/2025/06/tim-1935-rt-1.png?w=380)

Tim studied Telecommunications at Penn State and worked in television post-production
and later front-end development before leading the Technical Solutions team at Inverse
Paradox. Tim was referred to IP by a mutual friend and client in the beer-world 
from IP having been the publisher of Philly Beer Scene magazine. If you have a question
about websites or music albums, Tim is absolutely the person you want to be asking!

![Headshot of Tim McGlynn](https://ip.ipdev2.cloud/wp-content/uploads/2015/06/tim-
headshot.jpg?w=640)

## **Katie Loughran – Director of Development**

![](https://ip.ipdev2.cloud/wp-content/uploads/2025/06/katie-8400-rt.png?w=380)

Katie studied Graphic Design and Photography at Penn State and joined IP while still
completing her M.S. in User Experience & Interaction Design at Thomas Jefferson 
University, as one of Neil’s students. She left briefly for another position at 
an internet marketing company; however, after some time returned to IP and quickly
advanced to the company’s Director of Development. 

![Katie Loughran](https://ip.ipdev2.cloud/wp-content/uploads/2015/06/KatieLoughran1.
jpg?w=640)

At Inverse Paradox, stories like Tim and Katie’s aren’t exceptions—they’re part 
of the culture. We’re a team that values growth, creativity, and staying power, 
where people come to do meaningful work and choose to stay for the long haul. Whether
you’re a developer, designer, strategist, or somewhere in between, you’ll find a
place here to thrive, learn, and contribute to something bigger. Considering a new
job at a digital agency? [Learn more about joining Inverse Paradox](https://ip.ipdev2.cloud/our-story/careers/).

The post [2015-2025 – 2 (more!) at Inverse Paradox Celebrate 10 Years](https://ip.ipdev2.cloud/2015-2025-2-more-at-inverse-paradox-celebrate-10-years/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).

## Beyond Compliance: Why True Accessibility is Essential for All Online

- Link: https://ip.ipdev2.cloud/beyond-compliance-why-true-accessibility-is-essential-for-all-online/
- Published: 2025-06-20T15:11:40+00:00
- Author: neilharner

In our constantly changing digital landscape, it’s easy to assume that everyone 
has equal access to information, services, and opportunities. But the reality is,
for a significant portion of the population, barriers still stand in the way. These
barriers can be physical, digital, temporary, or permanent. This is where accessibility
comes in, and why it’s not just a buzzword, but a fundamental human right and a 
cornerstone of a truly equitable society.

So…what exactly is accessibility? Accessibility is simply about making things usable
for everyone, regardless of their abilities. This includes people with:

 * **Visual impairments:** requiring screen readers, high contrast, or other alternative
   assistive technologies.
 * **Hearing impairments:** needing captions, sign language interpreters, or visual
   alerts.
 * **Motor impairments:** benefiting from voice control, switch access, or ergonomic
   designs.
 * **Cognitive impairments:** who may need simplified language, clear navigation,
   or predictable layouts.
 * And many others, including temporary disabilities and situational limitations.

### Why Should We Care About Accessibility?

There are many reasons to prioritize accessibility:

 * **It’s the Right Thing to Do:** Fundamentally, it’s about fairness and inclusion.
   Everyone deserves the chance to participate fully in society, access education,
   find employment, and enjoy the same experiences as others.
 * **It Benefits Everyone:** Think about cutouts in curbs which were originally 
   designed for wheelchair users. They now benefit parents with strollers, delivery
   drivers, and anyone pulling luggage. Similarly, captions help not only the deaf
   community but also people in noisy environments, those learning a new language,
   or even just watching videos silently. Designing for the edges often creates 
   a better experience for the mainstream.
 * **It’s a Legal Requirement:** In many countries, laws like the [Americans with Disabilities Act (ADA)](https://www.ada.gov/resources/disability-rights-guide/)
   in the US and the [Equality Act](https://www.legislation.gov.uk/ukpga/2010/15/contents)
   in the UK mandate accessibility in various sectors, from public spaces to websites.
   Non-compliance can lead to legal action and significant penalties.
 * **It Boosts Innovation:** When we consider diverse needs, it sparks creativity
   and leads to innovative solutions that can benefit a wider audience.
 * **It Makes Business Sense:** An accessible website for your business expands 
   your potential customer base. Studies have shown that companies with strong accessibility
   practices often see improved brand reputation and customer loyalty.

### How Can We Contribute to a More Accessible World?

The good news is that contributing to accessibility isn’t solely the responsibility
of experts. We all have a role to play:

 * **Educate Yourself:** Learn about different types of disabilities and the challenges
   people face. Resources like the [Web Content Accessibility Guidelines](https://www.w3.org/TR/WCAG22/)(
   WCAG) are a great starting point for digital accessibility.
 * **Advocate for Change:** Speak up when you see inaccessible design or practices.
   Encourage those around you within your workplace, school, or favorite businesses
   to prioritize accessibility. Highlighting accessibility issues can inspire individuals
   to champion the cause within their own communities.
 * **Practice Empathy:** Try to put yourself in someone else’s shoes. How would 
   you navigate a website if you couldn’t see the images? How would you understand
   a video without sound?
 * **Design with Accessibility in Mind:** If you’re creating anything, integrate
   accessibility into your process from the very beginning. Don’t treat it as an
   afterthought.
 * **Use Accessible Tools and Features:** Utilize the accessibility features built
   into your devices and software. Support companies that prioritize accessibility
   in their products.
 * **Provide Feedback:** If you encounter an accessibility barrier, politely inform
   the relevant organization. Constructive feedback is invaluable for improvement.
 * **Join the Community: **There’s a passionate community working to make the web
   accessible for everyone, and they’d love to connect with you! Even if you’re 
   not a web designer or developer, you still have a presence online and a role 
   to play in making your corner of the internet welcoming to all.

Accessibility isn’t just about compliance or ticking boxes, it’s about fostering
a culture of empathy, understanding, and inclusion.

### How Can Inverse Paradox Help You With Accessibility?

We offer an extensive set of resources to aid you in moving towards an accessible
site. You can rest assured that our team is highly knowledgeable about accessibility,
keeping pace with evolving guidelines and ongoing conversations in the field.

 * **Add a widget like [UserWay](https://userway.org/): **This solution can enhance
   the accessibility of your site for users. You can use it as a temporary measure
   until a full audit and remediation are complete or a site rebuild occurs, or 
   it can serve as a permanent addition alongside other accessibility improvements.
 * **Accessibility Audit: **We offer an accessibility audit service for your current
   website. We’ll assess its compliance with [WCAG 2.2 guidelines](https://www.w3.org/TR/WCAG22/)
   and provide you with a detailed report outlining any areas that need improvement
   and, most importantly, how to address them.
 * **Accessibility Remediation – Our Audit: **Based on the accessibility audit we
   perform, we can provide you an estimate for our team to fix each identified issue.
   You then have the flexibility to choose specific fixes, allocate a set amount
   of time for our team to work on improvements, or create a custom plan that combines
   both approaches.
 * **Accessibility Remediation – Other Audits:** Have you already had an accessibility
   audit performed by another company? We’re happy to review their findings to address
   and fix the identified issues for you.
 * **Website Rebuild: **Planning a website rebuild? We provide an accessibility 
   add-on to ensure your new site meets all standards from the very beginning. This
   gives you peace of mind, knowing your investment is built with inclusivity in
   mind during all phases of the project.
 * **Just Have Some Questions?** We’d love to discuss any accessibility questions
   or concerns you have to understand your specific needs. Shoot us a line: [hello@inverseparadox.net](https://ip.ipdev2.cloud/beyond-compliance-why-true-accessibility-is-essential-for-all-online/hello@inverseparadox.net)

The post [Beyond Compliance: Why True Accessibility is Essential for All Online](https://ip.ipdev2.cloud/beyond-compliance-why-true-accessibility-is-essential-for-all-online/)
appeared first on [Inverse Paradox](https://ip.ipdev2.cloud).
