No. Learners buy a course like any product and sign in with their normal
Shopify customer account. Their courses live at /apps/courses on
your storefront, wrapped in your theme.
SCORM 1.2 and 2004 — packages exported from Articulate Storyline, Rise 360, iSpring and similar tools. Upload the zip on any lesson (Gold plan or higher); it is processed and hosted for you on our CDN.
When a learner completes every lesson and passes every graded quiz, a PDF certificate is generated using your store-wide design (background, fonts, positions, awarding-body logos — all editable in the Certificate designer). Every certificate has an ID and a QR code that resolves to a public verification page. Validity defaults to 12 months per course and is configurable, with automatic reminder emails before expiry.
On the Platinum plan you can add "team pack" variants (e.g. 10 seats) to
any course. A business buys the pack, and the buyer automatically becomes a
team manager: /apps/courses/team gives them seat management,
invites, a self-registration link, groups, live compliance status for every
employee, reminder nudges, a document vault and a one-scan QR audit page.
Yes. Each language is its own course and product (use Duplicate as translation in the course editor to copy a course — quizzes included — then translate the content), linked together so learners see "Also available in…" on the course page. By default, buying any language unlocks all of its translations — learners switch freely and are enrolled automatically. If you want each language sold separately, enable "Do not auto enrol to all available translations of the same course" in Settings → Course pages. Translate the learner portal's buttons and messages in Settings → Text & translations, and write per-language email templates in Settings → Email templates. Learners get their language automatically from their checkout language or browser, and can switch with the 🌐 selector in the portal. Full walkthrough in the guide.
Yes. Ask Courses Plus support (support@architechpro.com) for an API access token for your store, then in Aero go to Settings → Export & import → Import from Courses Plus, paste the token and hit Import all. Every course, section, lesson and quiz comes across (embedded videos keep playing from their original URLs), lands as a draft, and reconnects automatically to the same Shopify product — review and publish each one when you're happy. SCORM packages aren't part of their export; upload those directly in the Aero course editor.
Yes — on Platinum. Mark any team as a reseller on the Teams page and they get an API token: their platform lists your catalog, sends their learners into Aero's hosted course player with one call, and reads progress back. They prepay seats at your volume tiers, go pay-as-you-go at your per-enrollment price, or mix both — the Statement button on each reseller shows exactly what to invoice each month. Certificates stay off for reseller learners unless you enable them (then they carry an "In partnership with" line with the partner's logo). Full details in the guide and the Partner API reference.
A membership sells recurring access to a course menu — your whole catalog or a set you pick. Members enroll themselves, free, from their learner portal, within limits you set per membership (per-month and/or active-at-a-time). Nothing is auto-enrolled and new courses never trigger emails to members — you announce content your way. Individual courses can also carry a subscription price alongside the one-time price, and any course can be excluded from all-catalog memberships with one checkbox. Learners manage everything from their portal: auto-renewal on/off, cancel, update payment. When a subscription lapses, access runs to the end of the paid period; progress and earned certificates are never lost. Full details in the guide.
Some themes (including Horizon) don't render subscription choices on their own. Add our Purchase options block: theme editor → product template → Add block → Apps → Purchase options, placed near your Buy buttons. While you're there, the Course syllabus block renders the module and lesson outline automatically on every course page.
Yes — Platinum stores can enter their own SMTP details in Settings so all learner emails come from your domain. Other plans send via our infrastructure.
Selling stops immediately and Shopify triggers our data-erasure flow. If you reinstall, previously issued certificates remain verifiable.
Learners always have their portal at /apps/courses — linking it
from the account area is a one-time store tweak. If your store uses
classic customer accounts: Online Store → Themes → Edit code →
open templates/customers/account.liquid (or the account section)
and add:
<a href="/apps/courses">My courses</a>If your store uses new customer accounts, custom links
aren't editable there yet — instead add the link to your store's main or
footer navigation (Online Store → Navigation → Add menu item →
/apps/courses).
Yes — on the Order status page. Go to Settings → Checkout → Order status page → Additional scripts, and paste:
{% raw %}{% assign aero_team = false %}{% assign aero_single = false %}
{% for line in checkout.line_items %}
{% if line.quantity >= 10 or line.variant.title contains 'seats' %}
{% assign aero_team = true %}
{% else %}
{% assign aero_single = true %}
{% endif %}
{% endfor %}
{% if aero_team or aero_single %}
<script>
(function () {
var href = {% if aero_team %}"/apps/courses/team"{% else %}"/apps/courses"{% endif %};
var label = {% if aero_team %}"View dashboard"{% else %}"View my courses"{% endif %};
var cont = document.querySelector(".step__footer__continue-btn");
var btn = document.createElement("a");
btn.href = href;
btn.textContent = label;
btn.className = cont ? cont.className : "btn";
if (cont) { cont.parentNode.replaceChild(btn, cont); }
else { document.querySelector(".main__content, main").prepend(btn); }
})();
</script>
{% endif %}{% endraw %}Adjust the 10 to match your team-license quantity threshold
(Aero admin → Settings → Business purchases). Note: stores migrated to
Shopify's checkout-extensibility Thank-you page no longer run additional
scripts on the thank-you step — the button then appears on the Order status
page the customer lands on from their confirmation email.
Open the Aero admin — the plan chip in the header shows Manage plan. It opens Shopify's plan picker where you can move to any lower plan (or cancel). Shopify prorates the charge; features gate to the new plan immediately, but your data is never deleted — upgrade again and everything is exactly where you left it.
Email support@aeroapp.org with your store domain and a short description (screenshots help). Include the course or learner affected and we'll investigate the same day.