Advertising operations

Period

Each channel handles ad accounts, campaigns and billing differently. For Toss Shopping, an isolated runner per store reads daily performance, campaigns, ad groups and ads, and channel change history. Orders that came in through ads are identified from the benefit details in official order lookups and tagged. Coupang ads are handled through the same console menu and account structure. Paid billing and ad spend are recorded separately.

Handles Toss Shopping ad performance and changes on one screen
and brings ad spend and ad‑driven orders into profit

GoPostgreSQLTypeScriptNext.js

  • Toss Shopping daily ad performance, campaigns, ad groups and ads, and channel change history
  • Tags for orders that came in through ads, with expected profit using the fee rate applied to each order
  • Store profit with ad spend included
  • A ledger and duplicate protection for change jobs, with changes of unknown outcome never resent
  • An ad spend ledger that does not count ad top‑ups as costs
  • A Coupang ads menu and account structure

Ad top‑ups mistaken for ad spend

Problem
Booking ad wallet top‑ups directly as costs makes ad spend and profit drift from what was actually spent.
Solution
A ledger records wallet top‑ups, billing sources and actual costs separately. Store profit subtracts only ad spend that was actually incurred.

Ad changes with unknown outcomes

Problem
If the response to a campaign change is lost, resending it could apply the same change twice.
Solution
Change jobs are kept in a ledger where entries are never deleted, and identical requests map to the same job. Each job has an assigned runner and processing order, so only one runner submits it. Changes with unknown outcomes are not resent and are confirmed through official lookups.

Fees on orders that came in through ads

Problem
Toss Shopping applies a different product sales fee to orders that came in through ads. Without telling them apart, expected profit drifts from the real figure.
Solution
Ad‑driven items are confirmed from benefit evidence in official order lookups and tagged in order history and purchase tracking. Expected profit uses the fee rate applied to each item. The ad‑driven tag appeared on live order screens and purchase tracking.

Connection status before an official lookup

Problem
If an account shows as connected before an official lookup succeeds, an empty screen or another account's performance can look like real data.
Solution
Only accounts with a successful official lookup show as connected, and channels without lookup results stay empty. When an account changes, the connection is dropped and earlier performance is not attached to the new account.