diff --git a/apps/web/src/components/BillingLimits.tsx b/apps/web/src/components/BillingLimits.tsx
index b638a6c..2b385e7 100644
--- a/apps/web/src/components/BillingLimits.tsx
+++ b/apps/web/src/components/BillingLimits.tsx
@@ -78,6 +78,7 @@ export function BillingLimits({projectId, hasSubscription, billingEnabled}: Bill
workflows: null,
campaigns: null,
transactional: null,
+ inbound: null,
},
});
@@ -88,6 +89,7 @@ export function BillingLimits({projectId, hasSubscription, billingEnabled}: Bill
workflows: limitsData.workflows.limit,
campaigns: limitsData.campaigns.limit,
transactional: limitsData.transactional.limit,
+ inbound: limitsData.inbound.limit,
});
}
}, [limitsData, form]);
@@ -121,6 +123,7 @@ export function BillingLimits({projectId, hasSubscription, billingEnabled}: Bill
workflows: limitsData.workflows.limit,
campaigns: limitsData.campaigns.limit,
transactional: limitsData.transactional.limit,
+ inbound: limitsData.inbound.limit,
});
}
setIsEditing(false);
@@ -217,6 +220,7 @@ export function BillingLimits({projectId, hasSubscription, billingEnabled}: Bill
usage={limitsData.transactional}
currency={limitsData.currency}
/>
+
>
)}
@@ -322,6 +326,36 @@ export function BillingLimits({projectId, hasSubscription, billingEnabled}: Bill
}}
/>
+ {
+ const estimatedCost =
+ limitsData?.currency && field.value
+ ? formatEmailCost(Number(field.value), limitsData.currency)
+ : null;
+ return (
+
+ Inbound Emails Limit
+
+ field.onChange(e.target.value === '' ? null : e.target.value)}
+ />
+
+
+ Maximum inbound emails per month. Leave empty for unlimited.
+ {estimatedCost && ≈ {estimatedCost}/month}
+
+
+
+ );
+ }}
+ />
+