{"id":399533,"date":"2023-09-13T14:23:48","date_gmt":"2023-09-13T14:23:48","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=399533"},"modified":"2026-03-11T11:52:02","modified_gmt":"2026-03-11T11:52:02","slug":"how-to-create-a-product-page-using-cs-cart-api-in-nextjs","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/","title":{"rendered":"How to create a Product page using CS-Cart API in NextJs"},"content":{"rendered":"\n<p>Hello Guys<em>,<\/em> Today in this blog we will see all about the API integration in the cs-cart product detail page with the next js so hope this blog will be interactive for you so let&#8217;s get started.<\/p>\n\n\n\n<p><strong>CS-Cart Overview:<\/strong> <a href=\"https:\/\/webkul.com\/cs-cart-development\/\">CS-Cart<\/a> is a popular e-commerce platform that allows businesses to create and manage online stores.<\/p>\n\n\n\n<p>One of the key strengths of CS-Cart is its flexibility, which includes an API that enables developers to extend and customize the platform&#8217;s functionality.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Creating a Product Page Using CS-Cart API in Next.js:<\/strong><\/h2>\n\n\n\n<p>In this comprehensive guide, we will explore how to create a product page using <a href=\"https:\/\/webkul.com\/blog\/cs-cart-rest-api\/\">CS-Cart API<\/a> in a Next.js application. <\/p>\n\n\n\n<p>For CSS design if you want to make a good user interface you can choose your desired Dependencies for the design part.<\/p>\n\n\n\n<p>We will break down the process into several steps, providing code examples and explanations along the way.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 1: Project Setup <\/strong>&#8211; <\/h2>\n\n\n\n<p>In the first step you have to set up this project You can follow this <a href=\"https:\/\/webkul.com\/blog\/project-setup-next-js\/\">setup nextjs project<\/a> blog that covers all about the next js project setup.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 2: Global Variable Setup &#8211;<\/strong><\/h2>\n\n\n\n<p> We\u2019re going to create a file&nbsp;named .env in the root directory and add the following code.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/------------.env--------------\/\/\napiUrl: 'YOUR_CS_CART_API_URL_HERE',\napiKey:'YOUR_API_KEY_HERE'\nanayze:true<\/pre>\n\n\n\n<p>Again we also need to define the environment variables in our next.config.js file otherwise we will not be able to use these variables at the front-end.<br><br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">module.exports = withBundleAnalyzer(nextConfig);\n\/\/------------next.config.js-----------\/\/\n\/** @type {import('next').NextConfig} *\/\nconst path = require('path');\nconst withBundleAnalyzer = require('@next\/bundle-analyzer')({\n  enabled: process.env.anayze === 'true',\n});\nconst nextConfig = {\n env: {\n apiUrl: process.env.apiUrl, \n apiKey: process.env.apiKey }, \n reactStrictMode: true,\n  },\n  reactStrictMode: true,\n};\nmodule.exports = withBundleAnalyzer(nextConfig);<\/pre>\n\n\n\n<p><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 3: Install Dependencies<\/strong> &#8211; <\/h2>\n\n\n\n<p>In this step, you can install all necessary species for your project In our case we just need <a href=\"https:\/\/webkul.com\/blog\/how-to-use-tailwind-css-in-next-js\/\">tailwind-css<\/a> for basic design. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 4. API Response  &#8211;<\/strong> <\/h2>\n\n\n\n<p>below mentioned image demonstrates the  product detail page&#8217;s API response <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1093\" height=\"614\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\" alt=\"postman__api_response-1-1\" class=\"wp-image-400059\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png 1093w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1-300x169.png 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1-250x140.png 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1-768x431.png 768w\" sizes=\"(max-width: 1093px) 100vw, 1093px\" loading=\"lazy\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 5: Create a Component for the Product Page<\/strong> &#8211;<\/h2>\n\n\n\n<p>Inside the <code>pages<\/code> directory of your Next.js project, create a new folder called product and under it [urlkey].js for the dynamic route, <\/p>\n\n\n\n<p>This file will contain the code for your product detail page &amp; component.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/---------------pages\/product\/&#091;urlkey].js-----------\/\/\nimport React, { useEffect, useState } from &quot;react&quot;;\nimport {useRouter} from &quot;next\/router&quot;\nexport default function ProductPage() {\n  const router = useRouter\n  const &#091;isLoading, setLoading] = useState(true);\n  const &#091;data, setData] = useState(null);\n  const id = router.query.urlkey\n  useEffect(() =&gt; {\n    const apiUrl = process.env.apiUrl+`api\/productDetails\/${id};\n    const apiKey = process.env.apiKey;\n\n    fetch(apiUrl, {\n      headers: {\n        Authorization: `Bearer ${apiKey}`,\n      },\n    })\n      .then((response) =&gt; {\n        setLoading(false);\n        setData(json.response(response.data));\n      })\n      .catch((error) =&gt; {\n        console.error(&quot;Error fetching product data:&quot;, error);\n        setLoading(false);\n        setData(null);\n      });\n  }, &#091;]);\n\n  const ProdcutDetail = (props) =&gt; {\n    const data = props?.props || null;\n    return (\n      &lt;React.Fragment&gt;\n        &lt;div className=&quot;mt-6&quot;&gt;\n          &lt;div classname=&quot;lg:px-24 md:px-12 px-3&quot;&gt;\n            &lt;div className=&quot;container mx-auto px-4&quot;&gt;\n              &lt;div className=&quot;lg:col-gap-12 xl:col-gap-16 mt-3 grid grid-cols-1 gap-12 lg:mt-12 lg:grid-cols-5 lg:gap-16&quot;&gt;\n                &lt;div className=&quot;lg:col-span-3 lg:row-end-1&quot;&gt;\n                  &lt;div className=&quot;lg:order-2 &quot;&gt;\n                    &lt;div className=&quot;max-w-xl overflow-hidden rounded-lg&quot;&gt;\n                      &lt;Image\n                        className=&quot;h-&#091;70vh]&quot;\n                        src={data?.main_pair?.main}\n                        width={500}\n                        height={230}\n                        priority={true}\n                        alt=&quot;loading&quot;\n                      \/&gt;\n                    &lt;\/div&gt;\n                  &lt;\/div&gt;\n                &lt;\/div&gt;\n                &lt;div className=&quot;lg:col-span-4 lg:row-span-2 lg:row-end-2&quot;&gt;\n                  &lt;h1 className=&quot;sm: text-2xl font-bold text-gray-900 sm:text-3xl&quot;&gt;\n                    {data?.product}\n                  &lt;\/h1&gt;\n                  &lt;div className=&quot; mt-3&quot;&gt;\n                    &lt;p className=&quot; text-sm font-medium text-gray-500&quot;&gt;\n                      In Stock : {data?.max_qty}\n                    &lt;\/p&gt;\n                  &lt;\/div&gt;\n                  &lt;h2 className=&quot;mt-3 text-base text-gray-900&quot;&gt;Details &lt;\/h2&gt;\n                  &lt;div className=&quot;mt-3  flex select-none flex-wrap items-center gap-1&quot;&gt;\n                    &lt;section&gt;\n                      &lt;p\n                        dangerouslySetInnerHTML={{\n                          __html: data?.full_description,\n                        }}\n                      &gt;&lt;\/p&gt;\n                    &lt;\/section&gt;\n                  &lt;\/div&gt;\n\n                  &lt;div className=&quot;mt-10 flex flex-col items-center justify-between space-y-4 border-t border-b py-4 sm:flex-row sm:space-y-0&quot;&gt;\n                    &lt;div className=&quot;flex items-end&quot;&gt;\n                      &lt;h1 className=&quot;text-3xl font-bold&quot;&gt;\n                        ${parseFloat(data.price)}\n                      &lt;\/h1&gt;\n                    &lt;\/div&gt;\n                    &lt;button\n                      type=&quot;button&quot;\n                      className=&quot;inline-flex items-center justify-center rounded-md border-2 border-transparent bg-gray-900 bg-none px-12 py-3 text-center text-base font-bold text-white transition-all duration-200 ease-in-out focus:shadow hover:bg-gray-800&quot;\n                    &gt;\n                      &lt;svg\n                        xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;\n                        className=&quot;shrink-0 mr-3 h-5 w-5&quot;\n                        fill=&quot;none&quot;\n                        viewBox=&quot;0 0 24 24&quot;\n                        stroke=&quot;currentColor&quot;\n                        strokeWidth={2}\n                      &gt;\n                        &lt;path\n                          strokeLinecap=&quot;round&quot;\n                          strokeLinejoin=&quot;round&quot;\n                          d=&quot;M16 11V7a4 4 0 00-8 0v4M5 9h14l1 12H4L5 9z&quot;\n                        \/&gt;\n                      &lt;\/svg&gt;\n                      Add to cart\n                    &lt;\/button&gt;\n                  &lt;\/div&gt;\n                  &lt;ul className=&quot;mt-8 space-y-2&quot;&gt;\n                    &lt;li className=&quot;flex items-center text-left text-sm font-medium text-gray-600&quot;&gt;\n                      &lt;svg\n                        className=&quot;mr-2 block h-5 w-5 align-middle text-gray-500&quot;\n                        xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;\n                        fill=&quot;none&quot;\n                        viewBox=&quot;0 0 24 24&quot;\n                        stroke=&quot;currentColor&quot;\n                      &gt;\n                        &lt;path\n                          strokeLinecap=&quot;round&quot;\n                          strokeLinejoin=&quot;round&quot;\n                          strokeWidth={2}\n                          d=&quot;M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z&quot;\n                          className\n                        \/&gt;\n                      &lt;\/svg&gt;\n                      Free shipping worldwide\n                    &lt;\/li&gt;\n                    &lt;li className=&quot;flex items-center text-left text-sm font-medium text-gray-600&quot;&gt;\n                      &lt;svg\n                        className=&quot;mr-2 block h-5 w-5 align-middle text-gray-500&quot;\n                        xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;\n                        fill=&quot;none&quot;\n                        viewBox=&quot;0 0 24 24&quot;\n                        stroke=&quot;currentColor&quot;\n                      &gt;\n                        &lt;path\n                          strokeLinecap=&quot;round&quot;\n                          strokeLinejoin=&quot;round&quot;\n                          strokeWidth={2}\n                          d=&quot;M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z&quot;\n                          className\n                        \/&gt;\n                      &lt;\/svg&gt;\n                      Cancel Anytime\n                    &lt;\/li&gt;\n                  &lt;\/ul&gt;\n                &lt;\/div&gt;\n              &lt;\/div&gt;\n            &lt;\/div&gt;\n          &lt;\/div&gt;\n        &lt;\/div&gt;\n      &lt;\/React.Fragment&gt;\n    );\n  };\n  \n  return (\n    &lt;div&gt;\n      {isLoading ? (\n        &quot;Loading&quot;\n      ) : data ? (\n        &lt;React.Fragment&gt;\n          &lt;ProdcutDetail props={data} \/&gt;\n        &lt;\/React.Fragment&gt;\n      ) : (\n        &quot;No data available&quot;\n      )}\n    &lt;\/div&gt;\n  );\n}<\/pre>\n\n\n\n<p>Output will look like the below image <\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" width=\"1200\" height=\"604\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341-1200x604.png\" alt=\"sc-cart-wenkul-output\" class=\"wp-image-399931\" style=\"width:820px;height:413px\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341-1200x604.png 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341-300x151.png 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341-250x126.png 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341-768x386.png 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/screenshot_1694608092341.png 1320w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" loading=\"lazy\" \/><\/figure>\n\n\n\n<p>In this code:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>We have used <a href=\"https:\/\/tailwindcss.com\/\" rel=\"sponsored nofollow\">tailwind CSS<\/a> for  ProdcutDetail styling the product detail component.<\/li>\n\n\n\n<li>We display the product information once it&#8217;s loaded.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 6: Configure API Authentication<\/strong> &#8211;<\/h2>\n\n\n\n<p>To access the API, you will need to configure authentication. Typically, CS-Cart uses API tokens or OAuth 2.0 for authentication.<\/p>\n\n\n\n<p>Consult your CS-Cart API documentation or settings to obtain the necessary authentication credentials.<\/p>\n\n\n\n<p>Once you have the credentials, you can modify the fetch request  in <code>useEffect<\/code> to include authentication headers:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/---------------pages\/product\/&#091;urlkey].js-----------\/\/\nuseEffect(() =&gt; {\n  const apiUrl = process.env.apiUrl;\n  const apiKey = process.env.apiKey;\n  fetch(apiUrl, {\n    headers: {\n      Authorization: `Bearer ${apiToken}`,\n\/\/ whatever you you &#039;ll get the token in base64 (usermail:apikey)\n    },\n  })\n    .then((response) =&gt; {\n      setProduct(response.data);\n    })\n    .catch((error) =&gt; {\n      console.error(&#039;Error fetching product data:&#039;, error);\n    });\n}, &#091;]);<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 7: Running Your Next.js Application<\/strong>&#8211;<\/h2>\n\n\n\n<p> To see your product page in action, run your Next.js application:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">npm run dev<\/pre>\n\n\n\n<p>This command will start the development server, and you can access your site at You can see http:\/\/localhost:3000<\/p>\n\n\n\n<p><strong>Conclusion:<\/strong> In this guide, we&#8217;ve created a product page in a Next.js application that fetches product data from the CS-Cart API. <\/p>\n\n\n\n<p>We covered setting up the development environment, creating a component, configuring API authentication, styling, and routing.<\/p>\n\n\n\n<p>By following and customizing these steps for your store and design needs, you can build a dynamic, interactive product page that integrates smoothly with your e-commerce platform.<\/p>\n\n\n\n<p>Start your&nbsp;<a href=\"https:\/\/webkul.com\/nextjs-development-services\/\">Cs-cart Headless Development<\/a>&nbsp;with Webkul.<\/p>\n\n\n\n<p>Happy Coding !!<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello Guys, Today in this blog we will see all about the API integration in the cs-cart product detail page with the next js so hope this blog will be interactive for you so let&#8217;s get started. CS-Cart Overview: CS-Cart is a popular e-commerce platform that allows businesses to create and manage online stores. One <a href=\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":556,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13575],"tags":[292,1513,12682],"class_list":["post-399533","post","type-post","status-publish","format-standard","hentry","category-next-js","tag-api","tag-cs-cart-2","tag-nextjs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to create a Product page using CS-Cart API in NextJs - Webkul Blog<\/title>\n<meta name=\"description\" content=\"A comprehensive guide, we&#039;ll explore how to create a product page using CS-Cart API in a Next.js application\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to create a Product page using CS-Cart API in NextJs - Webkul Blog\" \/>\n<meta property=\"og:description\" content=\"A comprehensive guide, we&#039;ll explore how to create a product page using CS-Cart API in a Next.js application\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-13T14:23:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-11T11:52:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\" \/>\n<meta name=\"author\" content=\"Abhijeet Kumar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Abhijeet Kumar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\"},\"author\":{\"name\":\"Abhijeet Kumar\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/b5a304024503b6ebcc17ca4eb99c4761\"},\"headline\":\"How to create a Product page using CS-Cart API in NextJs\",\"datePublished\":\"2023-09-13T14:23:48+00:00\",\"dateModified\":\"2026-03-11T11:52:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\"},\"wordCount\":524,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\",\"keywords\":[\"api\",\"cs cart\",\"nextjs\"],\"articleSection\":[\"next js\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\",\"url\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\",\"name\":\"How to create a Product page using CS-Cart API in NextJs - Webkul Blog\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\",\"datePublished\":\"2023-09-13T14:23:48+00:00\",\"dateModified\":\"2026-03-11T11:52:02+00:00\",\"description\":\"A comprehensive guide, we'll explore how to create a product page using CS-Cart API in a Next.js application\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png\",\"width\":1093,\"height\":614,\"caption\":\"postman__api_response-1-1\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to create a Product page using CS-Cart API in NextJs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webkul.com\/blog\/#website\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webkul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webkul.com\/blog\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webkul\/\",\"https:\/\/x.com\/webkul\",\"https:\/\/www.instagram.com\/webkul\/\",\"https:\/\/www.linkedin.com\/company\/webkul\",\"https:\/\/www.youtube.com\/user\/webkul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/b5a304024503b6ebcc17ca4eb99c4761\",\"name\":\"Abhijeet Kumar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7da15c87a9e02a6df1a4c86e9c28fdc2b835c30595c7476236c342bd212d70f8?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7da15c87a9e02a6df1a4c86e9c28fdc2b835c30595c7476236c342bd212d70f8?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Abhijeet Kumar\"},\"description\":\"Abhijeet is a skilled Software Engineer specializing in the Magento platform. With expertise in Magento 2 Headless Compatible Extensions and Headless PWA services, he crafts innovative solutions that enhance eCommerce functionality. A skilled developer, offering unique, headless solutions.\",\"url\":\"https:\/\/webkul.com\/blog\/author\/abhijit-kumar018\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to create a Product page using CS-Cart API in NextJs - Webkul Blog","description":"A comprehensive guide, we'll explore how to create a product page using CS-Cart API in a Next.js application","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/","og_locale":"en_US","og_type":"article","og_title":"How to create a Product page using CS-Cart API in NextJs - Webkul Blog","og_description":"A comprehensive guide, we'll explore how to create a product page using CS-Cart API in a Next.js application","og_url":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2023-09-13T14:23:48+00:00","article_modified_time":"2026-03-11T11:52:02+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png","type":"","width":"","height":""}],"author":"Abhijeet Kumar","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Abhijeet Kumar","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/"},"author":{"name":"Abhijeet Kumar","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/b5a304024503b6ebcc17ca4eb99c4761"},"headline":"How to create a Product page using CS-Cart API in NextJs","datePublished":"2023-09-13T14:23:48+00:00","dateModified":"2026-03-11T11:52:02+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/"},"wordCount":524,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png","keywords":["api","cs cart","nextjs"],"articleSection":["next js"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/","url":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/","name":"How to create a Product page using CS-Cart API in NextJs - Webkul Blog","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png","datePublished":"2023-09-13T14:23:48+00:00","dateModified":"2026-03-11T11:52:02+00:00","description":"A comprehensive guide, we'll explore how to create a product page using CS-Cart API in a Next.js application","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/09\/postman__api_response-1-1.png","width":1093,"height":614,"caption":"postman__api_response-1-1"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/how-to-create-a-product-page-using-cs-cart-api-in-nextjs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to create a Product page using CS-Cart API in NextJs"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/b5a304024503b6ebcc17ca4eb99c4761","name":"Abhijeet Kumar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7da15c87a9e02a6df1a4c86e9c28fdc2b835c30595c7476236c342bd212d70f8?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7da15c87a9e02a6df1a4c86e9c28fdc2b835c30595c7476236c342bd212d70f8?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Abhijeet Kumar"},"description":"Abhijeet is a skilled Software Engineer specializing in the Magento platform. With expertise in Magento 2 Headless Compatible Extensions and Headless PWA services, he crafts innovative solutions that enhance eCommerce functionality. A skilled developer, offering unique, headless solutions.","url":"https:\/\/webkul.com\/blog\/author\/abhijit-kumar018\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/399533","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/556"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=399533"}],"version-history":[{"count":32,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/399533\/revisions"}],"predecessor-version":[{"id":530018,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/399533\/revisions\/530018"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=399533"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=399533"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=399533"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}