Course platform RFP questions

A question set for choosing an implementation partner for a self-hosted Open edX or Moodle course platform, with what a good answer contains and the answers that should stop you.

On this page

How to run a course platform RFP that surfaces real answers

A team that must choose between Open edX and Moodle, sell or deliver courses from its own infrastructure, and hand the build and operation to a partner needs answers it can compare side by side. The question set in this section is neutral to vendors: it does not favor Open edX or Moodle, and it does not favor any implementation firm. Its purpose is to turn general capability claims into written answers tied to one fixed scope, so that every bidder prices the same work and commits to the same platform version. Send the same question set to every bidder at the same time, with the same description of learner volumes, languages, payment flows, identity sources and the systems the platform must connect to. Bidders that answer from their own templates, without reference to your scope, usually have not read it.

Require every answer in writing and ask each bidder to name the exact release or support window it plans to deploy. For Open edX, that means the named release it will run, and the Open edX release notes state that only the latest named release is supported, so a bidder that proposes an older release should explain how it will be patched and when it will move. For Moodle, ask which major release and whether it is a long-term support release, because the support windows differ: the Moodle releases page lists general and security support end dates for each line, and the Moodle 5.1 and 5.3 release notes set different minimum PHP and database versions. Ask bidders to confirm those prerequisites against their own hosting plan. Treat an answer that names no version as an incomplete answer.

Score the written answers against the fixed scope, not against the most confident language. Ask each bidder to state what it will not do, which items it expects you to provide (accounts, DNS, payment merchant agreements, video storage decisions), and which items are priced as options. Ask for a named operating owner after launch, the upgrade method for the chosen release, and the backup and restore test they will run before go-live. Keep the written responses as the contract baseline, so later changes to release, scope or support go through the same written channel. Confirm any figure, timeline or support level a bidder gives against the signed scope before you rely on it.

Which questions decide Open edX or Moodle

Open edX is licensed under AGPL-3.0, so any modifications you distribute or run as a network service carry source obligations that your legal team should review before the build starts. The platform is built on Python, JavaScript and Django and is organized as a modular monolith with micro-frontends, which shapes how custom work is isolated and upgraded. Ask the partner how they will keep your changes out of core where possible and how theming and plugins will be tracked.

  • Named release strategy: Verawood is the current named release, and Open edX supports only the latest release at a time. Ask how the partner plans to move you to Willow or Xylon, whose listed dates are December 2026 and June 2027, and what regression testing each move requires.
  • Deployment method: Ask whether they will deploy with Tutor, which is the official Docker-based distribution and supports Kubernetes, or with a custom Helm or infrastructure-as-code setup. The maintainers recommend a service provider or Tutor for production, and bare-metal installs receive limited community support.
  • Dependency footprint: Confirm who operates MySQL, MongoDB, Memcached or Redis, and how multi-node caching is configured.
  • Identity integration: Ask which of OAuth2, SAML 2.0, Shibboleth or LTI they will configure, and how CAS or client certificate needs will be handled given their provisional status.
  • Analytics path: Ask how Aspects events flow into ClickHouse and Superset, and who owns that stack after launch.

Ask the partner to show a written upgrade plan for one named release move and to name the engineers who will maintain the Tutor configuration.

Questions to ask by area, with what a good answer contains

Why should we choose Open edX over Moodle for our course platform?

A strong answer ties the choice to your course model, not to a feature list. Open edX is built for structured course authoring, cohort-style delivery and a React-based learner experience, and its code is licensed under AGPL-3.0. Moodle is a general learning platform licensed under GPL-3.0, with a long history in institutional teaching and a large plugin ecosystem. Ask the partner to name the components each option needs: for Open edX, the LMS, Studio and a Tutor-based deployment; for Moodle, the PHP stack and the database it will run on. Expect a written comparison covering authoring workflow, certificates, payments and staffing. Ask who maintains the chosen release and what happens when the named release changes, since Open edX supports only its latest named release at a time.

How are ecommerce and payments added to a self-hosted course platform?

