openapi: 3.2.0 info: title: Checkout Merchant Catalog 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: Merchant Catalog description: Operations related to generating and managing payment links paths: /catalog/products: post: summary: Create product in Merchant catalog tags: - Merchant Catalog description: This endpoint creates a product to be used in Payment Links. 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 Product: value: '998482157632' requestBody: description: This endpoint creates a product to be used in Payment Links. required: true content: application/json: schema: $ref: '#/components/schemas/catalogProduct' examples: New Product: value: name: Motorcycle Helmet sku: ABC123DEF description: DOT certified helmet that protects the head on impact responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/catalogProduct' examples: New Product: value: productId: GHIJ1234KLMN name: Motorcycle Helmet sku: ABC123DEF description: DOT certified helmet that protects the head on impact '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' '503': description: Resource is temporarily unavailable. content: application/json: schema: $ref: '#/components/schemas/messages' components: schemas: responseMessage: description: Long explanation of response Message type: string catalogProduct: description: Catalog Product 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 readOnly: true 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 responseCode: description: Short explanation of response Code 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 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 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 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' 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 securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT