---
title: "List Payment Links"
method: GET
path: "/api/v2/payment_links"
tags: ["Checkout/Payment Links"]
---

# List Payment Links

`GET /api/v2/payment_links`

List all payment links with pagination, filtering, and sorting options.

## Query parameters

- `statuses` PaymentLinkStatus[], nullable — Filter by subscription status
- `from_date` string, date-time, nullable — datetime is created_at
- `to_date` string, date-time, nullable — datetime is created_at
- `from_price` union — limit list by min payment link total amount inclusive
  - number
  - string
- `to_price` union — limit list by max payment link total amount inclusive
  - number
  - string
- `product_ids` string[], nullable — Product ids that need to be in the list of payment links
- `currencies` string, nullable — Filter by currency codes (OR). E.g. currencies=SAR,USD
- `page` integer — Page number, defaults to 1.
- `limit` integer — Size of a page, defaults to 10. Maximum is 100.
- `sort_field` string, nullable — Field to sort by, e.g., 'amount', 'scheduled_on'
- `sort_direction` string, nullable — Sorting direction ('asc' or 'desc')

## Response `200`

Successful Response

- ListResourcePaymentLinkDetailed
  - `data` PaymentLinkDetailed[]
    - `created_at` string, date-time — Creation timestamp of the object.
    - `updated_at` string, date-time, nullable — Last modification timestamp of the object.
    - `id` string, uuid4 — Unique identifier (UUID) of the payment link
    - `name` string — Name of the payment link
    - `description` string, nullable — Description of the payment link
    - `amount` string — Total payment link amount after discounts
    - `original_amount` string — Original payment link amount before discounts
    - `item_level_discounted_amount` string — Total amount discounted at the item level
    - `coupon_calculation_metadata` CouponCalculationMetadataDto
      - `coupons` CouponMetadataDto[] — List of coupons applied and their calculation details
        - `coupon_id` string — Unique identifier of the coupon
        - `name` string — Name of the coupon
        - `is_percentage` boolean — Whether the discount is a percentage or fixed amount
        - `discount_value` string — Discount value (percentage or fixed amount)
        - `currency` string, nullable — Currency code for fixed-amount coupons (e.g., SAR, USD). Null for percentage coupons.
        - `order` integer — Order in which the coupon was applied
        - `amount_before_discount` string — Amount before applying this coupon
        - `discount_amount` string — Discount amount applied by this coupon
        - `amount_after_discount` string — Amount after applying this coupon
    - `currency` 'SAR' | 'USD' | 'EUR' | 'GBP' | 'AED' | 'BHD' | 'KWD' | 'OMR' | 'QAR' — ISO 4217 currency codes supported by Moyasar. Includes all currencies supported by Moyasar payment gateway.
    - `home_currency_amount` string, nullable — Amount in home currency (SAR) at creation; for SAR links or when converted from other currencies.
    - `exchange_rate_at_creation` string, nullable — Exchange rate from link currency to home currency (SAR) at creation time
    - `max_number_of_payments` integer, nullable — Maximum number of times this payment link can be used
    - `valid_until` string, date-time, nullable — UTC datetime after which the payment link is no longer valid
    - `created_resource_effective_at` string, date-time, nullable — UTC datetime when the resource created from this payment link becomes effective
    - `confirmation_message` string, nullable — Message to display to the payer after successful payment
    - `recurring_interval` 'WEEK' | 'MONTH' | 'QUARTER' | 'YEAR'
    - `recurring_interval_count` integer, nullable — Number of intervals per billing cycle for recurring payments
    - `trial_period_days` integer, nullable — Free trial duration (in days) for subscriptions created from this link. Only meaningful for recurring (subscription) products. When set, each consumer who subscribes via this link gets a free trial of this length, after which the first real billing period begins. Must be between 1 and 365.
    - `status` 'INACTIVE' | 'ACTIVE' | 'COMPLETED'
    - `organization_id` string, uuid4 — Unique identifier (UUID) of the organization
    - `user_id` string, uuid4 — Unique identifier (UUID) of the user who created the payment link
    - `organization_consumer_id` string, uuid4, nullable — Unique identifier (UUID) of the organization consumer if linked to a specific consumer
    - `deactivate_message` string, nullable — Message to display when the payment link is deactivated
    - `custom_fields` object, nullable — Custom fields schema for collecting additional information
    - `success_redirect_url` string, nullable — URL to redirect the payer to after a successful payment
    - `failure_redirect_url` string, nullable — URL to redirect the payer to after a failed payment
    - `custom_metadata` object, nullable — The key-value metadata dictionary passed during creation.
    - `contact_information_type` 'PHONE' | 'EMAIL'
    - `items` PaymentLinkItemDto[] — List of products included in the payment link
      - `created_at` string, date-time — Creation timestamp of the object.
      - `updated_at` string, date-time, nullable — Last modification timestamp of the object.
      - `id` string, uuid4 — Unique identifier (UUID) of the payment link item
      - `product_id` string, uuid4 — Unique identifier (UUID) of the product
      - `quantity` integer — Quantity of the product in this payment link item
      - `original_amount` string — Original amount before discounts
      - `discounted_amount` string — Amount after discounts are applied
      - `coupon_calculation_metadata` CouponCalculationMetadataDto
        - `coupons` CouponMetadataDto[] — List of coupons applied and their calculation details
          - `coupon_id` string — Unique identifier of the coupon
          - `name` string — Name of the coupon
          - `is_percentage` boolean — Whether the discount is a percentage or fixed amount
          - `discount_value` string — Discount value (percentage or fixed amount)
          - `currency` string, nullable — Currency code for fixed-amount coupons (e.g., SAR, USD). Null for percentage coupons.
          - `order` integer — Order in which the coupon was applied
          - `amount_before_discount` string — Amount before applying this coupon
          - `discount_amount` string — Discount amount applied by this coupon
          - `amount_after_discount` string — Amount after applying this coupon
      - `product` ProductDto — Product response DTO. This DTO includes both legacy single-price fields and new multi-currency `prices` array for backward compatibility with existing API consumers. Legacy fields (`price`, `currency`, `vat_amount`, etc.) represent the default price and are kept for backward compatibility. New integrations should use the `prices` array.
        - `created_at` string, date-time — Creation timestamp of the object.
        - `updated_at` string, date-time, nullable — Last modification timestamp of the object.
        - `id` string, uuid4 — Unique identifier (UUID) of the product
        - `name` string — Name of the product.
        - `description` string, nullable — Description of the product.
        - `type` 'RECURRING' | 'ONE_OFF' | 'METERED'
        - `recurring_interval` 'WEEK' | 'MONTH' | 'SEMESTER' | 'YEAR'
        - `recurring_interval_count` integer — The billing cycle multiple if the product is recurring
        - `price` string — Total price including VAT (default currency).
        - `currency` 'AED' | 'AFN' | 'ALL' | 'AMD' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BOV' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BZD' | 'CAD' | 'CDF' | 'CHE' | 'CHF' | 'CHW' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'COU' | 'CRC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRU' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MXV' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLE' | 'SOS' | 'SRD' | 'SSP' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'USN' | 'UYI' | 'UYU' | 'UYW' | 'UZS' | 'VED' | 'VES' | 'VND' | 'VUV' | 'WST' | 'XAD' | 'XAF' | 'XCD' | 'XCG' | 'XOF' | 'XPF' | 'XSU' | 'XUA' | 'YER' | 'ZAR' | 'ZMW' | 'ZWG' — Default price currency of the product.
        - `is_price_exempt_from_vat` boolean — Is the default price exempt from VAT?
        - `is_price_inclusive_of_vat` boolean — [DEPRECATED] This field will be removed; non-exempt prices will be assumed inclusive.
        - `price_excluding_vat` string — [DEPRECATED] Default price excluding VAT. VAT will be calculated on invoice.
        - `vat_amount` string — [DEPRECATED] VAT amount for default price. VAT will be calculated on invoice.
        - `prices` ProductPriceInlineDto[] — All active prices for this product across different currencies.
          - `id` string, uuid4
          - `currency` 'SAR' | 'USD' | 'EUR' | 'GBP' | 'AED' | 'BHD' | 'KWD' | 'OMR' | 'QAR' — ISO 4217 currency codes supported by Moyasar. Includes all currencies supported by Moyasar payment gateway.
          - `amount` string
          - `is_active` boolean
          - `is_price_inclusive_of_vat` boolean — [DEPRECATED] This field will be removed; non-exempt prices will be assumed inclusive.
          - `is_price_exempt_from_vat` boolean
          - `price_excluding_vat` string — [DEPRECATED] Net amount excluding VAT. VAT will be calculated on invoice.
          - `vat_amount` string — [DEPRECATED] VAT amount. VAT will be calculated on invoice.
        - `is_active` boolean — Can this product be used in invoices or subscriptions?
        - `is_one_time` boolean — Shows if the product was created to be used once, and not to be added to product cataloge
        - `is_used_in_finalized_invoice` boolean — Is the product used in a finalized invoice?
        - `external_metadata` ExternalMetadataStorage
      - `allow_custom_quantity` boolean — Whether customers can select custom quantity for this item
      - `min_quantity` integer, nullable — Minimum quantity allowed if allow_custom_quantity is True
      - `max_quantity` integer, nullable — Maximum quantity allowed if allow_custom_quantity is True
      - `currency` 'SAR' | 'USD' | 'EUR' | 'GBP' | 'AED' | 'BHD' | 'KWD' | 'OMR' | 'QAR' — ISO 4217 currency codes supported by Moyasar. Includes all currencies supported by Moyasar payment gateway.
      - `product_price_id` string, uuid4, nullable — Reference to the ProductPrice used for this item, if any
      - `original_amount_in_smallest_unit` integer — Original item amount in smallest currency unit.
      - `discounted_amount_in_smallest_unit` integer — Discounted item amount in smallest currency unit.
    - `coupons` CouponDto[] — List of coupons applied to the payment link
      - `created_at` string, date-time — Creation timestamp of the object.
      - `updated_at` string, date-time, nullable — Last modification timestamp of the object.
      - `id` string, uuid4 — Unique identifier (UUID) of the coupon
      - `name` string — Name of the coupon.
      - `discount_value` string — Discount value of the coupon (either percentage or fixed).
      - `currency` 'SAR' | 'USD' | 'EUR' | 'GBP' | 'AED' | 'BHD' | 'KWD' | 'OMR' | 'QAR' — ISO 4217 currency codes supported by Moyasar. Includes all currencies supported by Moyasar payment gateway.
      - `is_percentage` boolean — True if the discount is a percentage, False if it is a fixed amount.
      - `is_active` boolean — Indicates if the coupon is currently active.
    - `override_payment_methods` PaymentMethodDto
      - `visa` boolean — visa is enabled
      - `mastercard` boolean — mastercard is enabled
      - `amex` boolean — amex is enabled
      - `bank_transfer` boolean — bank_transfer is enabled
      - `installment` boolean — installment is enabled
      - `bnpl` boolean — Enable BNPL (e.g. Tamara) for this payment link
    - `url` string — Public URL of the payment link for sharing with payers
    - `amount_collected` string — Total amount collected from payments
    - `documents` PaymentLinkDocumentDto[] — Documents attached to the payment link
      - `created_at` string, date-time — Creation timestamp of the object.
      - `updated_at` string, date-time, nullable — Last modification timestamp of the object.
      - `id` string, uuid4 — Unique identifier (UUID) of the document
      - `name` string — Original filename of the uploaded document
      - `file_url` string — Public URL of the uploaded document
      - `content_type` string — MIME type of the document
      - `size_bytes` integer — Size of the document in bytes
    - `form` FormNestedDto — Form attached to a payment link, rendered by the payer UI.
      - `id` string, uuid4 — Unique identifier (UUID) of the form
      - `name` string — Name of the form
      - `definition` object — Form-builder definition JSON
    - `amount_in_smallest_unit` integer — Payment link amount in smallest currency unit (e.g. halala for SAR).
    - `original_amount_in_smallest_unit` integer — Original payment link amount (before discounts) in smallest currency unit.
    - `amount_collected_in_smallest_unit` integer — Total amount collected in smallest currency unit.
  - `pagination` Pagination
    - `total_count` integer
    - `max_page` integer
    - `current_page` integer
    - `limit` integer
    - `has_next_page` boolean
    - `has_previous_page` boolean

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/streampay/apis/stream-app.md) · [All operations](https://skmtc.dev/streampay/apis/stream-app/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/streampay/stream-app/revisions/515eeea7d260/schema)
