Create and submit merchant application. Initial status of application is "UW Level 1"

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Create and Submit Merchant Application

⚠️

Deprecated — use POST /api/v2/merchant/submit instead.

Submits a complete merchant application including business details, owner information, banking data, site inspection, service acceptance, fees, and equipment. On success returns a merchantProfileId used in all subsequent boarding API calls. The application is placed in UW Level 1 status immediately upon submission.

Endpoint

POST /api/v1/merchant/submit

Authentication

Basic HTTP Authentication required.

Authorization: Basic {base64(username:password)}

When to use

Use this as the initial step in the merchant boarding flow after an ISO agent has collected all required merchant data. For new integrations, prefer POST /api/v2/merchant/submit. Use v1 only for legacy integrations.


Request Body

Top-level structure

FieldTypeRequiredDescription
merchantProfileTsysMerchantYesAgent, POS type, and cash discount settings
businessAndOwnerInformationTsysParametersYesBusiness details, addresses, owners, controlling officers
salesAndBusinessProfileTsysMerchantAccountYesSales volumes, banking info, business type
siteInspectionTsysSiteInspectionYesPhysical/online site inspection details
serviceAcceptanceTsysProductSetupYesCard types and networks accepted
feesTsysFeesNoFull fee structure
equipmentTsysEquipmentYesTerminal equipment
merchantProfileIdintegerNoProvide to re-submit an existing draft

merchantProfile (TsysMerchant)

FieldTypeRequiredDescription
agentProfileIdintegerYesID of the agent submitting the application
cashDiscountstring (enum)YesNo, Yes
posstring (enum)YesPOS system. See enum values below
boardingSettingsIdintegerNoBoarding settings template ID
midstringNoPre-assigned Merchant ID
externalClientIDstringNoExternal client reference ID
externalChainIDstringNoExternal chain reference ID

pos enum values: None, AptitoPalomaPOS, Clover, PalomaPOS, Aldelo, Restoactive, PoyntPOS, CloverGo, UnifiedMpos, CustomPos, RetailCloud, EHopper, FreedomPos, ClubPos, SelfLane, OtfPOS, NProKiosk, GretaPOS


businessAndOwnerInformation (TsysParameters)

FieldTypeRequiredDescription
customerServicePhoneNumstringYes10-digit phone, must not start with 1
federalTaxIdstringYes9-digit EIN (^\d{9}$ or masked with *)
dateOfStartBusinessstring (date-time)YesBusiness start date ISO 8601
merchantEmailstringNoMerchant contact email
merchantWebsitestringNoBusiness website URL
multipleLocationsbooleanNoWhether merchant has multiple locations
numOfLocationsintegerNoNumber of locations
legalAddressAddressBaseYesLegal registered address
dbaAddressAddressBaseYesDBA operating address
primaryOwnerOwnerYesPrimary owner details
secondaryOwnerSecondaryOwnerNoSecond owner
owner3SecondaryOwnerNoThird owner
owner4SecondaryOwnerNoFourth owner
controllingOfficer1ControllingOfficerNoControlling officer 1
controllingOfficer2ControllingOfficerNoControlling officer 2

AddressBase (used for legalAddress and dbaAddress):

FieldTypeRequiredDescription
namestringYesBusiness name at this address
addressstringYesStreet address line 1
address2stringNo🆕 Suite, unit, floor, apartment
postalCodestringYesZIP code
citystringYesCity
statestring (enum)YesFull US state name, e.g. Georgia
phonestringYesPhone, must not start with 1
faxstringNoFax number

state enum: Alaska, Alabama, Arkansas, Arizona, California, Colorado, Connecticut, DistrictOfColumbia, Delaware, Florida, Georgia, Hawaii, Iowa, Idaho, Illinois, Indiana, Kansas, Kentucky, Louisiana, Massachusetts, Maryland, Maine, Michigan, Minnesota, Missouri, Mississippi, Montana, NorthCarolina, NorthDakota, Nebraska, NewHampshire, NewJersey, NewMexico, Nevada, NewYork, Ohio, Oklahoma, Oregon, Pennsylvania, PuertoRico, RhodeIsland, SouthCarolina, SouthDakota, Tennessee, Texas, Utah, Virginia, VirginIslands, Vermont, Washington, Wisconsin, WestVirginia, Wyoming

Owner (used for primaryOwner):

