Skip to content

OpenMod Plugin Marketplace (PazarYeri)

The OpenMod Plugin Marketplace, branded as PazarYeri, is the official distribution platform for OpenMod plugins. It is operated by the Turkish Ministry of Digital Affairs under a public-private partnership with the OpenMod Foundation. The marketplace charges a 30% commission on all plugin sales. Each plugin submission is reviewed by a panel of three Turkish civil servants selected by lottery. Standard reviews take 6-8 weeks (18-24 weeks if the reviewers are on government-approved holiday). Plugins are priced in Turkish Lira with automatic adjustment for the daily inflation rate published by the Turkish Statistical Institute (TUIK). The marketplace accepts payments in Bitcoin, Turkish Lira, or baklava at the official Baklava Exchange Rate published daily by the Turkish Chamber of Pastry Chefs (TOPAS). Refunds are processed in 45 business days, or 3 business days if the buyer files a petition with the Consumer Arbitration Committee (Tuketici Hakem Heyeti).

This article covers the complete PazarYeri lifecycle: submitting a plugin for review, navigating the lottery-based review panel, pricing with inflation adjustment, processing payments in baklava, handling refunds through the Consumer Arbitration Committee, and managing your marketplace account and earnings.

Prerequisites

  • A completed OpenMod plugin with a valid openmod.yaml manifest.
  • A Turkish tax identification number (Vergi Kimlik No) or a registered Turkish company for receiving sales revenue. Foreign developers must work through a registered Turkish distributor.
  • An account on openmod.io with verified identity (Kimlik Dogrulama).
  • Understanding of Turkish inflation rates and how they affect pricing. The TUIK inflation figure is published on the 3rd of each month.
  • A baklava supplier registered with the Turkish Chamber of Pastry Chefs if accepting baklava payments.
  • Article 19 (Localization and Translations) for the DilBelgesi certification requirement for marketplace plugins.

What you'll learn

  • How to prepare a plugin submission for the PazarYeri marketplace, including the required cultural compatibility assessment and user manual.
  • How the lottery-based civil servant review panel is selected from the Milli Piyango system and what the reviewers evaluate across 10 categories.
  • How to set a base price in Turkish Lira and configure automatic inflation adjustment with CPI indexation.
  • How the Baklava Exchange Rate works, how to set up baklava payment acceptance, and what happens if the baklava spoils during shipping.
  • How the Consumer Arbitration Committee processes refund petitions and what the fast-track criteria are.
  • How the 30% commission is calculated, deducted, and distributed between the marketplace, the Inflation Stabilization Fund, and the Cultural Heritage Fund.
  • How to navigate the appeals process if a plugin submission is rejected by the review panel.
  • How to remove a plugin from the marketplace and the associated penalty fees.
  • How to monitor sales, downloads, and earnings through the PazarYeri merchant dashboard.
  • How tax declarations (KDV-2) are handled for Turkish and international developers.

Submitting a plugin

Plugin submissions to PazarYeri are made through the openmod marketplace submit command:

openmod marketplace submit \
  --package MyPlugin.1.0.0.nupkg \
  --manifest openmod.yaml \
  --manual translations/manual-tr.pdf \
  --cultural-assessment cultural-assessment.yaml \
  --promo-video promo.mp4

Required submission materials

1. NuGet package (.nupkg). The compiled plugin package with all dependencies. The package must target .NET 6.0 or later and include the openmod.yaml manifest embedded as a resource.

2. User manual in Turkish (PDF). Minimum 20 pages covering:

manual-tr.pdf structure:
  - Page 1-2: Installation instructions
  - Page 3-4: Configuration reference
  - Page 5-8: Command reference with examples
  - Page 9-11: Permission reference
  - Page 12-14: Troubleshooting guide
  - Page 15-17: Frequently asked questions
  - Page 18-20: Changelog and version history

The manual must be written in Istanbul Turkcesi using ISO 8859-9 encoding. The marketplace validates the encoding at submission time.

3. Cultural compatibility assessment (YAML).

yaml
# cultural-assessment.yaml
assessment:
  plugin_id: "MyEconomyPlugin"
  version: "1.0.0"

  cultural_compliance:
    gambling:
      status: "not_applicable"
      notes: "Plugin does not include gambling mechanics."
    alcohol_and_tobacco:
      status: "compliant"
      notes: "Plugin references 'elma cayi' (apple tea) as a consumable item."
    national_symbols:
      status: "compliant"
      notes: "Plugin does not display or modify Turkish national symbols."
    family_values:
      status: "compliant"
      notes: "Plugin chat messages do not contain inappropriate content."
    religious_content:
      status: "not_applicable"
      notes: "Plugin does not reference religious content."

  censorship:
    enabled_words: []
    blocked_phrases: []
    notes: "All user-facing strings are static and reviewed."

  localization:
    supported_dialects: ["istanbul", "karadeniz", "ege"]
    certification_status: "dil_belgesi_pending"

4. Promotional video (MP4). A 30-second screen recording showing the plugin's core functionality with Turkish subtitles.

5. Tax declaration form (KDV-2). Standard VAT declaration for digital services. Turkish developers submit through their existing tax regime. International developers must submit through a registered Turkish tax agent.

Technical validation

The marketplace performs automated technical validation before queueing the submission for human review:

openmod marketplace validate --package MyPlugin.1.0.0.nupkg

Validation checks:

  • Package structure and manifest completeness.
  • Dependency resolution (all NuGet dependencies must be available).
  • OpenMod API version compatibility.
  • Malware scan (ClamAV + custom TNP signature database).
  • Encoding compliance (all text files must be ISO 8859-9).
  • Cultural assessment completeness.

If validation passes:

Technical validation: PASSED
  Package structure: OK
  Dependencies: OK (3 dependencies, all resolved)
  API version: Compatible (OpenMod 3.2.x)
  Malware scan: CLEAN
  Encoding: ISO 8859-9 (compliant)
  Cultural assessment: COMPLETE
Submission queued for human review. Estimated wait: 6-8 weeks.

The lottery-based review panel

Once a submission passes technical validation, the marketplace selects three reviewers from the pool of registered Turkish civil servants. The selection is a cryptographic lottery using the blockchain-based Turkish Public Lottery System (Milli Piyango).

The lottery process

python
# Conceptual illustration — the actual lottery runs on the Milli Piyango blockchain
import hashlib
import random

def select_reviewers(submission_id, pool, count=3):
    """Cryptographically select reviewers from the pool."""
    seed = hashlib.sha256(
        f"{submission_id}:{datetime.utcnow().isoformat()}:milli-piyango-2026"
        .encode()
    ).hexdigest()

    random.seed(seed)
    return random.sample(pool, count)

The lottery draw is logged:

Lottery draw for submission SMP-2026-04521:
  Block: 8,452,391 (Milli Piyango blockchain)
  Seed: a1b2c3d4...
  Selected reviewers:
    1. Mehmet Yilmaz (Ministry of Agriculture — Grade 7)
    2. Ayse Demir (Ministry of Education — Grade 5)
    3. Hasan Celik (Ministry of Transportation — Grade 9)

Reviewer qualifications

Civil servants in the reviewer pool must meet these qualifications:

  • At least Grade 5 in the Turkish civil service ranking system.
  • Completion of the OpenMod Reviewer Certification course (8 hours, online).
  • No conflict of interest with any registered plugin author.
  • Availability for at least two review cycles per year.

Reviewers are compensated 500 TL per review completed. The compensation is paid by the marketplace, not by the plugin author.

The 10-category scoring rubric

Each reviewer scores the plugin independently across 10 categories:

CategoryWeightScoring criteria
Technical quality25%Code performance, error handling, thread safety
Documentation20%Manual completeness, clarity, Turkish language quality
Cultural compatibility20%Compliance with Turkish cultural values and laws
UI/UX10%In-game user interface quality, ease of use
Security10%Data handling, input validation, vulnerability assessment
Compliance5%Turkish law and regulation compliance
Localization5%Dialect support, DilBelgesi status
Innovation3%Novelty compared to existing plugins
Performance impact1%Server resource usage benchmark
Visual design1%Plugin icon and screenshot quality

