Contact No:  +91-9625801660
  1. Home
  2. OJS Guides
  3. Publishing Setup
Publishing Setup

How to Set Up DOIs and Crossref in OJS

How to set up DOIs in OJS and register them with Crossref: getting a DOI prefix, configuring OJS 3.4/3.5 (and 3.3), choosing a suffix pattern, depositing metadata, and fixing the errors that stop DOI registration.

By Yogesh Singh Bisht Updated 11 min read
Key takeaways
  • A DOI only works once it is registered. Your organisation needs a prefix from Crossref, by joining directly or through a sponsoring organisation.
  • In OJS 3.4 and 3.5, DOIs are a core feature under Settings → Distribution → DOIs. In OJS 3.3 you use the DOI plugin plus the Crossref XML Export plugin.
  • Most failed deposits come from missing metadata (ISSN, publisher, dates, page ranges) or wrong credentials. A registered DOI must never change.

What a DOI is and why your OJS journal needs one

A DOI (Digital Object Identifier) is a permanent identifier for a piece of scholarly content, for example 10.12345/abcd1234. The part before the slash is the prefix, assigned to your organisation by a registration agency. The part after it is the suffix, which OJS generates or you choose. Anyone can turn a DOI into a link by adding https://doi.org/ in front. The DOI system then forwards the reader to the article's current address.

This matters because URLs break. Journals move domains, switch to HTTPS and change platforms. A DOI keeps working as long as the publisher updates the registered URL. That is why authors want DOIs on their articles, reference managers and citation databases rely on them, and readers trust journals that have them.

For scholarly journals, the main DOI registration agency is Crossref. OJS can also work with DataCite and mEDRA through plugins, but this guide focuses on Crossref because that is what most journals use. Setting up DOI registration in OJS has two halves: membership and a prefix outside OJS, and configuration inside OJS.

Getting a DOI prefix from Crossref

DOIs are registered by your publishing organisation (a university, society, institute or publisher), not by an individual journal. One prefix can be used for all the journals that organisation publishes. There are two routes:

Join Crossref directly

Apply through Crossref's membership page. When your application is approved, you receive your DOI prefix and the account credentials OJS will use to deposit metadata.

Join through a sponsor

Crossref sponsors represent smaller publishers and often provide administrative, technical and local-language support. You contact the sponsor directly and apply through their link. PKP itself acts as a sponsor for some eligible OJS journals.

Sponsored members have the same obligations as direct members: deposit accurate metadata, keep it up to date, display DOIs as links and link their references (more on this under best practices). Before applying, make sure the journal website is live, with its scope, editorial board and policies published. If you are still at that stage, follow our guide to starting an academic journal first.

Before you configure DOIs in OJS

Crossref deposits are built from your OJS metadata, so gaps here cause most failed deposits later. Check these first:

  • Publisher and ISSN are filled in under Settings → Journal → Masthead. OJS's Crossref plugin refuses to deposit without them. ISSNs are assigned by your national ISSN centre (see issn.org).
  • Article metadata is complete: title, every author's given and family name, publication date, and the issue's volume, number and year. If you use page numbers, enter them as a proper range such as 45-58.
  • References are collected in a separate field if you want to deposit them, which is enabled in the submission metadata settings.
  • Scheduled tasks run. Automatic deposits happen on a schedule, so if cron or the built-in task runner isn't working, nothing is deposited. See fixing OJS scheduled tasks.
  • You have decided what gets DOIs. Articles are essential. Issues are optional. DOIs for individual galleys (PDF, HTML) are rarely needed and complicate things.

DOI settings in OJS 3.4 and 3.5

From OJS 3.4, DOI management is a core feature, and the old DOI plugin is no longer needed. As journal manager, go to Settings → Distribution → DOIs and complete the Setup section:

  1. DOIs

    Tick the option that allows DOIs to be assigned to work published in this journal. This also adds a DOIs item to the left-hand menu.

  2. Items with DOIs

    Select Articles. Add Issues only if you want issue-level DOIs.

  3. DOI Prefix

    Enter the prefix you received, for example 10.12345, without a trailing slash.

  4. Automatic DOI Assignment

    Choose whether OJS assigns DOIs when a submission reaches the copyediting stage, upon publication, or never. Assigning at copyediting lets the DOI be printed in the PDF.

  5. DOI Format

    Keep Default unless you have a specific reason not to. OJS then generates a short, opaque eight-character suffix with a built-in check digit. The alternatives are entering each suffix manually or a custom pattern, which PKP doesn't recommend.

Save the section. Menu labels can vary slightly between point releases; PKP's Learning OJS documentation has screenshots for 3.5.

