Skip to main content

List Payment Methods

Retrieve all payment methods stored for the organization.

Request​

GET /billing/payment-methods

Authentication​

Requires an Admin Bearer JWT token.

Authorization: Bearer <access_token>

Query Parameters​

None.

Response​

Returns an array of payment method objects.

Success Response​

Status Code: 200 OK

Response Body:

[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"cardNumberMasked": "**** **** **** 4242",
"billerExpiry": "12/2028",
"isDefault": true,
"createdAt": "2026-01-15T09:00:00Z"
}
]

Response Fields​

FieldTypeDescription
idUUIDUnique identifier for the payment method
cardNumberMaskedstringMasked card number (only last 4 digits visible)
billerExpirystringCard expiration date in MM/YYYY format
isDefaultbooleanWhether this is the default payment method
createdAtstringISO timestamp when the payment method was added

Errors​

Status CodeError CodeDescription
401UNAUTHORIZEDMissing or invalid JWT token
403FORBIDDENUser does not have admin privileges

Example​

Request​

curl -X GET https://app.entryguard.io/api/v1/billing/payment-methods \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

Response​

[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"cardNumberMasked": "**** **** **** 4242",
"billerExpiry": "12/2028",
"isDefault": true,
"createdAt": "2026-01-15T09:00:00Z"
},
{
"id": "660e8400-e29b-41d4-a716-446655440001",
"cardNumberMasked": "**** **** **** 5555",
"billerExpiry": "06/2027",
"isDefault": false,
"createdAt": "2026-02-01T14:30:00Z"
}
]

Notes​

  • Payment methods are automatically added during the subscription checkout flow via the payment provider.
  • Only one payment method can be set as the default at a time.
  • Card details are stored securely by the payment provider and only masked information is accessible via the API.