---
title: "Get Payment Link"
method: GET
path: "/api/v2/payment_links/{payment_link_id}"
tags: ["Checkout/Payment Links"]
---

# Get Payment Link

`GET /api/v2/payment_links/{payment_link_id}`

Retrieve detailed information about a specific payment link by its ID.

## Path parameters

- `payment_link_id` string, uuid, required — Unique identifier (UUID) of the payment link

## Response `200`

Successful Response

- 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.

## 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)
