hunter soares

Busca

Cases, contato e CV

Contact↗
PT

Directo · CreatorField app · paired with Renato Garcia8 min read

Who publishes, and on whose behalf.

The app of the person who produces the offer inside the store, and the model that decides who publishes on whose behalf

Client
Directo
Period
Aug. and Sep. 2026
Role
Paired with Renato Garcia
Scope
App for whoever produces the offer
Switching hats786×790Someone working in retail can hold four hats, and only one is in effect at a time. With the brand hat on, they see the catalog in any store and no per-store stock. The exact count only opens on the link with the branch.

Pair designing with designer Renato Garcia. Client: Directo, a Diletta client. Product: Creator. August and September 2026.

35
screens across four tracks, with the home screen as the only center.
3 axes
decide what each person sees and on whose behalf they publish.
16
screens of an alternative, delivered with the diagnosis beside them.

00 File

Client Directo, a Diletta client
Product Creator · the app of the person who produces the offer's content in the store
Role Senior Product Designer at Diletta Solutions, the company where I work, pair designing with Renato Garcia
Scope 35 screens across four tracks, the authorization model, and the build board in Figma
Validation with the client team, decision by decision
Platform mobile, plus a web panel for the people who decide
Period August and September 2026, one month of work

01 Summary

Problem. The TicTac feed only has offers if somebody photographs the product on the shelf and publishes it. That person, the creator, had no app.

Role and team. I'm a Senior Product Designer at Diletta, and Directo is a Diletta client. I worked in pair designing with designer Renato Garcia. We met every day and worked the elements together, to get more out of them and deliver faster. Directo validated each decision.

The decision. I replaced the list of three account types with an authorization model on three axes. The same person works at a store and represents a brand, and the list could not handle that.

Result. 35 screens across four tracks and a nine-row table that decides what each link sees. Afterwards Directo asked for our design system.

Status. Not live. One month of work, between August and September 2026, and the app has not been built yet.


02 Context

TicTac is a feed of offers from physical stores. Brands pay for it with retail media budget, the money spent to show up where the purchase happens. The buyer is somebody near the store. The person who produces the offer is the creator, who photographs and writes about the product on the shelf.

So my user was the person who works: the store merchandiser, the brand representative, someone producing content on their own. Each one sees a slice of the same data. That was the hard part.


03 Constraint

Whoever produces never sees money. Budget, paid reach and campaign return belong to the manager.

The same person can hold three roles, and each grants a different permission over the same product. The screen has to say which one is in effect right now. One hat at a time.

The person producing also does not choose the post's region. It comes from the approved link.

And CPF Seguro, the company's fraud-protection product, runs embedded inside this app under Directo's brand.


04 The problem in numbers

In Brazilian food retail, 38% of the causes of out-of-stock, the product missing from the shelf, start inside the store. That is where nobody is looking, and it is where the creator is. Without someone in the field with a task, a deadline and a reward, the feed has no offer to show.


05 Exploration

The proposal that already existed, measured against the market

When I joined, a flow was already designed. I compared it point by point with TikTok Shop, Field Agent, Roamler and BEES Force. Six findings came out, and three changed the design.

The screen asked for the account type before login. On those platforms the account is single and the role comes from an approved link, because some people are both.

Before, choosing a persona
After, one login and the accesses
On the left, the door of the flow that already existed: the person picks one of three personas before getting in, and each one leads to a different app. On the right, the final version: a single login, and the accesses each link unlocks show up later, inside the same app.

The automatic suggestion showed the store's interest ("high stock, 47 units") and hid the interest of the person about to produce. The market shows the estimated commission.

And the person producing typed in the price and the discount. Margin belongs to whoever holds the stock.

I brought the answer as a designed alternative, 16 screens, with the diagnosis beside them.


06 Decisions

D1 · Authorization is three axes that multiply

The question was "what can this person do". The answer that existed was a list of three account types, and it broke on the first real case.

First I split two people. Whoever executes gets the task and publishes, on the phone. Whoever decides sets budget and campaign, in a web panel. The app belongs to the one who executes.

The model has three axes: who authorizes, the scope and the degree. The scope crosses place, product and action. The degree has four steps: see, execute, publish directly and speak on behalf of the company. Each step asks for more verification.

Why: the reference came from banking. Corporate signing authority answers who signs, up to how much, on whose behalf and until when. With that logic the chain can only shrink. The degree never rises and validity shortens each time it is passed on, so an agency that only executes cannot give anyone the right to represent the brand.

The authorization tree1400×1123The model written before the screens: the three axes and the rules the design enacts, like cascading revocation and one hat at a time.

D2 · Whoever executes never sees budget