A strong answer names the enrolment-on-payment path and the payment provider before any build work starts. In Moodle, paid enrolment can use core payment gateway support or a plugin gateway, and a storefront such as WooCommerce can sit in front of it. In Open edX, payments are typically handled through an external storefront or a plugin, so the partner should show the exact integration. Ask for a written list covering tax calculation, invoicing, coupons, refunds and how enrolment is granted after a successful payment. Confirm who holds the payment provider contract and where card data is handled, because that decision sets your PCI DSS scope. Your team must supply tax rules, merchant accounts and the list of countries you sell to.

How should video be hosted for a paid course catalog?

A strong answer separates where video files are stored, how they are delivered, and who can watch them. The partner should describe the storage location, the streaming or CDN layer, access control tied to enrolment, and the fallback when a learner is in a low-bandwidth region. Ask whether video stays on your infrastructure, moves to a managed video service, or is embedded from a provider, and what each choice does to learner data and cost. Request a written estimate of storage and egress drivers based on your hours of content and expected viewers, not a generic figure. Confirm who manages transcoding, captions and the content delivery configuration after launch, and what the buyer must provide, such as source files and caption files.

How is learner analytics set up on Open edX or Moodle?

For Open edX, a strong answer describes the Aspects analytics stack: tracking logs captured through the event-routing-backends plugin as xAPI statements, stored in ClickHouse via Ralph or Vector, and presented in Superset dashboards. For Moodle, it should name the built-in reports and any reporting plugins or external warehouse it proposes. Ask which reports are delivered at launch, who defines the metrics for completion and engagement, and where the data is stored and who can query it. Confirm retention periods and access roles with your privacy and legal team before build starts. The buyer should provide the list of decisions the reports must support, such as completion for accreditation or drop-off by module.

How are named releases upgraded without breaking courses?

A strong answer starts with the release policy. For Open edX, the partner should explain that the latest named release is the only supported release, that Verawood is the current named release, and that Willow (December 2026) and Xylon (June 2027) are the planned next releases. For Moodle, it should explain that 5.3 is the long-term support release, with bug fixes until October 4, 2027 and security fixes until October 1, 2029, and state the minimum version your site must run before upgrading (Moodle 4.4 or later for 5.3). Ask for a documented upgrade runbook, a staging environment, a test plan that covers course content and certificates, and a rollback procedure. Confirm which party pays for each upgrade, and whether upgrades are included in a retainer or quoted per release.

Who operates the course platform after launch, and what does that cost?

A strong answer lists the operating roles with names: platform operations for hosting, databases and backups, application support for course and theme issues, security patching, and content or course administration done by your team. Ask the partner to state which roles it covers under a retainer and which stay with you. Confirm the hosting location, monitoring, backup schedule, incident response hours and the process for security patches. Recurring costs typically include infrastructure, video delivery, licenses for any plugins, support retainers and upgrade work; ask for each as a separate line in the quote. Clarify whether you can operate the platform yourself later, and what documentation, runbooks and access handover the partner will deliver at the end of the engagement.

Can DeployOpen run Open edX or Moodle inside our own cloud or data center?

Yes. DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure, including cloud accounts, data centers and air-gapped networks. Most engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts. Ask DeployOpen to show which parts of the platform it will build, which it will configure, and which it will leave to your team. Ongoing support, upgrades and continuous testing are available as retainers. DeployOpen does not publish a price list, so ask for a quote that follows from the written scope. DeployOpen prepares systems and evidence for compliance assessments, but independent auditors and certification bodies issue any audit report.

What security testing should happen before a course platform launch?

A strong answer covers the application, its APIs, the infrastructure and the integrations. For a course platform, that means testing the learner login flow, the payment handoff, enrolment and certificate endpoints, and access controls for paid content and video. Ask whether the partner will run application and API testing, cloud and infrastructure testing, and whether it includes any AI features your platform enables. Confirm the scope in writing, the test environment, how findings are reported and retested, and who signs off before go-live. The buyer should provide the list of integrations, identity providers and payment flows that are in scope, and a named owner to accept fixes.

How the partner should answer on payments and video hosting

Payments and video hosting deserve their own questions in an RFP because each one changes a different part of the risk and cost picture. Payment handling decides your PCI DSS scope, and that decision is made in the checkout design, not in the course catalog. Ask the partner which payment gateway they would connect, whether card data ever touches your servers, and whether the gateway hosts the card fields in an iframe or redirect so that your environment never receives raw card numbers. Ask them to describe how the Open edX or Moodle enrolment flow hands off to that gateway, which plugin or integration performs the handoff, and who maintains it through each platform upgrade. Confirm the answers against the gateway's own documentation and your acquiring bank's requirements, not against the partner's summary.

