You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
User Story
As an admin, I want to receive a Slack notification whenever a new user signs up, so that I can review and approve the signup in a timely manner.
Acceptance Criteria
GIVEN a new user successfully signs up WHEN the registration process is completed THEN a Slack notification should be sent to a designated channel with the user's details.
GIVEN a new user signs up with a provider or sender scope WHEN the registration process is completed THEN the Slack notification should include the user's role (provider or sender) and associated details (e.g., currency for providers).
GIVEN a Slack notification fails to send WHEN the registration process is completed THEN the system should log the error but not interrupt the registration flow.
Tech Details
Add a new Slack notification service or extend an existing one to handle user signup notifications.
Modify the Register function in the AuthController to:
Call the Slack notification service after a successful user creation.
Include the following details in the notification:
User ID
Email
First Name
Last Name
Scopes (e.g., provider, sender)
Provider details (if applicable, e.g., currency)
Timestamp of signup
Use a Slack webhook URL stored in the environment variables for sending notifications.
Ensure the Slack notification is only sent in the production environment.
Notes/Assumptions
The Slack webhook URL will be configured in the environment variables.
Notifications are for informational purposes only and do not block the registration process.
The notification should be formatted in a readable way (e.g., using Slack's block kit or markdown formatting).
Open Questions
Should we include additional user details in the Slack notification (e.g., IP address, signup source)?
Should we implement a retry mechanism for failed Slack notifications?
The text was updated successfully, but these errors were encountered:
I’d love to take on this task! As a backend engineer proficient in TypeScript, Express.js, NestJS, MongoDB, and PostgreSQL, I can seamlessly integrate Slack notifications into your existing system.
Plan to Solve the Issue
Extend Notification Service – Create or update the Slack notification service to handle signup events.
Modify Register Function – Update the AuthController to trigger the Slack notification after successful user creation.
Include Required Details – Send user ID, email, name, scopes, provider details (if any), and signup timestamp.
Secure Webhook Integration – Use a Slack webhook URL stored in environment variables and restrict notifications to production only.
Error Handling – Log failures without interrupting the signup flow.
Format Message – Use Slack Block Kit or markdown for a structured, readable notification.
Answers to Open Questions
Include additional details? → Yes, IP address and signup source can help with tracking but should be configurable.
Retry failed notifications? → Yes, a simple retry mechanism (e.g., exponential backoff) can improve reliability.
User Story
As an admin, I want to receive a Slack notification whenever a new user signs up, so that I can review and approve the signup in a timely manner.
Acceptance Criteria
GIVEN a new user successfully signs up
WHEN the registration process is completed
THEN a Slack notification should be sent to a designated channel with the user's details.
GIVEN a new user signs up with a provider or sender scope
WHEN the registration process is completed
THEN the Slack notification should include the user's role (provider or sender) and associated details (e.g., currency for providers).
GIVEN a Slack notification fails to send
WHEN the registration process is completed
THEN the system should log the error but not interrupt the registration flow.
Tech Details
Register
function in theAuthController
to:production
environment.Notes/Assumptions
Open Questions
The text was updated successfully, but these errors were encountered: