payout retry lambda

This commit is contained in:
jackiettran
2026-01-14 18:05:41 -05:00
parent da82872297
commit 7f2f45b1c2
13 changed files with 1439 additions and 9 deletions

View File

@@ -0,0 +1,46 @@
const { processPayoutRetries } = require("./handler");
const { logger } = require("../shared");
/**
* Lambda handler for payout retry processing.
*
* Invoked by EventBridge Scheduler on a daily schedule (7 AM EST).
* No event payload required - processes all failed payouts.
*
* @param {Object} event - EventBridge Scheduler event (unused)
* @returns {Promise<Object>} Result of the retry processing
*/
exports.handler = async (event) => {
logger.info("Lambda invoked", {
event,
invocationTime: new Date().toISOString(),
});
try {
const result = await processPayoutRetries();
logger.info("Payout retry processing completed", {
totalProcessed: result.totalProcessed,
successful: result.successfulCount,
failed: result.failedCount,
});
return {
statusCode: 200,
body: JSON.stringify(result),
};
} catch (error) {
logger.error("Payout retry processing failed", {
error: error.message,
stack: error.stack,
});
return {
statusCode: 500,
body: JSON.stringify({
success: false,
error: error.message,
}),
};
}
};