What it means
The EPUB may contain metadata, chapters, and images, but the OPF package file does not point to the identifier that represents the publication. Validators need that link so the package can consistently identify the book.
EPUB error guide
How to understand the OPF_048 package missing unique-identifier error, what to check in EPUB metadata, and when the identifier can be repaired safely.
Direct answer
Use this summary before the detailed guide. Most KDP, Kindle Previewer, and EPUBCheck messages still need the affected file path inside the EPUB before you edit anything.
The EPUB may contain metadata, chapters, and images, but the OPF package file does not point to the identifier that represents the publication. Validators need that link so the package can consistently identify the book.
EPUB Fixer can repair this when there is one clear dc:identifier that should be used as the package identifier, such as a single UUID-style identifier or a single existing metadata identifier created by the export tool. The repair should add the package unique-identifier attribute and point it to the matching dc:identifier id.
Open content.opf or package.opf and find the opening package tag near the top of the file.
The tool should not choose between conflicting ISBN, UUID, retailer, draft, or platform identifiers. If the metadata contains several plausible identifiers, the correct value is an editorial or publishing decision, not a safe automatic repair.
OPF_048: Package tag is missing its required unique-identifier attribute and value.
EPUBCheck, Kindle Previewer, or KDP reads the OPF package file and finds that the package element does not declare which metadata identifier should be treated as the book's unique identifier.
Plain English
The EPUB may contain metadata, chapters, and images, but the OPF package file does not point to the identifier that represents the publication. Validators need that link so the package can consistently identify the book.
This can happen after manual OPF edits, metadata cleanup, conversion from an older format, or an export process that creates dc:identifier elements but omits the package unique-identifier attribute. It can also appear when a tool strips metadata attributes while preserving the visible book content.
User checklist
Work through the file path, the real EPUB contents, and the add-or-remove decision in order. Stop when the next step would require guessing what the author meant.
Validator context
The OPF package file defines the book metadata, file inventory, reading order, and navigation wiring that validators inspect before a reading system can process the book reliably.
EPUBCheck evaluates EPUB 2 and EPUB 3 publications against official EPUB specifications and reports structure, package, markup, and reference problems.
Repairability
EPUB Fixer can repair this when there is one clear dc:identifier that should be used as the package identifier, such as a single UUID-style identifier or a single existing metadata identifier created by the export tool. The repair should add the package unique-identifier attribute and point it to the matching dc:identifier id.
The tool should not choose between conflicting ISBN, UUID, retailer, draft, or platform identifiers. If the metadata contains several plausible identifiers, the correct value is an editorial or publishing decision, not a safe automatic repair.
Before: the OPF package element has version="3.0" but no unique-identifier attribute, while metadata contains <dc:identifier id="pub-id">urn:uuid:...</dc:identifier>. After: the package element points unique-identifier="pub-id" only if that is the single clear publication identifier.
Next step
The same error code can come from different files and different causes. Uploading the EPUB lets the report show the affected path and whether the fix is safe to make automatically.
Upload EPUB to scanFAQ
It means the OPF package element is missing the required unique-identifier attribute. That attribute tells validators which dc:identifier metadata entry identifies the publication.
OPF_048 means the package element does not declare a unique-identifier value. OPF_030 means the package declares one, but the named identifier id cannot be found in the metadata.
Only when the EPUB contains one clear dc:identifier that should be used. If there are several plausible identifiers, the tool should not choose one automatically.
Yes. KDP and Kindle Previewer can reject an EPUB when the OPF package metadata is incomplete, even if the chapters display in a local reading app.
Use the identifier that matches your publishing workflow. If the EPUB already has a single valid UUID or ISBN entry, it may be safe to reference it; if several identifiers exist, confirm the intended one before editing.