Skip to content

feat(multi-payment-methods): add payment method selection to invoices and payment requests#488

Open
aquinofb wants to merge 2 commits intomainfrom
ftr-multiple-payment-methods
Open

feat(multi-payment-methods): add payment method selection to invoices and payment requests#488
aquinofb wants to merge 2 commits intomainfrom
ftr-multiple-payment-methods

Conversation

@aquinofb
Copy link

@aquinofb aquinofb commented Feb 3, 2026

Summary

Add PaymentMethodReference schema enabling users to specify payment method (provider or manual) when creating invoices, retrying payments, and creating payment requests. Also adds payment_method_id to Payment response object.

  • Create PaymentMethodReference.yaml schema
  • Add payment_method_id to PaymentObject response
  • Add optional request body to POST /invoices/{id}/retry_payment
  • Add payment_method to invoice one-off creation input
  • Add payment_method to payment request creation input

@aquinofb aquinofb force-pushed the ftr-multiple-payment-methods branch from 79d51f0 to 13b43bd Compare February 3, 2026 21:16
@aquinofb aquinofb marked this pull request as ready for review February 4, 2026 19:10
@aquinofb aquinofb self-assigned this Feb 4, 2026
Comment on lines +28 to +30
payment_method:
$ref: "./PaymentMethodReference.yaml"
description: Optional payment method to use for processing the payment request.
Copy link
Contributor

Choose a reason for hiding this comment

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

I can't find the reference for this param here

Copy link
Author

Choose a reason for hiding this comment

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

Great catch!

That's the same case as V1::PaymentSerializer, where it is available in Gql, but not in the controller.

In the ReqCreateInput, we have it in the Gql (GitHub), but it's not available in the controller you linked.

Copy link
Contributor

Choose a reason for hiding this comment

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

We have to ask Mike about it, sometimes the fields are hidden in the API but available through Front (GQL).

I don't think it's the case here.
cc: @lovrocolic

Copy link
Contributor

Choose a reason for hiding this comment

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

We also need to add this, not sure in this PR or other

invoice_custom_section: [
  :skip_invoice_custom_sections,
  {invoice_custom_section_codes: []}
]

Copy link
Author

Choose a reason for hiding this comment

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

I couldn't see this anywhere else. Probably we'd need to add to many places at once? Shall we leave it to another pull request? If not, I'm happy to include in this one

Copy link
Contributor

Choose a reason for hiding this comment

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

I prefer to have this in other PR.

it's not entirely related to multiple payment methods, but it has inside this feature (Dive In Part 2).
It's a completely new feature and deserves another PR.

Copy link
Contributor

@mariohd mariohd left a comment

Choose a reason for hiding this comment

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

Looks good, just one comment and a question

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.

2 participants