Other tools
Arguments, results, errors, and access, confirmation, and retry policy for each Other tool in FloPay MCP, from the reviewed API contract.
Other tools
Generated from the FloPay MCP contract version 1, revision cc71a476426ea531d369de5441cde85ab81ab52c9764406e5f09501857d7ed32.
ClientInvoices_findOne
Get one Flo billing invoice for the authenticated client
| Policy | Value |
|---|---|
| Operation | GET /v1/client-invoices/{uuid} |
| Class | read-only |
| Risk | low |
| Confirmation | not-required |
| Retry | safe |
| Rate-limit tier | read |
| Roles | owner, admin, member |
| Scopes | mcp:read |
Arguments
| Argument | In | Type | Required | Description |
|---|---|---|---|---|
uuid | path | string | Yes |
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
adjustmentTotalUsd | number | Yes | Signed source-period billing adjustments applied to this invoice, in USD. |
charges | array of object | Yes | Durable monthly charges swept onto this invoice. |
charges[].amountUsd | number | Yes | Charge amount in USD. |
charges[].createdAt | string (date-time) | Yes | When the durable charge was created. |
charges[].currency | string | Yes | Allowed values: USD. |
charges[].id | string (uuid) | Yes | The durable client charge UUID. |
charges[].period | string | Yes | UTC calendar month to which the charge belongs. |
charges[].type | string | Yes | Allowed values: monthly_fee, pre_dispute_alert_fee. |
clientId | string (uuid) | Yes | The client organisation billed by this invoice. |
createdAt | string (date-time) | Yes | When the invoice record was created. |
currency | string | Yes | Allowed values: USD. |
id | string (uuid) | Yes | The Flo-to-client invoice UUID. |
invoiceDate | string | Yes | Final UTC calendar date of the invoiced period. |
invoiceNumber | string | Yes | Global human-readable invoice number. |
issuedAt | string (date-time) | Yes | When the invoice was issued. |
issuerAddress | string | Yes | Issuer address snapshotted at issuance. |
issuerLegalName | string | Yes | Issuing legal entity snapshotted at issuance. |
minimumSpendAdjustmentUsd | number | Yes | Adjustment required to reach the minimum-spend floor, in USD. |
minimumSpendUsd | number | Yes | Minimum-spend floor captured when this invoice was issued, in USD. |
monthlyFeeTotalUsd | number | Yes | Monthly-fee charges linked to this invoice, in USD. |
outstandingTotalUsd | number | Yes | Amount still outstanding in USD. Settlement is full-only. |
period | string | Yes | First day of the invoiced UTC calendar month. |
settlement | object or null | No | Additive settlement state. Null for invoices issued before settlement tracking began. |
settlement.collectionMethod | string | Yes | Allowed values: automatic, manual. |
settlement.method | string or null | No | Allowed values: stripe_card, bank_transfer, other. |
settlement.settledAt | string (date-time) or null | No | Effective settlement date and time. |
settlement.status | string | Yes | Allowed values: awaiting_manual, pending, processing, retryable_failed, retry_exhausted, paid. |
status | string | Yes | Allowed values: issued, paid, void. |
taxTotalUsd | number or null | No | Reserved tax total; null while tax is out of scope. |
totalUsd | number | Yes | Net invoice total in USD. |
transactionFeeTotalUsd | number | Yes | Finalised transaction fees belonging to this period, in USD. |
Errors
| Status | Description |
|---|---|
400 | The supplied pagination query is invalid. |
401 | Client Basic or OAuth2 bearer authentication is required. |
404 | No invoice with the requested id exists for this client. |
ClientInvoices_list
List Flo billing invoices for the authenticated client
| Policy | Value |
|---|---|
| Operation | GET /v1/client-invoices |
| Class | read-only |
| Risk | low |
| Confirmation | not-required |
| Retry | safe |
| Rate-limit tier | read |
| Roles | owner, admin, member |
| Scopes | mcp:read |
Arguments
| Argument | In | Type | Required | Description |
|---|---|---|---|---|
page | query | number | No | Page number for paginated list endpoints. Pagination is 1-based. Default: 1. Minimum: 1. |
limit | query | number | No | Maximum number of records to return per page for paginated list endpoints. Default: 20. Minimum: 1. Maximum: 100. |
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
data | array of object | Yes | |
data[].adjustmentTotalUsd | number | Yes | Signed source-period billing adjustments applied to this invoice, in USD. |
data[].charges | array of object | Yes | Durable monthly charges swept onto this invoice. |
data[].charges[].amountUsd | number | Yes | Charge amount in USD. |
data[].charges[].createdAt | string (date-time) | Yes | When the durable charge was created. |
data[].charges[].currency | string | Yes | Allowed values: USD. |
data[].charges[].id | string (uuid) | Yes | The durable client charge UUID. |
data[].charges[].period | string | Yes | UTC calendar month to which the charge belongs. |
data[].charges[].type | string | Yes | Allowed values: monthly_fee, pre_dispute_alert_fee. |
data[].clientId | string (uuid) | Yes | The client organisation billed by this invoice. |
data[].createdAt | string (date-time) | Yes | When the invoice record was created. |
data[].currency | string | Yes | Allowed values: USD. |
data[].id | string (uuid) | Yes | The Flo-to-client invoice UUID. |
data[].invoiceDate | string | Yes | Final UTC calendar date of the invoiced period. |
data[].invoiceNumber | string | Yes | Global human-readable invoice number. |
data[].issuedAt | string (date-time) | Yes | When the invoice was issued. |
data[].issuerAddress | string | Yes | Issuer address snapshotted at issuance. |
data[].issuerLegalName | string | Yes | Issuing legal entity snapshotted at issuance. |
data[].minimumSpendAdjustmentUsd | number | Yes | Adjustment required to reach the minimum-spend floor, in USD. |
data[].minimumSpendUsd | number | Yes | Minimum-spend floor captured when this invoice was issued, in USD. |
data[].monthlyFeeTotalUsd | number | Yes | Monthly-fee charges linked to this invoice, in USD. |
data[].outstandingTotalUsd | number | Yes | Amount still outstanding in USD. Settlement is full-only. |
data[].period | string | Yes | First day of the invoiced UTC calendar month. |
data[].settlement | object or null | No | Additive settlement state. Null for invoices issued before settlement tracking began. |
data[].settlement.collectionMethod | string | Yes | Allowed values: automatic, manual. |
data[].settlement.method | string or null | No | Allowed values: stripe_card, bank_transfer, other. |
data[].settlement.settledAt | string (date-time) or null | No | Effective settlement date and time. |
data[].settlement.status | string | Yes | Allowed values: awaiting_manual, pending, processing, retryable_failed, retry_exhausted, paid. |
data[].status | string | Yes | Allowed values: issued, paid, void. |
data[].taxTotalUsd | number or null | No | Reserved tax total; null while tax is out of scope. |
data[].totalUsd | number | Yes | Net invoice total in USD. |
data[].transactionFeeTotalUsd | number | Yes | Finalised transaction fees belonging to this period, in USD. |
limit | number | Yes | |
page | number | Yes | |
pages | number | Yes | |
total | number | Yes |
Errors
| Status | Description |
|---|---|
400 | The supplied pagination query is invalid. |
401 | Client Basic or OAuth2 bearer authentication is required. |
Company_get
Get Company
Returns the authenticated merchant company.
| Policy | Value |
|---|---|
| Operation | GET /v1/company |
| Class | read-only |
| Risk | low |
| Confirmation | not-required |
| Retry | safe |
| Rate-limit tier | read |
| Roles | owner, admin, member |
| Scopes | mcp:read |
Arguments
This tool takes no arguments.
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
createdAt | string (date-time) | Yes | |
currency | string | Yes | |
id | string | Yes | |
slug | string | Yes | |
updatedAt | string (date-time) | Yes |
Errors
| Status | Description |
|---|---|
401 | Missing or invalid Basic API key or OAuth2 bearer token. |
Company_update
Update Company
Updates the authenticated merchant company. The reporting currency is the unit every merchant report and aggregate is expressed in; transactions keep their own source currency. Owners and admins only.
| Policy | Value |
|---|---|
| Operation | PATCH /v1/company |
| Class | mutating |
| Risk | medium |
| Confirmation | required |
| Retry | same-idempotency-key |
| Rate-limit tier | mutation |
| Roles | owner, admin |
| Scopes | mcp:write |
Arguments
| Argument | In | Type | Required | Description |
|---|---|---|---|---|
currency | body | string | Yes | Allowed values: AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYN, BZD, CAD, CDF, CHF, CLP, CNY, COP, CRC, CUP, CVE, CZK, DJF, DKK, DOP, DZD, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GTQ, GYD, HKD, HNL, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRU, MUR, MVR, MWK, MXN, MYR, MZN, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, RWF, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLE, SOS, SRD, STN, SVC, SYP, SZL, THB, TJS, TMT, TND, TOP, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VES, VND, VUV, WST, XAF, XCD, XOF, XPF, YER, ZAR, ZMW. |
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
createdAt | string (date-time) | Yes | |
currency | string | Yes | |
id | string | Yes | |
slug | string | Yes | |
updatedAt | string (date-time) | Yes |
Errors
| Status | Description |
|---|---|
401 | Missing or invalid Basic API key or OAuth2 bearer token. |
DunningPolicy_clear
Revert the authenticated client's future dunning campaigns to platform defaults
| Policy | Value |
|---|---|
| Operation | DELETE /v1/settings/dunning-policy |
| Class | mutating |
| Risk | high |
| Confirmation | required |
| Retry | same-idempotency-key |
| Rate-limit tier | restricted |
| Roles | owner, admin |
| Scopes | mcp:write |
Arguments
This tool takes no arguments.
Result
Returns 204 with no body.
Errors
| Status | Description |
|---|---|
401 | Client Basic or OAuth2 bearer authentication is required. |
403 | Members cannot manage dunning policy settings. |
DunningPolicy_get
Read the authenticated client's effective subscription dunning policy
| Policy | Value |
|---|---|
| Operation | GET /v1/settings/dunning-policy |
| Class | read-only |
| Risk | low |
| Confirmation | not-required |
| Retry | safe |
| Rate-limit tier | read |
| Roles | owner, admin |
| Scopes | mcp:read |
Arguments
This tool takes no arguments.
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
activeCampaignChanges | string | Yes | Allowed values: future_campaigns_only. Default: future_campaigns_only. |
cadence | object | Yes | |
cadence.day | object | Yes | |
cadence.day.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.day.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.month | object | Yes | |
cadence.month.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.month.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.week | object | Yes | |
cadence.week.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.week.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.year | object | Yes | |
cadence.year.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.year.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
effectiveAt | string (date-time) or null | Yes | |
eligibleDeclineReasons | array of string | Yes | Allowed values: INSUFFICIENT_FUNDS, DO_NOT_HONOUR, TOO_MANY_ATTEMPTS, PARTIAL_APPROVAL, PAYMENT_GATEWAY_ERROR, TECHNICAL_ERROR, RETRYABLE_DECLINE, UNSUPPORTED_CARD_PURCHASE, USER_ERROR, CVV_INVALID, AVS_FAIL, POSTCODE_INVALID, 3DS_FAIL, EXCEEDS_CARD_LIMIT, CLIENT_ERROR, UNKNOWN_DECLINE_REASON. |
permittedRetryTimesUtc | array of string or null | Yes | |
platformLimits | object | Yes | Default: {"clientCanChangeLifecycleEvents":false,"clientCanRetryNonRetryableOutcomes":false,"maxRetryWindowHours":1440,"maxRetryWindowHoursScope":"client_override","maxScheduledRetries":8,"platformDefaultRetryWindowScaling":"interval_count_before_next_billing_cycle","retriesMustBeBeforeNextBillingCycle":true}. |
platformLimits.clientCanChangeLifecycleEvents | boolean | Yes | Allowed values: false. Default: false. |
platformLimits.clientCanRetryNonRetryableOutcomes | boolean | Yes | Allowed values: false. Default: false. |
platformLimits.maxRetryWindowHours | object | Yes | Maximum retry window enforced for activated client overrides; the released platform default keeps interval-count scaling. Default: 1440. Maximum: 1440. |
platformLimits.maxRetryWindowHoursScope | string | Yes | Allowed values: client_override. Default: client_override. |
platformLimits.maxScheduledRetries | object | Yes | Default: 8. Maximum: 8. |
platformLimits.platformDefaultRetryWindowScaling | string | Yes | Allowed values: interval_count_before_next_billing_cycle. Default: interval_count_before_next_billing_cycle. |
platformLimits.retriesMustBeBeforeNextBillingCycle | boolean | Yes | Allowed values: true. Default: true. |
policyId | string (uuid) or null | Yes | |
revision | number or null | Yes | Minimum: 1. |
source | string | Yes | Allowed values: platform_default, client_override. |
Errors
| Status | Description |
|---|---|
401 | Client Basic or OAuth2 bearer authentication is required. |
403 | Members cannot manage dunning policy settings. |
DunningPolicy_update
Activate a new revision of the authenticated client's subscription dunning policy
| Policy | Value |
|---|---|
| Operation | PATCH /v1/settings/dunning-policy |
| Class | mutating |
| Risk | high |
| Confirmation | required |
| Retry | same-idempotency-key |
| Rate-limit tier | restricted |
| Roles | owner, admin |
| Scopes | mcp:write |
Arguments
| Argument | In | Type | Required | Description |
|---|---|---|---|---|
cadence | body | object | No | |
cadence.day | body | object | No | |
cadence.day.maxScheduledRetries | body | number or null | No | Minimum: 1. Maximum: 8. |
cadence.day.retryWindowHours | body | number or null | No | Minimum: 1. Maximum: 1440. |
cadence.month | body | object | No | |
cadence.month.maxScheduledRetries | body | number or null | No | Minimum: 1. Maximum: 8. |
cadence.month.retryWindowHours | body | number or null | No | Minimum: 1. Maximum: 1440. |
cadence.week | body | object | No | |
cadence.week.maxScheduledRetries | body | number or null | No | Minimum: 1. Maximum: 8. |
cadence.week.retryWindowHours | body | number or null | No | Minimum: 1. Maximum: 1440. |
cadence.year | body | object | No | |
cadence.year.maxScheduledRetries | body | number or null | No | Minimum: 1. Maximum: 8. |
cadence.year.retryWindowHours | body | number or null | No | Minimum: 1. Maximum: 1440. |
eligibleDeclineReasons | body | array of string or null | No | Allowed values: INSUFFICIENT_FUNDS, DO_NOT_HONOUR, TOO_MANY_ATTEMPTS, PARTIAL_APPROVAL, PAYMENT_GATEWAY_ERROR, TECHNICAL_ERROR, RETRYABLE_DECLINE, UNSUPPORTED_CARD_PURCHASE, USER_ERROR, CVV_INVALID, AVS_FAIL, POSTCODE_INVALID, 3DS_FAIL, EXCEEDS_CARD_LIMIT, CLIENT_ERROR, UNKNOWN_DECLINE_REASON. Minimum items: 1. |
permittedRetryTimesUtc | body | array of string or null | No | Minimum items: 1. |
Result
Returns 200 with a JSON body.
| Field | Type | Required | Description |
|---|---|---|---|
activeCampaignChanges | string | Yes | Allowed values: future_campaigns_only. Default: future_campaigns_only. |
cadence | object | Yes | |
cadence.day | object | Yes | |
cadence.day.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.day.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.month | object | Yes | |
cadence.month.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.month.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.week | object | Yes | |
cadence.week.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.week.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
cadence.year | object | Yes | |
cadence.year.maxScheduledRetries | number | Yes | Minimum: 1. Maximum: 8. |
cadence.year.retryWindowHours | number | Yes | Minimum: 1. Maximum: 1440. |
effectiveAt | string (date-time) or null | Yes | |
eligibleDeclineReasons | array of string | Yes | Allowed values: INSUFFICIENT_FUNDS, DO_NOT_HONOUR, TOO_MANY_ATTEMPTS, PARTIAL_APPROVAL, PAYMENT_GATEWAY_ERROR, TECHNICAL_ERROR, RETRYABLE_DECLINE, UNSUPPORTED_CARD_PURCHASE, USER_ERROR, CVV_INVALID, AVS_FAIL, POSTCODE_INVALID, 3DS_FAIL, EXCEEDS_CARD_LIMIT, CLIENT_ERROR, UNKNOWN_DECLINE_REASON. |
permittedRetryTimesUtc | array of string or null | Yes | |
platformLimits | object | Yes | Default: {"clientCanChangeLifecycleEvents":false,"clientCanRetryNonRetryableOutcomes":false,"maxRetryWindowHours":1440,"maxRetryWindowHoursScope":"client_override","maxScheduledRetries":8,"platformDefaultRetryWindowScaling":"interval_count_before_next_billing_cycle","retriesMustBeBeforeNextBillingCycle":true}. |
platformLimits.clientCanChangeLifecycleEvents | boolean | Yes | Allowed values: false. Default: false. |
platformLimits.clientCanRetryNonRetryableOutcomes | boolean | Yes | Allowed values: false. Default: false. |
platformLimits.maxRetryWindowHours | object | Yes | Maximum retry window enforced for activated client overrides; the released platform default keeps interval-count scaling. Default: 1440. Maximum: 1440. |
platformLimits.maxRetryWindowHoursScope | string | Yes | Allowed values: client_override. Default: client_override. |
platformLimits.maxScheduledRetries | object | Yes | Default: 8. Maximum: 8. |
platformLimits.platformDefaultRetryWindowScaling | string | Yes | Allowed values: interval_count_before_next_billing_cycle. Default: interval_count_before_next_billing_cycle. |
platformLimits.retriesMustBeBeforeNextBillingCycle | boolean | Yes | Allowed values: true. Default: true. |
policyId | string (uuid) or null | Yes | |
revision | number or null | Yes | Minimum: 1. |
source | string | Yes | Allowed values: platform_default, client_override. |
Errors
| Status | Description |
|---|---|
400 | The override is unsafe, contradictory, or malformed. |
401 | Client Basic or OAuth2 bearer authentication is required. |
403 | Members cannot manage dunning policy settings. |
ProductPrices_list
List Product Prices
Returns the authenticated merchant’s locally persisted product prices. Every row includes stable Flopay price and product identifiers, ISO-4217 currency, and catalog lifecycle status. Use relation=product to include the owning product identity. Invalid or unsupported list parameters return 400.
| Policy | Value |
|---|---|
| Operation | GET /v1/product-prices |
| Class | read-only |
| Risk | low |
| Confirmation | not-required |
| Retry | safe |
| Rate-limit tier | read |
| Roles | owner, admin, member |
| Scopes | mcp:read |
Arguments
| Argument | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | No | 1-based page number for paginated list endpoints. Default: 1. Minimum: 1. |
limit | query | integer | No | Maximum number of records to return per page. Default: 20. Minimum: 1. Maximum: 100. |
sort | query | string | No | Sort by one allowed field. Use exactly one of sort[asc] or sort[desc]. Allowed fields: amount, createdAt, currency, updatedAt, product.code, product.id, product.name, product.status. Default: createdAt DESC. Allowed values: amount, createdAt, currency, updatedAt, product.code, product.id, product.name, product.status. |
relation | query | string | No | Comma-separated relation aliases to include. Allowed aliases: product. Unknown aliases return 400. |
amount | query | number | No | Base price in major currency units. Equality filter. Pass without operator for exact match or pass any of the following operators: [gt] [gte] [lt] [lte]. |
createdAt | query | string (date-time) | No | Price creation timestamp. Equality filter. Pass without operator for exact match or pass any of the following operators: [gt] [gte] [lt] [lte]. |
currency | query | string | No | ISO-4217 price currency. Equality filter. Pass without operator for exact match or pass any of the following operators: [in]. [in] accepts comma-separated values; blank entries return 400. |
id | query | string (uuid) | No | Stable Flopay product-price identifier. Equality filter. Pass without operator for exact match or pass any of the following operators: [in]. [in] accepts comma-separated values; blank entries return 400. |
productId | query | string (uuid) | No | Stable Flopay identifier of the owning product. Equality filter. Pass without operator for exact match or pass any of the following operators: [in]. [in] accepts comma-separated values; blank entries return 400. |
status | query | string | No | Catalog lifecycle state. Equality filter. Pass without operator for exact match or pass any of the following operators: [in]. [in] accepts comma-separated values; blank entries return 400. Allowed values: active, inactive. |
updatedAt | query | string (date-time) | No | Price update timestamp. Equality filter. Pass without operator for exact match or pass any of the following operators: [gt] [gte] [lt] [lte]. |
variantId | query | string (uuid) | No | Stable Flopay identifier of the optional product variant. Equality filter. Pass without operator for exact match or pass any of the following operators: [in]. [in] accepts comma-separated values; blank entries return 400. |
Result
Returns 200 with a JSON body. A tenant-scoped, paginated inventory of stable product-price records.
| Field | Type | Required | Description |
|---|---|---|---|
data | array of object | Yes | |
data[].amount | number | Yes | Base price in major units. Always 0 for a metered price, which is charged unitPrice per unit of usage. |
data[].createdAt | string (date-time) | Yes | |
data[].currency | string | Yes | ISO-4217 currency code. |
data[].effectiveAmount | number | Yes | Sale price when the current time is in the sale window, otherwise the base amount. |
data[].id | string | Yes | |
data[].product | object | No | Owning product identity, present when relation=product is requested. |
data[].product.code | string | Yes | |
data[].product.id | string (uuid) | Yes | |
data[].product.name | string | Yes | |
data[].product.status | string | Yes | Allowed values: active, inactive. |
data[].productId | string (uuid) | Yes | Stable Flopay identifier of the owning product. |
data[].rebillAtSaleAmount | boolean | Yes | When false an active sale applies to the first subscription charge only (rebills revert to the full amount); when true the sale price is retained for the subscription lifetime. |
data[].saleAmount | number or null | Yes | Sale price; populated only when sale window is set. |
data[].saleEndsAt | string (date-time) or null | Yes | |
data[].saleStartsAt | string (date-time) or null | Yes | |
data[].status | string | Yes | Inactive prices remain readable but cannot be selected for new purchases. Allowed values: active, inactive. |
data[].unitPrice | string or null | Yes | Exact unit price of a metered price as a decimal string (up to 6 places); null for flat prices. |
data[].updatedAt | string (date-time) | Yes | |
data[].usageType | string | Yes | flat charges amount per charge; metered is a metered item charged unitPrice per unit. Allowed values: flat, metered. |
data[].variantId | string (uuid) or null | Yes | |
limit | number | Yes | |
page | number | Yes | |
pages | number | Yes | |
total | number | Yes |
Errors
| Status | Description |
|---|---|
400 | The sort, filter, relation, or pagination query parameters were invalid. |
401 | A valid client API key or OAuth2 bearer token is required. |
403 | The authenticated principal lacks merchant read access. |
Webhooks tools
Arguments, results, errors, and access, confirmation, and retry policy for each Webhooks tool in FloPay MCP, from the reviewed API contract.
Confirmed actions
How FloPay MCP runs mutating tools, from a preview that changes nothing to explicit confirmation, safe retries, and what to do when an outcome is unclear.