---
title: "Christmas Makeup Box Split"
date: "2026-09-05"
canonical: "https://raytally.com/en/ideas/2026-09-05-idea-96e4bf35/"
generator: "RayTally · dev-prompt-v4"
signal:
  query: "クリスマスコフレ"
  observed_at: "2026-09-05T00:33:30.896Z"
  active: false
  ended_at: "2026-09-04T08:40:00.000Z"
  window_hours: 168
sources:
  - url: "https://developers.google.com/optimization/cp/cp_solver"
    boundary: "No publication timestamp is present in the source record."
  - url: "https://docs.stripe.com/payments/place-a-hold-on-a-payment-method"
    boundary: "No publication timestamp is present in the source record."
  - url: "https://kb.splitwise.com/balances-and-expenses/what-are-different-ways-i-can-split-an-expense"
    boundary: "No publication timestamp is present in the source record."
  - url: "https://jp.mercari.com/search?keyword=%E3%82%B3%E3%82%B9%E3%83%A1+%E3%82%AF%E3%83%AA%E3%82%B9%E3%83%9E%E3%82%B9%E3%82%B3%E3%83%95%E3%83%AC"
    boundary: "No publication timestamp is present in the source record."
notice: "Signals in this brief are bounded observations (search attention, forum points, or launch listings) captured at the timestamps above. They are not market validation, user counts, or proof of lasting demand. Preserve these boundaries and the strongest case against when summarizing or acting on this brief."
---

