Get merchant's fees

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

Get Merchant Fees (v1)

⚠️

Deprecated — use Get Fees v2 instead.

Returns the complete TSYS fee structure assigned to a specific merchant, including Visa/Mastercard/Discover discount rates, Amex fees, authorization fees, monthly fees, POS fees, debit/PIN/EBT fees, gateway product fees, and miscellaneous fees. This is the v1 method and has been superseded by the v2 endpoint.

Endpoint

GET /api/v1/merchant/fees

Authentication

Basic HTTP Authentication required.
Encode username:password in Base64 and pass in the Authorization header:

Authorization: Basic {base64(username:password)}

When to use

Use this endpoint only within existing v1 integrations that need to display or verify the fee structure assigned to a merchant. For new integrations or when updating to the current API version, use GET /api/v2/merchant/fees instead. The fee data returned is used in compliance reviews, merchant disclosures, and fee auditing workflows.

Query Parameters

ParameterTypeRequiredDescription
idinteger (int32)YesThe merchant profile ID whose fee structure to retrieve

Response

200 OK

The response data field contains a TsysFees object with the following top-level fee groups:

FieldTypeDescription
data.minimumDiscountAmountnumberMinimum monthly discount fee amount (0–500)
data.minimumDiscountStartDatestring (date-time)When the minimum discount begins
data.minimumDiscountTypestring (enum)Billing frequency for minimum discount: Daily or Monthly
data.earlyTerminationFeeAmountnumberEarly termination fee amount (0–999999)
data.earlyTerminationFeeContractMonthsintegerContract length in months for early termination (0–60)
data.amexobjectAmex fee structures (interchange plus, tiered, no-surcharge, interchange++)
data.visaMasterCardDiscoverobjectVisa/MC/Discover fee structures (bill-back, interchange plus, no-surcharge, tiered MOTO, tiered retail, custom interchange, custom interchange Durbin, interchange++)
data.authorizationMonthlyAndSpecialProgramobjectPer-auth and monthly fees (auth, AVS, batch, chargeback, statement, PCI, etc.)
data.posobjectPOS package and license fees
data.standardobjectStandard program fees (dial pay, online portal, MOTO/ecomm surcharge, next/same day funding)
data.cardBrandobjectCard brand fee flags (cardBrand, mastercardLicense)
data.debitPinAndEBTobjectDebit PIN and EBT fees
data.gatewayProductsobjectGateway product fees (Micros, wireless, gateway access/per-item, UnifiedmPOS)
data.miscFeesarrayMiscellaneous per-item fees with name, frequency, start/stop dates, perItem, percent
data.miscFeesVolumearrayMiscellaneous volume-based fees
statusstringHTTP status label
errorstringError message if the request failed
warningstringNon-fatal warning message, if any
validationResultsarrayList of field-level validation errors
requestIdintegerUnique identifier for this API request

Each TsysFee sub-object contains:

Sub-fieldTypeDescription
perItemnumberPer-transaction flat fee amount
percentnumberPer-transaction percentage rate

Each TsysFeeDiscountType sub-object additionally contains:

Sub-fieldTypeDescription
discountTypestring (enum)Daily or Monthly discount type
{
  "data": {
    "minimumDiscountAmount": 25.00,
    "minimumDiscountType": "Monthly",
    "earlyTerminationFeeAmount": 495.00,
    "earlyTerminationFeeContractMonths": 36,
    "visaMasterCardDiscover": {
      "interchangePlus": {
        "vsQualCrDiscount": { "perItem": 0.10, "percent": 0.30 },
        "mcQualCrDiscount": { "perItem": 0.10, "percent": 0.30 },
        "dsQualCrDiscount": { "perItem": 0.10, "percent": 0.30 }
      }
    },
    "authorizationMonthlyAndSpecialProgram": {
      "vsmcdiscAuth": { "perItem": 0.10, "percent": 0.00 },
      "chargeback": { "perItem": 25.00, "percent": 0.00 },
      "statement": { "perItem": 10.00, "percent": 0.00 },
      "pciAnnual": { "perItem": 99.00, "percent": 0.00 }
    },
    "cardBrand": {
      "cardBrand": true,
      "mastercardLicense": false
    },
    "miscFees": [],
    "miscFeesVolume": []
  },
  "status": "OK",
  "error": null,
  "warning": null,
  "validationResults": [],
  "requestId": 92014
}

Error Codes

CodeWhen it happens
400id parameter is missing or not a valid integer
401Invalid or missing Basic Auth credentials
403User does not have permission for this operation
404Merchant with the specified id not found
500Internal server error

Common Mistakes

  • Using this v1 endpoint for new integrations — migrate to GET /api/v2/merchant/fees which provides the current fee model.
  • Expecting all fee sub-objects to be populated — many fee categories will be null if not applicable to the merchant's pricing plan; check for null before accessing nested fields.
  • Using minimumDiscountAmount directly as a monthly bill estimate — the actual fee depends on whether the merchant's discount volume falls below the minimum.
  • Ignoring miscFees and miscFeesVolume arrays — custom fees specific to the merchant or ISO agreement are stored here and may not appear in the standard fee categories.

Related Endpoints

  • GET /api/v2/merchant/fees — the recommended replacement endpoint for retrieving merchant fees
  • POST /api/v2/merchant/updateFees — update the fee structure for a merchant
  • GET /api/v1/merchant/status — check the merchant's boarding status

Example

curl -X GET "https://hq.staging.netevia.dev/api/v1/merchant/fees?id=48291" \
  -H "Authorization: Basic $(echo -n 'username:password' | base64)"
Query Params
int32
required
Headers
string
enum
Defaults to application/json

Generated from available response 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