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://api.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.