The Problem: B2B order app


Red Shed supplies industrial products to other businesses — real B2B, proper purchasing departments, customers running ERPs like JD Edwards. Every time a customer placed an order, someone on their end had to manually rekey the whole thing into JD Edwards as a purchase order. Every line item. Every product code. Every quantity. By hand. And yes, this one’s all about B2B order app.

Craig knew his customers well enough to know this was friction he could remove. He just needed someone to build the thing.

Worth mentioning: Craig isn’t just a sharp business operator. He’s also the co-inventor of Trakkit — a mechanical tracking device that’s about as far from a software demo as you can get. He’s always got his hands in something technical. So when he spotted this problem, he already had a clear idea of what the solution should look like. He just needed it built.

What I Already Knew


I’d been doing my own version of this kind of data wrangling in ChatGPT Plus — building custom GPTs to extract and reformat data into specific CSV structures. So when Craig described the problem, I already knew the export part was solvable. That’s usually the bit people assume is hard.

Base44 made it even simpler than I expected.

The app I built has:

  • Full user logins with different permission levels — Red Shed admin vs customer access
  • 2FA — because this is real business data, not a demo
  • Email alerts via Resend — this one’s worth explaining

Base44 has a download function for files but can’t send CSV attachments directly via email. Resend handles that. It’s a simple email API integration — plug it in, and suddenly the app can email a customer their order CSV the moment they place it. Belt and braces: they get the download AND the emailed attachment.

How the App Works


Customer logs in. Sees Red Shed’s product catalogue — real products, real prices. Builds their order. Hits export.

Out comes a CSV formatted exactly to the JD Edwards purchase order import template. Every column in the right place. Every field mapped correctly.

They take that file, log into JD Edwards, upload it. Purchase order created. Done.

No rekeying. No errors from misread product codes. No waiting for someone to process an emailed order.

The Testing Phase Is Where You Earn It


The build was a day. What followed was a proper back-and-forth — checking every column header, every field format against what JD Edwards actually expected on import.

Craig’s team knew their system. I knew the app. Between us we got it right.

That testing phase is not optional. Skip it and you’ll have an app that works perfectly in theory and fails on the first real upload. Do it properly and you’re done — it just works, every time.

Why We Didn’t Need an “Integration”


Software vendors love the word integration. It implies complexity, which justifies the quote.

What Craig actually needed was a file in the right format. His customers already had a manual CSV import template — they used it for other suppliers. We just made the app produce that file automatically.

Same outcome. No middleware. No API contract. No five-figure quote.

Built in a day.

Could You Build This?


Yes. If you have B2B customers who manually enter orders into any system — MYOB, NetSuite, SAP, JD Edwards, even a spreadsheet — this is buildable.

You need:

  • Your product list
  • Your customer’s import template (ask them — they’ll have one)
  • A Base44 account
  • Resend if you need CSV attachments sent via email (free tier is generous)
  • A day

The template mapping is the only fiddly bit. Get the file, map every column, build to match it exactly. Then test it with someone who actually uses the destination system — field by field, no shortcuts.

Want someone to build it with you? Let’s talk →

The Bit That Gets Me


A few Slack messages and a forwarded email. Problem that had been annoying people for years. Fixed in a jiffy.

That’s not a miracle. That’s just knowing what the tools can do — and having a client smart enough to ask the right question in the first place.

Craig was that person.


Craig also built NoisyProof — a mobile app for documenting and reporting nuisance noise incidents to council or strata. Record it, log it, map it, generate a professional report. He wanted to call it BarkOff — which, if you say it fast enough, says something else entirely. Thankfully, that domain wasn’t available.

Red Shed — expert B2B industrial suppliers.
Built with Base44 and Resend. Written by a human. Affiliate links may apply. Nuffin’s for free.

Frequently Asked Questions

Can I build a B2B order app without a developer?

Yes. Tools like Base44 let you build a fully functional order app with user logins, permission levels, 2FA, and CSV export in a day — no coding required.

How do I format a CSV for JD Edwards?

Ask your customer for the manual import template they already use. Map every column header exactly. Build your app to output that format and test field by field with someone who uses JD Edwards daily.

Can Base44 send CSV attachments via email?

Base44 has a file download function but doesn’t send CSV attachments directly via email. Use Resend — a simple email API with a generous free tier — to handle email delivery of attachments.

How long does it take to build a B2B order portal?

The core build is roughly one day. Budget additional time for testing — checking every CSV field against what the destination ERP actually expects. Don’t skip this step.

What ERPs can this approach work with?

Any ERP that accepts CSV imports — JD Edwards, NetSuite, SAP, MYOB, and most others. The key is getting the exact import template from your customer and building to match it.


Heads up — some links in this post are affiliate links. If you buy through them, I earn a small commission at no extra cost to you. Nuffin’s for free, right? This post was written by me, a human, after actual research and real tool-testing. AI helps me with the grunt work. The opinions are still mine.

Want this kind of setup for your business? Let’s talk →

Share this post

Your email address will not be published. Required fields are marked *

Subscribe to our newsletter

Keep up with the latest blog posts by staying updated. No spamming: we promise.
By clicking Sign Up you’re confirming that you agree with our Terms and Conditions.

Related posts