Documentation

    Documentation

    Documentation

    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    1. /
    2. /PaymentConductor

    Updated Jun 30, 20263 min listen

    1. /
    2. /PaymentConductor

    Updated Jun 30, 20263 min listen

    1. /
    2. /PaymentConductor

    Updated Jun 30, 20263 min listen

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Architecture
    Data Model
    Real Time
    Discovery Mutation Sync
    Security
    Backend Services
    k8s-postgres-fcm Mode
    Firebase Integration
    Features
    Authentication
    Email AI-CRM
    Entities
    Opportunities
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Tunnel Protocol
    Wallet & Credit System
    Multi-Vendor Store
    Referral Codes (Refcodes)
    Affiliate & Referral Enablement
    Payments Overview
    PaymentConductor
    SubscriptionConductor
    VideoConductor
    News Module - Digital Newspaper Experience
    Member Blogs
    Public Profile Pages
    Username Reservation System
    Scientific Editor
    Locale System
    Security & Compliance
    NFT Marketplace
    Token Staking System
    Performance Optimization Patterns
    Mobile Experience
    Wallet
    Wallet Security Tips
    API
    Authentication
    Email AI-CRM API
    Entities
    Opportunities
    Messaging API
    Notifications API
    Wallet API
    Store API
    Admin API
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Branding
    Themes
    Web3
    Token launch jurisdictions
    Deployment
    Self-hosted deployment
    Vercel
    Docker
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Development
    Local Setup
    Code Structure
    Documentation components
    Community tooling
    Ring MCP Server
    Generative Images (ImageConductor)
    Autonomous Newsroom (Grok)
    OSS vs enterprise
    Whitelabel Navigation
    Best Practices
    Workflow
    Code Style
    Performance
    Testing
    Deployment
    Debugging
    Contributing
    MCP
    ring-image-create
    ring-video-create
    Examples
    Quick Start
    White Label
    Real World
    Integrations
    Ethereum wallets (Wagmi v3)

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Architecture
    Data Model
    Real Time
    Discovery Mutation Sync
    Security
    Backend Services
    k8s-postgres-fcm Mode
    Firebase Integration
    Features
    Authentication
    Email AI-CRM
    Entities
    Opportunities
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Tunnel Protocol
    Wallet & Credit System
    Multi-Vendor Store
    Referral Codes (Refcodes)
    Affiliate & Referral Enablement
    Payments Overview
    PaymentConductor
    SubscriptionConductor
    VideoConductor
    News Module - Digital Newspaper Experience
    Member Blogs
    Public Profile Pages
    Username Reservation System
    Scientific Editor
    Locale System
    Security & Compliance
    NFT Marketplace
    Token Staking System
    Performance Optimization Patterns
    Mobile Experience
    Wallet
    Wallet Security Tips
    API
    Authentication
    Email AI-CRM API
    Entities
    Opportunities
    Messaging API
    Notifications API
    Wallet API
    Store API
    Admin API
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Branding
    Themes
    Web3
    Token launch jurisdictions
    Deployment
    Self-hosted deployment
    Vercel
    Docker
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Development
    Local Setup
    Code Structure
    Documentation components
    Community tooling
    Ring MCP Server
    Generative Images (ImageConductor)
    Autonomous Newsroom (Grok)
    OSS vs enterprise
    Whitelabel Navigation
    Best Practices
    Workflow
    Code Style
    Performance
    Testing
    Deployment
    Debugging
    Contributing
    MCP
    ring-image-create
    ring-video-create
    Examples
    Quick Start
    White Label
    Real World
    Integrations
    Ethereum wallets (Wagmi v3)

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)

    Concepts, value, and typical clone scenarios — less code.

    Welcome to Ring
    Quick Reference
    Getting Started
    Prerequisites
    Installation
    First Success Validation
    Next Steps
    Architecture
    Data Model
    Real Time
    Discovery Mutation Sync
    Security
    Backend Services
    k8s-postgres-fcm Mode
    Firebase Integration
    Features
    Authentication
    Email AI-CRM
    Entities
    Opportunities
    Notifications
    Push Notifications with FCM (Ring-Powered)
    Tunnel Protocol
    Wallet & Credit System
    Multi-Vendor Store
    Referral Codes (Refcodes)
    Affiliate & Referral Enablement
    Payments Overview
    PaymentConductor
    SubscriptionConductor
    VideoConductor
    News Module - Digital Newspaper Experience
    Member Blogs
    Public Profile Pages
    Username Reservation System
    Scientific Editor
    Locale System
    Security & Compliance
    NFT Marketplace
    Token Staking System
    Performance Optimization Patterns
    Mobile Experience
    Wallet
    Wallet Security Tips
    API
    Authentication
    Email AI-CRM API
    Entities
    Opportunities
    Messaging API
    Notifications API
    Wallet API
    Store API
    Admin API
    Customization
    Quick Start — Your First Ring Clone
    Customization Guide
    Token Economics Setup
    Payment Gateway Integration
    Reference Ring deployments
    Branding
    Themes
    Web3
    Token launch jurisdictions
    Deployment
    Self-hosted deployment
    Vercel
    Docker
    Monitoring & Analytics
    Performance Optimization
    Backup & Recovery
    Development
    Local Setup
    Code Structure
    Documentation components
    Community tooling
    Ring MCP Server
    Generative Images (ImageConductor)
    Autonomous Newsroom (Grok)
    OSS vs enterprise
    Whitelabel Navigation
    Best Practices
    Workflow
    Code Style
    Performance
    Testing
    Deployment
    Debugging
    Contributing
    MCP
    ring-image-create
    ring-video-create
    Examples
    Quick Start
    White Label
    Real World
    Integrations
    Ethereum wallets (Wagmi v3)

    Quick entry (CTOs · auditors · agents)

    Welcome — mission & audiences
    Quick Reference
    Getting started
    Architecture & Auth.js
    Backend modes & databases (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Security & compliance reads
    ringdom.org — LegioX homebase
    Source — MIT license (GitHub)
    Docs
    Features
    Docs
    Features
    Docs
    Features

    PaymentConductor

    PaymentConductor (v1, 2026-05-22) is Ring Platform's config-driven payment layer. One ledger (payment_transactions) and one webhook dispatcher serve store checkout, membership upgrades, and news promotion.

    Use Founder / Developer tabs in the docs sidebar to filter this page. Founders see configuration and business value; developers see architecture, modules, and webhook flows.

    Payment purposes

    PurposeHandlerTypical processor
    store_orderhandlers/store-order.tsWayForPay or Stripe
    membership_upgradehandlers/membership-upgrade.tsWayForPay or Stripe
    news_promotionhandlers/news-promotion.tsWayForPay or Stripe

    What founders get from PaymentConductor

    • One payment layer for everything — store, membership, and news all route through the same conductor. One ledger to audit, one webhook path to monitor.
    • Config-driven gateway selection — choose your card processor in ring-config.json; override per-deployment via env vars. No code changes needed.
    • Fee pass-through — gateway fees are deducted per transaction; net revenue visible on the admin dashboard.
    • Internal credit rail — users can pay with RING credit balance (zero gateway fee).
    • RING token rail — optional on-chain Solana payment path.

    Gateway fee rates (ring-config.json)

    GatewayFee %Fixed FeeCurrencyStatus
    WayForPay2.5%—UAH✅ Live
    Stripe2.9%$0.30USD✅ Live (Phase S3)
    Credit Balance0%—USD✅ Live
    RING Token0%—RING✅ Live

    Quick setup

    Set env vars for each gateway:

    Per-purpose processor override

    Architecture

    Implementation: lib/payments/conductor/, lib/payments/processors/, lib/payments/payment.config.ts.

    Key modules

    ModulePathRole
    Conductorlib/payments/conductor/payment-conductor.tsRoutes payments by purpose + processor
    Configlib/payments/payment.config.tsReads ring-config.json + env overrides
    WayForPaylib/payments/processors/wayforpay.tsHMAC verify, form generation
    Stripelib/payments/processors/stripe.tsStripe Checkout, webhook
    Internal creditlib/payments/processors/internal-credit.tsCredit balance deduction
    Webhook dispatcherlib/payments/webhook-dispatcher.ts

    Related

    Payments overview

    High-level payment integration — store, membership, news, and gateway selection.

    SubscriptionConductor

    Multi-provider membership subscription billing with cron pipelines.

    WayForPay integration

    HMAC verification, idempotent orderReference, and 3DS handling.

    Architecture: PaymentConductor

    Deep-dive architecture with data model and webhook dispatch sequences.

    PaymentConductor

    PaymentConductor (v1, 2026-05-22) is Ring Platform's config-driven payment layer. One ledger (payment_transactions) and one webhook dispatcher serve store checkout, membership upgrades, and news promotion.

    Use Founder / Developer tabs in the docs sidebar to filter this page. Founders see configuration and business value; developers see architecture, modules, and webhook flows.

    Payment purposes

    PurposeHandlerTypical processor
    store_orderhandlers/store-order.tsWayForPay or Stripe
    membership_upgradehandlers/membership-upgrade.tsWayForPay or Stripe
    news_promotionhandlers/news-promotion.tsWayForPay or Stripe

    What founders get from PaymentConductor

    • One payment layer for everything — store, membership, and news all route through the same conductor. One ledger to audit, one webhook path to monitor.
    • Config-driven gateway selection — choose your card processor in ring-config.json; override per-deployment via env vars. No code changes needed.
    • Fee pass-through — gateway fees are deducted per transaction; net revenue visible on the admin dashboard.
    • Internal credit rail — users can pay with RING credit balance (zero gateway fee).
    • RING token rail — optional on-chain Solana payment path.

    Gateway fee rates (ring-config.json)

    GatewayFee %Fixed FeeCurrencyStatus
    WayForPay2.5%—UAH✅ Live
    Stripe2.9%$0.30USD✅ Live (Phase S3)
    Credit Balance0%—USD✅ Live
    RING Token0%—RING✅ Live

    Quick setup

    Set env vars for each gateway:

    Per-purpose processor override

    Architecture

    Implementation: lib/payments/conductor/, lib/payments/processors/, lib/payments/payment.config.ts.

    Key modules

    ModulePathRole
    Conductorlib/payments/conductor/payment-conductor.tsRoutes payments by purpose + processor
    Configlib/payments/payment.config.tsReads ring-config.json + env overrides
    WayForPaylib/payments/processors/wayforpay.tsHMAC verify, form generation
    Stripelib/payments/processors/stripe.tsStripe Checkout, webhook
    Internal creditlib/payments/processors/internal-credit.tsCredit balance deduction
    Webhook dispatcherlib/payments/webhook-dispatcher.ts

    Related

    Payments overview

    High-level payment integration — store, membership, news, and gateway selection.

    SubscriptionConductor

    Multi-provider membership subscription billing with cron pipelines.

    WayForPay integration

    HMAC verification, idempotent orderReference, and 3DS handling.

    Architecture: PaymentConductor

    Deep-dive architecture with data model and webhook dispatch sequences.

    PaymentConductor

    PaymentConductor (v1, 2026-05-22) is Ring Platform's config-driven payment layer. One ledger (payment_transactions) and one webhook dispatcher serve store checkout, membership upgrades, and news promotion.

    Use Founder / Developer tabs in the docs sidebar to filter this page. Founders see configuration and business value; developers see architecture, modules, and webhook flows.

    Payment purposes

    PurposeHandlerTypical processor
    store_orderhandlers/store-order.tsWayForPay or Stripe
    membership_upgradehandlers/membership-upgrade.tsWayForPay or Stripe
    news_promotionhandlers/news-promotion.tsWayForPay or Stripe

    What founders get from PaymentConductor

    • One payment layer for everything — store, membership, and news all route through the same conductor. One ledger to audit, one webhook path to monitor.
    • Config-driven gateway selection — choose your card processor in ring-config.json; override per-deployment via env vars. No code changes needed.
    • Fee pass-through — gateway fees are deducted per transaction; net revenue visible on the admin dashboard.
    • Internal credit rail — users can pay with RING credit balance (zero gateway fee).
    • RING token rail — optional on-chain Solana payment path.

    Gateway fee rates (ring-config.json)

    GatewayFee %Fixed FeeCurrencyStatus
    WayForPay2.5%—UAH✅ Live
    Stripe2.9%$0.30USD✅ Live (Phase S3)
    Credit Balance0%—USD✅ Live
    RING Token0%—RING✅ Live

    Quick setup

    Set env vars for each gateway:

    Per-purpose processor override

    Architecture

    Implementation: lib/payments/conductor/, lib/payments/processors/, lib/payments/payment.config.ts.

    Key modules

    ModulePathRole
    Conductorlib/payments/conductor/payment-conductor.tsRoutes payments by purpose + processor
    Configlib/payments/payment.config.tsReads ring-config.json + env overrides
    WayForPaylib/payments/processors/wayforpay.tsHMAC verify, form generation
    Stripelib/payments/processors/stripe.tsStripe Checkout, webhook
    Internal creditlib/payments/processors/internal-credit.tsCredit balance deduction
    Webhook dispatcherlib/payments/webhook-dispatcher.ts

    Related

    Payments overview

    High-level payment integration — store, membership, news, and gateway selection.

    SubscriptionConductor

    Multi-provider membership subscription billing with cron pipelines.

    WayForPay integration

    HMAC verification, idempotent orderReference, and 3DS handling.

    Architecture: PaymentConductor

    Deep-dive architecture with data model and webhook dispatch sequences.

    Unified dispatcher for all providers
    Purpose handlerslib/payments/handlers/store-order.ts, handlers/membership-upgrade.ts, handlers/news-promotion.tsPer-purpose logic (validation, post-payment hooks)

    Rails

    RailDescriptionEnv gate
    merchant_redirectWayForPay / Stripe hosted checkoutDefault
    internal_creditWallet credit balancePAYMENT_STORE_ALLOW_CREDIT
    native_tokenRING token on-chainPAYMENT_STORE_ALLOW_TOKEN

    Webhook endpoints

    EndpointProvider
    /api/payments/wayforpay/webhookWayForPayHMAC signature verification
    /api/payments/stripe/webhookStripeSTRIPE_WEBHOOK_SECRET verification

    Database

    Apply migration data/migrations/004_payment_transactions.sql before enabling the conductor in production. All transactions persist in the payment_transactions collection using the DatabaseService result contract { success, data, error }.

    json
    
    {
      "payment": {
        "cardPaymentProcessor": "wayforpay",
        "supportedMethods": ["wayforpay", "credit_balance", "native_token"],
        "gateways": {
          "wayforpay": { "enabled": true, "feePercent": 2.5, "currency": "UAH" },
          "stripe": { "enabled": false, "feePercent": 2.9, "feeFixedCents": 30, "currency": "USD" }
        }
      }
    }
    bash
    
    PAYMENT_DEFAULT_PROCESSOR=wayforpay
    WAYFORPAY_MERCHANT_ACCOUNT=your_merchant
    WAYFORPAY_SECRET_KEY=your_secret
    STRIPE_SECRET_KEY=sk_live_...
    STRIPE_WEBHOOK_SECRET=whsec_...
    PAYMENT_FIAT_CURRENCY=USD
    bash
    
    PAYMENT_STORE_PROCESSOR=stripe        # Override store checkout to Stripe
    PAYMENT_MEMBERSHIP_PROCESSOR=stripe   # Override membership to Stripe
    PAYMENT_NEWS_PROCESSOR=wayforpay      # News stays on WayForPay
    Unified dispatcher for all providers
    Purpose handlerslib/payments/handlers/store-order.ts, handlers/membership-upgrade.ts, handlers/news-promotion.tsPer-purpose logic (validation, post-payment hooks)

    Rails

    RailDescriptionEnv gate
    merchant_redirectWayForPay / Stripe hosted checkoutDefault
    internal_creditWallet credit balancePAYMENT_STORE_ALLOW_CREDIT
    native_tokenRING token on-chainPAYMENT_STORE_ALLOW_TOKEN

    Webhook endpoints

    EndpointProvider
    /api/payments/wayforpay/webhookWayForPayHMAC signature verification
    /api/payments/stripe/webhookStripeSTRIPE_WEBHOOK_SECRET verification

    Database

    Apply migration data/migrations/004_payment_transactions.sql before enabling the conductor in production. All transactions persist in the payment_transactions collection using the DatabaseService result contract { success, data, error }.

    json
    
    {
      "payment": {
        "cardPaymentProcessor": "wayforpay",
        "supportedMethods": ["wayforpay", "credit_balance", "native_token"],
        "gateways": {
          "wayforpay": { "enabled": true, "feePercent": 2.5, "currency": "UAH" },
          "stripe": { "enabled": false, "feePercent": 2.9, "feeFixedCents": 30, "currency": "USD" }
        }
      }
    }
    bash
    
    PAYMENT_DEFAULT_PROCESSOR=wayforpay
    WAYFORPAY_MERCHANT_ACCOUNT=your_merchant
    WAYFORPAY_SECRET_KEY=your_secret
    STRIPE_SECRET_KEY=sk_live_...
    STRIPE_WEBHOOK_SECRET=whsec_...
    PAYMENT_FIAT_CURRENCY=USD
    bash
    
    PAYMENT_STORE_PROCESSOR=stripe        # Override store checkout to Stripe
    PAYMENT_MEMBERSHIP_PROCESSOR=stripe   # Override membership to Stripe
    PAYMENT_NEWS_PROCESSOR=wayforpay      # News stays on WayForPay
    Unified dispatcher for all providers
    Purpose handlerslib/payments/handlers/store-order.ts, handlers/membership-upgrade.ts, handlers/news-promotion.tsPer-purpose logic (validation, post-payment hooks)

    Rails

    RailDescriptionEnv gate
    merchant_redirectWayForPay / Stripe hosted checkoutDefault
    internal_creditWallet credit balancePAYMENT_STORE_ALLOW_CREDIT
    native_tokenRING token on-chainPAYMENT_STORE_ALLOW_TOKEN

    Webhook endpoints

    EndpointProvider
    /api/payments/wayforpay/webhookWayForPayHMAC signature verification
    /api/payments/stripe/webhookStripeSTRIPE_WEBHOOK_SECRET verification

    Database

    Apply migration data/migrations/004_payment_transactions.sql before enabling the conductor in production. All transactions persist in the payment_transactions collection using the DatabaseService result contract { success, data, error }.

    json
    
    {
      "payment": {
        "cardPaymentProcessor": "wayforpay",
        "supportedMethods": ["wayforpay", "credit_balance", "native_token"],
        "gateways": {
          "wayforpay": { "enabled": true, "feePercent": 2.5, "currency": "UAH" },
          "stripe": { "enabled": false, "feePercent": 2.9, "feeFixedCents": 30, "currency": "USD" }
        }
      }
    }
    bash
    
    PAYMENT_DEFAULT_PROCESSOR=wayforpay
    WAYFORPAY_MERCHANT_ACCOUNT=your_merchant
    WAYFORPAY_SECRET_KEY=your_secret
    STRIPE_SECRET_KEY=sk_live_...
    STRIPE_WEBHOOK_SECRET=whsec_...
    PAYMENT_FIAT_CURRENCY=USD
    bash
    
    PAYMENT_STORE_PROCESSOR=stripe        # Override store checkout to Stripe
    PAYMENT_MEMBERSHIP_PROCESSOR=stripe   # Override membership to Stripe
    PAYMENT_NEWS_PROCESSOR=wayforpay      # News stays on WayForPay