Tax and invoicing are the next decisions, and they are often assigned to nobody. Ask who configures tax rates, who decides which tax rules apply to each buyer location, who issues invoices and receipts, and where those records are stored and for how long. Ask whether refunds, coupons and partial enrolments flow through the same records as the original sale. If you sell through a storefront such as WooCommerce, ask how orders are synchronized with the learning platform and what happens when the two disagree. Also confirm which party is accountable for each tax and invoicing setting in writing, because a partner can build the integration without owning the tax outcome.

Video hosting is a separate cost and experience decision. Ask whether video will sit in your own cloud account, on a content delivery network the partner configures, or with a third-party video service that the learning platform embeds. For each option, ask for the expected bandwidth model, who pays for egress and storage, how access is restricted to enrolled learners, and how playback is measured during a cohort launch. Ask how the partner would test video delivery from the regions your learners use before go-live. Treat every answer as a claim to verify against the chosen provider's pricing and terms and your own network tests.

Answers that should worry you before you shortlist a partner

A partner's answers on release choice, support windows, operations and compliance claims show quickly whether they can run a course platform after launch. Each red flag below is easy to hear in a sales call and expensive to discover in production.

Vague on the named release

A partner who cannot name the exact release they will deploy, such as Open edX Verawood or Moodle 5.3, is not yet working from a plan. Open edX supports only the latest named release, so the release choice determines the upgrade path, the database versions and the support window. Ask which release, why it was chosen, and what happens when the next named release ships. Ask for the written upgrade plan before scope is signed.

Support promised for unsupported versions

Any promise to keep an older Moodle or Open edX build running with full security cover should be tested. Moodle publishes separate general, security and long-term support windows for each release, and Open edX only supports the latest named release. Ask which version each support commitment covers, who patches it, and what the partner does when a version leaves support. Request the written support end date for every component in the proposal.

No clear owner after launch

A partner who sells the build but cannot say who patches, backs up, monitors and answers incidents once the platform is live leaves the client with an unfunded platform. Course platforms need routine operations for the LMS, database, cache, video delivery and plugins. Ask for a named run model, the response hours covered, who holds administrator access, and what the handover documentation contains. Ask whether support and upgrades are fixed-scope projects or ongoing retainers.

Payments added without PCI DSS scope analysis

A partner who connects a storefront or payment gateway without mapping where card data flows has not considered PCI DSS scope. Redirect-based checkout and direct card capture produce very different obligations for the hosting environment. Ask which payment flow is proposed, which systems store, process or transmit cardholder data, and who signs the responsibility matrix with the payment provider. Request the scope analysis before the storefront is designed.

Certification or audit claims from the partner

Be wary of partners who say the platform is certified, audited or attested as part of their offer. DeployOpen prepares systems, controls and evidence for assessments, but independent auditors and certification bodies issue reports and attestations. A partner who promises a certificate, a SOC report or a compliance seal on their own authority is overstating their role. Ask which assessor will review the environment, what evidence the partner will hand over, and who pays for the assessment.

Accessibility promised without a test plan

A partner who says the course site is accessible without naming a standard, a test method or a fix process has not planned the work. Public bodies face accessibility duties under the ADA Title II rule, which requires WCAG 2.1 Level AA for state and local government web content. Ask how the partner tests themes, course content and video players, who fixes defects, and how results are recorded for your compliance file.

How to score partner responses

This grid scores written partner answers against the same question set, with one row per criterion and a note on what a strong answer contains. Use it to compare proposals side by side and to turn every gap into a written condition of award before a contract is signed.

