Architecture

DB Tables

Recurring Transfer: This is the parent of the recurring transfers, it stores common information that every job needs to do the transfer.

Recurring Transfer Job: It stores information about the transfers that it needs to execute.

Recurring Transfer Provider Status: It stores the error the BaaS throws if something happened.

Infrastructure

Recurring transfers infrastructure diagram

The recurring transfers architecture is composed by:

3 Lambdas:

  • Scheduler: It gets the recurring transfer jobs that needs to be executed today from our DB.

  • Processor: It receives the events from the SQS queue and sends them to the Process Server API.

  • Retries: It gets the recurring transfer jobs that needs to be retried.

2 APIs / Servers:

  • Linker API: This is the main API that the client communicates with.

  • Jobs Server: This API is in charge of processing all the recurring transfers jobs received from the Processor Lambda.

2 Cloudwatch events / Eventbridge:

  • Scheduler Event: This event calls the Scheduler Lambda every X time.

  • Retries Event: This event calls the Retries Lambda every X time.

Last updated

Was this helpful?