LMS Integration · LTI 1.3
Connect XYZ Homework to Moodle
Set XYZ Homework up once as your administrator, then add assignments as an instructor. Students launch from Moodle and their grades pass back automatically.
Moodle
Administrator: One-time setup
Adding XYZ Homework is a one-time, site-wide job for a Moodle administrator — instructors can’t do this part themselves. Dynamic Registration is the recommended path: it fills in every URL, service and privacy setting for you, and needs nothing sent back to us.
Fastest — Dynamic Registration:
- From Moodle Go to Site administration → Plugins → Activity modules → External tool → Manage tools.
- From Moodle In the Tool URL box at the top, paste
https://www.xyzhomework.com/imathas/lti/dynreg.phpand click Add LTI Advantage. - From XYZ Homework XYZ Homework reports that registration is complete — click Done.
- From Moodle XYZ Homework now appears as Pending. Click the checkmark to make it Active. Leaving Show in activity chooser enabled lets instructors find it directly.
- From Moodle Edit the XYZ Homework tool and under Privacy set Accept grades from the tool, Share launcher’s name with tool and Share launcher’s email with tool to Always (grades and account matching depend on these — Moodle defaults the two sharing options to Never), check Force SSL, and Save changes.
Manual alternative (only if Dynamic Registration is unavailable). In Manage tools choose configure a tool manually and enter, using Moodle’s own field names:
- From Moodle Click Show more..., then tick Supports Deep Linking (Content-Item Message) and set the Content Selection URL above — this is what gives instructors the Select content button.
- From Moodle Under Services, set IMS LTI Assignment and Grade Services to Use this service for grade sync and column management, and IMS LTI Names and Role Provisioning to Use this service to retrieve members’ information as per privacy settings.
- From Moodle Under Privacy, set Share launcher’s name with tool, Share launcher’s email with tool and Accept grades from the tool to Always, and enable Force SSL. Save changes.
- From Moodle Back in Manage tools, click View configuration details on the XYZ Homework card.
- Send to XYZ Homework Email us the Platform ID and Client ID from that panel — see the callout below. The connection stays broken until we have them.
Manual setup is only half a connection. Moodle generates the Client ID itself (it’s greyed out on the form — you do not get it from us), and XYZ Homework won’t recognise your site until we register it on our side.
We only need two values. On the XYZ Homework card in Manage tools, click View configuration details and email the Platform ID and Client ID to support@xyzhomework.com. We derive your keyset, access-token and authentication URLs from the Platform ID, and the Deployment ID registers itself on your first launch — you don’t need to send either. Dynamic Registration does all of this automatically — use it if you can.
Instructor: Add your course
Add XYZ Homework assignments through Select content — each becomes its own Moodle activity with its own gradebook column. Select several (or Select All) to bring your whole course over in one trip, or use Export/Import (below) if you prefer a file.
- From Moodle Open your course and turn Edit mode on (toggle in the upper right).
- From Moodle In the section where you want your assignments, click Add an activity or resource → XYZ Homework.
- From Moodle Click Select content at the top of the activity form.
- First time only From XYZ Homework Sign in and connect your Moodle course to your XYZ Homework course (use an existing course or create a copy).
- From XYZ Homework Select the assignments you want — hold Ctrl (Windows) or Cmd (Mac) to pick several, or click Select All — then click Create Links.
- From Moodle If you selected one assignment, Moodle fills in the activity form — click Save and return to course. If you selected several, Moodle adds each as its own activity automatically. Either way, each assignment gets its own gradebook column, and grades sync back automatically.
Don’t see XYZ Homework in the chooser? Pick External tool and choose XYZ Homework under Preconfigured tool — or turn it on under More → LTI External tools → Show in activity chooser. Use Select All in the picker to bring a whole course over at once, or use Export/Import below.
Added new assignments in XYZ Homework later? Repeat the same steps and select just the new ones. Prefer a file-based import? In XYZ Homework go to Course Items → Export, then in Moodle use More → Course reuse → Restore — full steps in the Moodle export/import instructions.
Send the LTI 1.3 setup to your administrator
Connecting XYZ Homework is a one-time job for your LMS administrator. Send them the details below, then follow up so the connection gets switched on.
Copied — paste it into an email or message to your administrator.
Troubleshooting
Most launch problems are the browser or a missing setup step. Try these first, then the Moodle-specific fixes below.
Seeing an actual error message on screen? Look it up in the error-message index — it lists the exact wording, what causes it, and who can fix it.
Try these first (any LMS)
The assignment won’t load, is blank, or spins
Hard-refresh the page: Ctrl+Shift+R (Windows) or Cmd+Shift+R (Mac).
Open it in a new tab. Many browsers block logins inside an embedded frame. Use your LMS’s “open in new tab/window” option for the link.
Disable any pop-up blocker for xyzhomework.com. When the embedded frame is blocked, XYZ Homework tries to open your assignment in a new window — a pop-up blocker stops that, and you may see Popup blocked, click to open in a new window. Click it.
Why “allow cookies” is not the fix. Browsers now block the sign-in cookie inside an embedded frame by design, and Safari has no per-site setting to allow it — so that advice cannot work there. Opening in a new tab is the dependable fix, and your LMS has a setting for it — see the Moodle section below, or the full error-message index. Check how far that setting reaches: on Canvas it is set per assignment and on Brightspace per link, so items created before you changed it keep the old behaviour and need fixing individually. On Moodle and Blackboard it can be set once for the whole tool.
I’m asked to sign in every time, or it won’t connect
Always launch from inside your Moodle course — not a saved bookmark of the XYZ page.
The very first launch asks the instructor to sign in once to link the courses. If it keeps asking, open it in a new tab — embedded frames are where browsers block the sign-in cookie, and being asked repeatedly is the classic symptom.
Grades aren’t showing up in Moodle
Grades can take a few minutes to appear in Moodle after a student finishes. If a grade or grade column still doesn’t show, the connection may need a re-check — email support@xyzhomework.com and we’ll verify it and re-send the grades.
Students don’t see a “Redeem LatePass” button
LatePasses work inside Moodle: the Redeem LatePass button appears on the assignment’s opening page under the due date (and in the assignment’s More menu) whenever a pass can be used. It is hidden when the student has 0 LatePasses.
Why a new student (or Moodle’s test student) has 0: students join the XYZ roster the first time they launch from Moodle, and receive the number in Course Settings → Additional Options → Auto-assign LatePasses on course enroll (default 0). Set that before the term starts; use Roster → Manage LatePasses for anyone who already launched.
Also check: the assessment allows LatePasses and has a due date before the course end date; the student hasn’t opened it in Practice mode (which blocks LatePass use); and Moodle has no “available until” lock date earlier than the LatePass extension. A LatePass changes the due date in XYZ Homework only — any Moodle late-submission policy still applies.
Moodle-specific
I set the tool up manually and the launch errors out
Two things are usually missing, and the second one is invisible from inside Moodle:
- Initiate login URL must be
https://www.xyzhomework.com/imathas/lti/login.php. Moodle flags this field but doesn’t fill it in — if it’s blank the launch can never start. (It is not the same as the Tool URL, which is…/lti/launch.php.) - We have to register your Moodle on the XYZ Homework side. Moodle generates the Client ID itself — it isn’t issued by us, and it’s greyed out on your form for that reason. Until you send it to us along with the rest of the tool’s Details, XYZ Homework has no record of your site and every launch fails.
Open Manage tools, click View configuration details on the XYZ Homework card, and email the Platform ID and Client ID to support@xyzhomework.com. Those two are all we need — we derive the rest. We’ll add them and confirm.
Or skip all of it: delete the manual tool and use Dynamic Registration instead — paste https://www.xyzhomework.com/imathas/lti/dynreg.php into the Tool URL box in Manage tools and click Add LTI Advantage. It sets every field, service and privacy option correctly and needs nothing sent back to us.
We sent our details but launches still fail
We match your site by its Platform ID (issuer) as an exact string. https://moodle.school.edu,
https://moodle.school.edu/ (trailing slash) and http://moodle.school.edu are three
different sites as far as the match is concerned. Send the Platform ID exactly as Moodle shows it in the tool’s
Details panel — copy and paste it rather than retyping — and tell us if your Moodle’s address
has changed since the tool was registered.
XYZ Homework is stuck on “Pending” in Manage tools
Dynamic Registration created the tool but it still needs approval. Your Moodle admin clicks the checkmark next to XYZ Homework under Manage tools to set it Active.
XYZ Homework isn’t in the activity chooser
From your course page open More → LTI External tools and turn on Show in activity chooser for XYZ Homework. If it isn’t listed there either, the site-wide tool hasn’t been set up yet — use the send-to-administrator box above to email your Moodle admin everything they need.
There’s no “Select content” button / I can’t pick an assignment
Make sure the tool is Active (not Pending) and that you added it as External tool → XYZ Homework. Select content is what opens XYZ Homework to deep-link a specific assignment.
The tool opens blank or keeps asking me to sign in
Set the Launch container to New window. Either once for everyone — Site administration → Plugins → Activity modules → External tool → Manage tools, edit XYZ Homework, Show more…, Launch container — or per activity, by editing the activity and using the same Show more… setting.
Do this right after setup. Dynamic Registration configures the tool to launch embedded, without blocks, so a brand-new correctly-registered tool still lands inside the frame until you change this. Moodle itself warns that browsers may block the new window — so also allow pop-ups for xyzhomework.com.
The first launch asks the instructor to sign in once to link the courses.
Grades aren’t syncing to the Moodle gradebook
If the tool was set up manually, Assignment and Grade Services must be set to “Use this service for grade sync and column management.” Dynamic Registration sets this automatically. Add each assignment as its own activity.
Good to know
- Adding each assignment as its own link is the most reliable way to get grades back.
- Grades sync automatically — the LMS may delay displaying them.
- Due dates set in XYZ Homework are enforced by XYZ Homework. (Canvas can optionally push its due dates into XYZ.)
- Change a question or setting in XYZ Homework and it updates everywhere that assignment is launched.
- New assignments added later don’t appear in Moodle automatically — add their links the same way.