From 1b75595f58a4b0dd9015c881356238e8a1e955ae Mon Sep 17 00:00:00 2001 From: Andrey Kr Date: Tue, 4 Aug 2026 12:46:19 +0300 Subject: [PATCH] Add SimpleSwap swap support --- CHANGELOG.md | 1 + src/actions/CategoriesActions.ts | 1 + src/components/modals/SwapVerifyTermsModal.tsx | 5 +++++ src/constants/MerchantContacts.ts | 4 ++++ src/envConfig.ts | 5 +++++ src/util/corePlugins.ts | 1 + 6 files changed, 17 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f7b060b48a..5218766480a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## Unreleased (develop) +- added: SimpleSwap swap provider - added: Verbose logging for exchange rate queries: the request body, resolved/rate-less counts, and errors are captured when the Verbose Logging setting is enabled. - added: Exchange-rate cache snapshot in the support log output, plus a `rates-cache-replay` script that re-runs those queries against the rates server and reports the result for each pair. - added: "-m" tag on the version number in the Help scene for Maestro test builds diff --git a/src/actions/CategoriesActions.ts b/src/actions/CategoriesActions.ts index d00a39a6b15..e9802fafb1e 100644 --- a/src/actions/CategoriesActions.ts +++ b/src/actions/CategoriesActions.ts @@ -724,6 +724,7 @@ export const pluginIdIcons: Record = { nymswap: EDGE_CONTENT_SERVER_URI + '/exchangeIcons/nymswap/icon.png', rango: EDGE_CONTENT_SERVER_URI + '/rango.png', sideshift: EDGE_CONTENT_SERVER_URI + '/sideshift-logo.png', + simpleswap: EDGE_CONTENT_SERVER_URI + '/simpleswap.png', simplex: EDGE_CONTENT_SERVER_URI + '/simplex.png', swapuz: EDGE_CONTENT_SERVER_URI + '/swapuz.png', thorchain: EDGE_CONTENT_SERVER_URI + '/thorchain.png', diff --git a/src/components/modals/SwapVerifyTermsModal.tsx b/src/components/modals/SwapVerifyTermsModal.tsx index 0b8e0ccb763..6c1f740e30a 100644 --- a/src/components/modals/SwapVerifyTermsModal.tsx +++ b/src/components/modals/SwapVerifyTermsModal.tsx @@ -49,6 +49,11 @@ const pluginData: Record = { kycUri: 'https://help.sideshift.ai/en/articles/6230858-sideshift-ai-s-risk-management-policy' }, + simpleswap: { + termsUri: 'https://simpleswap.io/terms-of-service', + privacyUri: 'https://simpleswap.io/privacy-policy', + kycUri: 'https://simpleswap.io/aml-kyc' + }, swapuz: { termsUri: 'https://swapuz.com/terms-of-use', privacyUri: 'https://swapuz.com/privacy-policy', diff --git a/src/constants/MerchantContacts.ts b/src/constants/MerchantContacts.ts index dafa01582a1..344747baf5a 100644 --- a/src/constants/MerchantContacts.ts +++ b/src/constants/MerchantContacts.ts @@ -74,6 +74,10 @@ export const MERCHANT_CONTACTS: MerchantContact[] = [ displayName: 'SideShift.ai', thumbnailPath: `${EDGE_CONTENT_SERVER_URI}/sideshift-logo.png` }, + { + displayName: 'SimpleSwap', + thumbnailPath: `${EDGE_CONTENT_SERVER_URI}/simpleswap.png` + }, { displayName: 'Simplex', thumbnailPath: `${EDGE_CONTENT_SERVER_URI}/simplex.png` diff --git a/src/envConfig.ts b/src/envConfig.ts index 20df307be82..4b8fb279880 100644 --- a/src/envConfig.ts +++ b/src/envConfig.ts @@ -412,6 +412,11 @@ export const asEnvConfig = asObject({ affiliateId: asOptional(asString, '') }) ), + SIMPLESWAP_INIT: asCorePluginInit( + asObject({ + apiKey: asOptional(asString, '') + }).withRest + ), SOLANA_INIT: asCorePluginInit( asObject({ alchemyApiKey: asOptional(asString, ''), diff --git a/src/util/corePlugins.ts b/src/util/corePlugins.ts index 55c017dad00..3e0e3f867c4 100644 --- a/src/util/corePlugins.ts +++ b/src/util/corePlugins.ts @@ -99,6 +99,7 @@ export const swapPlugins = { letsexchange: ENV.LETSEXCHANGE_INIT, nexchange: ENV.NEXCHANGE_INIT, sideshift: ENV.SIDESHIFT_INIT, + simpleswap: ENV.SIMPLESWAP_INIT, swapuz: ENV.SWAPUZ_INIT, xgram: ENV.XGRAM_INIT, nymswap: ENV.NYM_SWAP_INIT,