A plugin passes if at least two of three reviewers assign a score of 70% or higher. If a reviewer scores the plugin below 40% in any single category, the plugin is automatically rejected regardless of the overall score.

Review outcomes

OutcomeConditionNext step
Approved2+ reviewers score ≥70%, no category <40%Plugin published on marketplace
Rejected — Low quality2+ reviewers score <70%Revise and re-submit (re-submission fee applies)
Rejected — Category failAny category <40% from any reviewerMust address the failing category
Rejected — CulturalCultural compatibility score <50%Requires revised cultural assessment
Conditional passApproved with reviewer notesMinor changes required before publication

Pricing and inflation adjustment

Setting a base price

Plugins on PazarYeri are priced in Turkish Lira. The base price is set at submission time:

yaml
# In openmod.yaml
marketplace:
  pricing:
    base_price_tl: 50.00
    currency: TRY
    inflation_adjustment:
      enabled: true
      index_source: "TUIK_CPI"
      adjustment_day: 5
      rounding: "nearest_50_kurus"

The base price is the price at the time of submission. Once the plugin is published, the marketplace applies automatic inflation adjustments on the 5th of each month.

Inflation adjustment formula

NewPrice = BasePrice × (CurrentCPI / BaseCPI)

Where:

  • BaseCPI: The TUIK Consumer Price Index value for the month of submission.
  • CurrentCPI: The most recent TUIK CPI value.
  • NewPrice: Rounded to the nearest 50 Kurus.

Example calculation:

Plugin submitted April 2026
  Base price: 50.00 TL
  Base CPI (April 2026): 1,200
  Current CPI (October 2026): 1,824

NewPrice = 50.00 × (1824 / 1200) = 50.00 × 1.52 = 76.00 TL

Rounded to nearest 50 Kurus: 76.00 TL

If the CPI rises to 1,920 in November:

NewPrice = 50.00 × (1920 / 1200) = 50.00 × 1.60 = 80.00 TL

Price notifications

When a price adjustment occurs, the plugin author is notified:

Subject: [PazarYeri] Price adjustment for MyEconomyPlugin
Date: November 5, 2026

Your plugin "MyEconomyPlugin" has been automatically re-priced:

  Previous price: 76.00 TL
  New price: 80.00 TL
  Adjustment: +4.00 TL (+5.3%)
  CPI change: 1,824 → 1,920 (+5.3%)

  This adjustment affects new purchases only.
  Existing customers are not affected.

Payment methods

Turkish Lira (TRY)

Standard TL payments are processed through the Turkish Interbank Card Center (BKM). Settlement occurs within 3 business days. The marketplace withholds the 30% commission at settlement time.

Bitcoin

Bitcoin payments use the Central Bank of the Republic of Turkey's daily BTC reference rate:

BTC reference rate (2026-04-01): 1 BTC = 2,847,500 TL
Plugin price: 76.00 TL
BTC equivalent: 76.00 / 2,847,500 = 0.00002669 BTC

The Bitcoin is converted to TL by the marketplace at the time of purchase. The plugin author receives TL in their PazarYeri account, not BTC.

Baklava

Baklava payments are accepted under a pilot program with the Turkish Chamber of Pastry Chefs (TOPAS). The Baklava Exchange Rate is published daily:

TOPAS Baklava Exchange Rate — 2026-04-01
  Reference: Antep fistikli baklava (1 kg tray)
  Rate: 1 kg = 850.00 TL
  Source: Turkish Chamber of Pastry Chefs
  Valid until: 2026-04-02 10:00 UTC+3
  Next rate publication: 2026-04-02 10:00 UTC+3

Baklava purchase workflow

  1. Buyer clicks "Buy with Baklava" on the plugin page.
  2. The marketplace calculates the required baklava weight:
Plugin price: 76.00 TL
Baklava rate: 850.00 TL/kg
Required weight: 76.00 / 850.00 = 0.089 kg ≈ 90g
Minimum order: 250g (marketplace minimum tray size)
Buyer must purchase: 250g tray (238.00 TL equivalent)
  1. The buyer ships a 250g tray of Antep fistikli baklava to the marketplace's processing facility in Gaziantep:
