  

 

Tracelink University

 ## Breadcrumb

1. [Home](/)
2. [Resources](/resources/resource-center)
3. [TraceLink University](/resources/tracelink-university)
 
  

 

 

# Certificate of analysis canonical guidelines

 

 

 

 

 

 

 

 

- [Download PDF](/node/630311/pdf)
- [Share](#)
    - [ LinkedIn ](https://www.linkedin.com/shareArticle?mini=true&url=https://www.tracelink.com/resources/tracelink-university/certificate-analysis-canonical-guidelines&title=Certificate of analysis canonical guidelines&summary=A Certificate of Analysis (CoA) is an electronic document used by suppliers to confirm that a specific product batch or lot meets defined quality specifications. &source=TraceLink "LinkedIn")
    - [ Facebook ](https://www.facebook.com/share.php?u=https://www.tracelink.com/resources/tracelink-university/certificate-analysis-canonical-guidelines&t=Certificate of analysis canonical guidelines "Facebook")
    - [ Mail ](mailto:?subject=Certificate of analysis canonical guidelines+|+TraceLink&body=https://www.tracelink.com/resources/tracelink-university/certificate-analysis-canonical-guidelines "Mail")
    - [ Twitter ](https://twitter.com/intent/tweet?text=Certificate of analysis canonical guidelines https://www.tracelink.com/resources/tracelink-university/certificate-analysis-canonical-guidelines&via=TraceLink "Twitter")
 
 

 

 

 

 

#### Table of contents

 

 

 

A Certificate of Analysis (CoA) is an electronic document used by suppliers to confirm that a specific product batch or lot meets defined quality specifications. These specifications can include identity, potency, impurities, and microbiological or physical properties.

[![Closed](/sites/default/files/tech_comms/mpl-canonical/Skins/Default/Stylesheets/Images/transparent.gif)Canonical guidelines](#)               Canonical Element Type Definition Description IDoc mapping X12 mapping EDIFACT mapping     Canonical Element – JSon object type/root element. – – –     controlFileHeader – Canonical control file header to store data for control segments .. – – –     canonicalCertificateOfAnalysisHeader – Header details for the canonical Digital certificate of Analysis – – –       processingFunctionTypeCode string Processing function, transaction set purpose code. Valid values include `ORIGINAL`. – – –       documentRevision Number File information to maintain the version of files after multiple activities. – – –       systemRevision Number System information to maintain the version of system after multiple activities. – – –       documentOwnerEmail string Email address of business entity related to that file (shipper, consignee, carrier, forwarder, broker, etc.). – – –       dataOwnerEmail string Email address of business entity related to the content of file (shipper, consignee, carrier, forwarder, broker, etc.). – – –       documentContentRevision Number Document content revision history to maintain the version of document content after multiple activities. – – –       description string Description of Digital certificate transaction set to set the context of document, share free form test. – – –       verificationDate string Date on which tests reports were verified. – – –       approvalDate string Date on which tests reports were approved. – – –       verifiedBy string Details of the person verified the test report. – – –       approvedBy string Details of the person provided final approval for test report. – – –       documentGenerationDate string Date on which COA document was generated with all details of tests conducted against defined materials. – – –       documentGenerationTime string Time when COA document was generated with all details of tests conducted against defined materials. – – –       epochVerificationDate Integer Epoch date on which tests reports were verified. – – –       epochApprovalDate Integer Epoch date on which tests reports were approved. – – –       epochDocumentGenerationDate Integer Epoch date on which COA document was generated with all details of tests conducted against defined materials. – – –       transactionReferenceIdentifierList array Digital Certificate Analysis Document identifier. – – –         b2bTransactionIdentifierType string Transaction reference type for X12 segments REF and EDIFACT RFF for general reference data that is not a transaction document identifier.

Valid values include:

- `CERTIFICATEOFANALYSIS` - Certificcate of Analysis (required)
- `PURCHASEORDER` - Purchase Order Number
 
  – – –         b2bTransactionIdentifierValue string Transaction reference identifier value. – – –         transactionDate string Transaction reference date and time, if time available, in date format YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS.nnnZ if time available. – – –         epochTransactionDate string Transaction reference date and time, if time available, in epoch date format. – – –         lineItemNumber integer Transaction reference date and time in EPOCH date time format. – – –         b2bTransactionIdentifierTypeName string B2B Transaction Identifier Type Name. – – –         timeZone string Time Zone. – – –       transactionReferenceInformation array Dgitial Certificate Analysis Document reference identifier. – – –         transactionReferenceType string Transaction reference type for general reference data that is not a transaction document identifier.

Valid values include:

`CATALOGIDENTIFIER` - Catalog Number

  – – –         transactionReferenceIdentifier string Transaction reference identifier value. – – –         description string Identifier or description defined by qualifier code in transactionReferenceIdentifier (REF02) – – –         transactionReferenceDate string Transaction reference date and time/ if time available/ in date format YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS.nnnZ if time available. – – –         epochTransactionReferenceDate integer Transaction reference date and time in EPOCH date time format. – – –       digitalSignatureInformation   Signing, encoding, algorithm. Used for signing the document. – – –         signatureIdentifier string A unique identifier for the digital signature instance applied to the Certificate of Analysis. – – –         digitalSignatureSigningEncodingInformation   Signed Info specifies the canonicalization, cryptographic algorithms, and document references that define the integrity and verification rules of a Digital Certificate of Analysis. – – –           signingAuthorityIdentifier string The Signed Info ID uniquely identifies the exact signature instruction set that is cryptographically signed and verified. – – –           canonicalizationAlgorithm string Algorithm followed for canonicalization or rules followed to normalize XML / JSON files before hashing. – – –           signatureAlgorithm string Algorithm followed for generating signature for signing generated document.  – – –           base64Signature string Digital signature Value.

SignedInfo ID is used to produce SignatureValue.

  – – –           description string Description for signature value, if required. – – –           digitalSignatureSigningReference array Digital Signature signing references like URI, identifiers, algorithm, etc. – – –             referenceIdentifier string Signing Authority Identifier. – – –             uniformResourceIdentifier string Uniform resource Identifier for signing methods and references. – – –             signingReferenceType string There are different types of signing references available for digital certificate of analysis.

Valid values are are:

- `TRANSFORMS` - Signing based on transforms or pre-processing step before signing
- `DIGEST` - Signing based on hash algorithm
 
  – – –             referenceAlgorithm string Algorithm followed for signing in the signature for transforms method. – – –             digestReferenceAlgorithm string Algorithm followed for signing in the signature for digest method. – – –             digestBase64Value string Digest value. Based on digest value final approval is provided to COA document. – – –         cryptographicCertificateOrKeyInformation   Digital certificate or key selection criteria. – – –           certificateKeyIdentifier   string Certificate or key identifier. – – –           certificateKeyType string There are different methods to handle signature. Users will have options to select based on their requirement.

Valid values are:

- `RSAKEY` - RSA key pair
- `DSAKEY` - DSA key pair
- `PGPKEY` - PGP Key Pair
- `RETRIEVALMETHOD` - Anonymous certificate or key retrieval
- `X509` - X509 Certificate
- `SPKI` - Subject public key information
- `OTHER` - Any other type of method used for signature
 
  – – –           keyPairName string Name of Key Pair. – – –           description string Description for signature value, if required. – – –           dsaKeyInformation - P, Q, and G define the DSA cryptographic domain; Y is the public key; J provides verification that the domain parameters were correctly constructed. – – –             keyPairName string Name of Key Pair. – – –             primaryKey string (Base64 binary) A large prime number, defines the finite field – – –             lengthOfPrimaryKey string (Base64 binary) A prime divisor of P, but much smaller than P, it determines signature size and security. – – –             primaryKeyGenerator string (Base64 binary) A number derived from P and Q. Generates a subgroup of size Q within modulo P. Ensures all operations stay within a secure subgroup. – – –             publicKey string (Base64 binary) It is used by verifiers to validate signatures. It is shared publicly. – – –             subGroupFactorKey string (Base64 binary) Used to verify that G is correctly generated. It is not required for signing or verification. – – –             privateKey string (Base64 binary) It is a private to the system, part of key pair. Never shared with any other business partner. – – –             randomSeedNumber string (Base64 binary) Random value used to generate. – – –             randomPageCounterNumber string (Base64 binary) Iteration count during key pair generation. – – –           rsaKeyInformation - RSA key pair information to handle encryption, decryption, key generation and validation. – – –             keyPairName string Name of Key Pair. – – –             keyPair string (Base64 binary) The modulus is the large composite number in an RSA key that defines the cryptographic domain and determines the key’s security strength. – – –             keyPairExponent string (Base64 binary) The RSA exponent is the power applied in modular arithmetic that enables encryption, decryption, signing, and verification in RSA cryptography. – – –           keyCertificateRetrieval - Anonymous certificate and key retrieval method to retrieve key / certificate information from target server to handle encryption, decryption, key generation and validation. – – –             uniformResourceIdentifier string The URI in a RetrievalMethod identifies the location of cryptographic key material required for signature verification. – – –             certificateRetrievalType string Certificate or key retrieval type. – – –             retrievalDereferenceAlgorithm string The transform algorithm in a RetrievalMethod defines the processing steps required to normalize and extract cryptographic key material from a referenced resource before signature verification. – – –           x509CertificateInformation - X509 certificate information to handle encryption, decryption, key generation and validation. – – –             certificateName string The certificate issuer name identifies the Certificate Authority that issued and signed the digital certificate. – – –             certificateIdentifier string The certificate serial number uniquely identifies a digital certificate issued by a Certificate Authority and is used for revocation and audit purposes. – – –             certificateUsage string The Subject Name is the distinguished identity of the entity that owns the public key in an X.509 certificate. – – –             signingCertificate string A digital certificate establishes trust by binding a verified identity to a public key used for secure communication and signature verification. – – –             certificateChain string A Certificate Revocation List (CRL) is a CA-published list of digital certificates that are no longer trusted, even though they have not yet expired. – – –             certificateSubjectKeyIdentifier string SKI is a certificate extension that uniquely identifies the public key associated with a digital certificate. It is used to identify the subject’s public key – – –           pgpKeyInformation - PGP information in a Digital CoA consists of the keys, signatures, and metadata used to authenticate the issuer and protect the integrity (and optionally confidentiality) of the certificate. – – –             pgpKeyIdentifier string A PGP Key ID is a fingerprint-derived identifier used to reference the public key that signs or verifies a Digital Certificate of Analysis. – – –             pgpKeyDetachedSignature string A PGP key packet is a structured OpenPGP data unit that carries key material, identity, or signatures and collectively forms a usable PGP key. – – –             pgpKeyDetachedReceiverSignature string A PGP key packet is a structured OpenPGP data unit that carries key material, identity, or signatures and collectively forms a usable PGP key at receiver end. – – –             description string Free form text, to set the context for PGP key usage – – –           subjectPublicKeyInformation - Subject Pblic Key Information (SPKI) key in a Digital CoA is the standardized public key representation used to verify the document’s digital signature. – – –             spkiAlgorithm string The modulus is the large composite number in an RSA key that defines the cryptographic domain and determines the key’s security strength. – – –             spkiPublicKey string The RSA exponent is the power applied in modular arithmetic that enables encryption, decryption, signing, and verification in RSA cryptography. – – –         additionalSigningEncodingInformation array Additonal Signing and Encoding Information. – – –           signingAuthorityIdentifier string Signing Authority Identifier. – – –           signingMimeType string Mime Type used for singing, like type of hash or signing algorithm used.  – – –           signatureEncoding string Signature Encoding mechanism, it includes permutation and combination of different bits of key, respective algorithm for encryption and decryption. – – –           description string Free form text, to mention any remarks around addition signing and encoding parameters. – – –       businessPartyInformation array Partner Entity group identifiers and address information. – – –         partnerEntityType string Explains the type of the partner entity involved in this business transaction.

valid values include:

- `SENDER` = Message from
- `RECEIVER` = Message to
 
  – – –         businessName string Business name for partner or location. – – –         additionalBusinessName string Additional Business name for partner or location. – – –         companyLocationPartnerName string Additional Location of same Business partner. – – –         mpcCompanyLocationIdentifierList array Identifier list for business party. – – –           isIdentifierPresentInEvent boolean Is identifier present in event boolean. – – –           companyIdentifierType string Company identifier type for business partner . – – –           companyIdentifierValue string Company identifier value for business partner. – – –           alternateCompanyLocationIdentifierValue string Alternate company location identifier value. – – –         address - Party address information. – – –           address1 string Main street address. – – –           address2 string Supplemental street address. – – –           city string City – – –           district string District – – –           state string State or region code – – –           postalCode string Postal code – – –           country string Country code – – –           telephone string Telephone number – – –           fax string Fax number – – –           url string Website URL – – –           buildingNumber string Building number – – –           plantNumber string Plant number – – –           floorNumber string Floor number in building. – – –           lscAddressIdentifier string LSC address identifier. – – –           village string Village name – – –           houseNumber string House number – – –           township string Township – – –           premisesCode string Premises code. – – –         mpcAdditionalAddressInformation - Additional address information that is not included in addressTypeDefinition. – – –           externalERPUserName string External ERP system user name for user who generated message. – – –           organizationCode string Code for organization responsible for generating the message. – – –           organizationDescription string Description of the organization responsible for generating the message. – – –           groupCode string Code identifying group responsible for generating the message. – – –           language string Language key for message. – – –           languageCode string ISO language code for message. – – –           referenceIdentifier string Partner reference identifier. – – –           orderType string Order Type. – – –           address3 string Additional address information that is not included in addressTypeDefinition. – – –           postalArea string Postal Area. – – –           timeZone string Time zone for referenced dates. – – –           telephone string Telephone Number. – – –           emailAddress string Email Address. – – –           vatRegistrationNumber string Vat Registration Number. – – –           taxExemptCode string Tax exempt Code. – – –           locationType string Business Partner Location Type. – – –           locationIdentifier string Business Partner location Identifier. – – –           countrySubDivisionCode string Describes the country subdivision. – – –         companyLocationContactInformation - - – – –           contactType string Contact type.

Valid values include:

- `INFORMATION` - Information contact
- `FORWARDER` - Forwarder contact
- `SENDER` - Message sender contact
 
  – – –           contactName string Contact name – – –           contactTitle string Title of contact. – – –           contactPhone string Contact phone number. – – –           contactEmail string Contact email address. – – –       freeTextNote array Free form text required for text message at header. – – –         textReferenceCode string Text reference or subject code. – – –         textFunctionCode string Text function code. – – –         language string Language of free text. – – –         textFormatCode string Format code for free text. – – –         freeText string Free test string. – – –       customFields array Name value pairs for mapping pass through elements that will not be processed in TL system but may be passed outbound. Line item level. – – –         name string Name of mapped field. – – –         value string Value in named field. – – –     canonicalCertificateOfAnalysisItemDetails array Line item details for the digital certificate of analysis. Line item level describes types of tests, materials, specifications, quantity, etc. – – –       description string A brief Description about the type of materials or tests involved. – – –       materialInformation array Material Information to store the data related to materials being tested or reported. – – –         verificationSignatoryAuthority string The verification Signatory Authority is the trusted entity that validates the identity and cryptographic credentials of the document signer. – – –         approvalSignatoryAuthority string Quality Control Authority, provides final approval. – – –         productName string Name of the material to be tested and certified. – – –         quantity Number Total quantity of material for which tests performed. – – –         quantityUnitOfMeasure string Material unit of measure, for each lot numbers for performing tests. – – –         manufacturerProductCodeValue string Material Part Number. – – –         lotNumber string Manufacturer lot number. – – –         customerLotNumber string Customer lot number. – – –         description string A brief Description about the type of materials or tests involved. – – –         materialManufacturerInformation - Manufacturer details to understand, where material was manufactured, which party shared material for testing. – – –           manufacturerType string There are different types of manufacturers considered for materials from which materials are expected for testing.

Valid values are:

- `DISTRIBUTOR` = Material Distributor
- `MANUFACTURER` = Material Manufacturer
 
  – – –           manufacturerHierarchy string Hierarchy of manufacturer for specified product.

- `0` - Main Manufacturer or Direct Supplier
- `1` - Distributor or substitute supplier location
- `2` - Retailer
 
  – – –           plantIdentifier string Plant within which material was manufactured. – – –           description string A brief Description about the manufacturer or supplier. – – –         materialLotDateInformation - Lot date information to understand expiry, manufacturing, received, etc. – – –           lotManufacturingDate string Manufacturing date of complete lot or batch. – – –           receivedDate string Date on which batch received for testing. – – –           lotManufacturingDateType string Lot Manufacturing or received date in the lab for inspection. – – –           expirationDate string Expiry date for complete lot. – – –           retestDate string Retesting of batch, if required. – – –           description string Manufactured product lot related description. – – –           epochLotManufacturingDate string Epoch Manufacturing date of complete lot or batch. – – –           epochReceivedDate string Epoch Date on which batch received for testing. – – –           epochExpiryDate string Epoch Expiry date for complete lot. – – –           epochRetestDate string Epoch Retesting of batch, if required. – – –         materialInspectionSpecifications array Specifications of materials on which different types of testing were performed. – – –           materialDescription string Short description of material. – – –           description string Free form text, so if any other details to be specified for material, can be mentioned. – – –           inspectionType string A test of attribute is an evaluation performed to confirm that a defined material or component characteristic complies with specified acceptance criteria. – – –           inspectionCriteria string Criteria used to inspect or qualify for test.  – – –           unitOfMeasure string Material parameter unit of measure, for each lot numbers for performing tests. – – –           inspectionMethod string Method defined by supplier, for specified material measurement conducted. – – –           testResultSpecificationLimit string Specifies the relational condition used to evaluate a measured result against its acceptance criteria.  – – –           testResultSpecificationValue Number Test result value. Only numeric values are accepted. – – –           testResultDescription string Description related to test results. Test results value will sppear with symbols in data character field. – – –           testSpecificationLotIdentifier string Identifier used for test execution, to track information related to test results. – – –           testSpecificationIdentifier string Identifier of test specification document. – – –           testSpecificationDescription string Free form text for test specification document in brief. – – –           sampleCollectionLocation string Material sample collection location, to specify source of truth to be specified in test specification and result document as reference. – – –       businessPartyInformation array Partner Entity group identifiers and address information. – – –         partnerEntityType string Explains the type of the partner entity involved in this business transaction.

valid values include:

- `SENDER` - Message from
- `RECEIVER` - Message to
 
  – – –         businessName string Business name for partner or location. – – –         additionalBusinessName string Additional Business name for partner or location. – – –         companyLocationPartnerName string Additional Location of same Business partner. – – –         mpcCompanyLocationIdentifierList array Identifier list for business party. – – –           isIdentifierPresentInEvent boolean Is identifier present in event boolean. – – –           companyIdentifierType string Company identifier type for business partner. – – –           companyIdentifierValue string Company identifier value for business partner. – – –           alternateCompanyLocationIdentifierValue string Alternate company location identifier value. – – –         address - Party address information. – – –           address1 string Main street address. – – –           address2 string Supplemental street address. – – –           city string City – – –           district string District. – – –           state string State or region code. – – –           postalCode string Postal code. – – –           country string Country code. – – –           telephone string Telephone number. – – –           fax string Fax number. – – –           url string Website URL. – – –           buildingNumber string Building number. – – –           plantNumber string Plant number. – – –           floorNumber string Floor number in building. – – –           lscAddressIdentifier string LSC address identifier. – – –           village string Village name. – – –           houseNumber string House number. – – –           township string Township. – – –           premisesCode string Premises code. – – –         mpcAdditionalAddressInformation - Additional address information that is not included in addressTypeDefinition. – – –           externalERPUserName string External ERP system user name for user who generated message. – – –           organizationCode string Code for organization responsible for generating the message. – – –           organizationDescription string Description of the organization responsible for generating the message. – – –           groupCode string Code identifying group responsible for generating the message. – – –           language string Language key for message. – – –           languageCode string ISO language code for message. – – –           referenceIdentifier string Partner reference identifier. – – –           orderType string Order Type. – – –           address3 string Additional address information that is not included in addressTypeDefinition. – – –           postalArea string Postal Area. – – –           timeZone string Time zone for referenced dates. – – –           telephone string Telephone Number. – – –           emailAddress string Email Address. – – –           vatRegistrationNumber string Vat Registration Number. – – –           taxExemptCode string Tax exempt Code. – – –           locationType string Business Partner Location Type. – – –           locationIdentifier string Business Partner locatiion Identifier. – – –           countrySubDivisionCode string Describes the country subdivision. – – –         companyLocationContactInformation - - – – –           contactType string Contact type.

Valid values include:

- `INFORMATION` - Information contact
- `FORWARDERREQUEST` - Forwarder contact
- `SENDER` - Message sender contact
 
  – – –           contactName string Contact name. – – –           contactTitle string Title of contact. – – –           contactPhone string Contact phone number. – – –           contactEmail string Contact email address. – – –       freeTextNote array Free form text required for text message at line item. – – –         textReferenceCode string Text reference or subject code.  – – –         textFunctionCode string Text function code.  – – –         language string Language of free text. – – –         textFormatCode string Format code for free text. – – –         freeText string Free test string. – – –       customFields array Name value pairs for mapping pass through elements that will not be processed in TL system but may be passed outbound. Line item level. – – –         name string Name of mapped field. – – –         value string Value in named field. – – –     customFields array Name value pairs for mapping pass through elements that will not be processed in TL system but may be passed outbound. Line item level. – – –       name string Name of mapped field. – – –       value string Value in named field. – – –    

 

 



 

 

 

 

#### Table of contents

 

 

 

 

 

 



 

##### Related Content

 

 [ ![]() ](/resources/tracelink-university/certificate-analysis) 

#####  Certificate of analysis 

 A Certificate of Analysis (CoA) is an electronic document used by suppliers to confirm that a specific product batch or lot meets defined quality specifications. 

 

 [View More](/resources/tracelink-university/certificate-analysis) 

 

 [ ![]() ](/resources/tracelink-university/motor-carrier-load-tenders) 

#####  Motor carrier load tenders 

 The Motor Carrier Load Tender is an electronic transaction used by a shipper or third-party logistics provider (3PL) to offer a shipment to a motor carrier for transportation. 

 

 [View More](/resources/tracelink-university/motor-carrier-load-tenders) 

 

 [ ![]() ](/resources/tracelink-university/load-tender-response-canonical-guidelines) 

#####  Load tender response canonical guidelines 

 The Load Tender Response is an electronic transaction used by a motor carrier to respond to a shipment offer (load tender) sent by a shipper, broker, or third-party logistics provider (3PL). 

 

 [View More](/resources/tracelink-university/load-tender-response-canonical-guidelines)