openapi: 3.2.0 info: title: Tokenization Token Processing API description: Merchant Services Tokenization APIs enable merchants to secure their cards on file by replacing the sensitive Primary Account Number (PAN) with a token. Currently supports network tokenization via Mastercard, Visa & Amex. version: 1.5.0 contact: name: Tokenization API Support url: https://developer.payments.jpmorgan.com/contact servers: - url: https://api.merchant.jpmorgan.com/payments/v1/ description: PRODUCTION - OAUTH - url: https://api-test.merchant.jpmorgan.com/payments/v1/ description: CLIENT TESTING - OAUTH - url: https://api-mock.payments.jpmorgan.com/payments/v1 description: MOCK security: - BearerAuth: [] tags: - name: Token Processing description: Manage or request tokens and cryptograms. paths: /tokens: post: summary: Token provisioning request operationId: v1ProvisionToken tags: - Token Processing description: Provision a token for a payment instrument. parameters: - name: merchantId in: header required: true schema: type: string minLength: 8 maxLength: 12 description: Identifier for the merchant account. examples: Visa card tokenization: value: '991234567890' MasterCard tokenization: value: '991234567891' Amex tokenization: value: '991234567892' Visa Token for Token: value: '991234567893' Mastercard Token for Token: value: '991234567894' - name: requestId in: header required: true schema: type: string format: uuid description: Merchant identifier for the request. The value must be unique. examples: Visa card tokenization: value: 10cc0270-7bed-11e9-a188-1763956dd7f6 MasterCard tokenization: value: 11cc0270-7bed-11e9-a188-1763956dd7f6 Amex tokenization: value: 12cc0270-7bed-11e9-a188-1763956dd7f6 Visa Token for Token: value: 13cc0270-7bed-11e9-a188-1763956dd7f6 Mastercard Token for Token: value: 14cc0270-7bed-11e9-a188-1763956dd7f6 requestBody: description: Token Provision request required: true content: application/json: schema: $ref: '#/components/schemas/tokenProvisionRequest' examples: Visa card tokenization: value: device: deviceType: PHONE deviceIPAddress: 127.0.0.1 deviceLocale: en-US deviceLatLong: 40, -73 deviceMake: Samsung deviceOS: ANDROID deviceOsVersion: '12' digitalDeviceIdentifier: ahd896384d deviceGeoLocationCaptureTimestamp: '2021-09-08T21:01:20.945Z' deviceName: Samsung_Android walletId: '123' accountInformation: accountholderName: John Doe accountholderEmail: test@test.com accountType: GUEST accountHolderReference: e5ad0fd0-4f92-4df cardNumber: '4111111111111111' billingAddress: addressLine1: 7825 N MacArthur Blvd addressLine2: Lewisville Mall city: Irving stateProvince: TX postalCode: '72638' countryCode: US cardExpiry: month: 11 year: 2022 cardSource: KEY_ENTERED cardVerificationNumber: '325' riskInformation: walletRisk: walletScore: 15 walletUsageLength: 94 walletTransactions: 35 walletNameMatch: true cardRisk: cardScore: 23 cardUsageLength: 249 deviceRisk: deviceScore: 19 deviceUsageLength: 193 deviceTokenCount: 2 deviceCountry: US userRisk: userScore: 38 userUsageLength: 49 userTokenCount: 2 userWalletCount: 1 userCountry: US newUserAccount: false onFileTime: 37 presentationModes: - ECOM recommendationPath: APPROVED MasterCard tokenization: value: device: deviceType: PHONE deviceIPAddress: 127.0.0.1 deviceLocale: en-US deviceLatLong: 40, -73 deviceMake: Samsung deviceOS: ANDROID deviceOsVersion: '12' digitalDeviceIdentifier: ahd896384d deviceGeoLocationCaptureTimestamp: '2021-09-08T21:01:20.945Z' deviceName: Samsung_Android walletId: '123' accountInformation: accountholderName: John Doe accountholderEmail: test@test.com accountType: GUEST accountHolderReference: e5ad0fd0-4f92-4df cardNumber: '5204740000001002' billingAddress: addressLine1: 7825 N MacArthur Blvd addressLine2: Lewisville Mall city: Irving stateProvince: TX postalCode: '72638' countryCode: US cardExpiry: month: 11 year: 2022 cardSource: KEY_ENTERED cardVerificationNumber: '325' riskInformation: walletRisk: walletScore: 15 walletUsageLength: 94 walletTransactions: 35 walletNameMatch: true cardRisk: cardScore: 23 cardUsageLength: 249 deviceRisk: deviceScore: 19 deviceUsageLength: 193 deviceTokenCount: 2 deviceCountry: US userRisk: userScore: 38 userUsageLength: 49 userTokenCount: 2 userWalletCount: 1 userCountry: US newUserAccount: false onFileTime: 37 presentationModes: - ECOM recommendationPath: APPROVED Amex tokenization: value: device: deviceType: PHONE deviceIPAddress: 127.0.0.1 deviceLocale: en-US deviceLatLong: 40, -73 deviceMake: Samsung deviceOS: ANDROID deviceOsVersion: '12' digitalDeviceIdentifier: ahd896384d deviceGeoLocationCaptureTimestamp: '2021-09-08T21:01:20.945Z' deviceName: Samsung_Android walletId: '123' accountInformation: accountholderName: John Doe accountholderEmail: test@test.com accountType: GUEST accountHolderReference: e5ad0fd0-4f92-4df cardNumber: '340000000000001' billingAddress: addressLine1: 7825 N MacArthur Blvd addressLine2: Lewisville Mall city: Irving stateProvince: TX postalCode: '72638' countryCode: US cardExpiry: month: 11 year: 2022 cardSource: KEY_ENTERED cardVerificationNumber: '3251' riskInformation: walletRisk: walletScore: 15 walletUsageLength: 94 walletTransactions: 35 walletNameMatch: true cardRisk: cardScore: 23 cardUsageLength: 249 deviceRisk: deviceScore: 19 deviceUsageLength: 193 deviceTokenCount: 2 deviceCountry: US userRisk: userScore: 38 userUsageLength: 49 userTokenCount: 2 userWalletCount: 1 userCountry: US newUserAccount: false onFileTime: 37 presentationModes: - ECOM recommendationPath: APPROVED Visa Token for Token: value: device: deviceType: PHONE deviceIPAddress: 127.0.0.1 deviceLocale: en-US deviceLatLong: 40, -73 deviceMake: Samsung deviceOS: ANDROID deviceOsVersion: '12' digitalDeviceIdentifier: ahd896384d deviceGeoLocationCaptureTimestamp: '2025-09-15T21:01:20.945Z' deviceName: Samsung_Android walletId: '123' accountInformation: accountholderName: John Doe accountholderEmail: test@test.com accountType: GUEST accountHolderReference: e5ad0fd0-4f92-4df cardNumber: '4846011467670267' billingAddress: addressLine1: 7825 N MacArthur Blvd addressLine2: Lewisville Mall city: Irving stateProvince: TX postalCode: '72638' countryCode: US cardExpiry: month: 12 year: 2027 cardSource: KEY_ENTERED cardVerificationNumber: '325' riskInformation: walletRisk: walletScore: 15 walletUsageLength: 94 walletTransactions: 35 walletNameMatch: true cardRisk: cardScore: 23 cardUsageLength: 249 deviceRisk: deviceScore: 19 deviceUsageLength: 193 deviceTokenCount: 2 deviceCountry: US userRisk: userScore: 38 userUsageLength: 49 userTokenCount: 2 userWalletCount: 1 userCountry: US newUserAccount: false onFileTime: 37 presentationModes: - ECOM recommendationPath: APPROVED Mastercard Token for Token: value: device: deviceType: PHONE deviceIPAddress: 127.0.0.1 deviceLocale: en-US deviceLatLong: 40, -73 deviceMake: Samsung deviceOS: ANDROID deviceOsVersion: '12' digitalDeviceIdentifier: ahd896384d deviceGeoLocationCaptureTimestamp: '2025-09-15T21:01:20.945Z' deviceName: Samsung_Android walletId: '123' accountInformation: accountholderName: John Doe accountholderEmail: test@test.com accountType: GUEST accountHolderReference: e5ad0fd0-4f92-4df cardNumber: '5204731600012812' billingAddress: addressLine1: 7825 N MacArthur Blvd addressLine2: Lewisville Mall city: Irving stateProvince: TX postalCode: '72638' countryCode: US cardExpiry: month: 12 year: 2027 cardSource: KEY_ENTERED cardVerificationNumber: '325' tokenProvisioningVerificationValue: '654' riskInformation: walletRisk: walletScore: 15 walletUsageLength: 94 walletTransactions: 35 walletNameMatch: true cardRisk: cardScore: 23 cardUsageLength: 249 deviceRisk: deviceScore: 19 deviceUsageLength: 193 deviceTokenCount: 2 deviceCountry: US userRisk: userScore: 38 userUsageLength: 49 userTokenCount: 2 userWalletCount: 1 userCountry: US newUserAccount: false onFileTime: 37 presentationModes: - ECOM recommendationPath: APPROVED responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/tokenProvisionResponse' examples: Visa card tokenization: value: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 timestamp: '2021-09-15T19:08:19.097Z' tokenInformation: tokenNumber: '4761340000000019' expiry: month: 11 year: 2022 tokenReferenceIdentifier: af0a77c2-3810-457f-8d47-807bab406df8 tokenizationApprovalStatus: APPROVED cardReferenceNumber: 73ebcc62-56c0-41d2-b70a-4ede8cd700ff cardTokenStatus: ACTIVE cardLast4Digits: '1111' cardBrand: VISA cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 requestIdentifier: 276ac797-8754-4ab8-a0b7-87da568e4d6d responseStatus: SUCCESS responseCode: APPROVED responseMessage: The request is well received MasterCard tokenization: value: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 timestamp: '2021-09-15T19:08:19.097Z' tokenInformation: tokenNumber: '5000010000000019' expiry: month: 11 year: 2022 tokenReferenceIdentifier: af0a77c2-3810-457f-8d47-807bab406df8 tokenizationApprovalStatus: APPROVED cardReferenceNumber: 73ebcc62-56c0-41d2-b70a-4ede8cd700ff cardTokenStatus: ACTIVE cardLast4Digits: '1002' cardBrand: MASTERCARD cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 requestIdentifier: 276ac797-8754-4ab8-a0b7-87da568e4d6d responseStatus: SUCCESS responseCode: APPROVED responseMessage: The request is well received Amex tokenization: value: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 timestamp: '2022-09-09T19:08:19.097Z' tokenInformation: tokenNumber: '340000000001000' expiry: month: 11 year: 2022 tokenReferenceIdentifier: af0a77c2-3810-457f-8d47-807bab406df8 tokenizationApprovalStatus: APPROVED cardReferenceNumber: 73ebcc62-56c0-41d2-b70a-4ede8cd700ff cardTokenStatus: ACTIVE cardLast4Digits: '0001' cardBrand: AMEX cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 requestIdentifier: 276ac797-8754-4ab8-a0b7-87da568e4d6d responseStatus: SUCCESS responseCode: APPROVED responseMessage: The request is well received '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/messages' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/adfsError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/messages' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/tokenProvisionDuplicateResponse' examples: Resource Not Found: value: responseCode: DUPLICATE responseMessage: This request has already been processed payload: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 requestIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 tokenReferenceIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e09 cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 '412': description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/messages' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/messages' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/messages' '504': description: Gateway Timeout content: application/json: schema: $ref: '#/components/schemas/messages' /tokens/{token-reference-id}: get: summary: Request token information operationId: v1GetTokenByTokenReferenceId tags: - Token Processing description: Request information about a token. parameters: - name: merchantId in: header required: true schema: type: string example: '991234567890' minLength: 8 maxLength: 12 description: Identifier for the merchant account. examples: Success: value: '991234567890' Error: value: '991234567891' - name: requestId in: header required: true schema: type: string format: uuid description: Merchant identifier for the request. The value must be unique. examples: Success: value: 10cc0270-7bed-11e9-a188-1763956dd7f6 Error: value: 20cc0270-7bed-11e9-a188-1763956dd7f6 - name: token-reference-id in: path required: true schema: type: string format: uuid description: Reference identifier for a specific token. examples: Success: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e88 Error: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 - name: tokenRequestorId in: header schema: type: string description: Identifies a unique occurrence of the pairing of the token requestor with the token domain. examples: Success: value: '10012345678' Error: value: '10012345688' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/tokenInformationResponse' examples: Success: value: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 timestamp: '2021-09-15T19:52:48.801Z' paymentInstrument: tokenReferenceIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e88 cardTokenStatus: ACTIVE stateChangeReason: RESUME stateChangeTimestamp: '2021-09-15T19:52:48.801Z' requestIdentifier: 10cc0270-7bed-11e9-a188-1763956dd7f6 responseStatus: SUCCESS responseCode: ACCEPTED responseMessage: The request is well received. '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/messages' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/adfsError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/messages' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/messages' examples: Error: value: responseStatus: ERROR responseCode: NOT_FOUND responseMessage: Transaction was not found '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/messages' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/messages' '504': description: Gateway Timeout content: application/json: schema: $ref: '#/components/schemas/messages' /tokens/{token-reference-id}/details: get: summary: Request token details operationId: v1GetTokenDetailsByTokenReferenceId tags: - Token Processing description: Request details about a token. parameters: - name: merchantId in: header required: true schema: type: string example: '991234567890' minLength: 8 maxLength: 12 description: Identifier for the merchant account. examples: Success: value: '991234567890' Error: value: '991234567891' - name: requestId in: header required: true schema: type: string format: uuid description: Merchant identifier for the request. The value must be unique. examples: Success: value: 10cc0270-7bed-11e9-a188-1763956dd7f6 Error: value: 20cc0270-7bed-11e9-a188-1763956dd7f6 - name: tokenRequestorId in: header schema: type: string description: Identifies a unique occurrence of the pairing of the token requestor with the token domain. examples: Success: value: '10012345678' Error: value: '10012345688' - name: token-reference-id in: path required: true schema: type: string format: uuid description: Reference identifier for a specific token. examples: Success: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e88 Error: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/tokenProvisionResponse' examples: Success: value: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 timestamp: '2022-09-09T19:08:19.097Z' tokenInformation: tokenNumber: '340000000001000' expiry: month: 11 year: 2022 tokenReferenceIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e88 tokenizationApprovalStatus: APPROVED cardReferenceNumber: 73ebcc62-56c0-41d2-b70a-4ede8cd700ff cardTokenStatus: ACTIVE cardLast4Digits: '0001' cardBrand: VISA cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 requestIdentifier: 276ac797-8754-4ab8-a0b7-87da568e4d6d responseStatus: SUCCESS responseCode: APPROVED responseMessage: The request is well received '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/messages' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/adfsError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/messages' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/messages' examples: Error: value: responseStatus: ERROR responseCode: NOT_FOUND responseMessage: Transaction was not found '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/messages' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/messages' '504': description: Gateway Timeout content: application/json: schema: $ref: '#/components/schemas/messages' /tokens/{token-reference-id}/assets/{asset-reference-id}: get: summary: Request token assets operationId: v1GetTokenAssetsByTokenAndAssetReferenceIds tags: - Token Processing description: Request token assets containing card art and other details. parameters: - name: merchantId in: header required: true schema: type: string example: '991234567890' minLength: 8 maxLength: 12 description: Identifier for the merchant account. examples: Success: value: '991234567890' Error: value: '991234567891' - name: requestId in: header required: true schema: type: string format: uuid description: Merchant identifier for the request. The value must be unique. examples: Success: value: 10cc0270-7bed-11e9-a188-1763956dd7f6 Error: value: 20cc0270-7bed-11e9-a188-1763956dd7f6 - name: token-reference-id in: path required: true schema: type: string format: uuid description: Reference identifier for a specific token. examples: Success: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e88 Error: value: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 - name: asset-reference-id in: path required: true schema: type: string description: Reference identifier for a specific asset. examples: Success: value: 3801a454c0b84de883f5432815ded5f5 Error: value: 4801a454c0b84de883f5432815ded5f5 - name: tokenRequestorId in: header schema: type: string description: Identifies a unique occurrence of the pairing of the token requestor with the token domain. examples: Success: value: '10012345678' Error: value: '10012345678' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/tokenAssetResponse' examples: Success: value: identifier: 3fa85f64-5717-4562-b3fc-2c963f66afa6 timestamp: '2022-09-11T15:25:35.950Z' cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 requestIdentifier: 10cc0270-7bed-11e9-a188-1763956dd7f6 responseStatus: SUCCESS responseCode: ACCEPTED responseMessage: Request Accepted '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/messages' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/adfsError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/messages' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/messages' examples: Error: value: responseStatus: ERROR responseCode: NOT_FOUND responseMessage: Transaction was not found '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/messages' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/messages' '504': description: Gateway Timeout content: application/json: schema: $ref: '#/components/schemas/messages' /acquirertokens: post: summary: Provision a acquirer token for a payment instrument operationId: v1AcquirerTokenPost tags: - Token Processing description: Provision a acquirer token for a payment instrument. parameters: - name: merchantId in: header required: true schema: type: string minLength: 8 maxLength: 12 description: Identifier for the merchant account. examples: CMT acquirer token: value: '991234567890' - name: requestId in: header required: true schema: type: string format: uuid description: Merchant identifier for the request. The value must be unique. examples: CMT acquirer token: value: 5bc5f837-b772-48f3-ad29-32fcdfe368ff requestBody: description: Acquirer token provison request required: true content: application/json: schema: $ref: '#/components/schemas/acquirerTokenProvisionRequest' examples: CMT acquirer token: value: accountInformation: cardNumber: '379296848452209002' cardSource: KEY_ENTERED responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/acquirerTokenProvisionResponse' examples: CMT acquirer token: value: tokenInformation: acquirerTokenNumber: '379296576034739002' requestIdentifier: 5bc5f837-b772-48f3-ad29-32fcdfe368ff responseStatus: SUCCESS '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/messages' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/adfsError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/messages' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/tokenProvisionDuplicateResponse' examples: Resource Not Found: value: responseCode: DUPLICATE responseMessage: This request has already been processed payload: identifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3190e98 requestIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e08 tokenReferenceIdentifier: fb0dabc0-da2c-46b6-b3a3-8fc6d3185e09 cardMetaData: cardArtUrl: http://cardArtUrl.com backgroundCardGraphicsColor: '#000000' foregroundCardGraphicsColor: '#FFFFFF' labelCardGraphicsColor: '#C0C0C0' cardDescription: The Bank Chase Card issuerInformation: cardIssuer: Bank Example cardIssuerEmailAddress: bank@example.com issuerWebsiteURL: bank.com cardIssuerCustomerServiceTelephone: '400800393' issuerOnlineBankingURL: onlinebanking.com issuerIconURL: http://logo.png issuerPrivacyURLText: privacypolicybank.com issuerLogoURLText: banklogo.com issuerApplicationOS: IOS issuerAppName: bankmobileapp issuerAppAddress: com.bank.appname cardShortDescription: The Bank Card cardTermsAndConditionsIdentifier: 37629726-58cf-4fbb-a2bd-457614704be4 cardTermsAndConditionsURL: http://termsAndConditionsUrl.com cardAssetData: - assetReferenceIdentifier: 3801a454c0b84de883f5432815ded5f5 assetType: ICON_ISSUER mimeType: IMAGE/PNG pixelHeight: 100 pixelWidth: 100 '412': description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/messages' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/messages' '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/messages' '504': description: Gateway Timeout content: application/json: schema: $ref: '#/components/schemas/messages' components: schemas: cardReferenceNumber: description: Identifier assigned to a credit/debit card number that was tokenized. type: string format: uuid acquirerTokenProvisionResponse: description: Acquirer Token Provision Response type: object properties: identifier: $ref: '#/components/schemas/identifier' timestamp: $ref: '#/components/schemas/timestamp' tokenInformation: $ref: '#/components/schemas/acquirerTokenInformation' cardMetaData: $ref: '#/components/schemas/cardMetaData' requestIdentifier: $ref: '#/components/schemas/requestIdentifier' responseStatus: $ref: '#/components/schemas/responseStatus' responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' accountInformation: description: Account Object type: object required: - cardNumber - cardExpiry - cardSource properties: accountholderName: $ref: '#/components/schemas/accountholderName' accountholderEmail: description: Mandatory for Visa. Conditional for American Express. Provide either email or telephone number for the accountholder. type: string example: test@email.com writeOnly: true accountholderTelephone: $ref: '#/components/schemas/accountholderTelephone' accountType: description: Describes the type of account. Amex has a pre-defined value of "credit_card", Visa has pre-defined values of "GUEST" or "WALLET". type: string maxLength: 16 accountHolderReference: $ref: '#/components/schemas/accountHolderReference' cardNumber: $ref: '#/components/schemas/cardNumber' cardSequenceNumber: description: Sequence number for primary account number type: string pattern: ^[0-9]{3}$ example: '003' cardReferenceNumber: $ref: '#/components/schemas/cardReferenceNumber' billingAddress: $ref: '#/components/schemas/address' cardExpiry: $ref: '#/components/schemas/cardExpiry' cardSource: description: Indicates how (method) primary account number was entered. type: string enum: - ONFILE - MOBILE_BANKING_APP - KEY_ENTERED - CAMERA_CAPTURED - MANUAL_UNKNOWN issuerData: description: Issuer provided verification data in base64 format when token was push provisioned for consumer account in Merchant system. type: string cardVerificationNumber: description: A number used in conjunction with a card number and card expiration to validate card transactions to reduce the incidence of credit card fraud, primarily for card not present transactions. Sometimes called card verification data (CVD), card verification number (CVN), card verification value (CVV or CVV2), card verification value code (CVVC), card verification code (CVC or CVC2), verification code (V - code or V code), card code verification (CCV), or signature panel code (SPC). type: string minLength: 3 maxLength: 4 pattern: ^\d{3,4}$ writeOnly: true tokenProvisioningVerificationValue: description: Contains Paze wallet authentication value received from payments networks for card on file or network token provisioning transactions. Also knows as dynamic EVC- Enrollment verification value for certain networks. type: string validationMessage: description: Object containing information about transaction validation. type: object required: - code - message properties: code: $ref: '#/components/schemas/code' message: $ref: '#/components/schemas/message' entity: description: Information about the entity that experienced an error. type: string expiry: description: A number in the form of Month/Year that is displayed on a card (Debit/Credit). Provided in format MM/YY. type: object required: - month - year properties: month: $ref: '#/components/schemas/month' year: $ref: '#/components/schemas/year' adfsError: description: Object containing information about the active directory file system error. type: object required: - errorSource - errorCode - errorDescription properties: errorSource: description: The label of the component from where the error or warning is generated. type: string example: APG-EDGE errorCode: description: General status of all resources type: string example: EDG00012 errorDescription: description: Long explanation of code returned by the computer system application that either indicates successful processing, or a given number that can be investigated by support staff for further resolution and troubleshooting. type: string example: the signature could not be verified messages: description: A list of errors and warnings. type: object required: - responseStatus - responseCode properties: responseStatus: $ref: '#/components/schemas/responseStatus' responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' validationErrors: 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/validationMessage' tokenInfoMerchant: description: Current information and status of a token type: object properties: tokenRequestorIdentifier: $ref: '#/components/schemas/tokenRequestorIdentifier' url: description: Reference to a web resource. type: string minLength: 0 maxLength: 512 example: https://www.acmetest.test identifier: description: It is the resource identifier for a given merchant request, provided/generated by JPMC. type: string format: uuid maxLength: 40 address: description: Address Object type: object properties: addressLine1: description: 'A portion of a party''s 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.' type: string writeOnly: true addressLine2: description: 'A portion of a party''s 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.' type: string writeOnly: true 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. type: string stateProvince: description: Geographic area that represents subdivision of a country like Virginia or Bavaria. type: string postalCode: description: The portion of a party’s address that is the encoded representation of a geographic area to facilitate mail delivery services. type: string writeOnly: true countryCode: description: A code that identifies the Country or a Geographic Area based on ISO 3166 standards. type: string writeOnly: true accountHolderReference: description: Unique reference identifier for a consumer within the token requestor. Required by Visa Token Service, optional for Amex and Mastercard. Visa token service maxLength is 24 characters. type: string maxLength: 36 payload: description: Payload Object type: object properties: identifier: $ref: '#/components/schemas/identifier' requestIdentifier: $ref: '#/components/schemas/requestIdentifier' tokenReferenceIdentifier: $ref: '#/components/schemas/tokenReferenceIdentifier' cardMetaData: $ref: '#/components/schemas/cardMetaData' tokenProvisionResponse: description: Token provisioning response type: object required: - identifier properties: identifier: $ref: '#/components/schemas/identifier' timestamp: $ref: '#/components/schemas/timestamp' merchant: $ref: '#/components/schemas/tokenProvisonMerchant' tokenInformation: $ref: '#/components/schemas/tokenInformation' cardMetaData: $ref: '#/components/schemas/cardMetaData' requestIdentifier: $ref: '#/components/schemas/requestIdentifier' responseStatus: $ref: '#/components/schemas/responseStatus' responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' merchantDoingBusinessAs: description: Alternate name for the merchant if it exists (trading name). type: string example: Acme New York, Llc tokenInformationResponse: description: Current information and status of a token. type: object properties: identifier: $ref: '#/components/schemas/identifier' timestamp: $ref: '#/components/schemas/timestamp' merchant: $ref: '#/components/schemas/tokenInfoMerchant' paymentInstrument: $ref: '#/components/schemas/tokenInfoPaymentInstrument' requestIdentifier: $ref: '#/components/schemas/requestIdentifier' responseStatus: $ref: '#/components/schemas/responseStatus' responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' tokenCryptogramType: description: Type of cryptogram to be requested from Token service. type: string enum: - TAVV - DTVV - UCAF - DCSC acquirerTokenProvisionRequest: description: Acquirer Token Provision Request type: object required: - accountInformation properties: merchant: $ref: '#/components/schemas/merchant' device: $ref: '#/components/schemas/device' accountInformation: $ref: '#/components/schemas/acquirerAccountInformation' riskInformation: $ref: '#/components/schemas/riskInformation' presentationModes: type: array minItems: 0 description: Supported presentation modes for the token. items: type: string enum: - ECOM - IN_APP recommendationPath: description: Advice from token requestor to token service provider based on available risk information. If value AUTH_REQUEST is provided then object accountholderValidation is required. type: string enum: - APPROVED - DECLINED - AUTH_REQUEST tokenReferenceIdentifier: description: Identifier given to a token at the time of provisioning. Can be used as a reference to the token number. type: string format: uuid cardExpiry: description: A number in the form of Month/Year. Provided in format MM/YY. type: object required: - month - year properties: month: $ref: '#/components/schemas/month' year: $ref: '#/components/schemas/year' acquirerTokenInformation: description: Acquirer Token Information type: object properties: acquirerTokenNumber: description: Identifies a secure surrogate value generated by the acquirer for an account number in a payment transaction only for use between the merchant and the acquirer. The token is substituted for the card number or primary account number (PAN), Demand Deposit Account (DDA) Number or other payment account and is used to process payment transactions originating from that account. type: string tokenNumber: $ref: '#/components/schemas/tokenNumber' expiry: $ref: '#/components/schemas/expiry' tokenReferenceIdentifier: $ref: '#/components/schemas/tokenReferenceIdentifier' cardReferenceNumber: $ref: '#/components/schemas/cardReferenceNumber' tokenizationApprovalStatus: $ref: '#/components/schemas/tokenizationApprovalStatus' paymentAccountReference: $ref: '#/components/schemas/paymentAccountReference' cardTokenStatus: $ref: '#/components/schemas/cardTokenStatus' cardLast4Digits: $ref: '#/components/schemas/cardLast4Digits' cardExpiry: $ref: '#/components/schemas/cardExpiry' cardName: description: Name for the tokenized card. type: string maxLength: 64 cardBrand: description: Brand attached to the card that was tokenized. type: string bankIdentificationNumber: description: Bank identification value for card that was tokenized. type: string pattern: ^\d{6}$ accountholderValidations: type: array minItems: 0 description: Array of account holder validation information. items: $ref: '#/components/schemas/accountholderValidation' merchant: description: Contains information about the Merchant. type: object required: - tokenRequestorIdentifier properties: merchantName: $ref: '#/components/schemas/merchantName' merchantDoingBusinessAs: $ref: '#/components/schemas/merchantDoingBusinessAs' merchantCategoryCode: description: Four-digit number associated with a merchant and their line of business. type: string pattern: ^\d{4}$ example: '4819' merchantAddress: $ref: '#/components/schemas/address' tokenRequestorIdentifier: $ref: '#/components/schemas/tokenRequestorIdentifier' accountholderValidation: description: Contains information related to validation of the consumer or accountholder. type: object properties: accountholderValidationIdentifier: description: Unique identifier for account holder validation. type: string validationMethod: description: How user validation was completed. type: string enum: - SMS - EMAIL - BANKING_APP - CUSTOMER_CARE - CALL_TO_USER - CUSTOMER_CARE_WEBSITE accountholderValidationMessage: description: Information to be displayed to accountholder or consumer related to validation. type: string cardMetaData: description: Information about the card related to a token. type: object properties: cardArtUrl: $ref: '#/components/schemas/url' backgroundCardGraphicsColor: description: Graphic color name of the card background. type: string maxLength: 32 example: '#ffffff' foregroundCardGraphicsColor: description: Graphic color name of the card foreground. type: string maxLength: 32 example: '#0033cc' labelCardGraphicsColor: description: Graphic color name of the card label. type: string maxLength: 32 example: '#33cc33' cardDescription: description: Detail information of the card provided by card issuer. type: string maxLength: 256 issuerInformation: $ref: '#/components/schemas/issuerInformation' cardShortDescription: description: Provides summary-level detail information of the card product provided by card issuer. type: string maxLength: 128 cardTermsAndConditionsIdentifier: description: Unique identifier for the terms and conditions for a card specified by the card isuer. Merchant uses this identifier to track if terms have been updated and if a message is needed for the card holder to review new terms and conditions. type: string format: uuid cardTermsAndConditionsURL: $ref: '#/components/schemas/url' cardAssetData: $ref: '#/components/schemas/cardAssetData' tokenRequestorIdentifier: description: Identifier for the merchant given by payment networks or token provider. type: string pattern: ^\d{11}$ example: '10012345678' device: description: Contains additional information related to the consumer device. type: object properties: deviceType: description: Contains additional information related to the consumer device. type: string enum: - PHONE - TABLET - PHONE_TABLET - PC - WATCH - TV - WEARABLE - AUTOMOBILE - SERVER - CARD - STICKER - PERIPHERAL - TAG - JEWELRY - FASHION_ACCESSORY - GARMENT - DOMESTIC_APPLIANCE - GAMING_DEVICE - OTHER deviceIPAddress: $ref: '#/components/schemas/ipAddress' deviceLocale: description: Provides information about language and locale of the device, configured for the consumer. Described in RFC5646 type: string example: en-US deviceLatLong: description: Identifies the latitude and longitude coordinates. Information is expressed in the order of latitude then longitude. type: string pattern: ^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$ example: 40.758, -73.9855 deviceMake: description: Manufacturer of a device. type: string example: Samsung deviceOS: description: Operating system of the device. Valid values for Visa Token Service are ANDROID, IOS, WINDOWS, WEB. type: string enum: - ANDROID - IOS - WINDOWS - BLACKBERRY - TIZEN - WEB - ANDROID_WEAR - EMBEDDED_OS - PAGARE_EMBEDDED - OTHER deviceOsVersion: description: Version of the operating system for target device. type: string example: 12.1.3 digitalDeviceIdentifier: description: Identifies a unique occurrence of an electronic device. type: string example: 12jasdf5dr3452rf deviceGeoLocationCaptureTimestamp: description: Designates the hour, minute, and second in a specific day when the geographic location data captured. This is provided in ISO 8601 date-time format. type: string format: date-time deviceName: description: Name for the target device where the token is located. type: string maxLength: 256 walletId: description: Unique identifier assigned to a wallet installation for user and device. type: string responseCode: description: Short explanation of the response code. type: string readOnly: true minLength: 2 maxLength: 50 example: ACCEPTED timestamp: description: Designates the date, hour, minute and second when response was provided for a request. Using ISO 8601 date-time format. type: string format: date-time walletRisk: description: Risk information related to the wallet. type: object properties: walletScore: description: Risk score for the wallet type: integer walletUsageLength: description: How long wallet has been in use, stated in days. type: integer walletTransactions: description: Number of transactions performed during last 12 months with wallet. type: integer walletNameMatch: description: Does wallet name match accountholderName? type: boolean userRisk: description: Information about risk related to account holder. type: object properties: userScore: description: Risk score of device. type: integer userUsageLength: description: How long user account has been in use. type: integer userTokenCount: description: How many tokens provisioned for the user. type: integer userWalletCount: description: How many wallets are owned by the user. type: integer userCountry: description: Country where user is located. Provided in ISO 3166-1 alpha-2 format. type: string maxLength: 2 newUserAccount: description: True - new user account, False - user account already on file. type: boolean onFileTime: description: How long card has been on file, stated in days. type: integer month: description: The month of the expiration date type: integer format: int32 minimum: 1 maximum: 12 example: 5 writeOnly: true cardAssetDataElement: description: Card assets which help to build virtual replication of actual physical card art. type: object properties: assetReferenceIdentifier: description: Unique identifier for card assets that helps to build virtual replication of actual physical card art. type: string assetType: description: Codifies the different nature, genres or categories of content assets that are published and/or presented by the Firm or third party. Examples of content asset types include document, image, text, video. Content asset is any written or audio visual content used by the Firm for various business purposes. type: string enum: - CARD_ART_FOREGROUND - CARD_ART_BACKGROUND - ICON_ISSUER - TERMS_AND_CONDITIONS - COMBINED_BACKGROUND - ICON_PAYMENT_NETWORK - ICON_COBRAND mimeType: description: Label used to identify a type of data. This is used by data users so that they can handle the data properly. type: string enum: - IMAGE/PNG - IMAGE/PDF - IMAGE/JPEG - IMAGE/SVG+XML TEXT/HTML - TEXT/PLAIN - TEXT/XML - APPLICATION/PDF assetContent: description: Provides a textual version of card information that helps to build virtual replication of actual physical card art. type: string format: base64 pixelHeight: description: The height of an image used for calculating image size. This is used to build virtual replication of actual physical card art. type: integer maximum: 4096 example: 10 pixelWidth: description: The width of an image used for calculating image size. This is used to build virtual replication of actual physical card art. type: integer maximum: 4096 example: 12 cardLast4Digits: description: Identifies the final 4 digits card number. type: string minLength: 4 maxLength: 4 example: '1234' tokenNumber: description: The token number is a SECURE surrogate value for the account number utilized in payment. A token is created at enrollment into programs or when consumer credentials are stored for card on file processing. The Token Number is a surrogate based on the Credit Card number. The token number is consistent with ISO 8583 message requirements, and is a 13 to19-digit numeric value that must pass basic validation rules of an account number, including the LUHN check(Mod 10). type: string maxLength: 19 example: '4111111111111111' 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 year: description: The year of the expiration date type: integer minimum: 2018 maximum: 2999 example: 2020 writeOnly: true cardNumber: description: The Card Number is a number recognized by an issuer and used to identify the underlying account to which each transaction should be applied. type: string maxLength: 19 example: '5111111111111111' responseStatus: description: Request result status. type: string readOnly: true example: SUCCESS enum: - SUCCESS - ERROR tokenizationApprovalStatus: description: Processing status of a tokenization request from the merchant. type: string enum: - APPROVED - PENDING - AUTH_REQUEST - DECLINED issuerInformation: description: Information about the card issuer type: object properties: cardIssuer: description: Financial institution authorized to issue cards with the payment brand logo. type: string maxLength: 128 issuerAddress: description: Provides unformatted postal address information for the card issuer. type: string cardIssuerEmailAddress: description: Email address of the card issuer. type: string maxLength: 64 issuerWebsiteURL: $ref: '#/components/schemas/url' cardIssuerCustomerServiceTelephone: description: Card issuer customer care telephone number. type: string maxLength: 12 issuerOnlineBankingURL: $ref: '#/components/schemas/url' issuerIconURL: description: Site or link for the card issuer's image or symbol. Used by merchants to build a better consumer experience. type: string maxLength: 512 issuerPrivacyURLText: $ref: '#/components/schemas/url' issuerLogoURLText: $ref: '#/components/schemas/url' issuerApplicationOS: description: Operating system of the issuing bank's mobile application type: string maxLength: 16 issuerAppName: description: Issuing bank mobile application name for displaying to user. type: string maxLength: 128 issuerAppAddress: description: Package name for issuing bank mobile application. type: string maxLength: 1024 cardAssetData: type: array minItems: 0 description: Card assets which help to build virtual replication of actual physical card art. items: $ref: '#/components/schemas/cardAssetDataElement' 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 readOnly: true tokenInfoPaymentInstrument: description: Current information and status of a token type: object required: - tokenReferenceIdentifier properties: tokenReferenceIdentifier: $ref: '#/components/schemas/tokenReferenceIdentifier' cardTokenStatus: $ref: '#/components/schemas/cardTokenStatus' previousCardTokenStatus: $ref: '#/components/schemas/cardTokenStatus' stateChangeReason: $ref: '#/components/schemas/stateChangeReason' stateChangeReasonText: description: Description of the rationale for changing the token status. type: string maxLength: 64 stateChangeTimestamp: description: Date and time when change was recorded type: string cardTokenStatus: description: Current state of the token. type: string enum: - ACTIVE - DELETED - INACTIVE - SUSPENDED responseMessage: description: Long explanation of the response message. type: string readOnly: true example: Request Accepted requestIdentifier: description: Merchant identifier for the request. The value must be unique. type: string maxLength: 40 deviceRisk: description: Information about risk related to device. type: object properties: deviceScore: description: Risk score of device. type: integer deviceUsageLength: description: How long device has been in use, stated in days. type: integer deviceTokenCount: description: Number of tokens provisioned for device. type: integer deviceCountry: description: Country where device is used based on location services. Provided in ISO 3166-1 alpha-2 format. type: string maxLength: 2 ipAddress: description: IP address of the consumer's device used in token transactions. Supports both IPv4 and IPv6. When processing American Express - IP Address is required in IPv4 format when card source is one of the following "MOBILE_BANKING_APP", "KEY_ENTERED", "CAMERA_CAPTURED", or "MANUAL_UNKNOWN" type: string minLength: 0 maxLength: 40 example: 127.0.0.1 writeOnly: true accountholderName: description: Consumer name that includes the first, middle, and last name. type: string maxLength: 26 example: Jane Doe writeOnly: true tokenProvisonMerchant: description: Contains information about the merchant. type: object properties: merchantDoingBusinessAs: $ref: '#/components/schemas/merchantDoingBusinessAs' tokenRequestorIdentifier: $ref: '#/components/schemas/tokenRequestorIdentifier' paymentAccountReference: description: Payment Account Reference (PAR) acts as a linkage mechanism for processing transactions when full PAN is unavailable. PAR is not intended to be a PAN replacement or a consumer identifier. type: string readOnly: true minLength: 0 maxLength: 29 example: VI019876543210987654321098765 acquirerAccountInformation: description: Acquirer Account Information type: object required: - cardNumber - cardSource properties: accountholderName: $ref: '#/components/schemas/accountholderName' cardNumber: $ref: '#/components/schemas/cardNumber' billingAddress: $ref: '#/components/schemas/address' cardExpiry: $ref: '#/components/schemas/cardExpiry' accountholderEmail: description: Mandatory for Visa. Conditional for American Express. Provide either email or telephone number for the accountholder. type: string example: test@email.com writeOnly: true accountholderTelephone: $ref: '#/components/schemas/accountholderTelephone' issuerData: description: Issuer provided verification data in base64 format when token was push provisioned for consumer account in Merchant system. type: string cardVerificationNumber: description: A number used in conjunction with a card number and card expiration to validate card transactions to reduce the incidence of credit card fraud, primarily for card not present transactions. Sometimes called card verification data (CVD), card verification number (CVN), card verification value (CVV or CVV2), card verification value code (CVVC), card verification code (CVC or CVC2), verification code (V - code or V code), card code verification (CCV), or signature panel code (SPC). type: string minLength: 3 maxLength: 4 pattern: ^\d{3,4}$ writeOnly: true cardSource: description: Indicates how (method) primary account number was entered. type: string enum: - ONFILE - MOBILE_BANKING_APP - KEY_ENTERED - CAMERA_CAPTURED - MANUAL_UNKNOWN accountHolderReference: $ref: '#/components/schemas/accountHolderReference' accountType: description: Describes the type of account. Amex has a pre-defined value of "credit_card", Visa has pre-defined values of "GUEST" or "WALLET". type: string maxLength: 16 cardSequenceNumber: description: Sequence number for primary account number type: string pattern: ^[0-9]{3}$ example: '003' cardReferenceNumber: $ref: '#/components/schemas/cardReferenceNumber' tokenProvisionRequest: description: Token provisioning request type: object required: - presentationModes properties: merchant: $ref: '#/components/schemas/merchant' device: $ref: '#/components/schemas/device' accountInformation: $ref: '#/components/schemas/accountInformation' riskInformation: $ref: '#/components/schemas/riskInformation' presentationModes: type: array minItems: 0 description: Supported presentation modes for the token. items: type: string enum: - ECOM - IN_APP recommendationPath: description: Advice from token requestor to token service provider based on available risk information. If value AUTH_REQUEST is provided then object accountholderValidation is required. type: string enum: - APPROVED - DECLINED - AUTH_REQUEST merchantName: description: Merchant legal name. type: string example: Acme New York, Llc tokenAssetResponse: description: Contains card asset information including card art, and Issuer information type: object properties: identifier: $ref: '#/components/schemas/identifier' timestamp: $ref: '#/components/schemas/timestamp' cardAssetData: $ref: '#/components/schemas/cardAssetData' requestIdentifier: $ref: '#/components/schemas/requestIdentifier' responseStatus: $ref: '#/components/schemas/responseStatus' responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' tokenInformation: description: Information about provisioned token type: object required: - tokenReferenceIdentifier - cardTokenStatus properties: tokenNumber: $ref: '#/components/schemas/tokenNumber' expiry: $ref: '#/components/schemas/expiry' tokenReferenceIdentifier: $ref: '#/components/schemas/tokenReferenceIdentifier' tokenizationApprovalStatus: $ref: '#/components/schemas/tokenizationApprovalStatus' cardReferenceNumber: $ref: '#/components/schemas/cardReferenceNumber' paymentAccountReference: $ref: '#/components/schemas/paymentAccountReference' cardTokenStatus: $ref: '#/components/schemas/cardTokenStatus' cardLast4Digits: $ref: '#/components/schemas/cardLast4Digits' cardExpiry: $ref: '#/components/schemas/cardExpiry' cardBrand: description: Brand attached to the card that was tokenized. type: string tokenUsedIndicator: description: Token or Card used Indicator type: boolean cardName: description: Name for the tokenized card. type: string maxLength: 64 bankIdentificationNumber: description: Bank identification value for card that was tokenized. type: string pattern: ^\d{6}$ accountholderValidations: type: array minItems: 0 description: Array of account holder validation information. items: $ref: '#/components/schemas/accountholderValidation' tokenCryptogramType: $ref: '#/components/schemas/tokenCryptogramType' cardRisk: description: A list of errors and warnings. type: object properties: cardScore: description: Risk score of card. type: integer cardUsageLength: description: How long account has been in use, stated in days. type: integer stateChangeReason: description: Lifecycle action requested by merchant for a token. type: string enum: - SUSPEND - DELETE - RESUME tokenProvisionDuplicateResponse: description: Token Provision Duplicate Response type: object properties: responseCode: $ref: '#/components/schemas/responseCode' responseMessage: $ref: '#/components/schemas/responseMessage' payload: $ref: '#/components/schemas/payload' accountholderTelephone: description: Conditional - Provide either email or telephone number for the accountholder. type: object required: - phoneNumber properties: countryCode: description: The telephone dialing prefix for a member country in the International Telecommunication Union (ITU) that is defined by the ITU-T E.164 standard. The code is a combination of one, two or three digits identifying a specific country, countries in an integrated numbering plan, or a specific geographic area. In this context, this is the telephone country code of cardholder. type: integer minimum: 1 maximum: 999 example: 1 writeOnly: true phoneNumber: 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. In this context, this is the telephone number of the cardholder' type: string maxLength: 12 writeOnly: true riskInformation: description: Risk information related to token request. type: object properties: walletRisk: $ref: '#/components/schemas/walletRisk' cardRisk: $ref: '#/components/schemas/cardRisk' deviceRisk: $ref: '#/components/schemas/deviceRisk' userRisk: $ref: '#/components/schemas/userRisk' securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT x-jpmc-securityDefinitions: JPMC-OAuth2: jpmc-claims: jpmc-roles: - ADMIN_MS_PAYMENTS_TOKEN - CONSUMER_MS_PAYMENTS_TOKEN - 108970_TOKEN_MERCH_ACCESS - 108970_TOKEN_INTERNAL_PCI x-jpmc-security: - JPMC-OAuth2: jpmc-claims: jpmc-roles: - ADMIN_MS_PAYMENTS_TOKEN - CONSUMER_MS_PAYMENTS_TOKEN - 108970_TOKEN_MERCH_ACCESS - 108970_TOKEN_INTERNAL_PCI