Skip to main content
DoneThat

AI Adoption GuideEducationEnroll

Transfer Credit Evaluation

An LLM and rules engine maps incoming transfer transcripts to institutional equivalencies and flags edge cases for registrar review.

Education processRecruitAdmitEnrollTeachAssessCredentialGraduateAdvance

By Don, DoneThat’s AI coach · updated

A proposal is not posted credit

The usable output of an LLM plus rules engine on a transfer transcript is a proposed equivalency: the sending course, the local catalog course or rule it maps to, and cites that let a registrar or transfer-credit evaluator inspect both sides. It is not posted credit. If no institutional rule matches, that line stays empty of an equivalency. The registrar still owns the evaluation.

Name the sending course as the transcript names it: institution, term, identifier, title, units, and grade when the local rule cares about grade. Name the local target as the catalog and equivalency table name it. Attach a cite to the transcript line and a cite to the local rule (articulation row, catalog equivalency, department exception, or an explicit no-match). Those two cites are what make the proposal reviewable.

Do not invent an equivalency to look complete. A fluent match that is not in the table is a quality failure. Downstream processes that assume posted transfer credit, including course placement recommendation and automated degree audit, must not consume this draft.

SIS and CRM platforms (Ellucian, Workday, Slate, Technolutions, and peers) already hold applications, transcripts, and often articulated courses. Use them as systems of record for documents and for decisions after a human posts. The model does not author a new equivalency table.

Map each transcript line to the table

Evaluate course by course. For each line, look up sending institution and course identifier in the institutional equivalency table first. Prefer an exact identifier match. If the table is versioned by catalog year, apply the year that governs that sending course. Only then use title or cross-list aliases the table itself records (retired numbers, dual-listed numbers). Do not fuzzy-match titles against the local catalog when the table is silent.

When a row matches, emit the local course or credit bucket the table specifies, the unit treatment the rule specifies, and both cites. If the table says elective only, say elective only. If it says a named requirement is satisfied, cite that clause. If it says the course does not transfer, that is a match to a negative rule, not a no-match; return the denial with the cite.

Illustrative example: A student submits a transcript showing CHEM 121, General Chemistry I, 5 quarter credits, grade B, Fall 2023, from a known sending university. The receiving catalog lists CHEM 101, General Chemistry I, 4 semester credits. The equivalency table has a row for that sending institution, catalog years 2020 through 2025: CHEM 121 maps to CHEM 101, citing agreement X. Agreement X states the conversion and award rule for this pair. The engine returns a proposal: local CHEM 101, units as agreement X states, cite transcript CHEM 121 Fall 2023, cite table row and agreement X. If agreement X is silent on rounding, the proposal does not pick 4.00 or 3.33. It flags that rounding is unspecified and leaves the unit field for the registrar.

Do not skip lines that look like labs, repeats, or withdrawals. Apply the table to those identifiers too. A lab that the table treats as bundled with lecture must be proposed as the table bundles it, not split because the local catalog lists a separate lab number.

Flag no-match instead of guessing

If lookup returns nothing, the equivalency for that line is empty. Flag it for registrar review with the sending course intact and a reason code: unknown sending institution, identifier not in table, catalog year outside the agreement, grade below the minimum the rule requires, incomplete transcript image, or duplicate of a line already proposed.

Do not fill the gap with the nearest local course. Do not assign a general-education bucket from the course title. Do not treat prior learning assessment evaluation portfolios, exams, or military occupation mappings as transfer equivalencies unless a separate PLA posting rule applies. Transfer credit and PLA are different paths onto the record.

Empty is the quality outcome. Inventing a match so the student sees a full map creates over-award, under-award, and appeal work. The same failure happens when the model completes a partial OCR of the transcript. If the identifier is unreadable, flag unreadable. Do not guess CHEM 121 from a truncated "CHEM 12".

International, military, and non-regionally comparable credentials often have no table row. Leave them empty and route to the office that owns those evaluations. Do not apply a domestic articulation row because the title looks similar.

Do not convert units without a rule

Treating a quarter-hour as a semester-hour without a cited rule is a distinct failure from inventing a course match. A 5-quarter-hour sending course is not automatically a 4-semester-hour local course because the local course happens to be 4 hours.

Conversion belongs in policy: a published factor (for example, multiply quarter hours by two-thirds) and a statement that the factor applies to this sending course or this agreement. If the table maps identifiers but is silent on units, do not apply a default factor. Flag units: no conversion rule.

Posting local catalog hours because that is what CHEM 101 is worth can over-award relative to the sending load or under-satisfy a sequence the department measures in contact hours. Dropping hours because quarters count less is the same class of error: a policy choice presented as arithmetic.

Apply the same discipline to lecture versus lab splits, repeated attempts, academic renewal, and pass/fail grades. If the local rule does not speak, the proposal does not decide. If two table rows conflict (old agreement versus new catalog year), flag the conflict. Do not pick the row that awards more credit.

Registrar posts after cites check out

The draft never posts to the student record. Posting is what degree audit, enrollment, and later graduation requirement gap alerts read. A wrong posted equivalency is costly to reverse and can move a student into the wrong first-term schedule if someone treats the draft as placement.

The review queue is the control: the registrar or transfer-credit evaluator confirms or rejects each proposed line, resolves no-match flags, and only then posts. Rejecting a draft must not leave a partial post. Posting from a draft because it looked complete is the second major failure, after invented matches.

Keep the human decision on exceptions, departmental substitutions, credentials the table does not cover, and any proposal whose cites are incomplete. If the transcript cite cannot be opened or the catalog rule cite is a paraphrased sentence with no row id, send it back. Do not post.

Placement into English, math, or sequenced majors still depends on posted transfer credit plus separate placement rules. This evaluation must not become a course placement recommendation. When the student also claims PLA, keep the two queues separate so a no-match transfer line is not fixed by posting PLA credit under a transfer code.

After posting, the equivalency table can be updated only through the office's governance process. A one-off exception for one student is an exception on that record, not a new table row inferred by the model for the next applicant.

Is this worth automating for you?

Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other. This one is rated high effort to implement, so the baseline matters more than usual.

DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.

Measure the baseline first