Skip to content

Conversation

@RJV333
Copy link
Contributor

@RJV333 RJV333 commented Jan 7, 2026

What is the goal of this PR and why is this important?

Adds a table that will be used to track payments. Might need some revision as we flesh out the implication but these fields seem like the standard params for tracking stripe payments.

polymorphic payer: who is making the payment
polymorphic payable: what is being paid for (EventRegistration, Dues...)

amount_cents
currency

stripe_payment_intent_id: primary Stripe reference to the payment attempt lifecycle
stripe_charge_id: the actual money movement (receipt, refund, reconcilliation)

status - this field and the two below are used for tracking and reflecting the stripe payment intent status
failure_code
faliure_message

stripe_metadata - json of additional metadata from using stripe API

Anything else to add?

Undetermined if we want to add refunds to this table or in a separate table, but probably better to determine that after we get core functionality up and running

@maebeale
Copy link
Collaborator

maebeale commented Jan 7, 2026

@RJV333 we're running rubocop omikase. would you run rubocop in this branch and fix the arrays to have spaces at beginning and end to satisfy the rubocop gods?

@jmilljr24
Copy link
Collaborator

@RJV333 rubocop -a from your terminal will autocorrect what is can. It usually handles 99% of the issues.

Copy link
Collaborator

@maebeale maebeale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great!

@maebeale maebeale merged commit 1704ecf into rubyforgood:main Jan 8, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants