diff --git a/BTCPayServer/Controllers/StoresController.cs b/BTCPayServer/Controllers/StoresController.cs index 4e5a57824..9331dfab1 100644 --- a/BTCPayServer/Controllers/StoresController.cs +++ b/BTCPayServer/Controllers/StoresController.cs @@ -222,6 +222,7 @@ namespace BTCPayServer.Controllers vm.InvoiceExpiration = storeBlob.InvoiceExpiration; vm.RateMultiplier = (double)storeBlob.GetRateMultiplier(); vm.PreferredExchange = storeBlob.PreferredExchange.IsCoinAverage() ? "coinaverage" : storeBlob.PreferredExchange; + vm.AllowCoinConversion = storeBlob.AllowCoinConversion; return View(vm); } @@ -298,6 +299,7 @@ namespace BTCPayServer.Controllers blob.PreferredExchange = model.PreferredExchange; blob.SetRateMultiplier(model.RateMultiplier); + blob.AllowCoinConversion = model.AllowCoinConversion; if (store.SetStoreBlob(blob)) { diff --git a/BTCPayServer/Data/StoreData.cs b/BTCPayServer/Data/StoreData.cs index 5822e895c..e04ade65d 100644 --- a/BTCPayServer/Data/StoreData.cs +++ b/BTCPayServer/Data/StoreData.cs @@ -213,6 +213,10 @@ namespace BTCPayServer.Data { get; set; } + public bool AllowCoinConversion + { + get; set; + } [DefaultValue(60)] [JsonProperty(DefaultValueHandling = DefaultValueHandling.Populate)] public int MonitoringExpiration diff --git a/BTCPayServer/Models/StoreViewModels/StoreViewModel.cs b/BTCPayServer/Models/StoreViewModels/StoreViewModel.cs index 012132b55..0844ee874 100644 --- a/BTCPayServer/Models/StoreViewModels/StoreViewModel.cs +++ b/BTCPayServer/Models/StoreViewModels/StoreViewModel.cs @@ -94,6 +94,12 @@ namespace BTCPayServer.Models.StoreViewModels get; set; } + [Display(Name = "Allow conversion through third party (Shapeshift, Changelly...)")] + public bool AllowCoinConversion + { + get; set; + } + public string StatusMessage { get; set; diff --git a/BTCPayServer/Views/Stores/UpdateStore.cshtml b/BTCPayServer/Views/Stores/UpdateStore.cshtml index 6b0ea8408..59ad84066 100644 --- a/BTCPayServer/Views/Stores/UpdateStore.cshtml +++ b/BTCPayServer/Views/Stores/UpdateStore.cshtml @@ -70,6 +70,10 @@ +
+ + +
Derivation Scheme
The DerivationScheme represents the destination of the funds received by your invoice on chain. @@ -85,7 +89,7 @@ - @foreach(var scheme in Model.DerivationSchemes) + @foreach (var scheme in Model.DerivationSchemes) { @scheme.Crypto @@ -114,7 +118,7 @@ - @foreach(var scheme in Model.LightningNodes) + @foreach (var scheme in Model.LightningNodes) { @scheme.CryptoCode