FieldTypeRequiredDescription
firstNamestringYes2–25 letters only
lastNamestringYes2–25 letters only
middleNamestringNo2–25 letters only
dateOfBirthstring (date-time)YesDate of birth
ssnstringYes9-digit SSN, no sequential/repeated patterns
addressstringYesStreet address, max 40 chars, alphanumeric
citystringYes2–25 chars
statestring (enum)YesFull US state name
zipstringYes5 or 9 digit ZIP (^\d{5}(-\d{4})?$)
homePhonestringYesMust not start with 1
titlestring (enum)YesPresident, VPresident, Owner, Partner, Manager, Treasurer, Secretary, ExecDirector
ownershipintegerYes0–100 (ownership percentage)
emailstringYesMax 60 chars
guarantorbooleanNoWhether owner is a guarantor
typeOfIssuedIDstring (enum)NoUSPassport, PermanentRegistrationCard, DriversLicense, USMilitaryCard, USCostGuardMerchantMarinerCard, USCitizenIdCard
idNumberstringNoAlphanumeric ID number
idExpirationDatestring (date-time)NoID expiration date

SecondaryOwner — same structure as Owner (used for secondaryOwner, owner3, owner4).

ControllingOfficer (used for controllingOfficer1 and controllingOfficer2):

FieldTypeRequiredDescription
firstNamestringYes2–25 letters only
lastNamestringYes2–25 letters only
middleNamestringNo2–25 letters only
dateOfBirthstring (date-time)YesDate of birth
ssnstringYes9-digit SSN
titlestring (enum)YesPresident, VPresident, Owner, Partner, Manager, Treasurer, Secretary, ExecDirector
addressstringYesMax 40 chars, alphanumeric
citystringYes2–25 chars
statestring (enum)YesFull US state name
zipstringYesZIP code
homePhonestringYesMust not start with 1
emailstringNo🆕 Max 60 chars
guarantorbooleanNoWhether officer is a guarantor
typeOfIssuedIDstring (enum)NoSame enum as Owner
idNumberstringNoAlphanumeric
idExpirationDatestring (date-time)NoID expiration

salesAndBusinessProfile (TsysMerchantAccount)

FieldTypeRequiredDescription
sicstringYesStandard Industry Classification code (4 digits)
typeOfOwnershipstring (enum)YesCorporation, SoleProprietorship, Partnership, AssociationEstateTrust, TaxExempt501C, International, LimitedLiabilityLlc, GovernmentAgency
businessTypestring (enum)YesOther, Internet, Lodging, MailOrder, Restaurant, Retail, QSR, Supermarket, Petroleum, Utilities, Healthcare, Education, Government, Charity_NonProfit, B2B, Service
accountTypestring (enum)NoC (Checking), S (Savings), G (General)
accountNumberstringYesBank account number, max 17 digits
businessCheckingRoutingNumberstringYes9-digit ABA routing number
achMethodstring (enum)YesCombine, Deposit, CombineAndDeposit
averageTicketintegerYesAverage transaction amount (minimum 1)
highTicketintegerNoMaximum expected transaction amount (1–999999)
salesToConsumersnumberNo% of sales to consumers (0–100)
salesToBusinessnumberNo% of sales to businesses (0–100)
salesToGovernmentnumberNo% of sales to government (0–100)
bankNamestringNoName of the bank
goodsAndServicesstringNoDescription of goods/services sold
returnPolicystringNoMerchant's return policy
nextDayFundingbooleanNoWhether next-day funding is requested
sameDayFundingbooleanNoWhether same-day funding is requested
isVsMcDsNetworkbooleanNoWhether Visa/MC/Discover network is used
monthlyVolumeintegerYesExpected monthly processing volume (minimum 1)
annualVolumeintegerNoRead-only. Annual volume (computed)
retailintegerYes% card-present transactions (0–100)
imprintintegerYes% imprint transactions (0–100)
motointegerYes% mail/phone order transactions (0–100)
internetintegerYes% internet transactions (0–100)
cardNotPresentInformationTsysCnpInformationNoRequired if internet > 0 — see below
⚠️

retail + imprint + moto + internet must equal 100.

cardNotPresentInformation (TsysCnpInformation) — required when internet % > 0:

