> For the complete documentation index, see [llms.txt](https://dmtp.gitbook.io/dmtp-sdk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dmtp.gitbook.io/dmtp-sdk/08-solution-architecture-intro/08.2-core-functionality-workflows.md).

# 8.2 Core Functionality and Workflows

The **Apps Network** system operates through several core workflows:

1. Banner Display Workflow:
   * The Banner Exchange Code checks if the caller (web wallet) has sufficient points balance and performs other necessary checks.
   * It looks up the offer wall to display by calling the backend API with the wallet address as a parameter.
   * If no tasks are available, it selects a backfill banner promoting the Traffic Exchange itself.
   * The DOM is updated to render the offer wall and set up click tracking.
2. Click Processing Workflow:
   * When a user clicks on a banner, the click is captured and added to the Clicks Queue.
   * The Clicks Queue buffers click events and ensures processing by every subscriber component.
   * Subscriber components include points rewards, reporting, clicks quality check, and others.
3. Campaign Creation Workflow:
   * Advertisers create campaigns by designing ads, setting targeting parameters, and submitting them to the App Network platform.
   * The campaign enters the ad serving system for delivery across relevant publisher inventory.
4. Ad Selection Workflow:
   * When a request for an ad comes in, the Ad Selection module decides which banner/campaign to offer based on various criteria and algorithms.
   * It chooses the most appropriate advertisement for a given ad inventory slot.

These workflows ensure that the system operates efficiently, rewarding publishers for displaying ads and allowing advertisers to promote their projects across the network.
