Evervault Payments API
The Payments API from Evervault — 17 operation(s) for payments.
The Payments API from Evervault — 17 operation(s) for payments.
openapi: 3.1.0
info:
title: Evervault Payments API
version: 0.0.1
description: The Evervault API allows developers to interact programmatically with their Evervault apps using HTTP requests.
contact:
email: support@evervault.com
name: Evervault Support Team
url: https://evervault.com
servers:
- url: https://api.evervault.com
description: The Evervault API server
tags:
- name: Payments
x-category: true
paths:
/insights/cards:
post:
summary: Card Insights
description: 'The Card Insights API allows you to perform address verification (AVS), name verification (ANI), and CVV verification checks. You can also check the card''s push and pull transaction capabilities.
'
operationId: createCardInsight
tags:
- Payments
security:
- ApiKey:
- insights:create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
card:
type: object
description: The card details.
properties:
number:
type: string
description: The card number. This should be a valid Evervault encrypted card number or a valid plaintext card number.
example: '4111111111111111'
expiry:
type: object
description: The card expiry. Required if the `address`, `cardholder`, or `cvv` extensions are requested.
properties:
month:
type: string
description: The card expiry month
example: '12'
year:
type: string
description: The card expiry year
example: '29'
cvv:
type: string
description: The card security code. This should be a valid Evervault encrypted CVV or a valid plaintext CVV. Required if the `cvv` extension is requested.
example: '123'
required:
- number
extensions:
type: array
description: The extensions to the card insight request.
items:
type: string
description: The extensions
enum:
- capabilities
- cvv
- cardholder
- address
x-enum-description:
capabilities: Check the card's push and pull transaction capabilities
cvv: Check the card's CVV verification
cardholder: Check the cardholder's name verification
address: Check the cardholder's address verification
cardholder:
type: object
description: Details about the cardholder that the name verification (ANI) is for. Required if the `cardholder` extension is requested.
properties:
firstName:
type: string
description: The first name of the cardholder
example: John
lastName:
type: string
description: The last name of the cardholder
example: Doe
address:
type: object
description: Details about the cardholder's address that the address verification (AVS) is for. Required if the `address` extension is requested.
properties:
postalCode:
type: string
description: The ZIP or postal code.
example: '10001'
line1:
type: string
description: Street address line 1
example: 123 Main Street
line2:
type: string
description: Street address line 2
example: Apt 4B
city:
type: string
description: The city name
example: New York
state:
type: string
description: The state or province code. Required when `country` is `us`, `ca`, or `au`.
format: iso-3166-2-subdivision
example: ny
country:
type: string
description: The country code.
format: iso-3166-1-alpha-2
example: us
required:
- postalCode
required:
- card
examples:
SimpleExample:
value:
card:
number: '4111111111111111'
expiry:
month: 09
year: '29'
cvv: '123'
extensions:
- capabilities
- cvv
- address
- cardholder
cardholder:
firstName: John
lastName: Doe
address:
postalCode: '10001'
line1: 123 Main Street
line2: Apt 4B
city: New York
state: ny
country: us
responses:
'201':
description: Returns the Card Insight object
content:
application/json:
schema:
$ref: '#/components/schemas/CardInsight'
examples:
Success:
summary: Successful Card Insight createFunctionRun
value:
id: card_insight_1234567890
fingerprint: WUlcOAgQcTN1GEUaoaKrLH1wL2PZrjsUS7byUGZyUEA
bin:
brand: visa
funding: credit
segment: consumer
country: us
currency: usd
issuer: Gringotts Wizarding Bank and Trust Company
productName: Visa Credit
fastFunds:
domestic: true
crossBorder: true
threeDS:
supportedVersions:
accessControlServer:
- 2.2.0
directoryServer:
- 2.2.0
- 2.3.1
acsInfoIndicators:
- code: acs-auth-available
indicator: '01'
description: Authentication Available at ACS
type: card
capabilities:
push:
enabled: true
network: visa
type: credit
availability: immediate
regulated: true
currency:
alphaCode: usd
numericCode: '840'
country:
alphaCode: us
numericCode: '840'
pull:
enabled: true
network: visa
type: credit
regulated: true
currency:
alphaCode: usd
numericCode: '840'
country:
alphaCode: us
numericCode: '840'
fees: null
cvv:
code: match
value: M
address:
avsIdentifier: aBcdeFGhIJKlmnoPqR
networkIdentifier: '1234567890'
networkResponseCode:
value: '85'
result:
value: Y
address: match
zip: match
cardholder:
result:
value: M
code: match-performed
fullName:
value: M
code: match
firstName:
value: M
code: match
lastName:
value: M
code: match
paymentAccountReference: V0010011111111111111111111111
createdAt: 169297262323
/payments/bin-lookups:
post:
summary: BIN Lookup
description: 'Performs a BIN lookup for the provided card number and retrieves associated information such as the card brand, country, issuer, and more.
'
operationId: createBinLookup
tags:
- Payments
security:
- ApiKey:
- binLookup:create
requestBody:
description: 'The BIN (Bank Identification Number) lookup request body, which includes the card number.
'
required: true
content:
application/json:
schema:
type: object
properties:
number:
type: string
description: 'The card number for which the BIN lookup is being requested.
It can be a plaintext Card number (FPAN) / Network Token number (DPAN), an encrypted
Card number / Network Token number or simply just a BIN (6-10 first digits of a Card Number) for range lookup.
'
required:
- number
examples:
BinLookupExample:
summary: Example BIN lookup request
value:
number: '4242424242424242'
responses:
'201':
description: Returns BIN details for the provided card number.
x-content: 'Returns the [BIN Lookup object](#the-bin-lookup-object) that was created.
'
content:
application/json:
schema:
$ref: '#/components/schemas/BinLookup'
examples:
SuccessfulLookup:
summary: Successful BIN lookup
value:
id: bin_lookup_1234567890
brand: visa
funding: credit
segment: consumer
country: gb
currency: gbp
issuer: Gringotts Wizarding Bank and Trust Company
productName: Visa Debit
fastFunds:
domestic: true
crossBorder: true
threeDS:
supportedVersions:
accessControlServer:
- 2.2.0
directoryServer:
- 2.2.0
- 2.3.1
acsInfoIndicators:
- code: acs-auth-available
indicator: '01'
description: Authentication Available at ACS
type: card
createdAt: 169297262323
/payments/merchants:
post:
summary: Create a Merchant
description: 'Enrolls a Merchant with Card Networks.
In rare cases it can take up to 48 hours to enroll a merchant with each of the card networks. If you are still unable to provision network tokens after this period, please contact support@evervault.com
'
operationId: createMerchant
tags:
- Payments
security:
- ApiKey:
- merchant:create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The official name of the Merchant as recognized in transactions and communications. This name is used for display purposes and may be the company's trade name or a derived nickname.
pattern: ^[a-zA-Z0-9 ]{1,60}$
example: Acme
shortName:
type: string
description: 'A shorter version of the Merchant''s name. Optional. When creating a 3D Secure session that references this Merchant by ID, `shortName` is used in place of `name` if `name` exceeds the 40-character limit imposed by the 3D Secure specification.
'
pattern: ^[a-zA-Z0-9 ]{1,40}$
example: Acme
website:
type: string
description: The official website URL of the Merchant. The domain must use a valid IANA top-level domain. See https://data.iana.org/TLD/tlds-alpha-by-domain.txt
example: https://www.acme.com
categoryCode:
type: string
description: The 4-digit Merchant Category Code (MCC).
example: '5945'
business:
type: object
description: The business details of the Merchant.
properties:
legalName:
type: string
description: The legal name under which the Merchant's business is registered.
pattern: ^[a-zA-Z0-9 ]{1,60}$
example: Acme Corp
address:
$ref: '#/components/schemas/Address'
description: The physical address of the Merchant's principal place of business.
required:
- legalName
- address
networkTokens:
type: object
description: The Merchant's Network Tokens configuration. This field should only be populated if the Merchant has already been enrolled in one of the Card Network programs and can use an existing Token Requestor ID (TRID).
properties:
enrolment:
type: array
items:
type: object
properties:
cardBrand:
type: string
description: The Card Brand for which the configuration belongs to.
example: mastercard
tokenRequestorIdentifier:
type:
- string
- 'null'
description: The existing Token Requestor ID assigned by the Card Brand.
example: '50165156978'
applePay:
type: object
description: The Merchant's Apple Pay configuration.
properties:
domains:
type: array
description: 'The domains the Merchant wants registered with Apple Pay. Only the domain name is required, without the protocol or path. For example, `example.com` is a valid domain, but `https://example.com` is not.
'
items:
type: string
example: ollivanders.co.uk
required:
- name
- website
- categoryCode
- business
examples:
SimpleExample:
value:
name: Ollivanders Wand Shop
website: https://www.ollivanders.co.uk
categoryCode: '5945'
business:
legalName: Ollivanders Wand Shop Ltd
address:
line1: Diagon Alley
city: London
postalCode: WD1 1AA
country: gb
applePay:
domains:
- ollivanders.co.uk
responses:
'201':
description: Returns a Merchant object.
content:
application/json:
schema:
$ref: '#/components/schemas/Merchant'
examples:
SuccessfulCreation:
summary: Merchant successfully created
value:
id: merchant_eead1d640d7c
name: Ollivanders Wand Shop
website: https://www.ollivanders.co.uk
categoryCode: '5945'
business:
legalName: Ollivanders Wand Shop Ltd
address:
line1: Diagon Alley
city: London
postalCode: WD1 1AA
country: gb
networkTokens:
enrolment:
- cardBrand: mastercard
tokenRequestorIdentifier: '50165156978'
status: active
- cardBrand: visa
tokenRequestorIdentifier: '40238123804'
status: active
- cardBrand: american-express
tokenRequestorIdentifier: null
status: inactive
applePay:
domains:
- domain: ollivanders.co.uk
status: pending
createdAt: 1692972623233
updatedAt: 1692972623768
get:
x-section: Payments
x-group: Merchants
summary: List Merchants
description: 'Lists all Merchants that have been created.
'
operationId: listMerchants
tags:
- Payments
security:
- ApiKey:
- merchant:read
parameters:
- name: page
in: query
description: The page number to retrieve.
required: false
schema:
type: integer
default: 0
- name: pageSize
in: query
description: The number of Merchants to retrieve per page (default is 50).
required: false
schema:
type: integer
default: 50
- name: q
in: query
description: Filter the Merchants by name.
required: false
schema:
type: string
responses:
'200':
description: Returns a list of Merchant objects.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Merchant'
pageSize:
type: integer
description: The number of Merchants retrieved per page.
nextPage:
type:
- integer
- 'null'
description: The next page number to retrieve. If there are no additional Merchants, this will be `null`.
total:
type: integer
description: The total count of all Merchants, after any filters.
required:
- data
- pageSize
- nextPage
- total
examples:
SuccessfulCreation:
summary: Successful List
description: The Merchants were retrieved successfully.
value:
data:
- id: merchant_eead1d640d7c
name: Ollivanders Wand Shop
website: https://www.ollivanders.co.uk
categoryCode: '5945'
business:
legalName: Ollivanders Wand Shop Ltd
address:
line1: Diagon Alley
city: London
postalCode: WD1 1AA
country: gb
networkTokens:
enrolment:
- cardBrand: mastercard
tokenRequestorIdentifier: '50165156978'
status: active
- cardBrand: visa
tokenRequestorIdentifier: '40238123804'
status: active
- cardBrand: american-express
tokenRequestorIdentifier: null
status: inactive
createdAt: 1692972623233
updatedAt: 1692972623768
pageSize: 50
nextPage: null
total: 1
/payments/merchants/{merchant_id}:
get:
x-section: Payments
x-group: Merchants
summary: Retrieve a Merchant
description: 'Retrieves a Merchant by its unique identifier.
'
operationId: getMerchant
tags:
- Payments
security:
- ApiKey:
- merchant:read
parameters:
- name: merchant_id
in: path
description: The unique identifier of the merchant.
required: true
schema:
type: string
responses:
'200':
description: Returns a Merchant object.
content:
application/json:
schema:
$ref: '#/components/schemas/Merchant'
examples:
SuccessfulCreation:
summary: Merchant successfully created
value:
id: merchant_eead1d640d7c
name: Ollivanders Wand Shop
website: https://www.ollivanders.co.uk
categoryCode: '5945'
business:
legalName: Ollivanders Wand Shop Ltd.
address:
line1: Diagon Alley
city: London
postalCode: WD1 1AA
country: gb
networkTokens:
enrolment:
- cardBrand: mastercard
tokenRequestorIdentifier: '50165156978'
status: active
- cardBrand: visa
tokenRequestorIdentifier: '40238123804'
status: active
- cardBrand: american-express
tokenRequestorIdentifier: null
status: inactive
applePay:
domains:
- domain: ollivanders.co.uk
status: active
createdAt: 1692972623233
updatedAt: 1692972623768
patch:
x-section: Payments
x-group: Merchants
summary: Update a Merchant
description: 'Updates a Merchant by its unique identifier.
'
operationId: updateMerchant
tags:
- Payments
security:
- ApiKey:
- merchant:update
parameters:
- name: merchant_id
in: path
description: The id of the Merchant to be updated.
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
shortName:
type: string
description: 'A shorter version of the Merchant''s name. When creating a 3D Secure session that references this Merchant by ID, `shortName` is used in place of `name` if `name` exceeds the 40-character limit imposed by the 3D Secure specification.
'
pattern: ^[a-zA-Z0-9 ]{1,40}$
example: Acme
applePay:
type: object
description: The Merchant's Apple Pay configuration.
properties:
domains:
type: array
description: 'The domains the Merchant wants registered with Apple Pay. To remove a domain previously registered with Apple Pay, exclude it from the list. Only the domain name is required, without the protocol or path. For example, `example.com` is a valid domain, but `https://example.com` is not.
'
items:
type: string
example: ollivanders.co.uk
examples:
SimpleExample:
value:
shortName: Ollivanders
applePay:
domains:
- ollivanders.co.uk
responses:
'200':
description: Returns the updated Merchant object.
content:
application/json:
schema:
$ref: '#/components/schemas/Merchant'
examples:
SuccessfulCreation:
summary: Merchant successfully updated
value:
id: merchant_eead1d640d7c
name: Ollivanders Wand Shop
shortName: Ollivanders
website: https://www.ollivanders.co.uk
categoryCode: '5945'
business:
legalName: Ollivanders Wand Shop Ltd.
address:
line1: Diagon Alley
city: London
postalCode: WD1 1AA
country: gb
networkTokens:
enrolment:
- cardBrand: mastercard
tokenRequestorIdentifier: '50165156978'
status: active
- cardBrand: visa
tokenRequestorIdentifier: '402338123804'
status: active
- cardBrand: american-express
tokenRequestorIdentifier: null
status: inactive
applePay:
domains:
- domain: ollivanders.co.uk
status: pending
createdAt: 1692972623233
updatedAt: 1692972623768
delete:
summary: Delete a Merchant
description: 'Deletes a Merchant by its unique identifier.
'
operationId: deleteMerchant
tags:
- Payments
security:
- ApiKey:
- merchant:delete
parameters:
- name: merchant_id
in: path
description: The id of the Merchant to be deleted.
required: true
schema:
type: string
responses:
'204':
description: Merchant successfully deleted.
/payments/acquirers:
post:
summary: Create an Acquirer
description: 'Creates an Acquirer to be used with 3DS sessions.
'
operationId: createAcquirer
tags:
- Payments
security:
- ApiKey:
- acquirer:create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Acquirer.
description:
type: string
description: The description of the Acquirer.
default:
type: boolean
description: Specifies whether this Acquirer is the default. Only one default Acquirer configuration can exist at a time; setting a new one clears the previous default. If none is defined, the first Acquirer created becomes the default. See the [Acquirers API](/api#acquirers) for details.
configurations:
type: array
description: The Acquirer configurations. Configurations are set according to each card network the Acquirer is associated with, and each `network` can only appear once. To use a different `bin`, `acquirerMerchantIdentifier`, or `country` for the same network, create a separate Acquirer.
items:
type: object
properties:
network:
type: string
enum:
- visa
- mastercard
- american-express
- discover
description: The card network of the Acquirer. `discover` covers Discover, Diners Club, and JCB (US only).
example: mastercard
bin:
type: string
pattern: ^[0-9]{6,11}$
minLength: 6
maxLength: 11
description: The Bank Identification Number (BIN) of the Acquirer. Must be 6 to 11 digits.
example: '424242'
acquirerMerchantIdentifier:
type: string
description: The merchant identifier associated with the configuration.
example: '38191048173'
country:
type: string
format: iso-3166-1-alpha-2
description: The country of the Acquirer configuration, used when creating 3DS sessions.
example: ie
required:
- network
- bin
- acquirerMerchantIdentifier
- country
required:
- name
- configurations
responses:
'201':
description: Returns the created Acquirer object.
content:
application/json:
schema:
$ref: '#/components/schemas/AcquirerConfiguration'
examples:
SimpleExample:
summary: Acquirer created successfully
value:
id: acquirer_adk3kdljc3
name: Ollivanders Wand Shop Production Configuration
description: Ollivanders Wand Shop Production Configuration
default: true
configurations:
- network: mastercard
bin: '424242'
acquirerMerchantIdentifier: '38191048173'
state: active
country: ie
- network: visa
bin: '424242'
acquirerMerchantIdentifier: '38191048173'
state: active
country: ie
get:
summary: List Acquirers
description: 'Lists all Acquirers that have been created.
'
operationId: listAcquirers
tags:
- Payments
security:
- ApiKey:
- acquirer:read
parameters:
- name: page
in: query
description: The page number to retrieve.
required: false
schema:
type: integer
default: 0
- name: pageSize
in: query
description: The number of Acquirers to retrieve per page. The default is 50, which is also the maximum.
required: false
schema:
type: integer
default: 50
maximum: 50
responses:
'200':
description: Returns a list of Acquirer objects.
x-content: 'Returns an array of [Acquirer objects](#the-acquirer-object).
'
# --- truncated at 32 KB (159 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/evervault/refs/heads/main/openapi/evervault-payments-api-openapi.yml