feat(webapp): expose LAVA settings in admin UI and demo
Add RU/EN admin locale strings for the LAVA settings subsection and field labels, regenerate the demo settings manifest snapshot, and list LAVA among the demo dataset payment methods.
This commit is contained in:
@@ -484,6 +484,11 @@ export const DEMO_DATASET = {
|
||||
name: "PayKilla",
|
||||
icon: "Bitcoin",
|
||||
},
|
||||
{
|
||||
id: "lava",
|
||||
name: "LAVA",
|
||||
icon: "CreditCard",
|
||||
},
|
||||
],
|
||||
referral: {
|
||||
code: "DEMO0001",
|
||||
|
||||
@@ -670,7 +670,7 @@
|
||||
"section_order": 4,
|
||||
"subsection": "common",
|
||||
"label": "Порядок методов оплаты",
|
||||
"description": "Через запятую: severpay,freekassa,yookassa,platega,stars,cryptopay,heleket,paykilla",
|
||||
"description": "Через запятую: severpay,freekassa,yookassa,platega,stars,cryptopay,heleket,paykilla,lava",
|
||||
"i18n_label_key": "admin_settings_field_payment_methods_order_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_methods_order_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_common",
|
||||
@@ -4598,6 +4598,393 @@
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_ENABLED",
|
||||
"type": "bool",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Включена",
|
||||
"description": "",
|
||||
"i18n_label_key": "admin_settings_field_lava_enabled_label",
|
||||
"i18n_description_key": null,
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"mutually_exclusive_key": "LAVA_ADMIN_ONLY_ENABLED",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_SHOP_ID",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Shop ID",
|
||||
"description": "",
|
||||
"i18n_label_key": "admin_settings_field_lava_shop_id_label",
|
||||
"i18n_description_key": null,
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_SECRET_KEY",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Secret key",
|
||||
"description": "Signs outgoing API requests (HMAC-SHA256 in the Signature header).",
|
||||
"i18n_label_key": "admin_settings_field_lava_secret_key_label",
|
||||
"i18n_description_key": "admin_settings_field_lava_secret_key_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": true,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"has_value": false,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_WEBHOOK_SECRET",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Webhook secret",
|
||||
"description": "The shop's additional key used to verify webhook signatures. Leave empty to reuse the secret key.",
|
||||
"i18n_label_key": "admin_settings_field_lava_webhook_secret_label",
|
||||
"i18n_description_key": "admin_settings_field_lava_webhook_secret_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": true,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"has_value": false,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_BASE_URL",
|
||||
"type": "url",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Base URL",
|
||||
"description": "",
|
||||
"i18n_label_key": "admin_settings_field_lava_base_url_label",
|
||||
"i18n_description_key": null,
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_lava_base_url_placeholder",
|
||||
"placeholder": "https://api.lava.ru",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_RETURN_URL",
|
||||
"type": "url",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Return URL",
|
||||
"description": "",
|
||||
"i18n_label_key": "admin_settings_field_lava_return_url_label",
|
||||
"i18n_description_key": null,
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_LIFETIME_MINUTES",
|
||||
"type": "int",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Payment link lifetime (minutes)",
|
||||
"description": "1..7200; leave empty for the LAVA default.",
|
||||
"i18n_label_key": "admin_settings_field_lava_lifetime_minutes_label",
|
||||
"i18n_description_key": "admin_settings_field_lava_lifetime_minutes_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"min": 1,
|
||||
"max": 7200,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_INCLUDE_SERVICES",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Payment services filter",
|
||||
"description": "Comma-separated LAVA pay services to show on the payment page (e.g. card,sbp). Empty shows everything enabled for the shop.",
|
||||
"i18n_label_key": "admin_settings_field_lava_include_services_label",
|
||||
"i18n_description_key": "admin_settings_field_lava_include_services_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_lava_include_services_placeholder",
|
||||
"placeholder": "card,sbp",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_WEBAPP_LABEL_RU",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "WebApp button text (RU)",
|
||||
"description": "Custom Russian text shown in the Web App payment method button.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_webapp_label_ru_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_webapp_label_ru_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_webapp_label_ru_placeholder",
|
||||
"placeholder": "LAVA",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "LAVA",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_WEBAPP_LABEL_EN",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "WebApp button text (EN)",
|
||||
"description": "Custom English text shown in the Web App payment method button.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_webapp_label_en_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_webapp_label_en_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_webapp_label_en_placeholder",
|
||||
"placeholder": "LAVA",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "LAVA",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_WEBAPP_ICON",
|
||||
"type": "icon",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "WebApp button icon",
|
||||
"description": "Lucide icon name rendered inside the Web App payment method button.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_webapp_icon_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_webapp_icon_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_webapp_icon_placeholder",
|
||||
"placeholder": "CreditCard",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "CreditCard",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_TELEGRAM_LABEL_RU",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Telegram button text (RU)",
|
||||
"description": "Custom Russian text shown in Telegram bot payment buttons.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_telegram_label_ru_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_telegram_label_ru_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_telegram_label_ru_placeholder",
|
||||
"placeholder": "LAVA",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "LAVA",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_TELEGRAM_LABEL_EN",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Telegram button text (EN)",
|
||||
"description": "Custom English text shown in Telegram bot payment buttons.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_telegram_label_en_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_telegram_label_en_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_telegram_label_en_placeholder",
|
||||
"placeholder": "LAVA",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "LAVA",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "PAYMENT_LAVA_TELEGRAM_EMOJI",
|
||||
"type": "string",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Telegram button emoji",
|
||||
"description": "Emoji prepended to the Telegram bot payment button when customized.",
|
||||
"i18n_label_key": "admin_settings_field_payment_lava_telegram_emoji_label",
|
||||
"i18n_description_key": "admin_settings_field_payment_lava_telegram_emoji_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": "admin_settings_field_payment_lava_telegram_emoji_placeholder",
|
||||
"placeholder": "💳",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"default": "💳",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
},
|
||||
{
|
||||
"key": "LAVA_ADMIN_ONLY_ENABLED",
|
||||
"type": "bool",
|
||||
"section": "payments",
|
||||
"section_order": 4,
|
||||
"subsection": "LAVA",
|
||||
"label": "Only for admins",
|
||||
"description": "Shows this payment method only to users from ADMIN_IDS. Webhooks and provider services remain active for admin test payments.",
|
||||
"i18n_label_key": "admin_settings_provider_admin_only_label",
|
||||
"i18n_description_key": "admin_settings_provider_admin_only_description",
|
||||
"i18n_subsection_key": "admin_settings_subsection_lava",
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"mutually_exclusive_key": "LAVA_ENABLED",
|
||||
"provider_id": "lava",
|
||||
"provider_label": "LAVA",
|
||||
"webhook_provider_id": "lava",
|
||||
"webhook_path": "/webhook/lava",
|
||||
"webhook_requires_base_url": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null,
|
||||
"webhook_base_url_configured": false
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user