In this step, you will create an S3 bucket to store invoice files uploaded by users. This bucket will be created in the us-east-1 region, and you will also configure an event notification to trigger a Lambda function whenever a new file is uploaded into a specific folder.

💡 Note: Before creating the bucket, make sure you have selected the correct region us-east-1 in the upper right corner of the AWS Console screen.
Creating the S3 bucket in the correct region is crucial for services like Lambda or Textract to work seamlessly.

invoice-upload-s3-bucket
💡 Note: Bucket names must be globally unique. You may add a suffix if the name is already taken, e.g., invoice-upload-s3-bucket-123456.
In the Object Ownership section, select ACLs disabled.
Block Public Access settings: keep default settings (all enabled) to ensure data is not public.


In the Default encryption section, choose Amazon S3 managed keys (SSE-S3).
Click Create bucket to finish.


uploads/ folder
uploads




Configure as follows:
TriggerLambdaOnUploaduploads/PUT (All object create events)UploadInvoiceFileFunction



If you don’t see the Lambda function listed, make sure it was created in the correct region (us-east-1) and that the Lambda’s IAM role has the s3:PutBucketNotification permission.