FieldTypeDescription
isWebHostingbooleanSells web hosting
isDomainRegistrationbooleanSells domain registration
isWebPageDesignbooleanSells web design services
isAuctionbooleanOperates auction site
isInternetServiceGatewaybooleanInternet service gateway
isSellingDigitalServicebooleanSells digital products
isAdvertisementbooleanSells advertising
isSellingHardGoodsbooleanSells physical goods online
isOtherbooleanOther internet business type
otherInternetBusinessTypestringDescription if isOther is true
saleDescriptionstringDescription of items sold
advertiseOrPromotionstringHow products are advertised
secureTransactionInformationstringSecurity measures used
vendorsstringVendor information
productFulfillmentstringHow products are fulfilled
monthly/yearly/quarterly/oneTime/hourlyintegerBilling frequency breakdown
isMonthly/isYearly/isQuarterly/isOneTime/isHourlybooleanActive billing frequencies

siteInspection (TsysSiteInspection)

FieldTypeRequiredDescription
inventoryMaintainedTypestring (enum)NoOnSite, WarehouseOffSite, FulfillmentCenter
fulfillmentCenterNameAndAddressstringNoAddress if FulfillmentCenter
question1booleanNoIs the business operating at this address?
question1ExplanationstringNoExplanation if question1 is false
question2booleanNoIs the business open to the public?
question2ExplanationstringNoExplanation if question2 is false
question3booleanNoDoes the business have adequate signage?
question3ExplanationstringNoExplanation if question3 is false
question4booleanNoIs the location consistent with the business type?
question4ExplanationstringNoExplanation if question4 is false
zoningstring (enum)NoComml, Industrial, Residential
squareFootageTypestring (enum)NoFrom_0_To_500, From_501_To_1000, From_1001_To_2000, From_2001_To_4000, Other
squareFootageTypeOtherintegerNoExact sq ft if Other
merchantstring (enum)NoOwns, Leases
nameAddressLandlordstringNoLandlord name and address if leasing

serviceAcceptance (TsysProductSetup)

FieldTypeRequiredDescription
amexESAbooleanNoAccept Amex ESA
amexOptBluebooleanNoAccept Amex OptBlue
discoverbooleanNoAccept Discover
payPalbooleanNoAccept PayPal
jcbbooleanNoAccept JCB
ebtbooleanNoAccept EBT
debitCardbooleanNoAccept debit cards
amexNumberstringNo10-digit Amex ESA number (required if amexESA = true)
fcsNumberstringNo7-digit FCS number (required if amexESA = true)

fees (TsysFees)

FieldTypeRequiredDescription
minimumDiscountAmountnumberNoMinimum discount amount (0–500)
minimumDiscountStartDatestring (date-time)NoWhen minimum discount starts
minimumDiscountTypestring (enum)NoDaily, Monthly
earlyTerminationFeeAmountnumberNoEarly termination fee amount (0–999999)
earlyTerminationFeeContractMonthsintegerNoContract length in months (0–60)
amexAmexFeesNoAmex fee structure
visaMasterCardDiscoverVisaMasterCardDiscoverFeesNoVisa/MC/Discover fee structure
authorizationMonthlyAndSpecialProgramAuthorizationMonthlyAndSpecialProgramFeesNoAuth, monthly and special program fees
posPOSFeesNoPOS software fees
standardStandardFeesNoStandard fees (dial pay, online portal, etc.)
cardBrandCardBrandFeesNoCard brand fee flags
debitPinAndEBTDebitPinAndEBTFeesNoDebit PIN and EBT fees
gatewayProductsGatewayProductsFeesNoGateway and wireless fees
miscFeesarray of TsysMiscFeeNoCustom miscellaneous fees
miscFeesVolumearray of TsysMiscFeeNoVolume-based misc fees

TsysFee (used throughout fees object):

FieldTypeRequiredDescription
perItemnumberYesPer-transaction flat fee
percentnumberYesPercentage fee

TsysMiscFee (for miscFees and miscFeesVolume):

FieldTypeRequiredDescription
namestringYesFee name (must match allowed SIF names from GET /api/v1/SIFFeeNames)
frequencystring (enum)YesAnnual, SemiAnnual, Quarterly, Monthly, OneTime
perItemnumberYesFlat fee amount
percentnumberYesPercentage amount
startDatestring (date-time)NoFee start date
stopDatestring (date-time)NoFee stop date
monthintegerNoMonth number (for annual fees)
yearintegerNoYear (for annual fees)

authorizationMonthlyAndSpecialProgram key fee fields:

