diff --git a/src/pages/menuPages/configuration/settingGroups.ts b/src/pages/menuPages/configuration/settingGroups.ts index e0808c0..2de92f9 100644 --- a/src/pages/menuPages/configuration/settingGroups.ts +++ b/src/pages/menuPages/configuration/settingGroups.ts @@ -171,6 +171,12 @@ export const SYSTEM_SETTING_GROUPS: SettingGroupDef[] = [ icon: 'vuesax-linear:card', match: (k) => k.startsWith('payping_') }, + { + id: 'external_payment', + title: 'درگاه خارجی (Montify)', + icon: 'vuesax-linear:card-pos', + match: (k) => k.startsWith('external_payment_') || k === 'wallet_payment_provider' + }, { id: 'accounting_provider', title: 'انتخاب سیستم حسابداری', diff --git a/src/pages/menuPages/configuration/settingTypes.ts b/src/pages/menuPages/configuration/settingTypes.ts index 9d3e99a..417a448 100644 --- a/src/pages/menuPages/configuration/settingTypes.ts +++ b/src/pages/menuPages/configuration/settingTypes.ts @@ -296,6 +296,9 @@ const KEY_TYPE_FALLBACK: Record = { montzar_open_sell: 'switch', payping_fin_sync_enabled: 'switch', external_order_api_enabled: 'switch', + external_payment_enabled: 'switch', + external_payment_gateway: 'select', + wallet_payment_provider: 'select', is_store: 'switch', banner_enabled: 'switch', permision__enabled: 'switch', @@ -374,6 +377,8 @@ const SELECT_OPTIONS_BY_KEY: Record = { accounting_provider: 'none,pargar,tahesab,zarin', price_provider: 'montzar,zaarbox,main_product', payping_gateway_name: 'sepal,', + external_payment_gateway: 'zarinpall,zibal,payping,sepal', + wallet_payment_provider: 'none,montify', unit: 'گرم,کیلوگرم', support_messenger: 'bale,telegram,whatsapp,rubika,eitaa,soroush,call,sms', price_channel_messengers: 'bale,telegram,rubika' @@ -638,6 +643,22 @@ const KEY_HELP_FALLBACK: Record = { 'وضعیت گزارش‌شده از سرویس همکار؛ فقط برای نمایش — این سوییچ را دستی تغییر ندهید.', external_order_api_enabled: 'روشن: دریافت کیف پول و ثبت سفارش از سرویس فروشگاه خارجی فعال است. خاموش: اتصال به سرویس فروشگاه خارجی غیرفعال است.', + external_payment_enabled: + 'روشن: سازگاری قدیمی — ترجیحاً از «درگاه شارژ آنلاین کیف پول» (wallet_payment_provider=montify) استفاده کنید.', + external_payment_base_url: + 'آدرس پایه API سرویس Montify (بدون اسلش انتهایی)، مثلاً https://node.example.com — فقط سرور؛ در اپ کاربر ارسال نمی‌شود.', + external_payment_client_id: + 'شناسه partner (client_id) — فقط سرور؛ هرگز در اپ کاربر یا پاسخ get_settings عمومی نیست.', + external_payment_client_secret: + 'رمز مخفی partner (client_secret) — فقط سرور. در فرانت و Network تب کاربر دیده نمی‌شود.', + external_payment_gateway: + 'نام درگاه فعال داخل Montify: zarinpall، zibal، payping یا sepal.', + external_payment_return_url: + 'آدرس برگشت مرورگر پس از پرداخت (whitelist پارتنر). خالی = /customer/wallet/payment/return/montify', + external_payment_webhook_url: + 'آدرس webhook. خالی = /customer/wallet/payment/webhook/montify', + wallet_payment_provider: + 'درگاه فعال شارژ آنلاین کیف: none=خاموش، montify=پارتنر Montify. برای افزودن درگاه مستقیم بعدی همین فیلد گسترش می‌یابد.', node_client_id: 'شناسه کلاینت برای اتصال امن به سرویس سفارش خارجی.', node_shared_secret: @@ -827,6 +848,14 @@ export const KEY_LABEL_FALLBACK: Record = { has_page_price_trigger: 'هشدار قیمت', has_page_notification: 'اعلان داخل اپ', jibit_enabled: 'احراز هویت جیبیت', + external_payment_enabled: 'شارژ آنلاین (سازگاری قدیمی)', + external_payment_base_url: 'آدرس API درگاه Montify', + external_payment_client_id: 'شناسه کلاینت Montify', + external_payment_client_secret: 'رمز کلاینت Montify', + external_payment_gateway: 'نام درگاه داخل Montify', + external_payment_return_url: 'آدرس برگشت از درگاه', + external_payment_webhook_url: 'آدرس Webhook درگاه', + wallet_payment_provider: 'درگاه شارژ آنلاین کیف پول', jibit_verification: 'تأیید کارت بانکی با جیبیت', register_jibit_verify: 'تأیید کدملی/موبایل در ثبت‌نام', min_withdraw: 'حداقل مبلغ برداشت', @@ -908,6 +937,9 @@ export const SETTING_LOCKED_KEYS = new Set([ 'bale_bot_token', 'banner_enabled', 'chart_id', 'chart_use_local_data', 'external_order_api_enabled', + 'external_payment_base_url', 'external_payment_client_id', 'external_payment_client_secret', + 'external_payment_gateway', 'external_payment_return_url', 'external_payment_webhook_url', + 'wallet_payment_provider', 'fee_deduct_from_gold', 'fee_single', 'referral_bonus_amount', @@ -963,6 +995,7 @@ export const SETTING_EDITABLE_KEYS = new Set([ 'deposit_sms_support_number', 'deposit_support_message_text', 'deposit_account_holder', 'deposit_card_number', 'deposit_sheba', 'endDay', + 'external_payment_enabled', 'fee_free', 'fee_service_charge_percentage', 'gift_for_referral', 'gift_for_referrer', 'invite_link_text',