CriterionWhat a strong answer showsWeak signal to watch for
Platform rationaleNames Open edX or Moodle, ties the choice to course model, learner volume and authoring needs, and states what was rejected and whyRecommends a platform without reference to your course model, or treats the choice as a default
Release and upgrade planNames the current release line, states the support window, and describes a dated upgrade path with test environments and rollback stepsNo named release, no support window, or upgrades described as a future project with no owner
Payments and tax handlingExplains the gateway or storefront chosen, who holds payment data, how tax and invoicing are produced, and what this does to PCI DSS scopePayment handling described only as a plugin, with no statement of scope or responsibility
Video and analytics designStates where video is hosted, how learner analytics are captured and stored, and who can access learner data and dashboardsVideo or analytics left as a later phase, or data flows that send learner records to third-party services without disclosure
Identity integrationLists the identity protocols to be connected (for example SAML 2.0, OAuth 2, LTI), who owns the identity provider, and how accounts are provisioned and removedSingle sign-on mentioned without protocol, owner or account lifecycle
Operating model after launchDefines who patches, monitors, backs up and supports the platform, with response roles and handover stepsSupport described as available on request, with no named roles, escalation path or backup plan
Fixed-scope commercial clarityGives written scope, deliverables, acceptance criteria and the assumptions behind the timeline and quoteOpen-ended time and materials, or a quote that cannot be traced to listed deliverables

Steps to run the evaluation after the questions go out

This sequence turns written answers into a comparable shortlist and a signed support model. Each step produces a document or check you can compare across bidders before any award decision.

  1. Issue the question set with a fixed response date

    Send the same question set to every bidder at the same time, with one written response date for all of them. Agree the exact date with each bidder rather than copying a fixed timeline from this page. Ask each bidder to answer in a fixed format, naming the Open edX or Moodle release they propose, the hosting model and who on their team does the work. The step is done when every bidder has confirmed receipt and the date in writing.

  2. Request a written scope and deliverables

    Ask each bidder to convert its answers into a written scope with named deliverables, acceptance criteria and exclusions. Cover the platform build, theming, payments, video hosting, analytics, migration and handover. Ask which items are fixed scope and which would be billed as change requests. The step is done when you hold one scope document per bidder that you can line up item by item.

  3. Hold a technical session on the chosen release

    Schedule a working session with each shortlisted bidder's engineers, not only its sales lead. Walk through the named release they proposed, including its supported status and upgrade path, and test how they would connect identity, payments and video. Ask them to show a running instance or a reference environment if they have one. The step is done when your technical reviewers have written down the open risks each bidder accepted or disputed.

  4. Verify references you can contact

    Ask each bidder for references of comparable course platforms that you can contact directly. Confirm the platform type, the number of courses and the hosting model with each reference, and ask what the bidder did after launch. Where a reference cannot be contacted, record that as a gap. The step is done when you have spoken with each reference or noted why it could not be verified.

  5. Agree the support model before award

    Before choosing a partner, agree in writing who patches the platform, who handles incidents, how security updates are applied and who upgrades to the next named release. Confirm which parts are included in the fixed scope and which are offered as an ongoing retainer. Ask for the response expectations in writing. The step is done when the support model is attached to the proposed contract as a signed schedule.

  6. Score bidders against the same criteria

    Score every bidder on the same criteria, weighted before you see prices. Include platform fit, the release and upgrade plan, payments and tax handling, video and analytics design, references and the support model. Record the reason behind each score so an auditor or internal reviewer can follow the decision. The step is done when you have a scored comparison and a written award recommendation.

  7. Compare quotes against the written scope

    Open the price proposals only after scoring is complete, and compare them only against the written scope for each bidder. Check that every quote states one-time costs separately from recurring hosting, support and upgrade costs. Ask each bidder to explain what would raise the price, such as extra integrations or higher learner volumes. The step is done when the quotes are normalized to the same scope and any gaps are closed in writing.

What buyers ask before hiring a partner for a course platform

What drives the cost of a self-hosted course platform implementation?

The written scope drives the cost more than any single product choice. The main components are the discovery and architecture work, the installation and hosting setup in your own cloud or data center, theming and customization, integrations with payments, identity and student systems, data migration, security hardening, testing, and handover documentation. Hosting and third-party services such as video delivery, email and payment gateway fees are usually billed by their providers and recur. Ask any partner to separate one-time implementation fees from recurring hosting, support and upgrade costs, and to state which third-party charges are excluded. DeployOpen does not publish a price list. A quote follows from the written scope.

How long does a fixed-scope course platform implementation take?