A table of nine rows by four columns says, for each type of link, what the person sees: stock, price, priority, budget, who revokes, who pays and three more. On the budget row, all four columns say "never".

Why: how much each one sees is a business rule. The person who works at the store sees the stock count. Someone who came by invitation sees only in stock, running low or gone. And without a reservation two people photograph the same shelf and one works for free, so the task is reserved first and shows as blocked for everyone else.

The data Link · the store where I work Open invitation · nearby store Brand · manufacturer Agency · intermediary
Stock 12 units, the exact number in stock, running low or gone, no number by chain and by region, never by store what the brand released to the agency
Price retail price and the store's margin only the retail price the suggested and the average actual price the average actual price
Display shelf, aisle, end cap, share only what the briefing describes aggregated shelf share aggregated
Priority of the day the one this branch set the one the task declares the one the brand itself set the agency client's
Other creators who at the store took what only "reserved", no name how many accepted, no names how many, no names
Budget, CPM, ROI never never never never
Exclusive task yes, only for people who work there no, it is contested within the radius yes, by brand invitation inherited from the contract
Who revokes the branch manager the store itself, when it closes the task the brand's trade team the brand, and it cascades
Who pays the store the store, per approved task the brand the agency

This table decides what each screen shows. Screen by screen, each one would give a different answer.

D3 · The personas did not turn into a build, so I wrote the list backwards

I presented nine personas. Directo found them too theoretical and proposed another start: describe the resolved state and walk back to today. The same conversation brought Bezos's rule of splitting reversible decisions from structural ones.

I put both ideas on one board in Figma: the resolved state at the top, with a date, and below it the steps that lead there, each with an owner and a deadline. The button label is reversible, and whoever is doing the work decides and tells the others. Where the price comes from is structural, and it goes to the table.

Why: a persona explains the why and does not say what to build first. Somebody deciding on Monday needs a list with owners.

What I gave up: consensus on everything. A reversible decision taken alone annoys somebody once. A structural one taken alone costs a quarter.

D4 · The price comes from the barcode

Whoever produces does not type a price. They scan the barcode on the shelf and the system returns the current offer from the catalog.

Why: a wrong price in a supermarket turns into a queue at the register and a product sold at a value nobody authorized. That made the barcode reader a mandatory piece of the first release.

D5 · Nothing publishes outside a campaign

Whoever decides creates the campaign first. With no active campaign, the publish button does not even appear.

Why: loose content has nobody paying for it. The campaign turns the work into something billable, and it gives the brand the right to refuse.


07 Craft

The single flow, 35 screens1800×1347All 35 screens on one board. The home screen is the only center, and four tracks come out of it, one per tab: task, create, earnings and account. All of them return to the center.
Your links786×2600The links screen, where the authorization model shows up for the person using it. There are four relationships, and only one is in effect at a time.
Link with the store
Open invitation
Who chooses the reach
Someone who works at the store sees the count. Someone who came by invitation sees only in stock, running low or gone. On the right, whoever decides the reach, which is never the person producing.
01The open task
02Reserved, with a deadline
03Review and send
FlowThe task from start to finish. The reservation locks it for 45 minutes. On sending, the person reports how many units they found, and the gap between nine and twelve is the data the brand is buying.

I wrote six rules before the first pixel, among them reserve before executing and reward only after approval. Two new pieces entered the client's system: the task card and the context bar.


08 Result

35 screens across four tracks. The authorization model, with three axes, four types of link and four degrees, and the nine-row table. 16 screens of an alternative to the old flow. And the build board, with an owner and a deadline on every step.

The first two steps of the board1454×1030The first two steps of the build board. Each one says what it is, what gets blocked if it is missing, when it counts as done, who owns it and the deadline.

Afterwards Directo asked to adapt the house design system to their brand. It was agreed as a long-term foundation, outside the sprint. It was the first time anyone outside asked for that design system.

The app has not been built, so I have no usage numbers.


09 What I would do differently

I would go to the store before writing any persona. They came from market data and from conversations with the client, and none came from a merchandiser inside the supermarket. The visit got pushed to later, when it should have been the first step.

Two questions only the field answers: how much time the person has between two tasks, and what they do when the product the task asks for is not on the shelf.

The authorization model depends on contracts. Who signs, who revokes and who pays are still business answers, and until then every screen carries an assumption.


Sources

  • Out-of-stock in Brazilian food retail and in-store causes: Central do Varejo, March 2024
  • Platforms used in the diagnosis: TikTok Shop, Nextdoor, Field Agent, Roamler and BEES Force

  • design systems✦
  • product design✦
  • fintech✦
  • ai in the process✦
  • multi-brand✦
  • accessibility✦
  • research✦