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 | Field | \n Operators | \n Field/Values | \n
\n \n | status | \n \t= and != | \n link_status_active, link_status_paid, link_status_inactive, link_status_expired | \n
\n\n | order_id | \n \t= | \n merchantOrderNumber | \n
\n\n | amount | \n \t=, !=, >, >=, <, <= | \n totalTransactionAmount | \n
\n\n | partial_paid | \n \t= | \n true, false | \n
\n\n | merchant_portal_username | \n \t= | \n merchantPortalUsername | \n
\n
\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