The duration depends on the scope agreed in writing before work starts, so there is no standard timeline to quote here. The factors that most often extend it are the number of integrations, the number of identity providers, the amount of theming, the volume of content and learner data to migrate, the number of payment and tax rules, and the approvals needed for hosting and security review. Ask for a phased plan with named milestones, the decisions the buyer must make at each one, and the acceptance tests that close each phase. Also ask how the partner handles scope changes after signature.

What must our team supply before a partner can start?

A partner needs a clear picture of your environment and your decisions before design begins. Typically this includes a named business owner, access to the cloud account or data center where the platform will run, the identity provider details and metadata for single sign-on, the payment and tax requirements, the branding assets, the list of courses and content formats to migrate, and the reporting questions your leadership needs answered. Security and compliance contacts should review hosting, data location and logging decisions early. Confirm with the partner which of these items are included in the fixed scope and which the buyer must provide.

Can our own team run the course platform after launch?

Yes, if the team has the skills and the time, but the workload is real and should be sized before launch. Open edX and Moodle both need routine work: applying security fixes, upgrading to supported releases, managing databases and caches, monitoring, backups, restore tests, plugin compatibility, and support for instructors and learners. Open edX states that only the latest named release is supported, so the upgrade path is a standing obligation. Moodle publishes support windows for each release, which set the upgrade timing. Ask a partner whether it offers handover training, runbooks, a support retainer, or both, and what the buyer's team would need to operate the platform alone.

Which Moodle version should we plan to run, and how long is it supported?

Moodle 5.3 is the current long-term support release, released on 5 October 2026, with general support until 4 October 2027 and security support until 1 October 2029. Moodle 4.5 is a long-term support release from 7 October 2024 with security support until 4 October 2027. Moodle 5.1 has general support until 5 October 2026 and security support until 19 April 2027. Moodle 5.1 requires PHP 8.2 or later and PostgreSQL 15, MySQL 8.4, MariaDB 10.11 or SQL Server 2017 or later, and sites must be on Moodle 4.2.3 or later to upgrade. Moodle 5.3 requires PHP 8.3 or later and sites must run Moodle 4.4 or later to upgrade. Confirm your current version and database engine before the partner sizes the upgrade.

How does an Open edX platform stay on a supported release?

Open edX supports only the latest named release, and it cannot support more than one release at a time. Verawood is the current named release, published on 30 July 2026. The next releases, Willow and Xylon, are listed for December 2026 and June 2027. This means a production platform must move to each new named release within the period the buyer agrees to in its operating plan. Ask the partner how it will test each upgrade against your themes, plugins and integrations, how it will schedule downtime, and who approves the change. Confirm the upgrade method and any retainer terms in writing.

Do you publish a price list for course platform work, and what happens after we send a scope?

DeployOpen does not publish a price list. A quote follows from a written scope that sets out the deliverables, the assumptions, the buyer responsibilities, the exclusions and the timeline. After you share your requirements, the next step is a scoping conversation and a written proposal you can compare with other offers. Ask every bidder to quote on the same written scope, to list recurring costs separately, and to state which third-party fees, such as video hosting or payment processing, sit outside its quote. Confirm the support and upgrade options as separate line items.

How DeployOpen scopes, delivers and supports course platform work

DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside your own infrastructure. For course platform RFP questions, that means turning each question into a written scope before any build work starts, so answers about Open edX or Moodle, payments, video and analytics are settled on paper.

How we scope

  • Written scope that records the chosen platform, the reason for it, and the named release you will run
  • Agreed list of ecommerce, payment, tax and invoicing integrations, with the provider responsibilities for each
  • Confirmed video hosting, analytics and identity sources, plus the upgrade path for the named release

How we build

  • Installation in your cloud accounts, data center or air-gapped network, using the deployment method agreed in scope
  • Theming, plugin configuration and integrations built to the requirements answered during the RFP
  • Security testing of the learner-facing site, identity flows and payment handoff before launch

How we hand over

  • Documentation of the hosting setup, configuration, integrations and analytics pipeline, delivered to your team
  • Runbooks for backups, restores, release upgrades and the operating tasks you choose to keep in-house
  • Knowledge transfer sessions so your administrators can answer questions about the platform after launch

How we support

  • Ongoing support, upgrades and continuous testing are available as a retainer after handover
  • Upgrade planning tied to each named release, including checks on its supported versions and database requirements
  • Support scope confirmed in writing, so you know who responds to incidents and on what terms

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.