ONIX Field Requirements
This document lists every ONIX 3.0 element that Publica.la validates when processing an intake. Use it as a checklist before sending files to ensure fast, error-free ingestion.
It complements the high-level ONIX Intake overview and the step-by-step guide for creating a new intake.
Scope
Focus on mandatory or strongly recommended data for marketplace ingestion. Optional ONIX data (e.g. reviews, awards) is out of scope.
Core Metadata
Author
| ONIX path | Allowed ContributorRole | Notes |
|---|---|---|
DescriptiveDetail.Contributor | A01 | Multiple authors allowed. Names are concatenated in the order received. |
Narrator (Audiobooks)
| ONIX path | Allowed ContributorRole |
|---|---|
DescriptiveDetail.Contributor | E03, E07 |
Title
| ONIX path | Required TitleType | Max length |
|---|---|---|
DescriptiveDetail.TitleDetail | 01 | 255 characters |
Description / Synopsis
| ONIX path | Validation rules |
|---|---|
CollateralDetail.TextContent | ContentAudience 00 or 03; TextType 02 or 03; no Territory; textformat 02 or 06 |
External ID (ISBN / GTIN)
| ONIX path | Allowed ProductIDType |
|---|---|
ProductIdentifier | 15 (ISBN-13) or 03 (GTIN) |
Identifiers & Classification
Language
We accept the following ONIX LanguageCode values. The platform converts them to the ISO 639-1 codes shown in the right column.
| ONIX | PLA |
|---|---|
| eng | en |
| ita | it |
| por | pt |
| spa | es |
| fre / fra | fr |
| chi / zho | zh |
| jpn | ja |
| ger | de |
| cat | ca |
| gsw | de |
| pol | pl |
| glg | gl |
| other | undefined (file will ingest but appear with an "Undefined" language flag) |
BISAC
| ONIX path | Required SubjectSchemeIdentifier |
|---|---|
DescriptiveDetail.Subject | 10 |
Up to four BISAC codes are stored. The first code flagged as MainSubject gets top priority. |
Keywords
| ONIX path | Required SubjectSchemeIdentifier |
|---|---|
DescriptiveDetail.Subject | 20 |
Keywords are split on , or ;. |
Pricing & Availability
Prices
| ONIX path | Required PriceType | Accepted currencies |
|---|---|---|
ProductSupply.SupplyDetail.Price | 01 (RRP excl. tax) | USD, BRL, ARS, CLP, PEN, UYU, COP, MXN, BOB, EUR, ALL, AMD, AZN, BYN, BAM, BGN, CZK, DKK, GEL, HUF, ISK, MDL, MKD, NOK, PLN, RON, RUB, RSD, SEK, CHF, TRY, UAH, GBP |
- Minimum amounts are validated per currency. A
PriceAmountof 0 makes the product free. - Only prices scoped to the
WORLDterritory are considered.
Publishing Status
The latest ONIX value fully overrides previous ones.
| ONIX code | Internal status |
|---|---|
| 00 | unspecified |
| 01 | cancelled |
| 02 | forthcoming |
| 03 | postponed-indefinitely |
| 04 | active (on sale) |
| 05 – 06 | withdrawn-from-sale |
| 07 | out-of-print |
| 08 | inactive |
| 09 | unknown |
| 10 | remaindered |
| 11 | withdrawn-from-sale |
| 12 | recalled |
| 13 | active-but-not-on-sale |
| 15 | recalled |
| 16 – 17 | withdrawn-from-sale |
Code 04 enables sales only when:
- The
SalesOutletfield contains "Marketplace" (case-insensitive) OR the "Force Show marketplace" flag is enabled in the intake configuration
Codes in the withdrawn group remove products from sale.
Sales Rights
PublishingDetail.SalesRights must include:
SalesRightsType01or02Territory.RegionsIncluded=WORLD
IfWORLDis not included, list explicitCountriesIncluded.
File Type
ProductForm values are mapped as follows: EPUB→epub, MP3→audio, PDF→pdf.
Dates & Time
| Field | ONIX role | Format |
|---|---|---|
| Publication date | PublishingDateRole 01 | YYYY-MM-DD (derived from YYYYMMDD) |
Distribution & Sharing
SalesOutlet Identifiers
The parser expects two types of values in SalesOutletIdentifier.IDValue:
- When the value is
marketplace(case-insensitive), the product becomes available in the Publica.la marketplace. - When the value is a number, it is treated as a Tenant ID and the product becomes available to that specific tenant.
The accompanying fields IDTypeName (commonly SHOP_ID), SalesOutletIDType, and SalesOutletName are ignored.
SalesOutletrules and “Force Show marketplace” flag are covered in Marketplace Content Sharing Rules.- For aggregated-store setups, see Bookwire Aggregators.