PricingPlanV2

Get a Pricing Plan

get

Retrieve the pricing plan for a specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
effectiveDatestring · date-timeOptional

Indicates the date from which the pricing plans should be effective.

outof100booleanOptional

Indicates whether pricing fees are displayed as percentages out of 100.

Default: false
useDisplayFeesbooleanOptional

Indicates whether the response includes display-friendly fee values for better readability.

Default: false
Responses
200

Returns a pricing plan successfully.

application/json
get
/api/pricing/v2/PricingPlan/{merchantNumber}
GET /api/pricing/v2/PricingPlan/{merchantNumber} HTTP/1.1
Host: 
Accept: */*
{
  "pricingFees": [
    {
      "clearentPricingFeeID": 1,
      "pricingFeeDescription": "text",
      "rate": 1,
      "fee": 1,
      "payInMonth1": 1,
      "payInMonth2": 1
    }
  ],
  "pricingPlanID": 1,
  "pricingPlanTemplateID": 1,
  "merchantNumber": "text",
  "discountQualificationRangeID": 1,
  "signatureDebitDiscountQualificationRangeID": 1,
  "pricingTypeCode": "text",
  "isAdvancedPricing": true,
  "isEMF": true,
  "isDailySettle": true,
  "includeAssessments": true,
  "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
  "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
}

Create a Pricing Plan

post

Create a new pricing plan for the specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
outof100booleanOptional

Indicates whether rates should be calculated on a percentage basis.

Default: false
useDisplayFeesbooleanOptional

Indicates whether display fees are applied in the pricing plan.

Default: false
Body
pricingPlanIDinteger · int32Optional

The identifier for this pricing plan.

pricingPlanTemplateIDinteger · int32Optional

The id of the pricing template that should be used to validate this pricing plan. These are assigned at the partner level and will be provided by your integration specialist.

merchantNumberstring | nullableOptional

The identifier for the merchant.

discountQualificationRangeIDinteger · int32 | nullableOptional

This value will be provided by your integration specialist.

signatureDebitDiscountQualificationRangeIDinteger · int32 | nullableOptional

This value will be provided by your integration specialist.

pricingTypeCodestringOptional

This value will be provided by your integration specialist.

isAdvancedPricingbooleanOptional

This value will be provided by your integration specialist.

isEMFbooleanOptional

Enrolls the merchant in Xplor Pay’s EMF (Express Merchant Funding) program, giving them next-business-day funding of batches submitted prior to 11:00 p.m. Eastern Time.

isDailySettlebooleanOptional

Governs the settlement of transaction fees: If IsDailySettle is set to true, fees will be deducted from the merchant's daily deposit. If IsDailySettle is set to false, fees will be deducted from the merchant's bank account at the end of the month (Note: a Month End Billing Option fee may apply to transactions that have fees settled monthly).

includeAssessmentsbooleanOptional

Governs the billing of certain card brand fees including but not limited to: Assessments, Foreign Card Fees, Authorization Fees (e.g. NABU, APF), Visa Fees (TIF, FANF, ZFL, Auth Misuse), and Network Fees. As a general guideline: This should be set to false if the merchant is on a flat-rate or two-tier pricing plan, as the Discount Rate (or Card-Present/Card-Not-Present Transaction Fees) is set high enough to cover these items. This should be set to true if the merchant is on a Tiered pricing plan, as the Discount Rate is set to cover Interchange, but not these other fees. This should not be available in the template for IC Plus pricing plans, as it must be set to ""Y"" and not left to the client's discretion.

effectiveStartDateTimeUTCstring · date-time | nullableOptional

The pricing plan will become active starting with this date.

effectiveEndDateTimeUTCstring · date-time | nullableOptional

The pricing plan will remain active up to this date.

Responses
200

Success

application/json
post
/api/pricing/v2/PricingPlan/{merchantNumber}
POST /api/pricing/v2/PricingPlan/{merchantNumber} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 490

{
  "pricingFees": [
    {
      "clearentPricingFeeID": 1,
      "pricingFeeDescription": "text",
      "rate": 1,
      "fee": 1,
      "payInMonth1": 1,
      "payInMonth2": 1
    }
  ],
  "pricingPlanID": 1,
  "pricingPlanTemplateID": 1,
  "merchantNumber": "text",
  "discountQualificationRangeID": 1,
  "signatureDebitDiscountQualificationRangeID": 1,
  "pricingTypeCode": "text",
  "isAdvancedPricing": true,
  "isEMF": true,
  "isDailySettle": true,
  "includeAssessments": true,
  "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
  "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
}
{
  "pricingFees": [
    {
      "clearentPricingFeeID": 1,
      "pricingFeeDescription": "text",
      "rate": 1,
      "fee": 1,
      "payInMonth1": 1,
      "payInMonth2": 1
    }
  ],
  "pricingPlanID": 1,
  "pricingPlanTemplateID": 1,
  "merchantNumber": "text",
  "discountQualificationRangeID": 1,
  "signatureDebitDiscountQualificationRangeID": 1,
  "pricingTypeCode": "text",
  "isAdvancedPricing": true,
  "isEMF": true,
  "isDailySettle": true,
  "includeAssessments": true,
  "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
  "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
}

Delete All Pricing Plans

delete

Remove all pricing plans associated with a merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Responses
200

Deletes a pricing plan successfully.

application/json
delete
/api/pricing/v2/PricingPlan/{merchantNumber}
DELETE /api/pricing/v2/PricingPlan/{merchantNumber} HTTP/1.1
Host: 
Accept: */*
{
  "errors": [
    {
      "errorMessage": "text",
      "resultCode": 1,
      "timeStamp": "2025-11-14T18:52:48.763Z",
      "fieldPath": [
        "text"
      ],
      "pricingFeeIds": [
        1
      ]
    }
  ],
  "timeStamp": "2025-11-14T18:52:48.763Z"
}

Get All Pricing Plans

get

Retrieve all pricing plans associated with a specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
outof100booleanOptional

Indicates whether pricing fees are displayed as percentages out of 100.

Default: false
useDisplayFeesbooleanOptional

Indicates whether the response includes display-friendly fee values for better readability.

Default: false
Responses
200

Returns the pricing plans successfully.

application/json
get
/api/pricing/v2/PricingPlan/All/{merchantNumber}
GET /api/pricing/v2/PricingPlan/All/{merchantNumber} HTTP/1.1
Host: 
Accept: */*
{
  "content": [
    {
      "pricingFees": [
        {
          "clearentPricingFeeID": 1,
          "pricingFeeDescription": "text",
          "rate": 1,
          "fee": 1,
          "payInMonth1": 1,
          "payInMonth2": 1
        }
      ],
      "pricingPlanID": 1,
      "pricingPlanTemplateID": 1,
      "merchantNumber": "text",
      "discountQualificationRangeID": 1,
      "signatureDebitDiscountQualificationRangeID": 1,
      "pricingTypeCode": "text",
      "isAdvancedPricing": true,
      "isEMF": true,
      "isDailySettle": true,
      "includeAssessments": true,
      "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
      "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
    }
  ]
}

Update a Pricing Plan

put

Update an existing pricing plan for a specific merchant

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

idinteger · int32Required

The unique ID of the pricing plan to be updated.

Query parameters
outof100booleanOptional

Indicates whether pricing values are calculated as percentages out of 100.

Default: false
useDisplayFeesbooleanOptional

Indicates whether display fees are applied in the updated pricing plan

Default: false
Body
pricingPlanIDinteger · int32Optional

The identifier for this pricing plan.

pricingPlanTemplateIDinteger · int32Optional

The id of the pricing template that should be used to validate this pricing plan. These are assigned at the partner level and will be provided by your integration specialist.

merchantNumberstring | nullableOptional

The identifier for the merchant.

discountQualificationRangeIDinteger · int32 | nullableOptional

This value will be provided by your integration specialist.

signatureDebitDiscountQualificationRangeIDinteger · int32 | nullableOptional

This value will be provided by your integration specialist.

pricingTypeCodestringOptional

This value will be provided by your integration specialist.

isAdvancedPricingbooleanOptional

This value will be provided by your integration specialist.

isEMFbooleanOptional

Enrolls the merchant in Xplor Pay’s EMF (Express Merchant Funding) program, giving them next-business-day funding of batches submitted prior to 11:00 p.m. Eastern Time.

isDailySettlebooleanOptional

Governs the settlement of transaction fees: If IsDailySettle is set to true, fees will be deducted from the merchant's daily deposit. If IsDailySettle is set to false, fees will be deducted from the merchant's bank account at the end of the month (Note: a Month End Billing Option fee may apply to transactions that have fees settled monthly).

includeAssessmentsbooleanOptional

Governs the billing of certain card brand fees including but not limited to: Assessments, Foreign Card Fees, Authorization Fees (e.g. NABU, APF), Visa Fees (TIF, FANF, ZFL, Auth Misuse), and Network Fees. As a general guideline: This should be set to false if the merchant is on a flat-rate or two-tier pricing plan, as the Discount Rate (or Card-Present/Card-Not-Present Transaction Fees) is set high enough to cover these items. This should be set to true if the merchant is on a Tiered pricing plan, as the Discount Rate is set to cover Interchange, but not these other fees. This should not be available in the template for IC Plus pricing plans, as it must be set to ""Y"" and not left to the client's discretion.

effectiveStartDateTimeUTCstring · date-time | nullableOptional

The pricing plan will become active starting with this date.

effectiveEndDateTimeUTCstring · date-time | nullableOptional

The pricing plan will remain active up to this date.

Responses
200

Updates a pricing plan successfully.

application/json
put
/api/pricing/v2/PricingPlan/{merchantNumber}/{id}
PUT /api/pricing/v2/PricingPlan/{merchantNumber}/{id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 490

{
  "pricingFees": [
    {
      "clearentPricingFeeID": 1,
      "pricingFeeDescription": "text",
      "rate": 1,
      "fee": 1,
      "payInMonth1": 1,
      "payInMonth2": 1
    }
  ],
  "pricingPlanID": 1,
  "pricingPlanTemplateID": 1,
  "merchantNumber": "text",
  "discountQualificationRangeID": 1,
  "signatureDebitDiscountQualificationRangeID": 1,
  "pricingTypeCode": "text",
  "isAdvancedPricing": true,
  "isEMF": true,
  "isDailySettle": true,
  "includeAssessments": true,
  "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
  "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
}
{
  "pricingFees": [
    {
      "clearentPricingFeeID": 1,
      "pricingFeeDescription": "text",
      "rate": 1,
      "fee": 1,
      "payInMonth1": 1,
      "payInMonth2": 1
    }
  ],
  "pricingPlanID": 1,
  "pricingPlanTemplateID": 1,
  "merchantNumber": "text",
  "discountQualificationRangeID": 1,
  "signatureDebitDiscountQualificationRangeID": 1,
  "pricingTypeCode": "text",
  "isAdvancedPricing": true,
  "isEMF": true,
  "isDailySettle": true,
  "includeAssessments": true,
  "effectiveStartDateTimeUTC": "2025-11-14T18:52:48.763Z",
  "effectiveEndDateTimeUTC": "2025-11-14T18:52:48.763Z"
}

Delete a Pricing Plan

delete

Delete a specific pricing plan of the specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

pricingPlanIDinteger · int32Required

The unique identifier of the pricing plan.

Responses
200

Deletes a pricing plan successfully.

application/json
delete
/api/pricing/v2/PricingPlan/{merchantNumber}/{pricingPlanID}
DELETE /api/pricing/v2/PricingPlan/{merchantNumber}/{pricingPlanID} HTTP/1.1
Host: 
Accept: */*
{
  "errors": [
    {
      "errorMessage": "text",
      "resultCode": 1,
      "timeStamp": "2025-11-14T18:52:48.763Z",
      "fieldPath": [
        "text"
      ],
      "pricingFeeIds": [
        1
      ]
    }
  ],
  "timeStamp": "2025-11-14T18:52:48.763Z"
}