Connect the Crossref plugin in OJS 3.4 and 3.5

  1. Enable the Crossref Manager Plugin

    Go to Settings → Website → Plugins → Installed Plugins and enable the Crossref Manager Plugin. If it isn't listed, install it from the Plugin Gallery.

  2. Choose Crossref as the registration agency

    Back in Settings → Distribution → DOIs, open the Registration section and select Crossref.

  3. Enter the deposit details

    Depositor name (the organisation registering the DOIs) and Depositor email (Crossref sends deposit confirmations here). Then add your Crossref username and password. For a shared organisational account, use those credentials. For a personal Crossref account, enter your email address and role in the username field, in the form name@example.org/role.

  4. Automatic deposit and test mode

    Tick Enable automatic depositing once your first manual deposit has worked. Leave the Crossref test mode option off on a live journal. It sends deposits to Crossref's testing environment instead of registering real DOIs.

Watch out for browser autofill

Browsers sometimes fill the Crossref username and password fields with your OJS login. PKP's Crossref manual warns about this: if your saved OJS password overwrites the Crossref password, every deposit fails. Check the fields before saving.

Assign and deposit DOIs in OJS 3.4 and 3.5

Everything else happens on the DOIs page in the left menu, which has tabs for articles and, if enabled, issues.

  1. Assign DOIs

    Use the Needs DOI filter, tick the articles, then choose Bulk Actions → Assign DOIs. This also works for back issues published before you had a prefix.

  2. Deposit DOIs

    Filter by Unregistered, select items and choose Bulk Actions → Deposit DOIs, or use Deposit All.

  3. Follow the status

    Submitted means sent but not yet confirmed. Registered means the DOI is live. Has Error means Crossref rejected the deposit, usually because of metadata. Needs Sync means the metadata changed and should be deposited again.

Changes to titles, authors or galleys are not sent to Crossref automatically. After a correction, deposit the item again, or use Mark Submission DOIs needs sync so it is picked up.

DOI setup in OJS 3.3: DOI plugin and Crossref plugin

OJS 3.3 (and 3.1/3.2) uses two plugins: the DOI public identifier plugin creates DOIs, and the Crossref XML Export plugin registers them.

  1. Enable the DOI plugin

    Go to Settings → Website → Plugins → Installed Plugins → Public Identifier Plugins, enable DOI, then open its Settings.

  2. Configure it

    Under journal content, tick Articles (issues optional). Enter your DOI Prefix. For the suffix, choose the default patterns unless you have a good reason not to. Save.

  3. Enable the Crossref XML Export plugin

    In the same plugin list, under Import/Export Plugins, enable it. Then go to Tools → Import/Export → Crossref XML Export Plugin. Enter the depositor name and email, your Crossref username and password, and decide on automatic deposit. Leave test mode off.

  4. Assign DOIs

    For each article, open Publication → Identifiers, click Assign, then Save. Do this after scheduling the article in an issue if your suffix includes volume or issue numbers. For an already-published article, PKP's documentation says to unpublish it, assign and save the DOI, then publish again. Some 3.x versions also offer an Assign DOIs button in the DOI plugin settings for back content.

  5. Deposit

    In the Crossref plugin, open the Articles tab, tick the articles and click Deposit. Alternatively, export the XML and upload it in Crossref's own admin tool. The status column shows Not deposited, Active or Failed.

PKP's Crossref OJS Manual covers the 3.3 screens in more detail. If you are still on 3.3, upgrading to 3.5 brings the central DOI management page described above.

Choosing a DOI suffix pattern

The suffix is the decision you can't undo, so keep it simple:

  • Use the default. In 3.4/3.5 that is the opaque eight-character code. In 3.3 the default pattern combines journal initials, volume, issue and article ID, for example jmr.v5i2.123. Both are unique and need no manual work.
  • Avoid meaning in the suffix. Crossref's guidance on constructing DOIs recommends opaque suffixes. Information like the year or title belongs in the metadata, where it can be corrected.
  • Custom patterns are your responsibility. In 3.3, patterns use codes such as %j (journal initials), %v (volume), %i (issue number) and %a (article ID). If you share one prefix across several journals, or give DOIs to both issues and articles, the pattern must make every DOI unique.
  • Never switch patterns casually. Changing a pattern does not change DOIs already assigned. It only affects new ones, and a careless change can produce duplicates. Never use a "reassign DOIs" function on content whose DOIs are registered.

Test your first Crossref deposit

  1. Start with one article

    Keep automatic deposit off. Assign a DOI to one published article and deposit it manually.

  2. Read the result

    Wait for Registered (3.4/3.5) or Active (3.3). Crossref also emails a submission log to the depositor email. Check it for warnings, even on success.

  3. Resolve the DOI

    Open https://doi.org/ followed by the DOI in a private browser window. It should land on the article's abstract page, not the homepage or a PDF.

  4. Then scale up

    Deposit the rest of the issue, then back issues, and finally turn on automatic deposit.

Fixing failed DOI deposits in OJS

