JPMorgan Chase Payment Links API

Operations related to catalog services

Operations 4

POST /payment-links Create a sharable payment link
GET /payment-links Returns the list of already created links
PATCH /payment-links/{linkId} Updates a payment link
GET /payment-links/{linkId} Retrieves a payment link

Documentation

📖
Documentation
https://developer.payments.jpmorgan.com/api
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fembedded-finance-solutions%2Fembedded-payments%2Fonboarding-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Fconsumer-profile%2Fconsumer-profile-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Ftokenization%2Ftokenization-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Freporting%2Freporting-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Ftreasury%2Freceivables%2Frequest-to-pay-api.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Fonline-payments%2Fcheckout%2Fcheckout-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Fdispute-management%2Fdispute-management-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Ffraud-solutions%2Falerts-and-decisioning%2Foas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Fproduct-configuration%2Fproduct-configuration-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2F3-d-secure%2F3-d-secure-1.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Faccount-updater%2Faccount-updater-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Ftreasury%2Fglobal-payments%2Fglobal-payments%2Fglobal-payments-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fliquidity-account-solutions%2Fbda-balances%2Faccounts-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Ffraud-solutions%2Fvalidation-services%2Fvalidation-services-oas.md
📖
APIReference
https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Fwallet-decryption%2Fwallet-decryption-oas.md

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/jp-morgan-chase-payment-links-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

jp-morgan-chase-payment-links-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Checkout Payment Links API
  description: The Checkout API provides a unified interface for merchants to enable consumer checkout and accept payments within their overall commerce experience.
  version: 1.9.2
  contact:
    name: Checkout API Support
    url: https://developer.payments.jpmorgan.com/contact/support
    email: ms.pit.team@jpmorgan.com
servers:
- url: https://merchant-api.checkout.merchant.jpmorgan.com/v1
  description: PRODUCTION - OAUTH
- url: https://merchant-api.checkout-cat.merchant.jpmorgan.com/v1
  description: CLIENT TESTING - OAUTH
- url: https://api-mock.payments.jpmorgan.com/v1
  description: MOCK
security:
- BearerAuth: []
tags:
- name: Payment Links
  description: Operations related to catalog services
paths:
  /payment-links:
    post:
      summary: Create a sharable payment link
      tags:
      - Payment Links
      description: This endpoint creates a payment link to be shared with consumers.
      parameters:
      - name: merchantId
        in: header
        required: true
        schema:
          type: string
        description: Identifies a merchant acquiring account that processes transactions on one of the Firm's payment processing systems.
        examples:
          New Link:
            value: '998482157632'
      - name: platformId
        in: header
        schema:
          type: string
          example: '9999999100'
        description: Identifies the platform used to facilitate the transaction request.
      requestBody:
        description: Defines a request for creating a payment link.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/paymentLink'
            examples:
              New Link:
                value:
                  merchantOrderNumber: '123456'
                  items:
                  - product:
                      productId: GHIJ1234KLMN
                      name: Motorcycle Helmet
                      sku: ABC123DEF
                      description: DOT certified helmet that protects the head on impact
                    quantity: 2
                    unitPrice: 2000
                  expirationTimestamp: '2024-08-23T00:23:05.353Z'
                  name: New Link Name
                  description: This is description for the new link
                  totalTransactionAmount: 5000
                  currencyCode: USD
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/paymentLink'
              examples:
                New Link:
                  value:
                    linkId: OPQR9876STUV
                    merchantOrderNumber: '123456'
                    items:
                    - product:
                        productId: GHIJ1234KLMN
                        name: Motorcycle Helmet
                        sku: ABC123DEF
                        description: DOT certified helmet that protects the head on impact
                      quantity: 2
                      unitPrice: 2000
                    status: LINK_STATUS_ACTIVE
                    url: test.com/sadfsafsd
                    expirationTimestamp: '2024-08-23T00:23:05.353Z'
                    name: New Link Name
                    description: This is description for the new link
                    totalTransactionAmount: 5000
                    currencyCode: USD
                    createdTimestamp: '2024-08-20T00:23:05.353Z'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '404':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '408':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
    get:
      summary: Returns the list of already created links
      tags:
      - Payment Links
      description: This endpoint returns list of links, paged.
      parameters:
      - name: merchantId
        in: header
        required: true
        schema:
          type: string
        description: Identifies a merchant acquiring account that processes transactions on any of the Firm's payment processing systems or a merchant acquiring account from an external system in the case where the Firm is not the acquirer. When the Firm is the acquirer, the hierarchy level should be defined by corresponding attribute merchant hierarchy level code. The processing system that generated the identifier is defined by the Merchant Identifier System Code
        examples:
          Get Link:
            value: '998482157632'
      - name: platformId
        in: header
        schema:
          type: string
          example: '9999999100'
        description: Identifies the platform used to facilitate the transaction request.
      - name: pageSize
        in: query
        schema:
          type: string
        description: Maximum number of links requested.
        examples:
          Get Link:
            value: '10'
      - name: pageToken
        in: query
        schema:
          type: string
        description: Token can be empty/left blank for initial request. Subsequent requests to get follow-up pages will need this value populated. This value can be obtained from results of the initial request.
      - name: filter
        in: query
        schema:
          type: string
        description: "Use <i>filter</i> to return payment links matching one or more comparison expressions. Each expression must be in the query string form:\n<br>\n&lt;field&gt;&lt;operator&gt;&lt;value&gt;\n<br>\nWhen multiple expressions are provided, results include payment links that satisfy the combined <i>filter</i> criteria.\n<table>\n   <tr>\n      <th>Field</th>\n      <th>Operators</th>\n      <th>Field/Values</th>\n  </tr>\n  <tr>\n      <td>status</td>\n      <td>\t= and != </td>\n      <td>link_status_active, link_status_paid, link_status_inactive, link_status_expired</td>\n  </tr>        \n<tr>\n      <td>order_id</td>\n      <td>\t= </td>\n      <td>merchantOrderNumber</td>\n</tr>\n<tr>\n      <td>amount</td>\n      <td>\t=, !=, &gt;, &gt;=, &lt;, &lt;= </td>\n      <td>totalTransactionAmount</td>\n</tr>  \n<tr>\n      <td>partial_paid</td>\n      <td>\t= </td>\n      <td> true, false </td>\n</tr>\n<tr>\n      <td>merchant_portal_username</td>\n      <td>\t= </td>\n      <td> merchantPortalUsername </td>\n</tr>\n</table>\n"
        examples:
          Get Link:
            value: status=link_status_active
      - name: orderBy
        in: query
        schema:
          type: string
        description: An expression which specifies field and order in which Payment Links should be listed.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/listLinkResponse'
              examples:
                Get Link:
                  value:
                    links:
                    - linkId: OPQR9876STUV
                      merchantOrderNumber: '123456'
                      items:
                      - product:
                          productId: GHIJ1234KLMN
                          name: Motorcycle Helmet
                          sku: ABC123DEF
                          description: DOT certified helmet that protects the head on impact
                        quantity: 2
                        unitPrice: 2000
                      status: LINK_STATUS_ACTIVE
                      url: test.com/sadfsafsd
                      expirationTimestamp: '2024-08-23T00:23:05.353Z'
                      name: New Link Name
                      description: This is description for the new link
                      totalTransactionAmount: 5000
                      currencyCode: USD
                      createdTimestamp: '2024-08-20T00:23:05.353Z'
                    nextPageToken: ABCD1234
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '408':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '503':
          description: Resource is temporarily unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /payment-links/{linkId}:
    patch:
      summary: Updates a payment link
      tags:
      - Payment Links
      description: This endpoint is used to deactivate a payment link.
      parameters:
      - name: merchantId
        in: header
        required: true
        schema:
          type: string
        description: Identifies a merchant acquiring account that processes transactions on any of the Firm's payment processing systems or a merchant acquiring account from an external system in the case where the Firm is not the acquirer. When the Firm is the acquirer, the hierarchy level should be defined by corresponding attribute merchant hierarchy level code. The processing system that generated the identifier is defined by the Merchant Identifier System Code
        examples:
          Update Link:
            value: '998482157632'
      - name: platformId
        in: header
        schema:
          type: string
          example: '9999999100'
        description: Identifies the platform used to facilitate the transaction request.
      - name: linkId
        in: path
        required: true
        schema:
          type: string
        description: Unique identifier of the link to be updated
        examples:
          Update Link:
            value: OPQR9876STUV
      - name: status
        in: query
        required: true
        schema:
          type: string
          enum:
          - LINK_STATUS_INACTIVE
        description: New status for the link. Can be LINK_STATUS_INACTIVE.
        examples:
          Update Link:
            value: LINK_STATUS_INACTIVE
      requestBody:
        description: Payment link fields to update.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/updatePaymentLinkRequest'
            examples:
              Update Link:
                value:
                  status: LINK_STATUS_INACTIVE
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/paymentLink'
              examples:
                Update Link:
                  value:
                    linkId: OPQR9876STUV
                    merchantOrderNumber: '123456'
                    items:
                    - product:
                        productId: GHIJ1234KLMN
                        name: Motorcycle Helmet
                        sku: ABC123DEF
                        description: DOT certified helmet that protects the head on impact
                      quantity: 2
                      unitPrice: 2000
                    status: LINK_STATUS_INACTIVE
                    url: test.com/sadfsafsd
                    expirationTimestamp: '2024-08-23T00:23:05.353Z'
                    name: New Link Name
                    description: This is description for the new link
                    totalTransactionAmount: 5000
                    currencyCode: USD
                    createdTimestamp: '2024-08-20T00:23:05.353Z'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '404':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '408':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
    get:
      summary: Retrieves a payment link
      tags:
      - Payment Links
      description: This endpoint is used to fetch the payment link with given id.
      parameters:
      - name: merchantId
        in: header
        required: true
        schema:
          type: string
        description: Identifies a merchant acquiring account that processes transactions on any of the Firm's payment processing systems or a merchant acquiring account from an external system in the case where the Firm is not the acquirer. When the Firm is the acquirer, the hierarchy level should be defined by corresponding attribute merchant hierarchy level code. The processing system that generated the identifier is defined by the Merchant Identifier System Code
        examples:
          Get Link:
            value: '998482157632'
      - name: platformId
        in: header
        schema:
          type: string
          example: '9999999100'
        description: Identifies the platform used to facilitate the transaction request.
      - name: linkId
        in: path
        required: true
        schema:
          type: string
        description: Unique identifier of the link to be retrieved
        examples:
          Get Link:
            value: OPQR9876STUV
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/paymentLink'
              examples:
                Get Link:
                  value:
                    linkId: OPQR9876STUV
                    merchantOrderNumber: '123456'
                    items:
                    - product:
                        productId: GHIJ1234KLMN
                        name: Motorcycle Helmet
                        sku: ABC123DEF
                        description: DOT certified helmet that protects the head on impact
                      quantity: 2
                      unitPrice: 2000
                    status: LINK_STATUS_INACTIVE
                    url: test.com/sadfsafsd
                    expirationTimestamp: '2024-08-23T00:23:05.353Z'
                    name: New Link Name
                    description: This is description for the new link
                    totalTransactionAmount: 5000
                    currencyCode: USD
                    createdTimestamp: '2024-08-20T00:23:05.353Z'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '408':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '503':
          description: Resource is temporarily unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