Get Available Pricing Plan Templates

get

Retrieve a list of available pricing plan templates for a specific merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
outof100booleanOptional

Indicates whether rates are represented as values out of 100 rather than out of 1.

Default: false
useDisplayFeesbooleanOptional

Indicates whether the API returns fees in a format that mirrors how they are displayed on user interfaces.

Default: false
mccCodeFilterstringOptional

The MCC Code used to determine if a merchant can use a specific template.

stateCodeFilterstringOptional

The 2-letter State Code used to determine if a merchant can use a specific template.

ecommPercentFilterstringOptional

The E-Comm Percentage used to determine if a merchant can use a specific template.

cardTypeFilterstring[]Optional

The Card Type Codes used to determine if a merchant can use a specific template.

Responses
200

Returns a list of available templates successfully.

application/json
get
/api/pricing/v2/PricingPlan/{merchantNumber}/templates
GET /api/pricing/v2/PricingPlan/{merchantNumber}/templates HTTP/1.1
Host: 
Accept: */*
{
  "content": [
    {
      "pricingPlanTemplateID": 1,
      "hierarchyNodeKey": "text",
      "templateName": "text",
      "pricingTypeCode": "text",
      "isAdvancedPricing": true,
      "isDefaultTemplate": true,
      "isDisabled": true,
      "templateFees": [
        {
          "clearentPricingFeeID": 1,
          "clearentPricingFeeDescription": "text",
          "isEditable": true,
          "isRequired": true,
          "isVisible": true,
          "isFee": true,
          "isRate": true,
          "isPayInMonthRequired1": true,
          "isPayInMonthRequired2": true,
          "defaultRate": 1,
          "minRate": 1,
          "maxRate": 1,
          "defaultFee": 1,
          "minFee": 1,
          "maxFee": 1,
          "rateLabel": "text",
          "feeLabel": "text"
        }
      ],
      "templateSettings": [
        {
          "pricingPlanSettingID": 1,
          "settingName": "text",
          "description": "text",
          "isVisible": true,
          "isEditable": true,
          "defaultValue": true
        }
      ],
      "attributes": [
        {
          "name": "text",
          "value": "text",
          "type": "text"
        }
      ]
    }
  ]
}

Check Merchant Eligibility

get

Retrieve the eligibility status of a specific merchant for a given pricing plan template.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

pricingPlanTemplateIdinteger · int32Required

The unique identifier of the pricing plan template for which you want to verify merchant eligibility.

Query parameters
mccCodeFilterstringOptional

The MCC Code to be used when when determining if a merchant can use a specific template.

stateCodeFilterstringOptional

The 2 letter State Code to be used when when determining if a merchant can use a specific template.

ecommPercentFilterstringOptional

The E-Comm Percentage to be used when when determining if a merchant can use a specific template.

cardTypeFilterstring[]Optional

The Card Type Codes to be used when when determining if a merchant can use a specific template.

Responses
200

Returns a list of available templates successfully.

application/json
get
/api/pricing/v2/PricingPlan/{merchantNumber}/templates/{pricingPlanTemplateId}/eligibility
GET /api/pricing/v2/PricingPlan/{merchantNumber}/templates/{pricingPlanTemplateId}/eligibility HTTP/1.1
Host: 
Accept: */*
{
  "isEligible": true,
  "inelegibilityReasons": [
    "text"
  ]
}

Get Empower Attributes

get

Retrieve the empower attributes associated with a specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Responses
200

Returns a empower attributes successfully.

application/json
get
/api/pricing/v2/PricingPlan/{merchantNumber}/empowerAttributes
GET /api/pricing/v2/PricingPlan/{merchantNumber}/empowerAttributes HTTP/1.1
Host: 
Accept: */*
{
  "isEligibleForValidation": true,
  "isEmpower": true,
  "surchargeMin": 1,
  "surchargeMax": 1,
  "surchargeIsRate": true,
  "empowerProgram": "text",
  "isEmf": true
}

Last updated

Was this helpful?