disbursement_envelope represents a control object that uniquely defines one instance of disbursement for one disbursement cycle for a benefit program

A benefit program - in one disbursement cycle - will create exactly one disbursement envelope.

This envelope will represent the control object under which all individual disbursements will be made - for one benefit program - for one disbursement cycle.

The object (and corresponding persistent table) will have the following attributes

Object Design



Business Logic

Will result in persistence of 1 record each in the tables - disbursement_envelope and disbursement_envelope_batch_status

Validations & Exceptions

  1. disbursement_schedule_date should be greater than today + disbursement_sla_days (configuration)

  2. disbursement_currency_code should be equal to benefit_program.disbursement_currency_code

  3. disbursement_envelope_id should be unique

  4. benefit_program_mnemonic should exist in benefit_program

  5. number_of_beneficiaries - valid non zero integer

  6. number_of_disbursements - should be greater or equal to number_of_beneficiaries

  7. total_disbursement_amount - valid non zero number

Last updated


Copyright © 2024 OpenG2P. This work is licensed under Creative Commons Attribution International LicenseCC-BY-4.0 unless otherwise noted.