{"id":5929,"date":"2026-06-12T06:51:01","date_gmt":"2026-06-12T04:51:01","guid":{"rendered":"https:\/\/uniquedevs.com\/case-study\/wieloplatformowa-aplikacja-marketplace\/"},"modified":"2026-06-12T13:07:57","modified_gmt":"2026-06-12T11:07:57","slug":"cross-platform-marketplace-app","status":"publish","type":"case-studies","link":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/","title":{"rendered":"Cross-Platform Marketplace App"},"content":{"rendered":"\r\n<section class=\"two-columns smooth-border\" >\r\n    <div class=\"container w\">\r\n                                        <div class=\"two-columns__wrapper\">\r\n            <div class=\"two-columns__wrapper-left\">\r\n                                                    <div class=\"two-columns__wrapper-left-description description\">\r\n                        <p>The marketplace app is a modern, multi-platform ecosystem designed for local trade and distribution of natural products. The project seamlessly integrates a dedicated mobile app for buyers and sellers, a self-service web panel for sellers, an administrative panel, and a high-performance backend API based on the GraphQL standard.<\/p>\n<p>The product\u2019s main value lies in bridging the gap between local producers and consumers.<\/p>\n                    <\/div>\r\n                                            <\/div>\r\n            <div class=\"two-columns__wrapper-right\">\r\n                                                    <div class=\"two-columns__wrapper-right-description\">\r\n                        <p>Users can discover local stores in real time on an interactive map, browse the product selection, place orders with delivery or in-store pickup options, and rate products.<\/p>\n<p>Sellers are provided with intuitive tools to run their own online stores and manage subscriptions, while administrators retain full operational oversight of the entire ecosystem.<\/p>\n                    <\/div>\r\n                                                            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/section>\n\n\r\n<section class=\"two-columns two-columns-other-styles\" >\r\n    <div class=\"container w\">\r\n                            <h2 class=\"two-columns__title title white center\">\r\n                Market context and <span>business challenges<\/span>            <\/h2>\r\n                                <div class=\"two-columns__wrapper\">\r\n            <div class=\"two-columns__wrapper-left\">\r\n                                                    <div class=\"two-columns__wrapper-left-description description\">\r\n                        <p>The market for local, natural products can be highly fragmented. End customers often know what products they are looking for, but they lack a centralized source of information on where a specific producer or store is located in their immediate vicinity.<\/p>\n                    <\/div>\r\n                                            <\/div>\r\n            <div class=\"two-columns__wrapper-right\">\r\n                                                    <div class=\"two-columns__wrapper-right-description\">\r\n                        <p>On the other hand, smaller retailers and artisans need a simple, technology-friendly way to showcase their products, build visibility, and accept orders\u2014without having to go through the costly process of building a dedicated online store from scratch.<\/p>\n                    <\/div>\r\n                                                            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/section>\n\n\r\n<section class=\"title-with-boxes custom-two-columns different-height\" >\r\n    <div class=\"container w\">\r\n                    <div class=\"title-with-boxes__wrapper\">\r\n                                                                                            <div class=\"title-with-boxes__wrapper-items\">\r\n                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item active\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/carbon_map.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Discovering suppliers in the map-first model<\/strong>\r\nCombining a digital product catalog with the actual, physical location of a point of sale.                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/formkit_people.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Support for three user groups<\/strong>\r\nDesign and maintain a single, consistent data model for buyers, sellers, and administrators.                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/stash_monetize.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Scalable Monetization<\/strong>\r\nIntroduction of an automated subscription model that directly controls the visibility of sellers&#8217; commercial offers.                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/hugeicons_centralized.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Centralization of operations<\/strong>\r\nProviding tools for mass communication, payment processing, and access management.                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                    <\/div>\r\n                                                <\/div>\r\n            <\/div>\r\n<\/section>\n\n\r\n<section class=\"title-with-boxes slider-boxes\" >\r\n    <div class=\"container w\">\r\n                    <div class=\"title-with-boxes__wrapper\">\r\n                                    <div class=\"title-with-boxes__wrapper-title\">\r\n                        Main <span>project objectives<\/span>                    <\/div>\r\n                                                                                            <div class=\"title-with-boxes__wrapper-items-swiper-wrapper\">\r\n                            <div class=\"title-with-boxes__wrapper-items title-with-boxes__wrapper-items-slider swiper\">\r\n                                <div class=\"swiper-wrapper\">\r\n                                                                                                                                                                <div class=\"swiper-slide\">\r\n                                                <div class=\"title-with-boxes__wrapper-items-item active\">\r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                            <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/proicons_cart.svg\" alt=\"Ikona\">\r\n                                                        <\/div>\r\n                                                    \r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                            <strong>For Buyers<\/strong>\r\nQuick and intuitive search for local products and interactive mapping of nearby sellers.                                                        <\/div>\r\n                                                                                                    <\/div>\r\n                                            <\/div>\r\n                                                                                                                                                                                                        <div class=\"swiper-slide\">\r\n                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                            <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/icon-park-solid_user-business.svg\" alt=\"Ikona\">\r\n                                                        <\/div>\r\n                                                    \r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                            <strong>For sellers<\/strong>\r\nAccess to a self-service dashboard for instantly creating a store profile, adding products, and managing orders.                                                        <\/div>\r\n                                                                                                    <\/div>\r\n                                            <\/div>\r\n                                                                                                                                                                                                        <div class=\"swiper-slide\">\r\n                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                            <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/tabler_arrows-diff.svg\" alt=\"Ikona\">\r\n                                                        <\/div>\r\n                                                    \r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                            <strong>Business<\/strong>\r\nDeveloping a mechanism for automatically controlling product visibility based on subscription payment status.                                                        <\/div>\r\n                                                                                                    <\/div>\r\n                                            <\/div>\r\n                                                                                                                                                                                                        <div class=\"swiper-slide\">\r\n                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                            <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/tabler_bulb.svg\" alt=\"Ikona\">\r\n                                                        <\/div>\r\n                                                    \r\n                                                                                                            <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                            <strong>Technology<\/strong>\r\nMaintaining a single, unified data contract (API) for the mobile app and both management dashboards.                                                        <\/div>\r\n                                                                                                    <\/div>\r\n                                            <\/div>\r\n                                                                                                                                                                                                                                                                                                <div class=\"swiper-slide\">\r\n                                                    <div class=\"title-with-boxes__wrapper-items-item active\">\r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/proicons_cart.svg\" alt=\"Ikona\">\r\n                                                            <\/div>\r\n                                                        \r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                                <strong>For Buyers<\/strong>\r\nQuick and intuitive search for local products and interactive mapping of nearby sellers.                                                            <\/div>\r\n                                                                                                            <\/div>\r\n                                                <\/div>\r\n                                                                                                                                                                                                                            <div class=\"swiper-slide\">\r\n                                                    <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/icon-park-solid_user-business.svg\" alt=\"Ikona\">\r\n                                                            <\/div>\r\n                                                        \r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                                <strong>For sellers<\/strong>\r\nAccess to a self-service dashboard for instantly creating a store profile, adding products, and managing orders.                                                            <\/div>\r\n                                                                                                            <\/div>\r\n                                                <\/div>\r\n                                                                                                                                                                                                                            <div class=\"swiper-slide\">\r\n                                                    <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/tabler_arrows-diff.svg\" alt=\"Ikona\">\r\n                                                            <\/div>\r\n                                                        \r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                                <strong>Business<\/strong>\r\nDeveloping a mechanism for automatically controlling product visibility based on subscription payment status.                                                            <\/div>\r\n                                                                                                            <\/div>\r\n                                                <\/div>\r\n                                                                                                                                                                                                                            <div class=\"swiper-slide\">\r\n                                                    <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/tabler_bulb.svg\" alt=\"Ikona\">\r\n                                                            <\/div>\r\n                                                        \r\n                                                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                                <strong>Technology<\/strong>\r\nMaintaining a single, unified data contract (API) for the mobile app and both management dashboards.                                                            <\/div>\r\n                                                                                                            <\/div>\r\n                                                <\/div>\r\n                                                                                                                                                        <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                                                <\/div>\r\n            <\/div>\r\n<\/section>\n\n\r\n<section class=\"case-study-dark-banner\" >\r\n    <div class=\"case-study-dark-banner__wrapper\">\r\n        <div class=\"case-study-dark-banner__wrapper-left\">\r\n                            <div class=\"case-study-dark-banner__wrapper-left-badge\">\r\n                                            WE&#8217;RE ONLINE                                    <\/div>\r\n            \r\n                            <div class=\"case-study-dark-banner__wrapper-left-title\">\r\n                    Do you have a <span>similar project<\/span> in&nbsp;mind?                <\/div>\r\n            \r\n                            <div class=\"case-study-dark-banner__wrapper-left-description\">\r\n                    A <strong>quick chat<\/strong> usually cuts <strong>weeks of indecision<\/strong> down to just a few minutes. Tell us what you want to build\u2014we\u2019ll give you concrete answers, without any sales talk.                <\/div>\r\n            \r\n                            <div class=\"case-study-dark-banner__wrapper-left-buttons\">\r\n                                            <a href=\"tel:+48602393343\" class=\"case-study-dark-banner__wrapper-left-buttons-green\" target=\"\">\r\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\">\r\n                                <path d=\"M6.06833 9.89083C7.39206 12.4929 9.50711 14.6079 12.1092 15.9317L14.1258 13.915C14.2461 13.7954 14.3971 13.7116 14.5622 13.6727C14.7273 13.6339 14.8999 13.6416 15.0608 13.695C16.0875 14.0342 17.1967 14.2175 18.3333 14.2175C18.5764 14.2175 18.8096 14.3141 18.9815 14.486C19.1534 14.6579 19.25 14.8911 19.25 15.1342V18.3333C19.25 18.5764 19.1534 18.8096 18.9815 18.9815C18.8096 19.1534 18.5764 19.25 18.3333 19.25C14.2004 19.25 10.2367 17.6082 7.31425 14.6857C4.39181 11.7633 2.75 7.79962 2.75 3.66667C2.75 3.42355 2.84658 3.19039 3.01849 3.01849C3.19039 2.84658 3.42355 2.75 3.66667 2.75H6.875C7.11812 2.75 7.35127 2.84658 7.52318 3.01849C7.69509 3.19039 7.79167 3.42355 7.79167 3.66667C7.79167 4.80333 7.975 5.9125 8.31417 6.93917C8.36757 7.10011 8.37528 7.27272 8.33644 7.43779C8.2976 7.60286 8.21373 7.75392 8.09417 7.87417L6.06833 9.89083Z\" fill=\"#0E0E0E\" \/>\r\n                            <\/svg>\r\n                            +48 602 393 343                        <\/a>\r\n                    \r\n                                            <a href=\"#footer\" class=\"case-study-dark-banner__wrapper-left-buttons-transparent\" target=\"\">\r\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill=\"none\">\r\n                                <path d=\"M0.666748 7.33335L7.33342 0.666687L0.666748 7.33335ZM7.33342 0.666687H2.00008H7.33342ZM7.33342 0.666687V6.00002V0.666687Z\" fill=\"black\" \/>\r\n                                <path d=\"M0.666748 7.33335L7.33341 0.666687M7.33341 6.00002V0.666687H2.00008\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\r\n                            <\/svg>\r\n                            Prefer online? Schedule a consultation                        <\/a>\r\n                                    <\/div>\r\n                    <\/div>\r\n\r\n        <div class=\"case-study-dark-banner__wrapper-right\">\r\n            <div class=\"case-study-dark-banner__wrapper-right-image\">\r\n                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/05\/mockup-1.webp\" alt=\"\">\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/section>\n\n\n<section class=\"fixed-bg no-shadow\" >\n    <div class=\"container w\">\n                    <\/div>\n    <div class=\"fixed-bg__background no-shadow\">\n                    <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/b9504ac467af4a2688b7252a8fb09c5b897442c9-scaled.webp\" alt=\"\">\n                                        <\/div>\n<\/section>\n\n\r\n<section class=\"architecture small-mb\" >\r\n    <div class=\"architecture__wrapper\">\r\n        <div class=\"architecture__wrapper-top\">\r\n                            <div class=\"architecture__wrapper-top-title\">\r\n                    Ecosystem Architecture and <span>User Flows<\/span>                <\/div>\r\n                                        <div class=\"architecture__wrapper-top-description\">\r\n                    The website featured a complete set of global settings in the WordPress admin panel, which greatly simplified site management. Among the most important global settings were:                <\/div>\r\n                    <\/div>\r\n        <div class=\"architecture__wrapper-bottom\">\r\n            <div class=\"architecture__wrapper-bottom-left\">\r\n                                            <\/div>\r\n                    <\/div>\r\n    <\/div>\r\n<\/section>\n\n\r\n<section class=\"title-with-boxes custom-two-columns second-item-top\" >\r\n    <div class=\"container w\">\r\n                    <div class=\"title-with-boxes__wrapper\">\r\n                                                                                            <div class=\"title-with-boxes__wrapper-items\">\r\n                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item active\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/icon-park-solid_user-business-1.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Seller <span>&#8211; mobile app + web dashboard<\/span><\/strong>\r\n<p>The seller gains flexibility\u2014they can manage their business on a phone or computer.<\/p>\r\n<p>Launching an online store<\/p>\r\n<p>After registration, they provide an address, which the system automatically converts into geographic coordinates using integration with the Google Geocoding API.<\/p>\r\n<p>Catalog management<\/p>\r\n<p>The seller sets net\/gross prices, assigns categories, and uploads photos (which the system automatically compresses). The number of products that can be marked as \u201cvisible\u201d to buyers is dynamically adjusted based on the purchased plan.<\/p>                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/proicons_cart-1.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Buyer &#8211; <span>mobile app<\/span><\/strong>\r\n<p>The mobile app for end customers focuses on location.<\/p>\r\n<p>Purchase path<\/p>\r\n<p>The interface starts with a map view that uses advanced marker clustering (ensuring the screen remains clear even when points are densely packed). The buyer searches for a product or store, clicks a marker, and goes to the offer details. They see a gallery of up to 3 photos, the gross price, delivery options, and ratings. They add items to the cart and place an order.<\/p>\r\n<p>Cart grouping<\/p>\r\n<p>The cart automatically groups products by specific store, which eliminates the logistical problem of a single order split across multiple uncoordinated suppliers.<\/p>\r\n<p>Review mechanism<\/p>\r\n<p>After purchase, the user can rate the product from the order history, which automatically updates the average rating and builds transparency on the platform.<\/p>                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                                                                                                <div class=\"title-with-boxes__wrapper-items-item\">\r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-item-icon\">\r\n                                                <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/eos-icons_admin.svg\" alt=\"Ikona\">\r\n                                            <\/div>\r\n                                        \r\n                                                                                    <div class=\"title-with-boxes__wrapper-items-description\">\r\n                                                <strong>Administrator <span>\u2013 web panel<\/span><\/strong>\r\n<p>A dedicated environment for internal marketplace management. It allows you to filter the user database and view transactions and order history. Additionally, it enables the scheduling and bulk sending of email notifications, which the backend processes periodically in batches to prevent overloading the mail server.\r\n<\/p>                                            <\/div>\r\n                                                                            <\/div>\r\n                                                                                    <\/div>\r\n                                                <\/div>\r\n            <\/div>\r\n<\/section>\n\n\r\n<section class=\"architecture architecture--new\" >\r\n    <div class=\"architecture__wrapper\">\r\n        <div class=\"architecture__wrapper-top\">\r\n                            <div class=\"architecture__wrapper-top-title\">\r\n                    Website architecture                <\/div>\r\n                                        <div class=\"architecture__wrapper-top-description\">\r\n                    The project stands out for its modern, fully modular, and performance-oriented technology stack:                <\/div>\r\n                    <\/div>\r\n        <div class=\"architecture__wrapper-bottom\">\r\n            <div class=\"architecture__wrapper-bottom-left\">\r\n                                    <div class=\"architecture__wrapper-bottom-left-title\">\r\n                        Frontend                    <\/div>\r\n                                                    <div class=\"architecture__wrapper-bottom-left-items\">\r\n                                                    <div class=\"architecture__wrapper-bottom-left-items-item\">\r\n                                                                    <div class=\"architecture__wrapper-bottom-left-items-item-icon\">\r\n                                          <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/uil_react.svg\" alt=\"\">\r\n                                    <\/div>\r\n                                                                <div class=\"architecture__wrapper-bottom-left-items-item-text\">\r\n                                                                            <div class=\"architecture__wrapper-bottom-left-items-item-text-title\">\r\n                                            Mobile App (Expo \/ React Native)                                        <\/div>\r\n                                                                                                                <div class=\"architecture__wrapper-bottom-left-items-item-text-description\">\r\n                                            It uses <span>expo-router<\/span> for navigation and NativeWind for consistent interface styling. The shopping cart is saved and processed locally using <span>AsyncStorage<\/span>                                        <\/div>\r\n                                                                    <\/div>\r\n                            <\/div>\r\n                                                    <div class=\"architecture__wrapper-bottom-left-items-item\">\r\n                                                                    <div class=\"architecture__wrapper-bottom-left-items-item-icon\">\r\n                                          <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/mdi_tailwind.svg\" alt=\"\">\r\n                                    <\/div>\r\n                                                                <div class=\"architecture__wrapper-bottom-left-items-item-text\">\r\n                                                                            <div class=\"architecture__wrapper-bottom-left-items-item-text-title\">\r\n                                            Web Panels (React \/ Vite \/ Tailwind)                                        <\/div>\r\n                                                                                                                <div class=\"architecture__wrapper-bottom-left-items-item-text-description\">\r\n                                            Both the seller and administrator dashboards are lightweight SPA applications. They use the <span>nuqs<\/span> tool to efficiently synchronize and store filter states directly within the URL structure.                                        <\/div>\r\n                                                                    <\/div>\r\n                            <\/div>\r\n                                            <\/div>\r\n                            <\/div>\r\n                            <div class=\"architecture__wrapper-bottom-right\">\r\n                    <div class=\"architecture__wrapper-bottom-right-box\">\r\n                        <h3>Backend <b>NestJS &amp; GraphQL<\/b><\/h3>\n<p>Built using the NestJS framework.<\/p>\n<p>It provides a single GraphQL API via Apollo, which serves as a common data contract for the mobile app, the merchant website, and the admin panel. The data layer uses <b>Prisma ORM<\/b> and a PostgreSQL database, ensuring transactional operations (which are critical for processing payments and orders).<\/p>\n                    <\/div>\r\n                <\/div>\r\n                    <\/div>\r\n    <\/div>\r\n<\/section>\n\n\r\n<section class=\"two-columns two-columns-middle-custom\" >\r\n    <div class=\"container w\">\r\n                                        <div class=\"two-columns__wrapper\">\r\n            <div class=\"two-columns__wrapper-left\">\r\n                                    <div class=\"two-columns__wrapper-left-image\">\r\n                        <img decoding=\"async\" src=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/upload-1.webp\" alt=\"\">\r\n                    <\/div>\r\n                                                    <div class=\"two-columns__wrapper-left-description description\">\r\n                        <h3>Key Design Decisions and Conclusions for the Case Study<\/h3>\n<h4>Immutability of Order History<\/h4>\n<p>When a purchase is finalized, the system saves a complete copy (snapshot) of the product data (name, price, taxes) from the exact moment of purchase. This ensures that subsequent edits to the product lineup or prices made by the seller do not negatively impact the historical order records of the buyer and administrator.<\/p>\n<h4>Monetization automation (RevenueCat)<\/h4>\n<p>Subscription support in the mobile app has been integrated with RevenueCat. The backend processes webhooks regarding purchases, renewals, or package expirations in real time. In the event of a downgrade, the system automatically hides redundant products, ensuring the integrity of the business model.<\/p>\n<h4>Security and compliance with privacy policies<\/h4>\n<p>The system operates on a soft delete mechanism (business records are not physically deleted from the database). When an account is deleted, user data is fully anonymized and associated store and product structures are hidden, which protects the integrity of the database.<\/p>\n                    <\/div>\r\n                                            <\/div>\r\n            <div class=\"two-columns__wrapper-right\">\r\n                                                                            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/section>\n\n\r\n<section class=\"project-results one-column\" >\r\n    <div class=\"project-results__wrapper\">\r\n                    <div class=\"project-results__wrapper-title\">\r\n                <span>Potential<\/span> business outcomes            <\/div>\r\n        \r\n                    <div class=\"project-results__wrapper-description\">\r\n                <ul>\n<li>Finalizing and completing the entire purchase journey (from discovery<br \/>\non the map to payment) within a single, cohesive platform.<\/li>\n<li>Building a stable and predictable revenue model for<br \/>\nthe marketplace operator based on recurring B2B subscriptions (MRR).<\/li>\n<li>Drastically reducing barriers to entry and operating costs for<br \/>\nlocal entrepreneurs thanks to a ready-to-use self-service infrastructure.<\/li>\n<li>Strengthening consumer trust in the local market through the implementation of<br \/>\na transparent system of ratings, reviews, and verified contact information.<\/li>\n<\/ul>\n            <\/div>\r\n            <\/div>\r\n<\/section>\r\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button wody-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/uniquedevs.com\/en\/contact\/\">Need your own system? Get in touch!<\/a><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.<\/p>\n","protected":false},"author":1,"featured_media":5849,"template":"","case-study-category":[46,47],"class_list":["post-5929","case-studies","type-case-studies","status-publish","has-post-thumbnail","hentry","case-study-category-mobile-application","case-study-category-web-application"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs<\/title>\n<meta name=\"description\" content=\"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs\" \/>\n<meta property=\"og:description\" content=\"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/\" \/>\n<meta property=\"og:site_name\" content=\"Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/people\/Unique-Devs\/61564365418277\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-12T11:07:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/\",\"url\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/\",\"name\":\"Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/uniquedevs.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp\",\"datePublished\":\"2026-06-12T04:51:01+00:00\",\"dateModified\":\"2026-06-12T11:07:57+00:00\",\"description\":\"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/#primaryimage\",\"url\":\"https:\\\/\\\/uniquedevs.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp\",\"contentUrl\":\"https:\\\/\\\/uniquedevs.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp\",\"width\":2560,\"height\":1707},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/case-study\\\/cross-platform-marketplace-app\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\\\/\\\/uniquedevs.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Case Studies\",\"item\":\"https:\\\/\\\/uniquedevs.com\\\/case-study\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Cross-Platform Marketplace App\"}]},{\"@type\":\"Website\",\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/#website\",\"url\":\"https:\\\/\\\/uniquedevs.com\\\/\",\"name\":\"Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/uniquedevs.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/uniquedevs.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},[]]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs","description":"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs","og_description":"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.","og_url":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/","og_site_name":"Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs","article_publisher":"https:\/\/www.facebook.com\/people\/Unique-Devs\/61564365418277\/","article_modified_time":"2026-06-12T11:07:57+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/","url":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/","name":"Cross-Platform Marketplace App - Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs","isPartOf":{"@id":"https:\/\/uniquedevs.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/#primaryimage"},"image":{"@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/#primaryimage"},"thumbnailUrl":"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp","datePublished":"2026-06-12T04:51:01+00:00","dateModified":"2026-06-12T11:07:57+00:00","description":"The completed Marketplace app is a platform that connects local producers and sellers of natural products with customers. Through its mobile app and web dashboard, it allows users to conveniently manage sales and orders and discover local offerings all in one place.","breadcrumb":{"@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/#primaryimage","url":"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp","contentUrl":"https:\/\/uniquedevs.com\/wp-content\/uploads\/2026\/06\/c2fd4d82ae74bd208dde178d9bdcbde08a6fcc8c.webp","width":2560,"height":1707},{"@type":"BreadcrumbList","@id":"https:\/\/uniquedevs.com\/en\/case-study\/cross-platform-marketplace-app\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/uniquedevs.com\/en\/"},{"@type":"ListItem","position":2,"name":"Case Studies","item":"https:\/\/uniquedevs.com\/case-study\/"},{"@type":"ListItem","position":3,"name":"Cross-Platform Marketplace App"}]},{"@type":"Website","@id":"https:\/\/uniquedevs.com\/#website","url":"https:\/\/uniquedevs.com\/","name":"Software House - rozwi\u0105zania IT dla Twojego biznesu | UniqueDevs","description":"","publisher":{"@id":"https:\/\/uniquedevs.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/uniquedevs.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},[]]}},"_links":{"self":[{"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/case-studies\/5929","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/case-studies"}],"about":[{"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/types\/case-studies"}],"author":[{"embeddable":true,"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":10,"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/case-studies\/5929\/revisions"}],"predecessor-version":[{"id":5946,"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/case-studies\/5929\/revisions\/5946"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/media\/5849"}],"wp:attachment":[{"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/media?parent=5929"}],"wp:term":[{"taxonomy":"case-study-category","embeddable":true,"href":"https:\/\/uniquedevs.com\/en\/wp-json\/wp\/v2\/case-study-category?post=5929"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}