SymptomLikely causeFix
"A journal ISSN has not been configured" or publisher missingJournal metadata incompleteFill in publisher and ISSN under Settings → Journal → Masthead.
(3.3) "Articles are not selected for DOI assignment"DOI plugin content settingTick Articles in the DOI plugin settings.
Authentication or permission errorWrong username/password, personal account without /role, autofill, or a role without rights to the prefixRe-enter credentials carefully. Ask Crossref support to confirm the role and prefix.
Has Error / Failed with an XML messageMissing or malformed metadata, such as an incomplete page range or missing date or author nameRead the error, fix the article metadata (page ranges as 45-58), deposit again.
Stuck on SubmittedCrossref queue busy, or confirmation not yet checkedWait, then check the depositor email for the submission log.
Automatic deposit never happensScheduled tasks or jobs not runningFix cron or the task runner for your OJS version.
DOI goes to the homepage or an old addressJournal moved domain or switched to HTTPS after registrationDeposit all DOIs again so Crossref stores the new URLs.
Deposits "worked" but DOIs don't resolveTest mode was onTurn test mode off and deposit again.

If a DOI was registered earlier on another platform with different metadata or URL, contact Crossref support before depositing over it. Stuck with an error you can't decode? Our OJS technical support team regularly fixes failed Crossref deposits.

DOI best practices for OJS journals

  • Never change a registered DOI. Correct the metadata and deposit again instead. Retracted or corrected articles keep their DOI.
  • Landing page = article page. DOIs should resolve to the article's abstract (landing) page, which OJS does by default. Keep that page online permanently.
  • Display DOIs as full links, for example https://doi.org/10.12345/abcd1234, as Crossref's display guidelines require. Check that your theme shows them on article pages.
  • Link your references. Crossref members are expected to include DOIs in their reference lists where they exist. Collect references in a separate field and deposit them. In OJS 3.3 the Crossref Reference Linking plugin can add found DOIs back to reference lists.
  • Keep metadata current. Deposit again after corrections, author name changes, new galleys or a domain move.
  • Arrange long-term preservation. Crossref asks members to make efforts to archive their content. The PKP Preservation Network plugin is a common choice for OJS journals. See our list of essential OJS plugins.

Getting DOIs right from the first issue saves a great deal of clean-up later. OJS Academy can configure DOIs and the Crossref plugin, complete your journal and article metadata, test deposits and register back issues, as part of our OJS setup services. For a single failing deposit or plugin problem, OJS technical support is the quickest route.

Frequently Asked Questions

Can OJS create DOIs on its own?

OJS can generate DOI strings, but a DOI only works once it is registered with a DOI registration agency such as Crossref. For that, your publishing organisation needs a DOI prefix from the agency, either through direct membership or a sponsoring organisation. OJS then deposits the metadata for you.

Where are the DOI settings in OJS 3.4 and 3.5?

Go to Settings → Distribution → DOIs. The Setup section enables DOIs and sets the prefix, the items that get DOIs, automatic assignment and the suffix format. The Registration section connects your registration agency (for example Crossref, through the Crossref Manager plugin). Day-to-day work happens in the DOIs item in the left menu.

How do I assign a DOI to an article in OJS 3.3?

Enable and configure the DOI plugin under Settings → Website → Plugins → Public Identifier Plugins. Then open the submission, go to the Publication tab, choose Identifiers, click Assign and save. If the article is already published, PKP's documentation says to unpublish it temporarily, assign and save the DOI, then publish it again.

Can I change a DOI after it has been registered?

No. A registered DOI is permanent. You can and should update the metadata and URL attached to it by depositing again, but the DOI string itself must never change. That is why you should choose the prefix and suffix pattern carefully before your first deposit.

How long does it take for a new DOI to work?

After OJS deposits the metadata, Crossref processes it in a queue. Once the deposit shows as registered, the DOI normally resolves at https://doi.org/ shortly afterwards, but busy periods can add delays. If automatic deposit is on, OJS itself only deposits when its scheduled tasks run.

Do I need DOIs to get indexed?

DOIs are not a formal requirement for every database, but authors, readers and indexers increasingly expect them. They make articles easier to cite, link and track. They work alongside good metadata and a properly indexed website. See our guide to Google Scholar indexing for OJS.

Can OJS Academy set up DOIs and Crossref for our journal?

Yes. We configure the DOI settings and the Crossref plugin, fix journal and article metadata, test the first deposits and register back issues. We do not represent Crossref; your organisation joins Crossref directly or through a sponsor. See our OJS services.

Written by Yogesh Singh Bisht, OJS & Academic Publishing Consultant at OJS Academy.

10+ years of hands-on work with scholarly journals: OJS setup, theming, upgrades, editorial policy and indexing preparation for universities, societies and independent publishers. LinkedIn profile.

Need help configuring your journal?

From DOIs and plugins to policies and workflows, we set up OJS the way indexing databases and authors expect.

WhatsApp