feat(payments): способ оплаты cisPay

Регистрация нового провайдера пополнения (api.cispay.app, карта и СБП)
во фронтенде: метка в METHOD_LABELS, иконка, узел настроек
payments_cispay и локали ru/en/zh/fa.

Бэкенд отдаёт метод динамически, поэтому страницы статистики и транзакций
подхватывают его автоматически через METHOD_LABELS и PaymentMethodIcon.
This commit is contained in:
Fringg
2026-07-19 17:38:32 +03:00
parent 6d1513092b
commit 4b982175d7
7 changed files with 40 additions and 0 deletions

View File

@@ -367,6 +367,28 @@ export default function PaymentMethodIcon({
);
}
case 'cispay': {
const cispayGradId = `${uid}-cispay`;
return (
<svg className={className} viewBox="0 0 40 40">
<defs>
<linearGradient id={cispayGradId} x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stopColor="#0d9488" />
<stop offset="100%" stopColor="#2563eb" />
</linearGradient>
</defs>
<circle cx="20" cy="20" r="20" fill={`url(#${cispayGradId})`} />
<rect x="6.5" y="14" width="17" height="12.5" rx="2.5" fill="#fff" opacity="0.95" />
<rect x="6.5" y="17" width="17" height="2.3" fill="#0d9488" opacity="0.85" />
<rect x="9.5" y="21.5" width="5" height="3" rx="0.8" fill="#2563eb" opacity="0.5" />
<g fill="none" stroke="#fff" strokeWidth="1.7" strokeLinecap="round">
<path d="M26 15a7 7 0 0 1 0 10" />
<path d="M26 17.6a3.8 3.8 0 0 1 0 4.8" />
</g>
</svg>
);
}
case 'donut': {
const donutBgGradId = `${uid}-donut-bg`;
const donutGlazeGradId = `${uid}-donut-glaze`;

View File

@@ -58,6 +58,7 @@ export const SETTINGS_TREE: SettingsTreeConfig = {
{ id: 'payments_etoplatezhi', categories: ['ETOPLATEZHI'] },
{ id: 'payments_antilopay', categories: ['ANTILOPAY'] },
{ id: 'payments_jupiter', categories: ['JUPITER'] },
{ id: 'payments_cispay', categories: ['CISPAY'] },
{ id: 'payments_donut', categories: ['DONUT'] },
{ id: 'payments_lava', categories: ['LAVA'] },
{ id: 'payments_apple_iap', categories: ['APPLE_IAP'] },

View File

@@ -22,6 +22,7 @@ export const METHOD_LABELS: Record<string, string> = {
etoplatezhi: 'Etoplatezhi',
antilopay: 'Antilopay',
jupiter: 'Jupiter',
cispay: 'CisPay',
donut: 'Donut',
lava: 'Lava',
apple_iap: 'Apple In-App Purchase',

View File

@@ -756,6 +756,9 @@
"jupiter": {
"description": "Pay via SBP through Jupiter (FPGate P2P)"
},
"cispay": {
"description": "Pay by card or via SBP (cisPay)"
},
"donut": {
"description": "Pay by card or SBP through Donut P2P"
},
@@ -2191,6 +2194,7 @@
"payments_etoplatezhi": "Etoplatezhi",
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_cispay": "CisPay",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",

View File

@@ -633,6 +633,9 @@
"jupiter": {
"description": "پرداخت SBP از طریق Jupiter (FPGate P2P)"
},
"cispay": {
"description": "پرداخت با کارت یا SBP از طریق cisPay"
},
"donut": {
"description": "پرداخت با کارت یا SBP از طریق Donut P2P"
},
@@ -1854,6 +1857,7 @@
"payments_etoplatezhi": "Etoplatezhi",
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_cispay": "CisPay",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",

View File

@@ -775,6 +775,9 @@
"jupiter": {
"description": "Оплата СБП через Jupiter (FPGate P2P)"
},
"cispay": {
"description": "Оплата картой или через СБП (cisPay)"
},
"donut": {
"description": "Оплата картой и СБП через Donut P2P"
},
@@ -2198,6 +2201,7 @@
"payments_etoplatezhi": "Etoplatezhi",
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_cispay": "CisPay",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",

View File

@@ -633,6 +633,9 @@
"jupiter": {
"description": "通过 Jupiter (FPGate P2P) 使用 SBP 支付"
},
"cispay": {
"description": "通过 cisPay 使用银行卡或 SBP 支付"
},
"donut": {
"description": "通过 Donut P2P 使用银行卡或 SBP 支付"
},
@@ -1919,6 +1922,7 @@
"payments_etoplatezhi": "Etoplatezhi",
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_cispay": "CisPay",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",