+ @if (!Model.Events.Any())
+ {
+
No data found.
+ }
+ else
+ {
+
+
+
+ ID |
+ Type |
+ API Version |
+ Created |
+ @if (Model.ActionType == EventActionType.Process)
+ {
+ Processing Error |
+ }
+
+
+
+ @foreach (var eventResponseBody in Model.Events)
+ {
+
+ @eventResponseBody.Id |
+ @eventResponseBody.Type |
+ @eventResponseBody.APIVersion |
+ @eventResponseBody.CreatedUTC |
+ @if (Model.ActionType == EventActionType.Process)
+ {
+ @eventResponseBody.ProcessingError |
+ }
+
+ }
+
+
+ }
+
diff --git a/src/Admin/Billing/Views/_ViewImports.cshtml b/src/Admin/Billing/Views/_ViewImports.cshtml
new file mode 100644
index 000000000..02423ba0e
--- /dev/null
+++ b/src/Admin/Billing/Views/_ViewImports.cshtml
@@ -0,0 +1,5 @@
+@using Microsoft.AspNetCore.Identity
+@using Bit.Admin.AdminConsole
+@using Bit.Admin.AdminConsole.Models
+@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
+@addTagHelper "*, Admin"
diff --git a/src/Admin/Billing/Views/_ViewStart.cshtml b/src/Admin/Billing/Views/_ViewStart.cshtml
new file mode 100644
index 000000000..820a2f6e0
--- /dev/null
+++ b/src/Admin/Billing/Views/_ViewStart.cshtml
@@ -0,0 +1,3 @@
+@{
+ Layout = "_Layout";
+}
diff --git a/src/Admin/Enums/Permissions.cs b/src/Admin/Enums/Permissions.cs
index 6b73ba420..a8168b9e1 100644
--- a/src/Admin/Enums/Permissions.cs
+++ b/src/Admin/Enums/Permissions.cs
@@ -47,5 +47,6 @@ public enum Permission
Tools_GenerateLicenseFile,
Tools_ManageTaxRates,
Tools_ManageStripeSubscriptions,
- Tools_CreateEditTransaction
+ Tools_CreateEditTransaction,
+ Tools_ProcessStripeEvents
}
diff --git a/src/Admin/Startup.cs b/src/Admin/Startup.cs
index 788908d42..f25e5072d 100644
--- a/src/Admin/Startup.cs
+++ b/src/Admin/Startup.cs
@@ -89,6 +89,7 @@ public class Startup
services.AddDefaultServices(globalSettings);
services.AddScoped