Square · Schema
RefundPaymentRequest
Describes a request to refund a payment using [RefundPayment](api-endpoint:Refunds-RefundPayment).
BookingLocationSquareRestaurantCatalogCheckoutCustomersDisputesE-CommerceFinancial TechnologyGift CardsInventoryInvoicingLaborLoyaltyMerchantsOrderPaymentsPoint-of-SaleRefundsRetailSubscriptionTeamWebhookPayment ProcessingPayment Terminals
Properties
| Name | Type | Description |
|---|---|---|
| idempotency_key | string | A unique string that identifies this `RefundPayment` request. The key can be any valid string but must be unique for every `RefundPayment` request. Keys are limited to a max of 45 characters - however |
| amount_money | object | The amount of money to refund. This amount cannot be more than the `total_money` value of the payment minus the total amount of all previously completed refunds for this payment. This amount must be s |
| app_fee_money | object | The amount of money the developer contributes to help cover the refunded amount. This amount is specified in the smallest denomination of the applicable currency (for example, US dollar amounts are sp |
| payment_id | stringnull | The unique ID of the payment being refunded. Required when unlinked=false, otherwise must not be set. |
| destination_id | stringnull | The ID indicating where funds will be refunded to. Required for unlinked refunds. For more information, see [Process an Unlinked Refund](https://developer.squareup.com/docs/refunds-api/unlinked-refund |
| unlinked | booleannull | Indicates that the refund is not linked to a Square payment. If set to true, `destination_id` and `location_id` must be supplied while `payment_id` must not be provided. |
| location_id | stringnull | The location ID associated with the unlinked refund. Required for requests specifying `unlinked=true`. Otherwise, if included when `unlinked=false`, will throw an error. |
| customer_id | stringnull | The [Customer](entity:Customer) ID of the customer associated with the refund. This is required if the `destination_id` refers to a card on file created using the Cards API. Only allowed when `unlinke |
| reason | stringnull | A description of the reason for the refund. |
| payment_version_token | stringnull | Used for optimistic concurrency. This opaque token identifies the current `Payment` version that the caller expects. If the server has a different version of the Payment, the update fails and a respon |
| team_member_id | stringnull | An optional [TeamMember](entity:TeamMember) ID to associate with this refund. |
| cash_details | object | Additional details required when recording an unlinked cash refund (`destination_id` is CASH). |
| external_details | object | Additional details required when recording an unlinked external refund (`destination_id` is EXTERNAL). |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/square/main/json-schema/square-refund-payment-request-schema.json",
"title": "RefundPaymentRequest",
"description": "Describes a request to refund a payment using [RefundPayment](api-endpoint:Refunds-RefundPayment).",
"x-generated": "2026-10-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/square-refunds-api-openapi.yml#/components/schemas/RefundPaymentRequest",
"type": "object",
"x-release-status": "PUBLIC",
"required": [
"idempotency_key",
"amount_money"
],
"properties": {
"idempotency_key": {
"type": "string",
"description": " A unique string that identifies this `RefundPayment` request. The key can be any valid string\nbut must be unique for every `RefundPayment` request.\n\nKeys are limited to a max of 45 characters - however, the number of allowed characters might be\nless than 45, if multi-byte characters are used.\n\nFor more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).",
"minLength": 1
},
"amount_money": {
"$ref": "#/$defs/Money",
"description": "The amount of money to refund.\n\nThis amount cannot be more than the `total_money` value of the payment minus the total\namount of all previously completed refunds for this payment.\n\nThis amount must be specified in the smallest denomination of the applicable currency\n(for example, US dollar amounts are specified in cents). For more information, see\n[Working with Monetary Amounts](https://developer.squareup.com/docs/build-basics/working-with-monetary-amounts).\n\nThe currency code must match the currency associated with the business\nthat is charging the card."
},
"app_fee_money": {
"$ref": "#/$defs/Money",
"description": "The amount of money the developer contributes to help cover the refunded amount.\nThis amount is specified in the smallest denomination of the applicable currency (for example,\nUS dollar amounts are specified in cents).\n\nThe value cannot be more than the `amount_money`.\n\nYou can specify this parameter in a refund request only if the same parameter was also included\nwhen taking the payment. This is part of the application fee scenario the API supports. For more\ninformation, see [Take Payments and Collect Fees](https://developer.squareup.com/docs/payments-api/take-payments-and-collect-fees).\n\nTo set this field, `PAYMENTS_WRITE_ADDITIONAL_RECIPIENTS` OAuth permission is required.\nFor more information, see [Permissions](https://developer.squareup.com/docs/payments-api/take-payments-and-collect-fees#permissions).",
"x-release-status": "BETA"
},
"payment_id": {
"type": [
"string",
"null"
],
"description": "The unique ID of the payment being refunded.\nRequired when unlinked=false, otherwise must not be set."
},
"destination_id": {
"type": [
"string",
"null"
],
"description": "The ID indicating where funds will be refunded to. Required for unlinked refunds. For more\ninformation, see [Process an Unlinked Refund](https://developer.squareup.com/docs/refunds-api/unlinked-refunds).\n\nFor refunds linked to Square payments, `destination_id` is usually omitted; in this case, funds\nwill be returned to the original payment source. The field may be specified in order to request\na cross-method refund to a gift card. For more information,\nsee [Cross-method refunds to gift cards](https://developer.squareup.com/docs/payments-api/refund-payments#cross-method-refunds-to-gift-cards)."
},
"unlinked": {
"type": [
"boolean",
"null"
],
"description": "Indicates that the refund is not linked to a Square payment.\nIf set to true, `destination_id` and `location_id` must be supplied while `payment_id` must not\nbe provided."
},
"location_id": {
"type": [
"string",
"null"
],
"description": "The location ID associated with the unlinked refund.\nRequired for requests specifying `unlinked=true`.\nOtherwise, if included when `unlinked=false`, will throw an error.",
"maxLength": 50
},
"customer_id": {
"type": [
"string",
"null"
],
"description": "The [Customer](entity:Customer) ID of the customer associated with the refund.\nThis is required if the `destination_id` refers to a card on file created using the Cards\nAPI. Only allowed when `unlinked=true`."
},
"reason": {
"type": [
"string",
"null"
],
"description": "A description of the reason for the refund.",
"maxLength": 192
},
"payment_version_token": {
"type": [
"string",
"null"
],
"description": " Used for optimistic concurrency. This opaque token identifies the current `Payment`\nversion that the caller expects. If the server has a different version of the Payment,\nthe update fails and a response with a VERSION_MISMATCH error is returned.\nIf the versions match, or the field is not provided, the refund proceeds as normal.",
"x-release-status": "BETA"
},
"team_member_id": {
"type": [
"string",
"null"
],
"description": "An optional [TeamMember](entity:TeamMember) ID to associate with this refund.",
"maxLength": 192
},
"cash_details": {
"$ref": "#/$defs/DestinationDetailsCashRefundDetails",
"description": "Additional details required when recording an unlinked cash refund (`destination_id` is CASH)."
},
"external_details": {
"$ref": "#/$defs/DestinationDetailsExternalRefundDetails",
"description": "Additional details required when recording an unlinked external refund\n(`destination_id` is EXTERNAL)."
}
},
"$defs": {
"Currency": {
"type": "string",
"enum": [
"UNKNOWN_CURRENCY",
"AED",
"AFN",
"ALL",
"AMD",
"ANG",
"AOA",
"ARS",
"AUD",
"AWG",
"AZN",
"BAM",
"BBD",
"BDT",
"BGN",
"BHD",
"BIF",
"BMD",
"BND",
"BOB",
"BOV",
"BRL",
"BSD",
"BTN",
"BWP",
"BYR",
"BZD",
"CAD",
"CDF",
"CHE",
"CHF",
"CHW",
"CLF",
"CLP",
"CNY",
"COP",
"COU",
"CRC",
"CUC",
"CUP",
"CVE",
"CZK",
"DJF",
"DKK",
"DOP",
"DZD",
"EGP",
"ERN",
"ETB",
"EUR",
"FJD",
"FKP",
"GBP",
"GEL",
"GHS",
"GIP",
"GMD",
"GNF",
"GTQ",
"GYD",
"HKD",
"HNL",
"HRK",
"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",
"LTL",
"LVL",
"LYD",
"MAD",
"MDL",
"MGA",
"MKD",
"MMK",
"MNT",
"MOP",
"MRO",
"MUR",
"MVR",
"MWK",
"MXN",
"MXV",
"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",
"SLL",
"SLE",
"SOS",
"SRD",
"SSP",
"STD",
"SVC",
"SYP",
"SZL",
"THB",
"TJS",
"TMT",
"TND",
"TOP",
"TRY",
"TTD",
"TWD",
"TZS",
"UAH",
"UGX",
"USD",
"USN",
"USS",
"UYI",
"UYU",
"UZS",
"VEF",
"VND",
"VUV",
"WST",
"XAF",
"XAG",
"XAU",
"XBA",
"XBB",
"XBC",
"XBD",
"XCD",
"XDR",
"XOF",
"XPD",
"XPF",
"XPT",
"XTS",
"XXX",
"YER",
"ZAR",
"ZMK",
"ZMW",
"BTC",
"XUS"
],
"x-enum-elements": [
{
"name": "UNKNOWN_CURRENCY",
"description": "Unknown currency"
},
{
"name": "AED",
"description": "United Arab Emirates dirham"
},
{
"name": "AFN",
"description": "Afghan afghani"
},
{
"name": "ALL",
"description": "Albanian lek"
},
{
"name": "AMD",
"description": "Armenian dram"
},
{
"name": "ANG",
"description": "Netherlands Antillean guilder"
},
{
"name": "AOA",
"description": "Angolan kwanza"
},
{
"name": "ARS",
"description": "Argentine peso"
},
{
"name": "AUD",
"description": "Australian dollar"
},
{
"name": "AWG",
"description": "Aruban florin"
},
{
"name": "AZN",
"description": "Azerbaijani manat"
},
{
"name": "BAM",
"description": "Bosnia and Herzegovina convertible mark"
},
{
"name": "BBD",
"description": "Barbados dollar"
},
{
"name": "BDT",
"description": "Bangladeshi taka"
},
{
"name": "BGN",
"description": "Bulgarian lev"
},
{
"name": "BHD",
"description": "Bahraini dinar"
},
{
"name": "BIF",
"description": "Burundian franc"
},
{
"name": "BMD",
"description": "Bermudian dollar"
},
{
"name": "BND",
"description": "Brunei dollar"
},
{
"name": "BOB",
"description": "Boliviano"
},
{
"name": "BOV",
"description": "Bolivian Mvdol"
},
{
"name": "BRL",
"description": "Brazilian real"
},
{
"name": "BSD",
"description": "Bahamian dollar"
},
{
"name": "BTN",
"description": "Bhutanese ngultrum"
},
{
"name": "BWP",
"description": "Botswana pula"
},
{
"name": "BYR",
"description": "Belarusian ruble"
},
{
"name": "BZD",
"description": "Belize dollar"
},
{
"name": "CAD",
"description": "Canadian dollar"
},
{
"name": "CDF",
"description": "Congolese franc"
},
{
"name": "CHE",
"description": "WIR Euro"
},
{
"name": "CHF",
"description": "Swiss franc"
},
{
"name": "CHW",
"description": "WIR Franc"
},
{
"name": "CLF",
"description": "Unidad de Fomento"
},
{
"name": "CLP",
"description": "Chilean peso"
},
{
"name": "CNY",
"description": "Chinese yuan"
},
{
"name": "COP",
"description": "Colombian peso"
},
{
"name": "COU",
"description": "Unidad de Valor Real"
},
{
"name": "CRC",
"description": "Costa Rican colon"
},
{
"name": "CUC",
"description": "Cuban convertible peso"
},
{
"name": "CUP",
"description": "Cuban peso"
},
{
"name": "CVE",
"description": "Cape Verdean escudo"
},
{
"name": "CZK",
"description": "Czech koruna"
},
{
"name": "DJF",
"description": "Djiboutian franc"
},
{
"name": "DKK",
"description": "Danish krone"
},
{
"name": "DOP",
"description": "Dominican peso"
},
{
"name": "DZD",
"description": "Algerian dinar"
},
{
"name": "EGP",
"description": "Egyptian pound"
},
{
"name": "ERN",
"description": "Eritrean nakfa"
},
{
"name": "ETB",
"description": "Ethiopian birr"
},
{
"name": "EUR",
"description": "Euro"
},
{
"name": "FJD",
"description": "Fiji dollar"
},
{
"name": "FKP",
"description": "Falkland Islands pound"
},
{
"name": "GBP",
"description": "Pound sterling"
},
{
"name": "GEL",
"description": "Georgian lari"
},
{
"name": "GHS",
"description": "Ghanaian cedi"
},
{
"name": "GIP",
"description": "Gibraltar pound"
},
{
"name": "GMD",
"description": "Gambian dalasi"
},
{
"name": "GNF",
"description": "Guinean franc"
},
{
"name": "GTQ",
"description": "Guatemalan quetzal"
},
{
"name": "GYD",
"description": "Guyanese dollar"
},
{
"name": "HKD",
"description": "Hong Kong dollar"
},
{
"name": "HNL",
"description": "Honduran lempira"
},
{
"name": "HRK",
"description": "Croatian kuna"
},
{
"name": "HTG",
"description": "Haitian gourde"
},
{
"name": "HUF",
"description": "Hungarian forint"
},
{
"name": "IDR",
"description": "Indonesian rupiah"
},
{
"name": "ILS",
"description": "Israeli new shekel"
},
{
"name": "INR",
"description": "Indian rupee"
},
{
"name": "IQD",
"description": "Iraqi dinar"
},
{
"name": "IRR",
"description": "Iranian rial"
},
{
"name": "ISK",
"description": "Icelandic króna"
},
{
"name": "JMD",
"description": "Jamaican dollar"
},
{
"name": "JOD",
"description": "Jordanian dinar"
},
{
"name": "JPY",
"description": "Japanese yen"
},
{
"name": "KES",
"description": "Kenyan shilling"
},
{
"name": "KGS",
"description": "Kyrgyzstani som"
},
{
"name": "KHR",
"description": "Cambodian riel"
},
{
"name": "KMF",
"description": "Comoro franc"
},
{
"name": "KPW",
"description": "North Korean won"
},
{
"name": "KRW",
"description": "South Korean won"
},
{
"name": "KWD",
"description": "Kuwaiti dinar"
},
{
"name": "KYD",
"description": "Cayman Islands dollar"
},
{
"name": "KZT",
"description": "Kazakhstani tenge"
},
{
"name": "LAK",
"description": "Lao kip"
},
{
"name": "LBP",
"description": "Lebanese pound"
},
{
"name": "LKR",
"description": "Sri Lankan rupee"
},
{
"name": "LRD",
"description": "Liberian dollar"
},
{
"name": "LSL",
"description": "Lesotho loti"
},
{
"name": "LTL",
"description": "Lithuanian litas"
},
{
"name": "LVL",
"description": "Latvian lats"
},
{
"name": "LYD",
"description": "Libyan dinar"
},
{
"name": "MAD",
"description": "Moroccan dirham"
},
{
"name": "MDL",
"description": "Moldovan leu"
},
{
"name": "MGA",
"description": "Malagasy ariary"
},
{
"name": "MKD",
"description": "Macedonian denar"
},
{
"name": "MMK",
"description": "Myanmar kyat"
},
{
"name": "MNT",
"description": "Mongolian tögrög"
},
{
"name": "MOP",
"description": "Macanese pataca"
},
{
"name": "MRO",
"description": "Mauritanian ouguiya"
},
{
"name": "MUR",
"description": "Mauritian rupee"
},
{
"name": "MVR",
"description": "Maldivian rufiyaa"
},
{
"name": "MWK",
"description": "Malawian kwacha"
},
{
"name": "MXN",
"description": "Mexican peso"
},
{
"name": "MXV",
"description": "Mexican Unidad de Inversion"
},
{
"name": "MYR",
"description": "Malaysian ringgit"
},
{
"name": "MZN",
"description": "Mozambican metical"
},
{
"name": "NAD",
"description": "Namibian dollar"
},
{
"name": "NGN",
"description": "Nigerian naira"
},
{
"name": "NIO",
"description": "Nicaraguan córdoba"
},
{
"name": "NOK",
"description": "Norwegian krone"
},
{
"name": "NPR",
"description": "Nepalese rupee"
},
{
"name": "NZD",
"description": "New Zealand dollar"
},
{
"name": "OMR",
"description": "Omani rial"
},
{
"name": "PAB",
"description": "Panamanian balboa"
},
{
"name": "PEN",
"description": "Peruvian sol"
},
{
"name": "PGK",
"description": "Papua New Guinean kina"
},
{
"name": "PHP",
"description": "Philippine peso"
},
{
"name": "PKR",
"description": "Pakistani rupee"
},
{
"name": "PLN",
"description": "Polish zBoty"
},
{
"name": "PYG",
"description": "Paraguayan guaraní"
},
{
"name": "QAR",
"description": "Qatari riyal"
},
{
"name": "RON",
"description": "Romanian leu"
},
{
"name": "RSD",
"description": "Serbian dinar"
},
{
"name": "RUB",
"description": "Russian ruble"
},
{
"name": "RWF",
"description": "Rwandan franc"
},
{
"name": "SAR",
"description": "Saudi riyal"
},
{
"name": "SBD",
"description": "Solomon Islands dollar"
},
{
"name": "SCR",
"description": "Seychelles rupee"
},
{
"name": "SDG",
"description": "Sudanese pound"
},
{
"name": "SEK",
"description": "Swedish krona"
},
{
"name": "SGD",
"description": "Singapore dollar"
},
{
"name": "SHP",
"description": "Saint Helena pound"
},
{
"name": "SLL",
"description": "Sierra Leonean first leone"
},
{
"name": "SLE",
"description": "Sierra Leonean second leone"
},
{
"name": "SOS",
"description": "Somali shilling"
},
{
"name": "SRD",
"description": "Surinamese dollar"
},
{
"name": "SSP",
"description": "South Sudanese pound"
},
{
"name": "STD",
"description": "São Tomé and Príncipe dobra"
},
{
"name": "SVC",
"description": "Salvadoran colón"
},
{
"name": "SYP",
"description": "Syrian pound"
},
{
"name": "SZL",
"description": "Swazi lilangeni"
},
{
"name": "THB",
"description": "Thai baht"
},
{
"name": "TJS",
"description": "Tajikstani somoni"
},
{
"name": "TMT",
"description": "Turkmenistan manat"
},
{
"name": "TND",
"description": "Tunisian dinar"
},
{
"name": "TOP",
"description": "Tongan pa'anga"
},
{
"name": "TRY",
"description": "Turkish lira"
},
{
"name": "TTD",
"description": "Trinidad and Tobago dollar"
},
{
"name": "TWD",
"description": "New Taiwan dollar"
},
{
"name": "TZS",
"description": "Tanzanian shilling"
},
{
"name": "UAH",
"description": "Ukrainian hryvnia"
},
{
"name": "UGX",
"description": "Ugandan shilling"
},
{
"name": "USD",
"description": "United States dollar"
},
{
"name": "USN",
"description": "United States dollar (next day)"
},
{
"name": "USS",
"description": "United States dollar (same day)"
},
{
"name": "UYI",
"description": "Uruguay Peso en Unidedades Indexadas"
},
{
"name": "UYU",
"description": "Uruguyan peso"
},
{
"name": "UZS",
"description": "Uzbekistan som"
},
{
"name": "VEF",
"description": "Venezuelan bolívar soberano"
},
{
"name": "VND",
"description": "Vietnamese ’Óng"
},
{
"name": "VUV",
"description": "Vanuatu vatu"
},
{
"name": "WST",
"description": "Samoan tala"
},
{
"name": "XAF",
"description": "CFA franc BEAC"
},
{
"name": "XAG",
"description": "Silver"
},
{
"name": "XAU",
"description": "Gold"
},
{
"name": "XBA",
"description": "European Composite Unit"
},
{
"name": "XBB",
"description": "European Monetary Unit"
},
{
"name": "XBC",
"description": "European Unit of Account 9"
},
{
"name": "XBD",
"description": "European Unit of Account 17"
},
{
"name": "XCD",
"description": "East Caribbean dollar"
},
{
"name": "XDR",
"description": "Special drawing rights (International Monetary Fund)"
},
{
"name": "XOF",
"description": "CFA franc BCEAO"
},
{
"name": "XPD",
"description": "Palladium"
},
{
"name": "XPF",
"description": "CFP franc"
},
{
"name": "XPT",
"description": "Platinum"
},
{
"name": "XTS",
"description": "Code reserved for testing"
},
{
"name": "XXX",
"description": "No currency"
},
{
"name": "YER",
"description": "Yemeni rial"
},
{
"name": "ZAR",
"description": "South African rand"
},
{
"name": "ZMK",
"description": "Zambian kwacha"
},
{
"name": "ZMW",
"description": "Zambian kwacha"
},
{
"name": "BTC",
"description": "Bitcoin"
},
{
"name": "XUS",
"description": "USD Coin"
}
],
"description": "Indicates the associated currency for an amount of money. Values correspond\nto [ISO 4217](https://wikipedia.org/wiki/ISO_4217).",
"x-release-status": "PUBLIC"
},
"DestinationDetailsCashRefundDetails": {
"type": "object",
"description": "Stores details about a cash refund. Contains only non-confidential information.",
"x-release-status": "PUBLIC",
"required": [
"seller_supplied_money"
],
"properties": {
"seller_supplied_money": {
"$ref": "#/$defs/Money",
"description": "The amount and currency of the money supplied by the seller."
},
"change_back_money": {
"$ref": "#/$defs/Money",
"description": "The amount of change due back to the seller.\nThis read-only field is calculated\nfrom the `amount_money` and `seller_supplied_money` fields."
}
}
},
"DestinationDetailsExternalRefundDetails": {
"type": "object",
"description": "Stores details about an external refund. Contains only non-confidential information.",
"x-release-status": "PUBLIC",
"required": [
"type",
"source"
],
"properties": {
"type": {
"type": "string",
"description": "The type of external refund the seller paid to the buyer. It can be one of the\nfollowing:\n- CHECK - Refunded using a physical check.\n- BANK_TRANSFER - Refunded using external bank transfer.\n- OTHER\\_GIFT\\_CARD - Refunded using a non-Square gift card.\n- CRYPTO - Refunded using a crypto currency.\n- SQUARE_CASH - Refunded using Square Cash App.\n- SOCIAL - Refunded using peer-to-peer payment applications.\n- EXTERNAL - A third-party application gathered this refund outside of Square.\n- EMONEY - Refunded using an E-money provider.\n- CARD - A credit or debit card that Square does not support.\n- STORED_BALANCE - Use for house accounts, store credit, and so forth.\n- FOOD_VOUCHER - Restaurant voucher provided by employers to employees to pay for meals\n- OTHER - A type not listed here.",
"maxLength": 50
},
"source": {
"type": "string",
"description": "A description of the external refund source. For example,\n\"Food Delivery Service\".",
"maxLength": 255
},
"source_id": {
"type": [
"string",
"null"
],
"description": "An ID to associate the refund to its originating source.",
"maxLength": 255
}
}
},
"Money": {
"type": "object",
"description": "Represents an amount of money. `Money` fields can be signed or unsigned.\nFields that do not explicitly define whether they are signed or unsigned are\nconsidered unsigned and can only hold positive amounts. For signed fields, the\nsign of the value indicates the purpose of the money transfer. See\n[Working with Monetary Amounts](https://developer.squareup.com/docs/build-basics/working-with-monetary-amounts)\nfor more information.",
"x-release-status": "PUBLIC",
"properties": {
"amount": {
"type": [
"integer",
"null"
],
"description": "The amount of money, in the smallest denomination of the currency\nindicated by `currency`. For example, when `currency` is `USD`, `amount` is\nin cents. Monetary amounts can be positive or negative. See the specific\nfield description to determine the meaning of the sign in a particular case.",
"format": "int64"
},
"currency": {
"$ref": "#/$defs/Currency",
"description": "The type of currency, in __ISO 4217 format__. For example, the currency\ncode for US dollars is `USD`.\n\nSee [Currency](entity:Currency) for possible values.\nSee [Currency](#type-currency) for possible values"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/square-refund-payment-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.