Create fee plan agreement
Creates the subscription of a fee plan to a merchant account. Merchants are required to accept the fee plan terms prior to activation.
To access this endpoint using an access token
you'll need to specify the /accounts/{accountID}/profile.write
scope.
|
|
|
|
|
|
|
|
{
"properties": {
"acceptedOn": {
"format": "date-time",
"type": "string"
},
"accountID": {
"format": "uuid",
"type": "string"
},
"agreementID": {
"format": "uuid",
"type": "string"
},
"billableFees": {
"items": {
"example": {
"billableEvent": "card-auth-volume",
"billableFeeID": "9d957d33-1a9a-47aa-9460-fe1a90f003dd",
"feeCategory": "card-acquiring",
"feeConditions": {
"transactionType": [
"decline"
]
},
"feeModel": "fixed",
"feeName": "Card decline fee",
"feeProperties": {
"fixedAmount": {
"currency": "USD",
"valueDecimal": "0.1"
}
}
},
"properties": {
"billableEvent": {
"description": "A unique code identifying a charge.",
"type": "string"
},
"billableFeeID": {
"format": "uuid",
"type": "string"
},
"feeCategory": {
"enum": [
"ach",
"card-acquiring",
"card-other",
"card-pull",
"card-push",
"monthly-platform",
"network-passthrough",
"other",
"rtp"
],
"type": "string"
},
"feeConditions": {
"additionalProperties": {},
"description": "Defines the specific conditions that must be met for the fee to be applied.",
"example": {
"cardBrand": [
"visa"
]
},
"type": "object"
},
"feeModel": {
"description": "Specifies the pricing model used for the calculation of the final fee.",
"enum": [
"fixed",
"blended",
"variable"
],
"type": "string"
},
"feeName": {
"description": "Specifies the name of the fee that will be billed.",
"type": "string"
},
"feeProperties": {
"description": "Defines the specific parameters used for fee calculation.",
"example": {
"fixedAmount": {
"currency": "USD",
"valueDecimal": "0.0195"
},
"maxPerTransaction": {
"currency": "USD",
"valueDecimal": "0.035"
},
"minPerTransaction": {
"currency": "USD",
"valueDecimal": "0.0195"
},
"variableRate": "0.15"
},
"properties": {
"fixedAmount": {
"allOf": [
{
"properties": {
"currency": {
"description": "A 3-letter ISO 4217 currency code.",
"example": "USD",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"valueDecimal": {
"description": "A decimal-formatted numerical string that represents up to 9 decimal place precision. \n\nFor example, $12.987654321 is '12.987654321'.",
"example": "12.987654321",
"pattern": "^\\d+\\.\\d{1,9}$",
"type": "string"
}
},
"required": [
"currency",
"valueDecimal"
],
"type": "object"
}
],
"description": "A fixed fee that is applied to the amount of each transaction in the `fixed` and `blended` fee models."
},
"maxPerTransaction": {
"allOf": [
{
"properties": {
"currency": {
"description": "A 3-letter ISO 4217 currency code.",
"example": "USD",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"valueDecimal": {
"description": "A decimal-formatted numerical string that represents up to 9 decimal place precision. \n\nFor example, $12.987654321 is '12.987654321'.",
"example": "12.987654321",
"pattern": "^\\d+\\.\\d{1,9}$",
"type": "string"
}
},
"required": [
"currency",
"valueDecimal"
],
"type": "object"
}
],
"description": "Specifies the maximum allowable spending for a single transaction, working as a transaction ceiling."
},
"minPerTransaction": {
"allOf": [
{
"properties": {
"currency": {
"description": "A 3-letter ISO 4217 currency code.",
"example": "USD",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"valueDecimal": {
"description": "A decimal-formatted numerical string that represents up to 9 decimal place precision. \n\nFor example, $12.987654321 is '12.987654321'.",
"example": "12.987654321",
"pattern": "^\\d+\\.\\d{1,9}$",
"type": "string"
}
},
"required": [
"currency",
"valueDecimal"
],
"type": "object"
}
],
"description": "Specifies the minimum allowable spending for a single transaction, working as a transaction floor."
},
"variableRate": {
"description": "A percentage fee that is applied to the amount of each transaction in the `blended` fee model, expressed as a decimal. \n\nFor example, 0.05% is '0.05'.",
"example": "0.05",
"pattern": "^[0-9]+.?[0-9]*$",
"type": "string"
}
},
"type": "object"
}
},
"required": [
"feeModel",
"feeCategory"
],
"type": "object"
},
"type": "array"
},
"cardAcquiringModel": {
"description": "Specifies the card processing pricing model",
"enum": [
"cost-plus",
"flat-rate"
],
"type": "string"
},
"description": {
"description": "The description of the agreement.",
"type": "string"
},
"minimumCommitment": {
"allOf": [
{
"properties": {
"currency": {
"description": "A 3-letter ISO 4217 currency code.",
"example": "USD",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"valueDecimal": {
"description": "A decimal-formatted numerical string that represents up to 9 decimal place precision. \n\nFor example, $12.987654321 is '12.987654321'.",
"example": "12.987654321",
"pattern": "^\\d+\\.\\d{1,9}$",
"type": "string"
}
},
"required": [
"currency",
"valueDecimal"
],
"type": "object"
}
],
"description": "The minimum spending amount that must be met in the billing period. If actual usage is below the minimum amount, account is charged the difference.",
"type": "object"
},
"monthlyPlatformFee": {
"allOf": [
{
"properties": {
"currency": {
"description": "A 3-letter ISO 4217 currency code.",
"example": "USD",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"valueDecimal": {
"description": "A decimal-formatted numerical string that represents up to 9 decimal place precision. \n\nFor example, $12.987654321 is '12.987654321'.",
"example": "12.987654321",
"pattern": "^\\d+\\.\\d{1,9}$",
"type": "string"
}
},
"required": [
"currency",
"valueDecimal"
],
"type": "object"
}
],
"description": "Fixed recurring amount paid in the billing period regardless of usage.",
"type": "object"
},
"name": {
"description": "The name of the agreement.",
"type": "string"
},
"planID": {
"format": "uuid",
"type": "string"
},
"status": {
"enum": [
"active",
"terminated"
],
"type": "string"
}
},
"required": [
"agreementID",
"planID",
"name",
"acceptedOn",
"status",
"cardAcquiringModel",
"billableFees",
"minimumCommitment",
"monthlyPlatformFee"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"error": {
"type": "string"
}
},
"required": [
"error"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"error": {
"type": "string"
}
},
"required": [
"error"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"planID": {
"type": "string"
}
},
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Headers
x-moov-version
string
API version
Specify an API version.
API versioning follows the format vYYYY.QQ.BB
, where
YYYY
is the yearQQ
is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)BB
is the build number, starting at.01
, for subsequent builds in the same quarter.- For example,
v2024.01.00
is the initial release of the first quarter of 2024.
- For example,
The latest
version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
v2024.01.00
Path parameters
accountID
string
<uuid>
required
Body
planID
string<uuid>
required
Response
acceptedOn
string<date-time>
required
agreementID
string<uuid>
required
billableFees
array
required
Show child attributes
billableEvent
string
billableFeeID
string<uuid>
feeCategory
string<enum>
ach
,
card-acquiring
,
card-other
,
card-pull
,
card-push
,
monthly-platform
,
network-passthrough
,
other
,
rtp
feeConditions
object
feeModel
string<enum>
fixed
,
blended
,
variable
feeName
string
feeProperties
object
Show child attributes
fixedAmount
object
fixed
and blended
fee models.
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
maxPerTransaction
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
minPerTransaction
object
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
variableRate
string
Pattern
A percentage fee that is applied to the amount of each transaction in the blended
fee model, expressed as a decimal.
For example, 0.05% is '0.05'.
cardAcquiringModel
string<enum>
required
cost-plus
,
flat-rate
minimumCommitment
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
monthlyPlatformFee
object
required
Show child attributes
currency
string
required
Pattern
valueDecimal
string
required
Pattern
A decimal-formatted numerical string that represents up to 9 decimal place precision.
For example, $12.987654321 is '12.987654321'.
name
string
required
planID
string<uuid>
required
status
string<enum>
required
active
,
terminated
accountID
string<uuid>
description
string