Skip to main content

List Payment Methods

Retrieves a list of payment methods with optional filtering and pagination.

HTTP Request

GET/api/payment/methods

Authorization

Authorization

  • Required: Yes
  • Permission: Admin or Staff
  • Authentication: Token-based (Authorization: Token <your_api_key>)

Query Parameters

ParameterTypeDefaultDescription
limitinteger10Number of results per page
offsetinteger0Number of results to skip
orderingstringorderSort order (`id`, `name`, `order`, `active`, `created_at`, `updated_at`)
searchstringSearch in (`id`, `name`, `description`)
backendstringFilter by backend type (`zarinpal`, `pay-on-delivery`)
activebooleanFilter by active status
has_imagebooleanFilter payment methods with/without an associated image
order_minintegerMinimum order value filter
order_maxintegerMaximum order value filter
id_minintegerMinimum ID filter
id_maxintegerMaximum ID filter
created_datestringFilter by creation date (e.g., 2023-01-01)
updated_datestringFilter by last updated date (e.g., 2023-01-01)
created_fromstringFilter by creation date range start
created_tostringFilter by creation date range end
updated_fromstringFilter by last updated date range start
updated_tostringFilter by last updated date range end

Example Requests

1import requests
2
3# List all payment methods
4response = requests.get('http://www.example.com/api/payment/methods',
5  headers={'Authorization': 'Token <your_api_key>'}
6)
7print(response.json())
8
9# List active payment methods only
10response = requests.get('http://www.example.com/api/payment/methods', params={
11  'active': True,
12  'ordering': 'order'
13}, headers={'Authorization': 'Token <your_api_key>'})
14print(response.json())
15
16# Filter by backend type
17response = requests.get('http://www.example.com/api/payment/methods', params={
18  'backend': 'zarinpal',
19  'active': True
20}, headers={'Authorization': 'Token <your_api_key>'})
21print(response.json())

Status Codes

CodeDescription
200Payment methods retrieved successfully
400Bad request — invalid parameters
401Unauthorized — authentication required
403Forbidden — insufficient permissions
500Internal server error

Response Fields

FieldTypeDescription
idIntegerUnique ID of the payment method
backendStringBackend identifier for the payment method
activeBooleanWhether the payment method is active
orderIntegerOrder of the payment method in the list
nameStringName of the payment method
image_dataObjectImage details (read-only)
descriptionStringDescription of the payment method
settingsObjectAdditional settings for the payment method
created_atString (ISO 8601)Timestamp when the payment method was created
updated_atString (ISO 8601)Timestamp when the payment method was last updated

Image Data Structure

FieldTypeDescription
idIntegerUnique ID of the image
typeStringFile type (e.g., image/jpeg)
nameStringOriginal file name
sizeIntegerFile size in bytes
human_readable_sizeStringHuman readable file size (e.g., 2.5 MB)
fStringURL to access the image file
widthIntegerImage width in pixels
heightIntegerImage height in pixels
modeStringColor mode (e.g., RGB, CMYK)

Settings Structure

this response field depends on the payment method backend type and may include fields such as:

FieldTypeDescription
merchant_idStringMerchant ID for payment gateway (e.g., Zarinpal)
api_keyStringAPI key for authenticating requests to the payment gateway