Skip to content

Next.js in Valencia

Next.js development for Valencia exporters and B2B sellers

A Next.js development company working with Valencia exporters and wholesalers. Catalogues where every customer sees a different price, which is the one case the App Router defaults get wrong.

Working day overlap
Six hours or so, two hours behind Ankara, with the later Spanish day widening the afternoon
Who buys here
Exporters, wholesalers, agri-food producers and industrial distributors selling to businesses rather than to the public
What that changes
A catalogue priced per customer cannot be statically generated, so the rendering strategy becomes the first architectural decision rather than a detail
Local specifics
Most of these businesses sell into several countries from one Spanish entity, so currency, tax display and language multiply across the same catalogue

Valencia sells to businesses, and that single fact changes a web project more than anything about the city.

The buyers here are exporters, wholesalers, agri-food producers and industrial distributors. Their customers are other companies with negotiated terms, which means a catalogue where the product is the same for everyone and the price is not. That is an unusual shape for a modern front end, and it is the case the standard advice handles worst.

Why a per-customer price breaks the default

Most guidance about the App Router assumes a page is the same for every visitor and can therefore be built once and served from a cache. A B2B catalogue violates that in a single field.

The temptation is to give up and render everything per request. That works and it is slow, because the ninety per cent of the page that is identical for everybody - the description, the images, the technical sheet, the related products - gets rebuilt for every visitor along with the one number that actually varies.

The design that works splits the page at that seam. The shared content is generated once and cached; the customer-specific numbers are fetched for the logged-in buyer and composed into it. Deciding where that seam sits is the first architectural conversation on these projects, and the rendering model is worth reading before having it.

The second half of the same decision is keeping the price fetch out of the client bundle. A per-customer price is exactly the kind of thing that tempts a developer into a client component with a loading spinner, and that boundary has a cost measured in shipped JavaScript.

Public catalogue, private prices

Valencia exporters almost always need both, and conflating them causes trouble.

The public catalogue is how a buyer in another country finds you at all, so it has to be indexable, fast and complete. The logged-in catalogue is where negotiated terms live. These are two different renderings of the same product data, and the clean answer is two routes rather than one route that behaves differently depending on who is asking.

That also keeps you out of the one search practice with a real penalty attached: showing a crawler something materially different from what a visitor sees.

Five countries, one company

The other recurring Valencia question is how many sites a multi-country exporter needs. Usually one.

Language is the part that genuinely needs separate URLs and declared alternates between them, because a single page cannot rank in two languages. Currency, tax display and incoterms are properties of the customer or the delivery address, not reasons to duplicate a catalogue. How hreflang actually works covers the first half; the second half is usually a settings screen somebody was about to turn into four domains.

The country-level ground for Spain - certified invoicing, regional tax rules, the public-sector accessibility requirement - is on the Spain market page.

Commercially

Scope fixed in writing before work starts, priced per project rather than as a day rate.

Invoiced by Codefacture Yazılım A.Ş. in Türkiye, in euros, by bank transfer, with no Turkish VAT because exported services are exempt.

The regulatory and commercial ground for this city is on the Spain market page.

Frequently asked questions

Every customer has their own price list. Can a Valencia B2B catalogue still be fast?
Yes, but not by the usual route. The product description, images and specifications are the same for everybody and can be cached hard. The price, the volume breaks and the stock figure are per customer and cannot be. Splitting the page along that line - static content with the customer-specific numbers filled in separately - is what makes it fast. Rendering the whole page per request because one number varies is the mistake that makes B2B catalogues slow.
Should the catalogue be public or behind a login?
Both, usually, and the decision is commercial rather than technical. A public catalogue with indicative pricing or no pricing is what brings new customers in from search; the logged-in version is where real prices live. The thing to avoid is a single page that renders differently for search engines than for buyers, because that is cloaking and it is the one SEO mistake with a penalty attached.
We sell to five countries from one company in Spain. How many sites is that?
One site, with language and currency as separate decisions. Language needs its own URL per version and the alternates declared between them; currency and tax display are usually a setting on the customer rather than a reason to split the site. Running five domains for five countries is a maintenance cost people take on without comparing it to the alternative.
Our ERP owns the prices and the stock. Does that work?
It is the normal case and it is better than the alternative. The ERP stays the source of truth, the site reads from it through a defined interface, and the page shows the time the stock figure was true rather than implying it is live. Where that gets painful is an ERP that answers slowly - which is a caching problem with a known shape rather than a reason to copy the data and let it drift.
Call us+1 848 272 7583WhatsApp+90 850 308 5436Emailinfo@codefacture.comContact page