You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We'd like to request a delegated Shop Pay client_id for our agent platform.
Who we are
Shopperhaus is a cross-border buying-agent platform (based in US). We help LATAM buyers discover and buy products from US Shopify merchants, then consolidate and forward the packages to the buyer's country. Our backend is Medusa v2.
An agent that (1) discovers products via the Global Catalog MCP, (2) builds a checkout via Checkout (Kit/MCP), and (3) has the buyer pay the merchant directly through the delegated dev.shopify.shop_pay handler. We serve a UCP agent profile at the well-known URL above and are finalizing RFC 9421 (ECDSA P-256) request signing.
Where this lives in our product
Our MVP is an AI shopping assistant inside our mobile app: the buyer asks for a product, we query the Shopify Catalog live, in real-time, alongside our own (non-Shopify) catalog, present the results for that session, and complete the purchase of the Shopify item through the merchant's delegated Shop Pay checkout. We do not persist, cache, or index any Catalog data, and we render product content/images in real-time. Our own browse pages use only our pre-existing non-Shopify catalog. (A later phase adds the same live, search-driven surface to our web storefront — still no caching/indexing.)
Money flow — merchant is the genuine MoR, and we charge no markup We run two fully separate payment rails:
Leg 1 — the product: the buyer pays the merchant's PSP directly via the Shop Pay delegated handler. The merchant is the genuine Merchant of Record. The product money never touches Shopperhaus, and we apply no markup — the buyer pays the merchant's real Catalog price.
Leg 2 — our service (separate): Shopperhaus charges the buyer, on its own PSP (dLocal Go / Stripe), only for its actual service: international shipping/forwarding (US consolidation hub → LATAM, customs) plus a transparent discovery & order-management fee. Separate charge, separate receipt.
So the buyer sees three distinct line items: real product price (to the merchant) + shipping + Shopperhaus service fee. We are a transparent buying/forwarding agent, not a reseller.
How we comply with the UCP / Shopify API guardrails
Merchant = MoR: product is paid to the merchant's PSP; we never resell the product or touch the product money.
No alternative checkout for the product: the product always goes through Shopify Checkout / UCP complete_checkout.
No commerce/product index, no caching: we query the Catalog API in real-time per shopping session and render results and images live. We do not cache Catalog results, store Shopify product data in our own database, or build any product index. (Our own pre-existing non-Shopify catalog is separate.)
Transparent fee, no markup: our fee covers real services (discovery, consolidation, customs, forwarding, support) — never a hidden product markup.
No misrepresentation of the MoR: UI and receipts state the merchant is the product seller and Shopperhaus is the buying/forwarding service.
Real buyer context: we pass the buyer's true country/currency; ship_to = our US consolidation hub is a declared logistics forwarding address, not a disguised US buyer.
What we're requesting
A delegated Shop Pay client_id (we'll pilot with US buyers first).
Any guidance on buyer-side coverage for LATAM — we understand this may roll out over time and will gate our LATAM launch behind it.
Happy to share our dev store, the live agent profile, or anything else you need for review.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Hi UCP team
We'd like to request a delegated Shop Pay
client_idfor our agent platform.Who we are
Shopperhaus is a cross-border buying-agent platform (based in US). We help LATAM buyers discover and buy products from US Shopify merchants, then consolidate and forward the packages to the buyer's country. Our backend is Medusa v2.
What we're building with UCP
An agent that (1) discovers products via the Global Catalog MCP, (2) builds a checkout via Checkout (Kit/MCP), and (3) has the buyer pay the merchant directly through the delegated
dev.shopify.shop_payhandler. We serve a UCP agent profile at the well-known URL above and are finalizing RFC 9421 (ECDSA P-256) request signing.Where this lives in our product
Our MVP is an AI shopping assistant inside our mobile app: the buyer asks for a product, we query the Shopify Catalog live, in real-time, alongside our own (non-Shopify) catalog, present the results for that session, and complete the purchase of the Shopify item through the merchant's delegated Shop Pay checkout. We do not persist, cache, or index any Catalog data, and we render product content/images in real-time. Our own browse pages use only our pre-existing non-Shopify catalog. (A later phase adds the same live, search-driven surface to our web storefront — still no caching/indexing.)
Money flow — merchant is the genuine MoR, and we charge no markup We run two fully separate payment rails:
So the buyer sees three distinct line items: real product price (to the merchant) + shipping + Shopperhaus service fee. We are a transparent buying/forwarding agent, not a reseller.
How we comply with the UCP / Shopify API guardrails
complete_checkout.ship_to= our US consolidation hub is a declared logistics forwarding address, not a disguised US buyer.What we're requesting
client_id(we'll pilot with US buyers first).Happy to share our dev store, the live agent profile, or anything else you need for review.
Thanks!
All reactions