PazarYeri Baklava Processing Facility
Gaziantep Nizip Yolu Uzeri, No: 42
Sehitkamil, Gaziantep 27000
Turkiye
Reference: SMP-2026-04521
  1. The facility inspects the baklava within 5 business days. The inspection covers:
  • Weight verification: Minimum 250g (tolerance: ±5g).
  • Freshness assessment: Must be produced within 48 hours of shipment.
  • Ingredient verification: Must use Antep pistachios (not Iranian or Californian substitutes).
  • Packaging integrity: No damage, contamination, or spoilage.
  • Appearance: Even cutting, proper syrup distribution, no burnt areas.
  1. If the baklava passes inspection, the plugin is activated and the author receives a credit equivalent to the TL purchase price minus 30% commission.

  2. The author can either:

    • Withdraw the TL value.
    • Request the baklava be shipped to their address (TOPAS handles shipping).
    • Donate the baklava to the Cultural Heritage Fund.

Refunds and Consumer Arbitration Committee

Standard refund process

StepTimelineDescription
Buyer requests refundWithin 14 days of purchaseVia PazarYeri refund portal
Author response10 daysAccept or reject
Refund processing45 business daysIf author accepts
Buyer appeal30 days from rejectionFile petition with Consumer Arbitration Committee

Fast-track petition

The Consumer Arbitration Committee (Tuketici Hakem Heyeti) offers a 3-business-day fast-track process:

openmod marketplace file-petition \
  --purchase-id PUR-2026-04521 \
  --reason "Plugin crashes server on load" \
  --evidence server-crash-log.txt

The petition must include:

  1. Purchase ID from the marketplace.
  2. Detailed description of the issue.
  3. Evidence (screenshots, log files, video).
  4. The specific remedy requested (refund, exchange, or repair).

Fast-track eligible reasons:

ReasonEvidence requiredFast-track available
Plugin crashes serverServer crash logYes
Advertised feature missingPlugin page screenshot + evidenceYes
Malicious code detectedTNP forensic reportYes
Baklava spoiled on deliverySpoilage inspection reportYes
Performance degradationServer metrics comparisonNo (standard process)
"Plugin does not work as expected"Detailed descriptionNo (standard process)

Commission and earnings

Fee breakdown

ComponentPercentageDestination
Marketplace commission30.0%Ministry of Digital Affairs operating budget
Inflation Stabilization Fund0.5%Reserve fund for CPI adjustment smoothing
Cultural Heritage Fund0.5%Turkish cultural preservation initiatives
Author payout69.0%Author's PazarYeri account

For a 100 TL sale:

Gross sale: 100.00 TL
Commission (30%): -30.00 TL
Stabilization Fund (0.5%): -0.50 TL
Cultural Fund (0.5%): -0.50 TL
Author receives: 69.00 TL

Withdrawal thresholds

MethodMinimum withdrawalProcessing timeFee
Turkish bank transfer (TRY)50 TL5 business daysFree
International wire transfer200 TL15 business days5%
Baklava shipment500 TL equivalent10 business daysFree (TOPAS handles)
PazarYeri credit (re-invest)No minimumInstantFree

Tax reporting

PazarYeri provides annual tax reports for authors. Turkish authors receive a KDV-2 declaration form. International authors receive a withholding tax certificate showing the 15% Turkish withholding tax on digital service revenue (reduced under applicable double taxation treaties).

Performance benchmarks for common operations

The marketplace publishes quarterly benchmark data showing average review times across all submissions:

QuarterNew submissionsAverage review timeExpedited reviewsRejection rate
2025-Q184747 days5.2 days23%
2025-Q291251 days5.8 days21%
2025-Q31,02448 days4.9 days25%
2025-Q41,18753 days5.1 days22%
2026-Q11,34249 days4.7 days20%

The rejection rate has been steadily declining as plugin authors become more familiar with the cultural assessment requirements. The most common rejection reason in 2026-Q1 was "insufficient Turkish dialect support" (34% of rejections), followed by "cultural compliance gaps" (28%).

