Skip to content

[FEATURE] Allow officers to enter cash payment details #2100

@adarshm11

Description

@adarshm11

okay it's time to get some bread

when people pay for membership with cash, we currently have it so that an officer writes down their info then passes the info to another officer who inputs this into a Python script which makes an API request... point is that approach sucks and we should just make a page where that info can be entered immediately by the officer who takes down payment info. no delays, no concerns about information integrity.

here's how it's gonna go down.

  • we'll need to create a new page (which will also be accessible on the admin dashboard) where officers can enter the paying member's name, email address, and the amount they paid (either $20 for semester or $30 for yearly membership). i don't care about the UI much but i'd suggest making the input elements look like what you see on the cleezy dashboard or the advertisement admin page
  • when the officer submits, we need to take those three fields and create a JSON object like this:
const data = {
    payerEmail,
    amount,
    payerName,
    note: `SCE Membership: ${payerEmail}`,
    transactionId: 'N/A - cash payment',
}

and send a POST request with that object to the /storePayment endpoint located in the membership payment api. i recommend using/adding to the api functions to keep with clark practices

when this is done, payments will automatically get stored in the database, and cash payers will get their automated email to confirm their membership. automation is the way vro ✌️

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions