Summary
The GHL frontend (Manage Autopayment → Saved Card) retrieves a contact's saved payment methods to allow selecting a specific card for scheduled invoice auto-payment. However, no public API endpoint exists to list a contact's saved payment methods for the native Stripe integration.
Current State
- The
AutoPaymentDetailsDto (from the official SDK) accepts paymentMethodId, cardId, and card fields — implying the ability to set a specific payment method programmatically
- The
POST /invoices/schedule/{scheduleId}/auto-payment endpoint accepts these fields
- The Custom Payment Provider framework exposes
list_payment_methods for custom providers, but there is no equivalent for the native Stripe integration
- The
InvoicePaid webhook payload does not include payment method details (no paymentMethodId, card, or transactionId)
What's Missing
A public API endpoint to list saved payment methods for a contact, e.g.:
GET /payments/contacts/{contactId}/payment-methods?locationId={locationId}
This would return saved cards/bank accounts on file for the contact, including paymentMethodId values that can be passed to the auto-payment endpoint.
Use Case
Building a payment management portal where customers can view and manage their payment methods and auto-payment settings on scheduled invoices. Without a public API to retrieve saved payment methods, we cannot programmatically present or assign a specific card to a scheduled invoice — requiring manual intervention through the GHL UI for every customer.
Product Area
Payments / Invoices