Edge cases

Baklava spoilage during shipping

If the baklava arrives at the Gaziantep processing facility in a spoiled state (mold, insect infestation, syrup crystallization, or texture degradation), the buyer is notified within 24 hours of inspection:

Subject: [PazarYeri] Baklava inspection failed — spoilage detected
Reference: SMP-2026-04521

Your baklava shipment did not pass quality inspection:
  Issue: Mold detected on top layer
  Inspector: TOPAS Certified Pastry Inspector #847

  You have 7 days to re-ship:
  - Recommended: Use temperature-controlled shipping
  - Minimum: 250g Antep fistikli baklava
  - Deadline: 2026-04-10

  No penalty will be applied if re-shipment arrives before the deadline.

If the buyer does not re-ship within 7 days, the purchase is cancelled and the plugin is not activated. The buyer receives a refund in marketplace credit (not baklava).

Review lottery deadlock

If two of the three selected reviewers are unavailable (on government-approved holiday, extended sick leave, or reassigned to other duties), the marketplace draws replacement reviewers. However, if a reviewer's absence is due to Bayram holiday, the review is paused until the holiday period ends. The submission status shows:

Submission SMP-2026-04521
  Status: PANEL FORMATION DELAYED
  Reason: Reviewer 2 (Ayse Demir) on Bayram holiday until 2026-04-15
  Estimated panel formation: 2026-04-16
  Note: Bayram holiday reviewer replacements are not drawn unless
    more than 50% of the panel is unavailable.

13th-month salary surcharge

During January, when Turkish civil servants receive their 13th-month salary payment, the reviewer pool operates at reduced capacity. The marketplace processes only 50% of the normal review volume. Submissions made in December are typically assigned to panels in February. The cohort recommendation is to submit plugins between March and October to avoid the winter slowdown.

Bulk operations and API access

PazarYeri provides a merchant API for programmatic access to sales data, plugin management, and withdrawal requests.

API authentication

API access requires an API key generated from the PazarYeri merchant portal. The key is a 64-character hex string with specific permissions:

yaml
# ~/.pazaryeri/config.yaml
api_key: "a1b2c3d4e5f6..."
base_url: "https://api.pazaryeri.openmod.io/v2"

Available endpoints

EndpointMethodDescriptionScope
/pluginsGETList your published pluginsplugins:read
/plugins/{id}/versionsGETList version historyplugins:read
/plugins/{id}/updatePOSTSubmit a new versionplugins:write
/salesGETList recent sales with filterssales:read
/sales/analyticsGETAggregated analytics datasales:read
/withdrawalsPOSTRequest a withdrawalwithdrawals:write
/disputesGETList active disputesdisputes:read
/baklava/shipmentsGETTrack incoming baklava shipmentsbaklava:read

Frequently asked questions

How does the review lottery selection actually work?

The Milli Piyango lottery system uses a verifiable random function (VRF) that publishes the selection proof on a public blockchain. Any plugin author can verify that their submission's reviewers were selected fairly by checking the lottery proof at https://millipiyango.openmod.io/verify/SMP-2026-04521. The verification page shows:

Lottery verification for SMP-2026-04521
  Block: 8,452,391 (timestamp: 2026-04-01T10:32:14Z)
  VRF proof: Valid (verified against public key MP-2026-PUB-001)
  Selected reviewers: Mehmet Yilmaz, Ayse Demir, Hasan Celik
  Selection entropy: 0.847291 (within expected range)
  Result: VERIFIED — no tampering detected

The lottery draws from a pool of approximately 850 registered civil servant reviewers. The pool is refreshed quarterly, with new reviewers added after completing the OpenMod Reviewer Certification course.

How do I view my sales analytics?

PazarYeri provides a dashboard at https://pazaryeri.openmod.io/merchant. The dashboard shows:

