Spring videre til hovedindholdet

EUDR Happy Flow i prduct.com

Dette er en introduktion til, hvordan man arbejder med og tester EUDR-integration i prduct.com.

Andreas Stensig avatar
Skrevet af Andreas Stensig
Opdateret i denne uge

Dette dokument beskriver et “happy flow” fra tilføjelse af relaterede og krævede Master Data til tilføjelse af transaktionsdata gennem de specifikke EUDR-endpoints.

Bemærk venligst, at alt det følgende vises i sandbox-miljøet. Hvis du vil gøre det i live-miljøet, skal du ændre Request URL'en. Se mere her.

API typen er REST og dataformatet er JSON.

Dokumentation er at finde i Swagger.

Bliv fortrolig med prduct-termer

Vi anbefaler at se læse mere om prduct terminologi for at forstå termerne som benyttes i forbindelse med en integration.

Opsæt API-test i sandbox environment

Læs mere om opsætning af sandbox environment her.

Tip: Vi har vejledning til, hvordan du laver tester happy flowet med Postman her

Denne video dækker Happy Path-flowet og Postman-opsætningen til test. Brug den testmetode, du foretrækker. Dette er kun en generel vejledning.

Opret en company

Start med at oprette en company ved at bruge POST-metoden på:
https://sandbox-api.prduct.com/api/v1/companies

Ikke alle felter er påkrævet, men i dette eksempel ses både de foruddefinerede værdier samt eksempler på custom fields.

Example request body:

{
"name": "Acme Inc",
"business_id": "123456790",
"external_id": "EXT123",
"type": "supplier",
"slug": "acme2-inc",
"local_name": "Acme Inc",
"basic_information": "This is some basic information about the company.",
"business_types": [
"Manufacturer"
],
"turnover": 1000000,
"trademarks": "Acme Trademark",
"number_of_employees": 100,
"establish_year": 2000,
"patents": "Patent information",
"customers": "Customer information",
"currency": "EUR",
"terms_of_payment": "30% deposit,70% 30days after shipping out",
"address": {
"company_name": "Acme Inc",
"address": "123 Main St",
"local_address": "123 Main St",
"zip": "12345",
"city": "New York",
"province": "NY",
"country": "US"
},
"custom_fields": {
"Delivering information via ASN": "Yes",
"External ID": "EXT123"
}
}

Vær særligt opmærksom på følgende felter:

  • business_id – ofte kendt som CVR-nummer eller VAT

  • external_id – reference til dit eksterne forretningssystem, f.eks. kreditornummer fra ERP

  • type – enten “supplier” eller “customer”

  • address -> country – oprindelsesland for virksomheden

  • custom_fields – alle dine brugerdefinerede felter

Modtag Document types

Document types modtages med GET-metoden på:
https://sandbox-api.prduct.com/api/v1/document-types

Ingen params eller body er påkrævet.

Example response:

{
"data": [
{
"id": 1,
"name": "Brand",
"slug": "brands",
"is_custom": false
},
{
"id": 2,
"name": "Product",
"slug": "products",
"is_custom": false
},
{
"id": 3,
"name": "Part",
"slug": "parts",
"is_custom": false
}
]
}

Document type id’er er vigtige at kende fremadrettet, men de ændres ikke, når de først er defineret.

Opret en data model

Data models oprettes med POST-metoden på:
https://sandbox-api.prduct.com/api/v1/data-models

Example request body:

{
"name": "Test",
"document_type_id": 2,
"default": false
}

Vær særligt opmærksom på:

  • document_type_id – ved brug af id 2 er data modellen for “products”.

Modtag Data Models

Data models modtages med GET-metoden på:
https://sandbox-api.prduct.com/api/v1/data-models

Ingen params eller body er påkrævet.

Example response:

{
"data": [
{
"id": 1000000000000,
"name": "Test",
"document_type_id": 2,
"default": false
}
]
}

Data model id’er er vigtige at kende fremadrettet, men de ændres ikke, når de først er defineret.

Opret et document (product)

Documents oprettes med POST-metoden på:
https://sandbox-api.prduct.com/api/v1/documents

Example request body:

{
"document_type_id": 2, // Document type id 2 for product
"data_model_id": 1000000000000, // Data model id you created
"external_id": "P100", // External id of product from ERP
"status": 1, // Document is set to live
"company": {
"type": "supplier", // Adding a supplier relation
"by": "external_id", // Using the external_id of the supplier
"value": "EXT123" // Supplier ID from ERP
},
"attributes": {}, // Used for attributes that are not translatable
"translations": [ // Used for attributes that are translatable (one translation is required – but no attributes on it is required)
{
"name": "Test Product 1",
"market": null,
"language": "en",
"default": true,
"second_name": "",
"functional_name": "",
"attributes": {
"hs_code": [ // example of single value attribute
{
"value": "4415"
}
],
"weight": [ // example of multi value attribute
{
"name": "net_weight",
"value": "12.3",
"unit": "kg"
}
]
}
}
]
}

Vær særligt opmærksom på:

  • document_type_id – ved brug af id 2 er data modellen for “products”.

Opret en EUDR Purchase invoice (PO med flere varelinjer)

EUDR Purchase invoices opretter flere documents på én gang og forbinder eksisterende documents. Formålet er at oprette fakturaer sammen med deres varelinjer, produktrelationer og eventuelle due diligence-dokumenter eller lokationer.

Endpointet bruges med POST-metoden på:
https://sandbox-api.prduct.com/api/v1/eudr/purchase/invoices

Example request body:

{
"type": "invoice",
"external_id": "123456",
"name": "PO123456",
"created_date": "2025-08-28T14:31:34.596Z",
"internal_reference_number": "PO123456",
"supplier": {
"external_id": "EXT123"
},
"batches": [
{
"external_id": "B-123456",
"name": "PO123456-B01",
"created_date": "2025-08-28T14:53:59.369Z",
"operator_type": "TRADER",
"internal_reference_number": "PO123456-B01",
"activity_type": "domestic",
"quantity": 1,
"unit": "kg",
"product": {
"external_id": "P100"
},
"related_dds": [
{
"reference_number": "25SETVJO144350",
"verification_number": "RHSTDZU2"
}
]
}
]
}

Support og spørgsmål

Hvis du støder på problemer eller har spørgsmål undervejs, er du velkommen til at kontakte os. Skriv via chatbotten i nederste højre hjørne eller send en mail til [email protected].

Besvarede dette dit spørgsmål?