Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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