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 filter to return payment links matching one or more comparison expressions. Each expression must be in the query string form:\n
\n<field><operator><value>\n
\nWhen multiple expressions are provided, results include payment links that satisfy the combined filter criteria.\n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n\n\n \n \n \n \n\n \n \n \n\n\n \n \n \n\n
FieldOperatorsField/Values
status\t= and != link_status_active, link_status_paid, link_status_inactive, link_status_expired
order_id\t= merchantOrderNumber
amount\t=, !=, >, >=, <, <= totalTransactionAmount
partial_paid\t= true, false
merchant_portal_username\t= merchantPortalUsername
\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 resource on the internet specifying its location on a computer network and a mechanism for retrieving. type: string readOnly: true expirationTimestamp: $ref: '#/components/schemas/expirationTimestamp' name: description: The label for the payment link. type: string description: description: The label for the payment link. type: string totalTransactionAmount: description: Specifies the monetary value of the transaction performed in the transaction currency. type: integer format: int64 currencyCode: description: Codifies the monetary unit that was associated with the financial transaction (such as sale, returns, chargebacks etc.). type: string consumer: $ref: '#/components/schemas/linkConsumer' createdTimestamp: $ref: '#/components/schemas/createdTimestamp' checkoutOptions: $ref: '#/components/schemas/linkCheckoutOptions' cardholderAccountHistory: description: Additional information about the Cardholder’s Account provided by the 3DS Requestor. type: object properties: accountCreateTimestamp: description: Designates the hour, minute and second in a specific day when the record was created. type: string accountUpdateTimestamp: description: Designates the hour, minute, and second in a specifc day when the record was last modified. type: string cardFirstUsedDate: description: Date that the payment account was enrolled in the Cardholder’s account with the 3DS Requestor. If this field is not set, then the Cardholder never used this card before and it' a guest checkout. type: string consumerAccount24HoursAddCardCount: description: Enumerates the merchant reported number of card addition attempts as a payment method by the consumer in their consumer profile during the last 24 hours. type: integer consumerAccountPasswordUpdateTimestamp: description: Designates the hour, minute, and second in a specifc day when the record was last modified. type: string last24HoursTransactionCount: description: Enumerates the occurrences of any transaction within a given period. type: integer lastYearTransactionCount: description: Enumerates the occurrences of any transaction within a given period. type: integer last6MonthsPurchaseCount: description: The number of requested merchant based purchase transactions for the cardholder over a specified time frame. type: integer consumerAccountSuspiciousActivityIndicator: description: Indicates the merchant has experienced suspicious activity (including previous fraud) on the consumer account. This is used for the assessment of the level of fraud risk for the specific authentication for both the cardholder and the authentication being conducted. type: boolean consumerAccountAddressIdenticalIndicator: description: Indicates if the Cardholder billing address and shipping address are identical for this transaction. type: boolean consumerShippingAddressFirstUsageDate: description: Designates the year, month and day when the shipping address for this consumer profile was first used for the delivery of a purchased product. type: string consumerShipToNameIdenticalIndicator: description: Indicates the consumer name on the account is identical to the shipping name used for this transaction. type: boolean merchantFraudRiskAssessment: description: Merchant's assessment of the level of fraud risk for the specific authentication for both the Cardholder and the authentication being conducted. type: object properties: shipmentType: description: Indicates shipping method chosen for the transaction. type: string enum: - SHIPPING_METHOD_SHIP_TO_BILLING_ADDRESS - SHIPPING_METHOD_SHIP_TO_VERIFIED_ADDRESS_ON_FILE - SHIPPING_METHOD_SHIP_TO_ADDRESS_NOT_ON_FILE - SHIPPING_METHOD_SHIP_TO_STORE_FOR_PICKUP - SHIPPING_METHOD_DIGITAL_GOODS_DELIVERY - SHIPPING_METHOD_TICKETS - SHIPPING_METHOD_OTHER deliveryTimeframe: description: Codifies the shipment period of time chosen by the consumer in the purchase transaction from the merchant as defined by the Three Domain Secure (3-D Secure or 3DS) cardholder authentication process. This is used for the assessment of the level of fraud risk for the specific authentication for both the cardholder and the authentication being conducted. type: string enum: - DELIVERY_TYPE_UNSPECIFIED - DELIVERY_TYPE_ELECTRONIC_DELIVERY - DELIVERY_TYPE_SAME_DAY_SHIPPING - DELIVERY_TYPE_OVERNIGHT_SHIPPING - DELIVERY_TYPE_TWO_DAYS_OR_MORE_SHIPPING orderEmailAddress: description: A mail system that allows a party to send and receive messages electronically. An email address is composed of a local part and a domain part. The local part is unique to the individual while the domain or host name must meet specific standards required by the host that administers the email service. type: string productRepurchase: description: Whether the Cardholder is reordering previously purchased merchandise. type: boolean productPreorder: description: Whether Cardholder is placing an order for merchandise with a future availability or release date. type: boolean preorderAvailabilityDate: description: For a pre-ordered purchase, the expected date that the merchandise will be available. type: string requestorEstimatedTransactionFraudRiskScore: description: Specifies the estimated likelihood of the transaction is fraudulent as assessed by the 3DS requestor. type: string maxLength: 4 merchantIdentification: description: Sub Merchannt Identification Information type: object properties: subMerchantId: description: Identifies a merchant's account as it appears on the accountholder's statement. type: string serviceEntitlementNumber: description: Identifies a unique number assigned to a merchant by a payment brand to process conveyed transactions. type: string sellerIdentifier: description: A unique number generated by the Firm to identify the individual Transaction Division processing, using the Payment Brand (AMEX Opt Blue, Discover Conveyed, etc.) conveyed settlement program under the Firm's Service Entitlement (SE) Number. In the Payment Brand's conveyed settlement program, the merchant does not have an SE Number (AMEX, Discover, etc.). The Firm owns the merchant relationship and provides all the merchant servicing and support. type: string responseCode: description: Short explanation of response Code type: string authorization: description: Auth Options type: object properties: authorizationType: description: 'Codifies an authorization message according to the type of operation being described within the message. Some examples include: Purchase, Balance Inquiry, Return, and Payment. A Null or Blank value is used when the Authorization Type is unknown.' type: string enum: - AUTH_METHOD_VERIFY_ONLY - AUTH_METHOD_CART_AMOUNT - AUTH_METHOD_TOKENIZE_ONLY softMerchant: $ref: '#/components/schemas/softMerchant' cardOnFile: $ref: '#/components/schemas/cardOnFile' isEstimatedAmount: description: Indicates whether the auth amount is an estimate or a final amount. type: boolean subMerchantSupplementalData: $ref: '#/components/schemas/subMerchantSupplementalData' code: description: Codifies a raised exception encountered by an internal or external system, sub-system, interface, job, module, system component with which the web service application interfaces. In this instance it refers to the error raised when reporting job failed. type: string expirationTimestamp: description: Designates the hour, minute, and second in a specific day after which a payment link will expire. The status will be changed to EXPIRED afterwards. type: string format: date-time responseStatus: description: 'The label given to the state of a response to a request submitted by a consumer through the Firm''s Application Program Interface (API) that matches a test case. Valid Values: ERROR,SUCCESS, DENIED' type: string enum: - DENIED - ERROR - SUCCESS linkConsumer: description: Profile information of the consumer whom the payment link transaction will be billed to type: object writeOnly: true properties: phone: description: 'A locator whose value identifies the formatted numeric address for routing voice or data communications via telephony, to reach a party. NOTE: Telephone number formats may vary; this field can include domestic and international telephone numbers.' type: string maxLength: 12 format: NNN-NNN-NNNN email: description: Email address of the consumer. When an email is provided, then the payment link created will be sent to the email automatically. type: string deprecated: true billingAddress: $ref: '#/components/schemas/address' message: description: Provides textual description of a problem that has occurred and is preventing the system from completing a task. Messages can be a confirmation, warning or notification, and can trigger the system to apply a customized default value or override to a field, record or file, halt or postpone processing, skip or reject the entry generating the problem. Messages can be displayed on-screen in the user interface or in reporting. type: string createdTimestamp: description: Designates the hour, minute and second in a specific day when the record was created. type: string readOnly: true responseMessage: description: Long explanation of response Message type: string listLinkResponse: description: Payment Link Responses type: object properties: links: type: array minItems: 0 description: This is used for specifying an attribute used on a model for collection object that will contain one or more attributes items: $ref: '#/components/schemas/paymentLink' nextPageToken: description: Token for the next page. Should be passed as page_token for the subsequent request. type: string softMerchant: description: Soft merchant information is passed to the card association along with the transaction. This soft merchant information may also be used for cases where smaller businesses or franchise outlets are making a sale in which a merchant aggregator or payment facilitator processes the payment transaction on their behalf. type: object properties: name: description: The label given to the merchant name as it appears on the account holder's statement. This soft merchant name may be used for statement and reporting consistency, and to help reduce disputes because it is more recognizable name to the account holder. The merchant name typically is defaulted to the merchant's Doing Business as Name (DBA name) as stored in the Firm's merchant set up system. However, this default DBA name may be overridden on the transaction for certain merchants such as aggregators and petroleum merchants. This override is only allowed when there is a flag set to enable the merchant to send soft merchant information to the Firm. This soft merchant information is passed to the card association along with the transaction. This soft merchant information may also be used for cases where smaller businesses or franchise outlets are making a sale in which a merchant aggregator or payment facilitator (such as Square, Stripe, Amazon etc.) processes the payment transaction on their behalf. type: string merchantPurchaseDescription: description: Provides textual information provided by the merchant that is specific to their internal systems or processing regarding the items, servicing or sourcing related to the transaction. type: string phone: description: 'A locator whose value identifies the formatted numeric address for routing voice or data communications via telephony, to reach a party. NOTE: Telephone number formats may vary; this field can include domestic and international telephone numbers.' type: string maxLength: 12 format: NNN-NNN-NNNN email: description: A mail system that allows a party to send and receive messages electronically. An email address is composed of a local part and a domain part. The local part is unique to the individual while the domain or host name must meet specific standards required by the host that administers the email service. type: string maxLength: 13 url: description: Provides textual information about data for the protocol for specifying addresses on the Internet (Universal Resource Locator - URL) for the merchant's organization. type: string maxLength: 13 visaMerchantVerificationValueId: description: Identifies the unique number assigned by payment brands to merchants that have registered to participate in unique interchange programs. Some of the programs that a merchant can register for are the Utility program and the Purchasing Card Large ticket. Participating in the program allows the merchants to receive a better than priced rate. type: string masterCardMerchantVerificationValueId: description: Identifies the unique number assigned by payment brands to merchants that have registered to participate in unique interchange programs. Some of the programs that a merchant can register for are the Utility program and the Purchasing Card Large ticket. Participating in the program allows the merchants to receive a better than priced rate. type: string merchantIncorporationStatus: description: Codifies the incorporation status of the merchant location (e.g.,1=Individual/Sole proprietor, 2=Partnership, 3=Corporation - Chapter S, C, 4=Medical or legal corporation, 5=Associations/estates/trusts, 6=Tax exempt organizations (501C), 7=Government (Federal/state/local), 8=International organizations, 9=Limited liability companies, 0=Invalid value, blank - Not incorporated (default)). type: string foreignMerchantIndicator: description: Used to identify a foreign retailer under the Visa Marketplace program type: boolean address: $ref: '#/components/schemas/address' merchantCategoryCode: description: MCC or Merchant Category Code. Defaults to MCC configured at the merchant profile level. Some configurations allow multiple MCC's under a single Merchant ID. Sending an MCC not configured will result in an error. type: string minLength: 4 maxLength: 4 pattern: ^\d{4}$ paymentMethodType: description: Codifies the method of payment accepted for the checkout session. type: string enum: - PAYMENT_METHOD_TYPE_CARD - PAYMENT_METHOD_TYPE_ELECTRONIC_CHECK - PAYMENT_METHOD_TYPE_APPLE_PAY - PAYMENT_METHOD_TYPE_SEPA - PAYMENT_METHOD_TYPE_GOOGLE_PAY - PAYMENT_METHOD_TYPE_PAZE - PAYMENT_METHOD_TYPE_WECHAT_PAY - PAYMENT_METHOD_TYPE_IDEAL - PAYMENT_METHOD_TYPE_PAY_PAL - PAYMENT_METHOD_TYPE_ALI_PAY - PAYMENT_METHOD_TYPE_TRUSTLY - PAYMENT_METHOD_TYPE_KLARNA - PAYMENT_METHOD_TYPE_PAY_BY_BANK - PAYMENT_METHOD_TYPE_AFFIRM linkItem: description: Link Item type: object required: - product properties: product: $ref: '#/components/schemas/linkItemProduct' quantity: description: Enumerates the volume (quantity) of each individual product type included in the transaction. The quantity, unit of measure and the line item price is used to calculate the aggregated purchase amount for each line item. In some cases, quantity can include a fraction or decimal places to allow for items such as hours of service provided, or a pound portion of goods. type: number format: double unitPrice: description: Specifies the monetary value of the per-item cost of a good or service. type: integer format: int64 linkCheckoutOptions: description: Checkout option information needed during payment link creation. type: object writeOnly: true properties: capture: $ref: '#/components/schemas/capture' authorization: $ref: '#/components/schemas/authorization' paymentMethodOptions: $ref: '#/components/schemas/paymentMethodOptions' paymentCardAuthenticationRequest: $ref: '#/components/schemas/paymentCardAuthenticationRequest' merchantOrderNumber: description: A unique identifier assigned by the merchant or on behalf of the merchant for the intention to purchase goods and/or services. The merchant order provides the merchant a reference to the prices, quantity and description of goods and/or services to be delivered for all transactions included in the sale. type: string updatePaymentLinkRequest: description: Defines a request for updating a payment link. type: object required: - status properties: status: description: Codifies the current standing of the Payment link type: string enum: - LINK_STATUS_INACTIVE securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT