Buying a vehicle from abroad without having the document translatedAll articles

Buying a vehicle from abroad without having the document translated

For a purchase, a foreign registration document is above all a language barrier. This case shows how the original document becomes a reliable purchase basis.

Published: 2026-09-12Reading time: 5 mintapinomahub API & workflows
API & processesVehicle dataDocuments & PDFVINAPIPricing & valuationData protection

A dealer is offered a vehicle from France, a recycler one from Poland. The documents follow foreign layouts, the fields are named differently, and the identification number is not where you know it from at home. Retyping means mistyping; having it translated costs days.

Buying a vehicle from abroad without having the document translatedInput: a vehicle with a foreign registration document and a foreign plate 1. Read the document (POST /scanner/document/registration/international): document.countryCode, vehicle.vin, inspection.validUntil — and fields with the original sourceValue 2. Read the plate (POST /vision/license-plate): text, country and confidence per plate — without any keeper or register lookup 3. Identify the vehicle (GET /vin/{vin}/vehicle): Series and technical attributes for the identification number read 4. Check recalls (GET /recalls/vehicles/{vin}): Hits from the official registers, each with its data status 5. Estimate the revenue (GET /vin/{vin}/economic-evaluation): A purchase recommendation on the minimum, before negotiating Output: a purchase whose data come from the original document rather than from a translation For personal documents only the standard level is provided. An illegible field stays empty and does not enter the file as a guess.Buying a vehicle from abroad without having the documenttranslatedInput: a vehicle with a foreign registration document and a foreign plate01Read the documentPOST /scanner/document/registration/internationaldocument.countryCode, vehicle.vin, inspection.validUntil — and fields with the originalsourceValue02Read the platePOST /vision/license-platetext, country and confidence per plate — without any keeper or register lookup03Identify the vehicleGET /vin/{vin}/vehicleSeries and technical attributes for the identification number read04Check recallsGET /recalls/vehicles/{vin}Hits from the official registers, each with its data status05Estimate the revenueGET /vin/{vin}/economic-evaluationA purchase recommendation on the minimum, before negotiatingOutput: a purchase whose data come from the original document rather than from a translationFor personal documents only the standard level is provided. An illegible field stays empty and does not enterthe file as a guess.
Five calls from the foreign document to the purchase decision. The identification number from stage one carries the rest.

The international document reading delivers both: the canonical fields in a uniform structure and alongside them the original value with its source code. The identification number read is then the key to vehicle data, recalls and the revenue estimate — without a single translation.

SurfaceRoles
HubVehicle trading, Vehicle recyclers, Fleet and leasing

What this case requires

  • The registration document as a retrievable file. The call takes fileUrl or imageUrl; for personal documents only the standard level is provided.
  • The entitlement to process. Registration documents and plates are personal data and need a legal basis.
  • Photos of the vehicle showing the plate. Plate reading takes up to three images.
  • A framework for the revenue estimate. Country, condition and vehicle type determine which market it is calculated against.
  • The entitlement to query the vehicle. With the call you confirm that you are the keeper, the owner or demonstrably authorised or otherwise legally entitled, and that you use the identification number solely for the stated permissible purpose.

The sequence

The table names the responsible call per stage and what exists afterwards. The reasoning for why a stage cannot be skipped follows below it.

The call chain of this use case
StageCallWhat exists afterwards
Read the documentPOST /scanner/document/registration/internationaldocument.countryCode, vehicle.vin, inspection.validUntil — and fields with the original sourceValue
Read the platePOST /vision/license-platetext, country and confidence per plate — without any keeper or register lookup
Identify the vehicleGET /vin/{vin}/vehicleSeries and technical attributes for the identification number read
Check recallsGET /recalls/vehicles/{vin}Hits from the official registers, each with its data status
Estimate the revenueGET /vin/{vin}/economic-evaluationA purchase recommendation on the minimum, before negotiating

Why each stage is needed

  1. Read the document. POST /scanner/document/registration/international returns document with countryCode and documentType, registration, holder, inspection with validUntil, and vehicle with vin, make and fuelType. In fields every field additionally appears with sourceCode and sourceValue — so what the original said stays verifiable.
  2. Read the plate. POST /vision/license-plate reads per plate text, normalized, country, confidence, position and obstructions. Only what is in the image is output: no keeper lookup, no register match, no statement on whether the plate is genuine. Matching it with the document is your plausibility check.
  3. Identify the vehicle. GET /vin/{vin}/vehicle returns series and technical attributes for the identification number read. The vehicle data come from reference data, not from the foreign document — and are therefore independent of its layout.
  4. Check recalls. GET /recalls/vehicles/{vin} returns the hits from the official registers with their data status. An open recall changes the purchase price, and it is easier to negotiate before buying than after.
  5. Estimate the revenue. GET /vin/{vin}/economic-evaluation takes country, condition and vehicleType and returns a purchase recommendation on the price minimum. This recommendation is thus available before negotiating and must be verified independently before use.
Read a foreign registration document
curl -X POST \
  -H 'X-Api-Key: <API_KEY>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: ankauf-import-fr-0412' \
  -d '{"fileUrl":"https://example.com/zulassung-frankreich.pdf","quality":"standard"}' \
  'https://api.tapinomahub.com/scanner/document/registration/international'

What you end up with

What remains is a purchase whose data come from the original document and from reference data rather than a translation — with a read plate, a known recall status and a purchase recommendation before the first round of negotiation.

Where to find this in the documentation

The binding field lists, error codes and sample responses live in this surface’s OpenAPI contract at docs.tapinomahub.com (tapinoma-hub). All use cases arranged by surface and role: overview of the use cases.

Frequently asked

Which countries are read?

The binding list of document profiles lives in the OpenAPI contract. The response names the recognised country, profile and document type in document.

Why do original values sit next to the canonical fields?

So that what the document said stays verifiable. sourceCode and sourceValue show the original, code and value the unified form.

Does plate reading check whether the vehicle is registered?

No. It only reads what is in the image. There is no keeper lookup and no register match.