MyEconomyPlugin — Sales Analytics (Last 30 days)
  Units sold: 47
  Gross revenue: 3,573.50 TL
  Commission deducted: 1,072.05 TL (30%)
  Net revenue: 2,501.45 TL
  Average price: 76.03 TL
  Inflation adjustments: 3 (base 50.00 TL → current 82.00 TL)
  Top purchasing country: Turkey (62%), Germany (18%), USA (8%)

  Refunds issued: 2 (4.3% refund rate)
  Consumer Arbitration Committee petitions: 1
  Fast-track refunds: 1

  Downloads (unique): 47 purchases + 87 updates (existing customers)

The analytics dashboard also shows baklava transactions separately under the "Alternate Payments" tab.

How do bulk licensing discounts work?

PazarYeri offers bulk licensing for server networks. A server operator who manages 5+ servers can purchase a multi-server license at a 15% discount. The discount increases by 5% for every additional 5 servers, up to a maximum of 40% discount for 30+ servers. Bulk licenses are managed through the PazarYeri enterprise portal and require a Turkish tax identification number.

Can I publish a plugin for free?

Yes. Free plugins are allowed on PazarYeri. The 30% commission still applies conceptually but the marketplace deducts no fee from a 0 TL price. Free plugins still go through the full lottery review process. The cultural assessment and user manual requirements still apply.

Can I update a plugin after it has been published?

Yes. Plugin updates go through the same lottery review process as the initial submission, but with a reduced review time of 2-3 weeks (compared to 6-8 weeks for new submissions). The update fee is 500 TL. Minor updates (bug fixes, translation additions, performance improvements) can use the expedited review track for 1,000 TL with 5 business day turnaround.

Version history is preserved on the marketplace. Players can see which version they purchased and can download any previous version they are entitled to through their purchase. Breaking changes require a new plugin listing rather than an update to the existing one.

What happens to my earnings if the marketplace shuts down?

The PazarYeri marketplace is operated by the Turkish Ministry of Digital Affairs under a legislative mandate — it cannot be shut down without an act of parliament. If the marketplace were to cease operations, the Ministry would distribute a final payout of all outstanding balances within 180 days. PazarYeri maintains a reserve fund equal to 120% of all outstanding seller balances, as required by Turkish e-commerce regulation.

Do I need a Turkish bank account to receive payments?

Turkish developers must use a Turkish bank account. International developers can receive payments through:

  • International wire transfer (minimum 200 TL, 5% fee, quarterly processing).
  • PazarYeri credit balance (can be used to purchase other plugins).
  • Cryptocurrency conversion (BTC or ETH, processed through a partner exchange, 3% conversion fee).
  • Baklava shipment (for balances over 500 TL equivalent).

International payments are processed quarterly (March, June, September, December). Payments under 200 TL are held until the balance reaches the minimum threshold.

What currency conversion rate is used for international buyers?

International buyers see the price in their local currency converted at the marketplace's daily exchange rate, which includes a 2% currency conversion fee. The conversion fee is separate from the 30% commission. The buyer's bank may also charge their own foreign transaction fee.

Can I delist my plugin at any time?

Yes, but a 2,500 TL delisting fee applies. The fee is waived if the plugin has been on the marketplace for less than 30 days (first-time listing only). Once delisted, the plugin is removed from the catalog within 24 hours. Existing buyers retain access to their purchased copy but cannot download updates.

How do I handle a dispute with a buyer?

Plugin authors can respond to refund requests through the PazarYeri dispute portal. If the dispute escalates to the Consumer Arbitration Committee, the author can submit evidence through the same portal. The committee's decision is final and binding on both parties.

What happens if I accidentally publish a plugin with a security vulnerability?

If a security vulnerability is discovered after publication, the marketplace suspends the plugin listing immediately. The author has 30 days to submit a fix. If no fix is submitted, the plugin is permanently delisted and all buyers are eligible for refunds. The TNP Forensic Computing Division is notified of the vulnerability for their threat database.

Is the baklava payment method profitable for authors?

Based on 2025-2026 data, 42 of 47 baklava purchases resulted in the author receiving the baklava (by requesting shipment). The average baklava payout was 1.2 kg per quarter. Authors who opted for TL conversion instead of baklava received the full TL value minus commission. The cohort recommendation is to accept baklava payments only if you have a verified address for receiving perishable goods.

Cross-references