// backend/http-functions.js import { response } from 'wix-http-functions'; import { addToCurrentCart, updateCurrentCart } from 'wix-ecom-backend/current-cart'; import { createCheckoutFromCurrentCart } from 'wix-ecom-backend/current-cart'; import { getCheckoutUrl } from 'wix-ecom-backend/checkout'; // GET /_functions/metaCheckout?products=123:2,456:1 export async function get_metaCheckout(request) { try { const url = new URL(request.url); const raw = url.searchParams.get('products'); // Meta sends URL-encoded; Wix gives you raw here if (!raw) return badRequest('Missing products'); // 1) Clear the cart (set to empty) await updateCurrentCart({ lineItems: [] }); // clears any stale items // 2) Parse items like "123:2,456:1" const lineItems = []; decodeURIComponent(raw).split(',').forEach(pair => { const [idStr, qtyStr] = pair.split(':'); const productId = (idStr || '').trim(); const quantity = Number(qtyStr); if (productId && quantity > 0) { lineItems.push({ quantity, catalogReference: { // Wix Stores appId (keep as-is) appId: '1380b703-ce81-ff05-f115-39571d94dfcd', catalogItemId: productId // If you use variants, include variant info per your catalog setup. } }); } }); if (!lineItems.length) return badRequest('No valid products'); // 3) Add all items to the current visitor's cart await addToCurrentCart({ lineItems }); // 4) Create a checkout based on the current cart const { checkout } = await createCheckoutFromCurrentCart(); // 5) Get the native Wix checkout URL and 302 redirect the shopper there const { checkoutUrl } = await getCheckoutUrl(checkout._id); return redirect302(checkoutUrl); } catch (err) { console.error('metaCheckout error:', err); return response({ status: 500, headers: { 'Content-Type': 'application/json' }, body: { error: 'server_error' } }); } } function badRequest(msg) { return response({ status: 400, headers: { 'Content-Type': 'application/json' }, body: { error: msg } }); } function redirect302(location) { return response({ status: 302, // temporary redirect headers: { Location: location } }); }
top of page

This on-the-spot, overnight solution reduces theappearance and severity of untimely blemishes so that you can be camera ready in a flash. It will help to dry up excess oil and impurities to promote the appearance of skin clarity with a brighter-looking complexion.

 

30ml Thames

1fl oz (30ml)

 

Caution: Discontinue use if redness or irritation occurs. Do not ingest. Do not use on damaged or broken skin.

 

This statement has not been evaluated by the Food and Drug Administration. This product is not intended to diagnose, treat, cure, or prevent any disease.

Barely Blemished Quick Spot Dry Solution

$39.00Price
Quantity

You Might Also Like

bottom of page