FieldDescription
vsmcdiscAuthVisa/MC/Disc authorization fee
amexAuthAmex authorization fee
avsAddress Verification Service fee
batchBatch settlement fee
voiceAuthorizationVoice auth fee
retrievalRetrieval request fee
chargebackChargeback fee
achRejectACH reject fee
pciAnnualPCI annual compliance fee
pciNonCompliancePCI non-compliance monthly fee
tinMismatchTIN mismatch fee

equipment (TsysEquipment)

FieldTypeRequiredDescription
terminalsarray of TsysTerminalYesList of terminals (can be empty array [])

TsysTerminal:

FieldTypeRequiredDescription
terminalTypestring (enum)YesTerminal model. See full list below

terminalType enum: HYPERCOM_M4230_SPOSDCC, HYPERCOM_T4230_SPOSDCC, INGENICO_ICT220_INGEMV4, INGENICO_ICT220CTL_INGEMV4, INGENICO_ICT250_INGEMV4, INGENICO_IWL220_INGEMV4, INGENICO_IWL250_INGEMV4, INGENICO_IPP320_INGEMV4, VERIFONE_VX520_XEVA440, VERIFONE_VX680_XEVA440, CLSBPLUS_PAX, MULTIPASS, HCSTAGE, DIAL_PAY, NETEVIA_GATEWAY, AUTH_NET_GATEWAY, NMI_Unified_Gateway, USAePay_Gateway, Aldelo_EDC, Cardflight_mPOS, Dejavoo_Z8, Dejavoo_Z9, Dejavoo_Z11, Pax_S80, Pax_S300, Poynt, EHopper, Freedom_POS, Netevia_Light_POS, STGENCR, HCSTGEN, ValorVP100, ValorVP300, DejavooQD2, DejavooQD4, DejavooQD3, DejavooQD5, DejavooP1, DejavooP3, DejavooP5, ValorVL100, ValorVL300, ValorVL110, ValorVP550, ValorVP800, ValorRCKT, ValorVirtualTerminal


Full Request Example

{
  "merchantProfile": {
    "cashDiscount": "No",
    "agentProfileId": 201,
    "pos": "Clover",
    "boardingSettingsId": 15
  },
  "businessAndOwnerInformation": {
    "customerServicePhoneNum": "8005551234",
    "federalTaxId": "123456789",
    "dateOfStartBusiness": "2018-03-15T00:00:00Z",
    "merchantEmail": "[email protected]",
    "merchantWebsite": "https://greentreecafe.com",
    "legalAddress": {
      "name": "Green Tree Cafe LLC",
      "address": "450 Main St",
      "address2": "Suite 100",
      "postalCode": "30301",
      "city": "Atlanta",
      "state": "Georgia",
      "phone": "4045557890"
    },
    "dbaAddress": {
      "name": "Green Tree Cafe",
      "address": "450 Main St",
      "address2": "Suite 100",
      "postalCode": "30301",
      "city": "Atlanta",
      "state": "Georgia",
      "phone": "4045557890"
    },
    "primaryOwner": {
      "firstName": "Marcus",
      "lastName": "Jordan",
      "dateOfBirth": "1978-06-21T00:00:00Z",
      "ssn": "500123456",
      "address": "112 Peachtree Ln",
      "city": "Atlanta",
      "state": "Georgia",
      "zip": "30302",
      "homePhone": "4045559876",
      "title": "Owner",
      "ownership": 100,
      "email": "[email protected]",
      "guarantor": true,
      "typeOfIssuedID": "DriversLicense",
      "idNumber": "GA123456789",
      "idExpirationDate": "2028-06-21T00:00:00Z"
    },
    "controllingOfficer1": {
      "firstName": "Sarah",
      "lastName": "Jordan",
      "dateOfBirth": "1980-04-10T00:00:00Z",
      "ssn": "500987654",
      "title": "President",
      "address": "112 Peachtree Ln",
      "city": "Atlanta",
      "state": "Georgia",
      "zip": "30302",
      "homePhone": "4045559877",
      "email": "[email protected]"
    }
  },
  "salesAndBusinessProfile": {
    "sic": "5812",
    "typeOfOwnership": "LimitedLiabilityLlc",
    "businessType": "Restaurant",
    "accountNumber": "123456789012",
    "businessCheckingRoutingNumber": "061000104",
    "achMethod": "Combine",
    "averageTicket": 3500,
    "highTicket": 15000,
    "monthlyVolume": 120000,
    "retail": 90,
    "imprint": 0,
    "moto": 5,
    "internet": 5,
    "bankName": "Bank of America",
    "goodsAndServices": "Full-service restaurant serving American cuisine",
    "returnPolicy": "No refunds on food; merchandise returns within 30 days",
    "cardNotPresentInformation": {
      "isSellingHardGoods": false,
      "isOther": true,
      "otherInternetBusinessType": "Online reservations and gift card sales",
      "saleDescription": "Online gift cards and table reservations",
      "isMonthly": true
    }
  },
  "siteInspection": {
    "inventoryMaintainedType": "OnSite",
    "zoning": "Comml",
    "squareFootageType": "From_1001_To_2000",
    "merchant": "Leases",
    "nameAddressLandlord": "Peachtree Properties, 800 Corp Blvd, Atlanta GA 30303",
    "question1": true,
    "question2": true,
    "question3": true,
    "question4": true
  },
  "serviceAcceptance": {
    "amexOptBlue": true,
    "discover": true,
    "debitCard": true,
    "payPal": false,
    "jcb": false,
    "ebt": false
  },
  "fees": {
    "minimumDiscountAmount": 25.00,
    "minimumDiscountType": "Monthly",
    "earlyTerminationFeeAmount": 295,
    "earlyTerminationFeeContractMonths": 36,
    "authorizationMonthlyAndSpecialProgram": {
      "vsmcdiscAuth": { "perItem": 0.10, "percent": 0.0 },
      "amexAuth": { "perItem": 0.10, "percent": 0.0 },
      "avs": { "perItem": 0.02, "percent": 0.0 },
      "chargeback": { "perItem": 25.00, "percent": 0.0 },
      "retrieval": { "perItem": 10.00, "percent": 0.0 },
      "pciAnnual": { "perItem": 99.00, "percent": 0.0 },
      "pciNonCompliance": { "perItem": 29.99, "percent": 0.0 }
    },
    "miscFees": [
      {
        "name": "SERVICE FEE",
        "frequency": "Monthly",
        "perItem": 9.95,
        "percent": 0.0
      }
    ]
  },
  "equipment": {
    "terminals": [
      { "terminalType": "Poynt" }
    ]
  }
}

