diff --git a/stripe_to_invoice/app/landing/page.tsx b/stripe_to_invoice/app/landing/page.tsx new file mode 100644 index 0000000..04b3091 --- /dev/null +++ b/stripe_to_invoice/app/landing/page.tsx @@ -0,0 +1,125 @@ +// app/page.tsx + +export default function Home() { + return ( +
+ + {/* Hero */} +
+

+ Stripe → Xero, done properly +

+

+ Automatically turn Stripe payments into paid Xero invoices — + with VAT correctness and accountant sign-off in mind. +

+

+ No journals. No spreadsheets. No month-end fixing. +

+
+ + {/* Who it's for */} +
+

Who this is for

+ +

+ If you rely on usage billing or proration, this is not a fit. +

+
+ + {/* Problem */} +
+

The problem

+

+ Stripe is excellent at taking payments. + Xero is required for accounting and VAT. +

+

+ The gap between them is usually filled with manual journals, + spreadsheets, and “we’ll fix it at month-end”. +

+

+ That works — until it doesn’t. +

+
+ + {/* Solution */} +
+

The solution

+

+ This system makes Xero the invoice-of-record and treats Stripe + purely as payment execution. +

+

+ When a Stripe payment succeeds, a matching invoice appears in Xero + and is automatically marked as paid. +

+

+ Refunds become credit notes. Fees are handled separately. + Everything is explainable. +

+
+ + {/* How it works */} +
+

How it works

+
    +
  1. Connect Stripe
  2. +
  3. Connect Xero
  4. +
  5. A real payment is made
  6. +
  7. An invoice appears in Xero as paid
  8. +
  9. Month-end reconciliation just works
  10. +
+
+ + {/* Why it's different */} +
+

Why this is different

+ +

+ This is a financial control, not a data sync. +

+
+ + {/* Pricing */} +
+

Pricing

+

+ £200 per month. +

+

+ Unlimited invoices. No per-transaction fees. +

+

+ Costs less than fixing Stripe in Xero manually. +

+
+ + {/* CTA */} +
+

+ If Stripe and Xero already match perfectly for you, + you don’t need this. +

+

+ If someone fixes them every month, you probably do. +

+

+ This page is intentionally simple. The proof is your next payment. +

+
+ +
+ ) +} diff --git a/stripe_to_invoice/app/marketing/page.tsx b/stripe_to_invoice/app/marketing/page.tsx new file mode 100644 index 0000000..468cd86 --- /dev/null +++ b/stripe_to_invoice/app/marketing/page.tsx @@ -0,0 +1,170 @@ +// app/checklist/page.tsx + +export default function GoToMarketChecklist() { + return ( +
+ + {/* Header */} +
+

+ Go-to-Market Checklist (Post-MVP) +

+

+ A step-by-step execution checklist to find the right customers, + sell with certainty, and avoid wasted effort. +

+
+ + {/* ICP */} +
+

1. Confirm the target customer (non-negotiable)

+ +

+ If any of these are false, do not sell to them. +

+
+ + {/* Problem Validation */} +
+

2. Validate pain before pitching

+ +

+ No visible pain = no sale. +

+
+ + {/* Channels */} +
+

3. Choose acquisition channel (in order)

+ +
+ +
+

A. Accountants & bookkeepers (primary)

+
    +
  • UK-based Xero partners
  • +
  • Bookkeepers handling Stripe clients
  • +
  • Fractional CFOs
  • +
+

+ Pitch: “Stripe payments → accountant-approved Xero invoices. Automatically.” +

+
+ +
+

B. Reddit & communities (problem-aware)

+
    +
  • Search Stripe + Xero reconciliation threads
  • +
  • Explain why the problem exists
  • +
  • Describe the accounting-first solution
  • +
  • Let people DM you
  • +
+
+ +
+

C. Targeted founder outbound

+
    +
  • UK agencies
  • +
  • B2B SaaS with annual or fixed billing
  • +
  • Founder still involved in finance
  • +
+
+ +
+
+ + {/* Sales Execution */} +
+

4. Close with outcome, not features

+ +

+ If they want a free trial, they are not the customer. +

+
+ + {/* Delivery */} +
+

5. Deliver proof immediately

+ +

+ The product is the outcome. +

+
+ + {/* Objections */} +
+

6. Capture objections and edge cases

+ +
+ + {/* Narrow */} +
+

7. Narrow the ICP aggressively

+ +
+ + {/* Scale */} +
+

8. Scale only what already works

+ +
+ + {/* Scoreboard */} +
+

9. Weekly scoreboard

+ +
+ + {/* Close */} +
+

+ If this business fails, it will not be because the software didn’t work. + It will be because the wrong customers were targeted or certainty wasn’t proven. +

+
+ +
+ ) +}