components:
  schemas:
    recurringPaymentDetails:
      description: Information required for recurring payments.
      type: object
      properties:
        paymentAgreemendId:
          description: A merchant generated identifier for a contract presented to the merchant's consumer whom has acknowledged the acceptance in order to use the product or service in exchange of a recurring payment. The program (subscription) allows a consumer to receive products/services on a regular basis and be automatically charged on their preferred method of payment according to the chosen frequency.
          type: string
    paymentMethodOptions:
      description: Defines payment method options.
      type: object
      properties:
        acceptedPaymentMethodTypes:
          type: array
          minItems: 0
          description: A list of the payment method types (e.g., card) that this Checkout Session can accept. If not specified, then defaults to configured merchant settings.
          items:
            $ref: '#/components/schemas/paymentMethodType'
        klarnaOptions:
          $ref: '#/components/schemas/klarnaOptions'
    installmentPaymentDetails:
      description: Information required for installment payments.
      type: object
      properties:
        paymentPlanId:
          description: A unique identifier for a payment program or contract offered by the merchant for products or services that include product pricing and billing frequency.
          type: string
    validationMessage:
      description: Information about errors occurred in transaction validation
      type: object
      properties:
        code:
          $ref: '#/components/schemas/code'
        message:
          $ref: '#/components/schemas/message'
        entity:
          description: The moniker given to the module or program where the error generated.
          type: string
    subMerchantSupplementalData:
      description: Additionsl data provided by merchant for reference purposes.
      type: object
      properties:
        merchantIdentification:
          $ref: '#/components/schemas/merchantIdentification'
    capture:
      description: Capture Option
      type: object
      properties:
        captureMethod:
          description: Codifies how the Acceptor (merchant) or the Firm maintains the completed (captured) payment processing transactions during the processing day prior to being submitted for settlement. Typically, this is determined by the merchant's business or system processes.
          type: string
          enum:
          - CAPTURE_METHOD_MANUAL
          - CAPTURE_METHOD_NOW
    klarnaOptions:
      description: Codifies consumer choices and industry data provided by merchant to complete the payment with Klarna payment provider.
      type: object
      properties:
        interoperabilityToken:
          description: Provides textual information of details about the consumer's choices during payment at checkout such as installment plans, "buy now, pay later" services, etc. they have accepted on the merchant site. The local payment method provider generates this token and passes it to the Firm during Checkout. On completion of the payment capture, the Firm passes the interoperability token back to the local payment method provider for details on completing the payment processing.
          type: string
          minLength: 1
          maxLength: 8192
    paymentCardAuthenticationRequest:
      description: paymentCardAuthenticationRequest models SCA request data which will be sent to 3DS provider if the Shopper is using a payment card as a payment method. This message is used by SetupCheckoutIntent API and must be populated if the Merchant wants (or must) use SCA for payment card transactions. Any change on paymentCardAuthenticationRequest must be backward compatible
      type: object
      properties:
        threeDSChallengeType:
          description: Indicates whether a challenge is requested for this transaction.
          type: string
          enum:
          - CHALLENGE_TYPE_NO_PREFERENCE
          - CHALLENGE_TYPE_NO_CHALLENGE_REQUESTED
          - CHALLENGE_TYPE_CHALLENGE_REQUESTED
          - CHALLENGE_TYPE_CHALLENGE_MANDATED
          - CHALLENGE_TYPE_NO_CHALLENGE_TRANSACTION_RISK_ANALYZED
          - CHALLENGE_TYPE_NO_CHALLENGE_DATA_SHARE_ONLY
          - CHALLENGE_TYPE_NO_CHALLENGE_SCA_ALREADY_COMPLETED
          - CHALLENGE_TYPE_NO_CHALLENGE_TRUSTED
        cardholderAccountHistory:
          $ref: '#/components/schemas/cardholderAccountHistory'
        purchaseInfo:
          $ref: '#/components/schemas/purchaseInfo'
        requestorAuthenticationInfo:
          $ref: '#/components/schemas/requestorAuthenticationInfo'
        requestorPriorTransactionAuthenticationInfo:
          $ref: '#/components/schemas/requestorPriorTransactionAuthenticationInfo'
        SCAExemptionReason:
          description: Indicates the justification why a transaction does not have to meet Strong Customer Authentication (SCA) requirements.
          type: string
          enum:
          - SCA_EXEMPTION_TRUSTED_MERCHANT
          - SCA_EXEMPTION_SECURE_CORPORATE_PAYMENT
          - SCA_EXEMPTION_TRANSACTION_RISK_ANALYSIS
          - SCA_EXEMPTION_LOW_VALUE_PAYMENT
          - SCA_EXEMPTION_MERCHANT_INITIATED_TRANSACTION
          - SCA_EXEMPTION_RECURRING_PAYMENT
          - SCA_EXEMPTION_DELEGATION
        authenticationType:
          description: Codifies the 3DS authentication type requested by the service provider when processing a payment for the service provided or goods sold.
          type: string
          enum:
          - AUTHENTICATION_TYPE_DEFAULT
          - AUTHENTICATION_TYPE_EXEMPTION
          - AUTHENTICATION_TYPE_AUTHENTICATION
    purchaseInfo:
      description: Purchase information.
      type: object
      properties:
        lastPurchaseDate:
          description: Designates the year, month and day of the most recent purchase which occurred on the Cardholder account.
          type: string
        paymentFrequency:
          description: Minimum number of days between authorizations.
          type: string
        merchantFraudRiskAssessment:
          $ref: '#/components/schemas/merchantFraudRiskAssessment'
        purchasedItemCount:
          description: The number of items in the sale for the payment processing request.
          type: integer
          minimum: 0
          maximum: 99
          format: int32
    requestorPriorTransactionAuthenticationInfo:
      description: Information about how the 3DS Requestor authenticated the cardholder as part of a previous 3DS transaction.
      type: object
      properties:
        acsTransactionId:
          description: A unique identifier for the Three Domain Secure (3-D Secure or 3DS) Requestor (merchant) authentication of the cardholder before or during the transaction.
          type: string
        requestorAuthenticationMethod:
          description: Codifies how the Three Domain Secure (3-D Secure or 3DS) Requestor (merchant) authenticated the cardholder before or during the transaction.
          type: string
          enum:
          - PRIOR_AUTHENTICATION_METHOD_FRICTIONLESS_AUTHENTICATION_BY_ACS
          - PRIOR_AUTHENTICATION_METHOD_CHALLENGED_BY_ACS
          - PRIOR_AUTHENTICATION_METHOD_AVS_VERIFIED
          - PRIOR_AUTHENTICATION_METHOD_OTHER_ISSUER_METHOD
        threeDSAuthenticationTimestamp:
          description: Designates the hour, minute and second in a specific day when the Three Domain Secure (3-D Secure or 3DS) Requestor (merchant) authenticated the cardholder before or during the transaction.
          type: string
        threeDSAuthenticationData:
          description: Data that documents and supports a specific authentication process.
          type: string
    requestorAuthenticationInfo:
      description: Information about how the 3DS Requestor authenticated the Cardholder before or during the transaction.
      type: object
      properties:
        requestorAuthenticationMethod:
          description: Codifies how the Three Domain Secure (3-D Secure or 3DS) Requestor (merchant) authenticated the cardholder before or during the transaction.
          type: string
          enum:
          - REQUESTOR_AUTHENTICATION_METHOD_NONE
          - REQUESTOR_AUTHENTICATION_METHOD_REQUESTOR_CRED
          - REQUESTOR_AUTHENTICATION_METHOD_FEDERATED_ID
          - REQUESTOR_AUTHENTICATION_METHOD_ISSUER_CRED
          - REQUESTOR_AUTHENTICATION_METHOD_FIDO_AUTHENTICATOR
        threeDSAuthenticationTimestamp:
          description: Designates the hour, minute and second in a specific day when the Three Domain Secure (3-D Secure or 3DS) Requestor (merchant) authenticated the cardholder before or during the transaction.
          type: string
        threeDSAuthenticationData:
          description: Data that documents and supports a specific authentication process.
          type: string
        authenticationUseCase:
          description: Codifies the type of payment transaction for which a cardholder authentication is requested. This is only for Cartes Bancaires Three Domain Secure (3-D Secure or 3DS).
          type: string
          enum:
          - AUTHENTICATION_USE_CASE_SINGLE_PAYMENT
          - AUTHENTICATION_USE_CASE_RECURRING_PAYMENT_FIXED
          - AUTHENTICATION_USE_CASE_INSTALLMENT_PAYMENT
          - AUTHENTICATION_USE_CASE_PAYMENT_ON_SHIPMENT
          - AUTHENTICATION_USE_CASE_RECURRING_PAYMENT_OTHER
          - AUTHENTICATION_USE_CASE_PREAUTHORIZATION_RENTAL
          - AUTHENTICATION_USE_CASE_PREAUTHORIZATION_NO_RENTAL
    messages:
      description: A list of errors and warnings
      type: object
      properties:
        responseStatus:
          $ref: '#/components/schemas/responseStatus'
        responseCode:
          $ref: '#/components/schemas/responseCode'
        responseMessage:
          $ref: '#/components/schemas/responseMessage'
        validationErrors:
          type: array
          minItems: 0
          description: Information about errors occurred in transaction validation
          items:
            $ref: '#/components/schemas/validationMessage'
    address:
      description: Specifies an address.
      type: object
      properties:
        recipientFullName:
          description: The party's name as provided at the time the party is onboarded or updated based on firm policies and business rules that allow for such updates. For an individual this field includes the first, middle, and last name. The full name can also include prefixes such as Dr. or Hon. and suffixes such as Jr or III. For non carbon entities, the field reflects the complete legal name by which an entity is registered with a state, local or federal government.
          type: string
        line1:
          description: 'A portion of a party''s address which is the line of the unstructured (unparsed) geographic street address containing any of the following: house number, street name, street direction, street type, dwelling type and number, PO Box number, rural delivery route number. Character limit of <= 40 characters.'
          type: string
          maxLength: 40
        line2:
          description: 'A portion of a party''s address which is the line of the unstructured (unparsed) geographic street address containing any of the following: house number, street name, street direction, street type, dwelling type and number, PO Box number, rural delivery route number. Character limit of <= 40 characters.'
          type: string
          maxLength: 40
        city:
          description: A portion of a party's address which is the geographic area that is a municipality with legal power granted by a state/province charter. Character limit of <= 40 characters.
          type: string
          maxLength: 40
        state:
          description: Classifies a geographic area that represents a first level, legal and political subdivision of a country; for example, Virginia, Bavaria. Character limit of >= 2 and <= 3 characters.
          type: string
          minLength: 2
          maxLength: 3
        country:
          description: 'A code that identifies the Country, a Geographic Area, that is recognized as an independent political unit in world affairs. Note: This data element is a child of the Country Code CDE and valid values are based on ISO standards. Character limit of <= 3 characters.'
          type: string
          maxLength: 3
        postalCode:
          description: The portion of a party's address that is the encoded representation of a geographic area to facilitate mail delivery services. Character limit of >= 3 and <= 12 characters.
          type: string
          minLength: 3
          maxLength: 12
    cardOnFile:
      description: Card On File Option
      type: object
      properties:
        transactionType:
          description: Codifies the transaction type used for card on file transaction.
          type: string
          enum:
          - COF_TRANSACTION_TYPE_RECURRING
          - COF_TRANSACTION_TYPE_INSTALLMENT
          - COF_TRANSACTION_TYPE_UNSCHEDULED
        recurringPaymentDetails:
          $ref: '#/components/schemas/recurringPaymentDetails'
        installmentPaymentDetails:
          $ref: '#/components/schemas/installmentPaymentDetails'
    linkItemProduct:
      description: Product information used on linked item
      type: object
      required:
      - name
      properties:
        productId:
          description: A unique merchant assigned identifier for an item or service offered for sale by the Merchant.
          type: string
        name:
          description: The label given to an item or service offered for sale by the Merchant.
          type: string
        sku:
          description: Identifies a scannable alphanumeric code generated by the merchant, known as Stock Keeping Unit (SKU), most often seen printed on product labels in a retail store. The code identifies characteristics about each product such as manufacturer, brand, style, color, size, price, etc. and allows the merchant to automatically track the movement of inventory. SKUs may also be applied to intangible but billable products, such as units of repair time in an auto body shop or warranties.
          type: string
        description:
          description: The label given to an item or service offered for sale by the Merchant.
          type: string
    paymentLink:
      description: Payment Link
      type: object
      required:
      - items
      - totalTransactionAmount
      - currencyCode
      properties:
        linkId:
          description: The unique identifier of the Payment Link resource.
          type: string
          readOnly: true
        merchantOrderNumber:
          $ref: '#/components/schemas/merchantOrderNumber'
        items:
          type: array
          minItems: 0
          description: List Of Line Items
          items:
            $ref: '#/components/schemas/linkItem'
        status:
          description: Codifies the current standing of the Payment link
          type: string
          readOnly: true
          enum:
          - LINK_STATUS_ACTIVE
          - LINK_STATUS_PAID
          - LINK_STATUS_INACTIVE
          - LINK_STATUS_EXPIRED
        url:
          description: A reference to a web res

# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/jp-morgan-chase/refs/heads/main/openapi/jp-morgan-chase-payment-links-api-openapi.yml