Response

200 OK

FieldTypeDescription
data.merchantProfileIdintegerUnique ID assigned to the submitted application — use in all subsequent calls
statusstringHTTP status name, e.g. OK
errorstringError message if failed, otherwise null
warningstringNon-fatal warning if any
validationResultsarrayField-level validation errors if any
requestIdintegerInternal request tracking ID
{
  "data": {
    "merchantProfileId": 10482
  },
  "status": "OK",
  "error": null,
  "warning": null,
  "validationResults": [],
  "requestId": 456
}

Error Codes

CodeWhen it happens
400Missing required fields or validation errors — check validationResults for details
401Invalid or missing Basic Auth credentials
403No permission to submit under this agent profile
404agentProfileId or boardingSettingsId not found
500Internal server error

Common Mistakes

  • retail + imprint + moto + internet must equal exactly 100 — any other sum causes a 400 error.
  • customerServicePhoneNum must be exactly 10 digits, no dashes or spaces, must not start with 1.
  • federalTaxId must be exactly 9 digits matching ^\d{9}$ or masked with *.
  • businessCheckingRoutingNumber must be exactly 9 digits.
  • ssn must be 9 digits and cannot be sequential (123456789) or repeated (111111111).
  • address2 is optional — omitting it does not affect existing integrations.
  • Controlling officer email is optional — omitting it does not affect existing integrations.
  • cardNotPresentInformation should be provided when internet > 0.
  • amexNumber (10 digits) and fcsNumber (7 digits) are required when amexESA: true.
  • This is a deprecated v1 endpoint — prefer POST /api/v2/merchant/submit for new integrations.

Related Endpoints


Example

curl -X POST https://hq.staging.netevia.dev/api/v1/merchant/submit \
  -H "Authorization: Basic $(echo -n 'username:password' | base64)" \
  -H "Content-Type: application/json" \
  -d '{ ... request body ... }'
Body Params
merchantProfile
object
required
businessAndOwnerInformation
object
required
salesAndBusinessProfile
object
required
siteInspection
object
required
serviceAcceptance
object
required
fees
object
equipment
object
required
int32
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
string
enum
Defaults to application/json

Generated from available request content types

Allowed:
Response

Language
Credentials
Basic
base64
:
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/json
data
status
requestId