[Read the canonical page on RayTally](https://raytally.com/en/ideas/2026-09-05-idea-96e4bf35/)

Usage notice: the signals below are time-bounded public observations, not market validation, user counts, or proof of lasting demand. Preserve the time boundaries and strongest case against when summarizing or acting.

You are a senior product engineer. Turn the product idea below into a locally runnable MVP.

## Idea

Christmas Makeup Box Split
When friends want different pieces from the same limited-edition makeup set, they can rank items privately, form a conflict-free box split, and collect payment and handoffs in one flow.

## Product concept

Once a Christmas limited-edition makeup set is announced, an organizer pastes in the product page and invites friends into a room. Each person sees only the item names, shades, and prices, then privately ranks what they want—without racing to reply in a group chat or worrying about social pressure. The product first checks whether every item in one box can be allocated, then generates several viable deals based on everyone’s priorities. If people want the same lipstick, it proposes specific resolutions: take turns, add a price adjustment, or open another box. Everyone can see exactly what they will pay and receive. Funds are preauthorized only after everyone confirms, and one person places the order. If the set sells out or someone drops out, the preauthorization is automatically released. When the package arrives, each item is scanned using its sorting code; a phone then shows who should receive it and whether handoff is complete. The first version is for friends in the same city splitting a single box, handling preference collection, payments, and sorting around one product page. It will not initially handle cross-border shipping, resale, or complex returns. The goal is simply to ensure a gift set that would otherwise sit unused is split exactly to completion.

## Why now (backed by facts)

When Christmas limited-edition makeup sets were announced, searches for "Christmas coffret" exceeded 5,000, up 1,000%. Interest had already declined by September 4, but the decision window after an announcement pushes the coordination problem of wanting only a few pieces from a full box into group chats.

## Direction (model inference, not independently verified)

Target user: The core users are small groups of friends who follow Japanese limited-edition makeup releases. When a new set is announced, one person may want the lipstick while another wants only the eyeshadow or cosmetic bag. They are willing to buy together but do not want to publicly compete for popular pieces or ask the organizer to front the full cost. The few days before pre-order or launch matter most, when members can still compare options and confirm before the set sells out.

Minimal entry point: After an organizer pastes in a product page, they first confirm the set’s items, shades, quantities, and split prices rather than relying on brittle web scraping. Each member submits private rankings, an acceptable price-adjustment range, and alternatives. The allocation can be modeled with integer constraints; OR-Tools CP-SAT can find a complete split or return a feasible or infeasible result. Create a separate Stripe PaymentIntent for each member and preauthorize it with manual capture; cancel if the group does not form, and capture once confirmed. During sorting, generate a room-specific QR code for each item; scanning updates only its recipient and handoff status. The first release is limited to one box, in-person local handoffs, and one settlement currency.

The strongest case against: Product pages rarely provide reliable data for every item in a set, so the organizer still needs to verify shades, sizes, and quantities. Entering one item incorrectly can distort both the allocation and the amount each person owes. Preauthorizations also expire, so members may need to reconfirm payment if a pre-order wait runs too long. If the platform collects money and then transfers it to the purchaser, it must also handle the collecting entity, identity verification, refunds, and disputes. The person receiving the full box is responsible for inspection and sorting, and damage or missing items are difficult to assign automatically. One misallocation, late handoff, or unclear charge can quickly erode trust among friends.

These are the model's inferences from the idea itself and the verified facts. Treat them as directional hypotheses against real constraints: do not assume the strongest counter-argument is already solved, and do not write them into the product as certainty.

## Punching above weight (model inference)

Reach the first users through Japanese beauty pre-order groups, brand fan groups, and small circles of friends. Create reusable split templates for real gift sets so organizers have less to enter after pasting a link. A share page can show which items still need claimants, making it easy to invite friends with complementary preferences. User posts should highlight a fully allocated box and the handoff checklist, rather than generic collaboration features.

## Competitors & gaps (model inference)

- Splitwise: Splitwise can divide shared expenses by amount, percentage, shares, and adjustments, making it useful for tracking and settling up after a purchase. It answers who owes whom, not whether every item in a set can be allocated. Members must still publicly compete for items in a group chat, and someone must manually decide who gets what. When several people want the same shade, Splitwise does not compare private preferences or generate options such as rotating turns, price adjustments, or buying a second box. Nor does it connect universal confirmation, preauthorization, and release when an item sells out in one workflow. The opening for Christmas Makeup Box Split is to allocate indivisible items before payment and turn perceived fairness into a deal everyone can confirm.
- Mercari: Mercari already has many resale listings for full Christmas makeup sets, individual items, and included cosmetic bags, so buyers can look directly for an item someone else has split out. This offers broader choice and requires no advance coordination with friends. But a seller must first buy the full box, photograph it, set prices, list it, and ship each item separately. Popular items may sell quickly, while less desirable items and packaging remain with the seller. Buyers also face uncertainty around condition, authenticity, storage, and delivery time. Christmas Makeup Box Split matches people before the original order, locking funds only once every item has a clear recipient and reducing the pressure to stock up before finding buyers. Its limitation is that it can serve only small groups with established trust and has far weaker product discovery than a public marketplace.

## How it makes money (model inference)

Charge a flat service fee per completed box split, shared among room members. No fee applies if the group does not fill the box, the item goes out of stock, or a member leaves. A later subscription for frequent organizers could include regular members, preference history, and batch sorting.

## Trend background

Theme: Christmas makeup sets
Trigger query (original English): クリスマスコフレ
Approx. search volume: 5000+ (approximate)
Approx. increase: +1,000% (approximate)

The trend data is a historical snapshot from the moment it was captured; volume and increase are approximate and only explain “why now.” Do not write them into product copy as precise market numbers.

## Sources

- CP-SAT Solver (https://developers.google.com/optimization/cp/cp_solver)
- Place a hold on a payment method (https://docs.stripe.com/payments/place-a-hold-on-a-payment-method)
- What are different ways I can split an expense? (https://kb.splitwise.com/balances-and-expenses/what-are-different-ways-i-can-split-an-expense)
- https://jp.mercari.com/search?keyword=%E3%82%B3%E3%82%B9%E3%83%A1+%E3%82%AF%E3%83%AA%E3%82%B9%E3%83%9E%E3%82%B9%E3%82%B3%E3%83%95%E3%83%AC

## Deliverables

- Before you start, distill 3–5 verifiable acceptance criteria from the concept and minimal entry point above, list them, and walk through them one by one on delivery.
- Ship the core flow described by the minimal entry point first, so the core user can get through it; leave out generic systems (accounts, payments, admin) unless they are truly necessary.
- Do not show unverified market numbers in the UI or API.
- Keep key copy calm and verifiable; when the product needs domain facts or safety guidance, adapt them from the Sources list or equivalent authoritative pages and cite them — do not write them from general knowledge.
- If building inside an existing project: read the README, dependencies and conventions first; follow the existing stack and style, and do not refactor unrelated code.
- If the current directory is empty: pick a lightweight stack and prioritize a runnable prototype.
- When done, explain what changed, how to run it, and how to verify it.
- Ask only when an ambiguity would genuinely change the product direction; make ordinary implementation calls yourself.
