{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml","oas-api/index.yaml":"oas-api/index.yaml"},"props":{"metadata":{"markdoc":{"tagList":["tabs","tab","openapi-code-sample","json-schema","code-snippet","admonition"]},"type":"markdown"},"seo":{"title":"Refunding with the API","description":"Issue full or partial refunds programmatically using the Finix API.","siteUrl":"https://docs.finix.com/","llmstxt":{"hide":false,"sections":[{"title":"Getting Started","includeFiles":["guides/getting-started/**/*.md"],"excludeFiles":[]},{"title":"Online Payments","includeFiles":["guides/online-payments/**/*.md"],"excludeFiles":["guides/online-payments/payment-features/fsa-hsa-non-healthcare-mcc.md"]},{"title":"In-Person Payments","includeFiles":["guides/in-person-payments/**/*.md"],"excludeFiles":[]},{"title":"Subscriptions","includeFiles":["guides/subscriptions/**/*.md"],"excludeFiles":[]},{"title":"After the Payment","includeFiles":["guides/subscriptions/after-the-payment/**/*.md"],"excludeFiles":[]},{"title":"Managing Operations","includeFiles":["guides/managing-operations/**/*.md"],"excludeFiles":[]},{"title":"Platform Payments","includeFiles":["guides/platform-payments/**/*.md"],"excludeFiles":[]},{"title":"Payouts","includeFiles":["guides/payouts/**/*.md"],"excludeFiles":[]},{"title":"Developers","includeFiles":["additional-resources/developers/**/*.md"],"excludeFiles":[]},{"title":"Plugins","includeFiles":["additional-resources/plugins/**/*.md"],"excludeFiles":[]},{"title":"Industry Considerations","includeFiles":["guides/industry-considerations/**/*.md"],"excludeFiles":[]},{"title":"Regional Considerations","includeFiles":["guides/regional-considerations/**/*.md"],"excludeFiles":[]}],"excludeFiles":[]},"image":"/assets/guides-after-the-payment-refunds-api.2ac1095a7db6e8f625b2de77b817efc70d5a72558e9526da00cb1dfcde649538.04fe652d.png"},"dynamicMarkdocComponents":["openapi"],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"refunding-with-the-api","__idx":0},"children":["Refunding with the API"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can refund transactions processed with Finix programmatically using the Finix API instead of a user interface. The API supports refunds for both online and in-person payments."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"refunding-online-payments","__idx":1},"children":["Refunding Online Payments"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To refund a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," via API, ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/api/transfers/createtransferreversal"},"children":["create a reversal Transfer"]},". Pass the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," query parameter set to the original ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," you want to refund."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Include an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["amount"]}," equal to or less than the payment to refund. Enter a value less than the payment amount for a partial refund."]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"oas-api/index.yaml","operationId":"createTransferReversal","exampleKey":"Refund Transfer","parameters":{},"environments":{}},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/requestBodies/transfers/createTransferReversal.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/createTransferReversal"},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"createTransferOptionalFields":{"type":"object","properties":{"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"tags":{"$ref":"#/components/schemas/tags"}}},"createTransferReversal":{"title":"Refund Transfer","allOf":[{"type":"object","properties":{"refund_amount":{"type":"integer","description":"The amount of the refund in cents. It must be equal to or less than the amount of the original `Transfer`."}},"required":["refund_amount"]},{"$ref":"#/components/schemas/createTransferOptionalFields"}]}}}},"schemaResolvedErrors":[]},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A successful request returns a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201 Created"]}," status code, with the response body containing:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["parent_transfer"]}," representing the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," that was reversed."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["state"]},":",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Initially set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PENDING"]}," to indicate that the refund is still processing."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Changes to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SUCCEEDED"]}," when the refund is processed."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}," set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["REVERSAL"]},"."]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"file":"../../../api/components/examples/transfers/responses/json/createTransferReversal.jsonc","language":"json","title":"Transfer - Reversal","header":{"title":"Transfer - Reversal","controls":{"copy":{}}},"lang":"json","source":"{\n  \"id\": \"TRi87Kgx6NdZFXkQtLXQ9NMJ\",\n  \"created_at\": \"2025-08-05T17:22:50.40Z\",\n  \"updated_at\": \"2025-08-05T17:22:50.44Z\",\n  \"additional_buyer_charges\": null,\n  \"additional_healthcare_data\": null,\n  \"additional_purchase_data\": null,\n  \"address_verification\": null,\n  \"amount\": 50,\n  \"amount_requested\": 50,\n  \"application\": \"APc9vhYcPsRuTSpKD9KpMtPe\",\n  \"currency\": \"USD\",\n  \"destination\": \"PImXAVgkKVshKWWHUk4xXbve\",\n  \"externally_funded\": \"UNKNOWN\",\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"fee\": 0,\n  \"fee_profile\": \"FPmtT4MYmiAs1qjLjneQmk4d\",\n  \"idempotency_id\": null,\n  \"merchant\": \"MUcgYZswyRfqSSbvMsxuaHxZ\",\n  \"merchant_identity\": \"IDgCoio3FfaMSKPNM35atXPU\",\n  \"messages\": [],\n  \"operation_key\": \"CARD_NOT_PRESENT_REFUND\",\n  \"parent_transfer\": \"TRjAnCNNSxDCW8GDsxYobHHe\", // [!code highlight]\n  \"parent_transfer_trace_id\": null,\n  \"raw\": null,\n  \"ready_to_settle_at\": null,\n  \"receipt_last_printed_at\": null,\n  \"security_code_verification\": null,\n  \"source\": null,\n  \"split_transfers\": [],\n  \"state\": \"PENDING\", // [!code highlight]\n  \"statement_descriptor\": \"FLX*FINIX FLOWERS\",\n  \"subtype\": \"API\",\n  \"supplemental_fee\": null,\n  \"tags\": {\n    \"test\": \"Refund\"\n  },\n  \"tip_amount\": null,\n  \"trace_id\": \"d1cb23da-3368-473d-bf8e-68d8e093839b\",\n  \"type\": \"REVERSAL\", // [!code highlight]\n  \"_links\": {\n    \"application\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/applications/APc9vhYcPsRuTSpKD9KpMtPe\"\n    },\n    \"self\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRi87Kgx6NdZFXkQtLXQ9NMJ\"\n    },\n    \"parent\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRjAnCNNSxDCW8GDsxYobHHe\"\n    },\n    \"destination\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/payment_instruments/PImXAVgkKVshKWWHUk4xXbve\"\n    },\n    \"merchant_identity\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/identities/IDgCoio3FfaMSKPNM35atXPU\"\n    },\n    \"payment_instruments\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRi87Kgx6NdZFXkQtLXQ9NMJ/payment_instruments\"\n    },\n    \"fee_profile\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/fee_profiles/FPmtT4MYmiAs1qjLjneQmk4d\"\n    }\n  }\n}\n"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/resources/transfers/transfer.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/transfer"},"id":{"type":"string","minLength":1,"description":"The ID of the resource."},"created_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was created."},"updated_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was last updated."},"additional_buyer_charges":{"type":"object","description":"Additional charges will be incurred by the buyer.\n\nThe following rules apply:\n\n- The `Merchant` must be enabled to charge these surcharges by setting the appropriate flags for each applicable surcharge to `true` using the PUT `/merchants` endpoint.\n- Only _one_ of the following charges can be applied during creation.\n","nullable":true,"properties":{"convenience_amount":{"type":"integer","description":"A convenience fee to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"rent_surcharge_amount":{"type":"integer","description":"A rent surcharge to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"surcharge_amount":{"type":"integer","description":"A surcharge amount to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true}}},"additional_healthcare_data":{"type":"object","nullable":true,"properties":{"clinic_amount":{"type":"integer","description":"A clinic or other qualified medical amount for the transaction.","nullable":true},"dental_amount":{"type":"integer","description":"The dental amount for the transaction.","nullable":true},"prescription_amount":{"type":"integer","description":"The prescription/RX amount for the transaction.","nullable":true},"vision_amount":{"type":"integer","description":"The vision/optical amount for the transaction.","nullable":true}}},"additional_purchase_data":{"type":"object","description":"Additional information about the purchase used for [Level 2 and Level 3 Processing](/guides/online-payments/payment-features/level-2-level-3-processing). Please note that Visa is ending its Level 2 offering in April 2026.","nullable":true,"properties":{"customer_reference_number":{"type":"string","description":"The customer reference for the purchase (max 17 characters). For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing.","maxLength":17},"customs_duty_amount":{"type":"integer","description":"The duty in cents on the total purchase amount for the order."},"destination_country_code":{"type":"string","description":"The ISO country code of the order destination."},"destination_postal_code":{"type":"string","description":"The postal code of the order destination (10 characters).","maxLength":10},"discount_amount":{"type":"integer","description":"The amount in cents of the discount for the order. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"invoice_reference_number":{"type":"string","description":"The order's invoice number (max 15 characters).","maxLength":15},"order_date":{"type":"object","properties":{"day":{"type":"integer","description":"Day of purchase (between 1 and 31)."},"month":{"type":"integer","description":"Month of purchase (between 1 and 12)."},"year":{"type":"integer","description":"Year of purchase (4-digit).","minimum":1990}}},"sales_tax":{"type":"integer","description":"- Total aggregate tax amount in cents for the entire purchase. Field is automatically calculated if you pass in the itemized tax amounts.\n- For non-taxable transactions either set `sales_tax` to 0 or omit from payload and also set `tax_exempt` to **True**.\n- Request must align so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`.\n- For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing."},"sales_tax_finix_generated":{"type":"integer","description":"The sales tax amount in cents Finix calculated from the `item_data` line items.","nullable":true},"ship_from_postal_code":{"type":"string","description":"The postal code from where order is shipped (10 characters).","maxLength":10},"shipping_amount":{"type":"integer","description":"The shipping cost in cents for the order.\n"},"tax_exempt":{"type":"boolean","description":"- For tax exempt purchases set to **True**.\n- If set to **True**, request can't include `sales_tax`."},"item_data":{"type":"array","description":"Additional information about the transaction. Used for Level 2 and Level 3 Processing.","items":{"type":"object","properties":{"amount_excluding_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, excluding tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"amount_including_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, including tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"commodity_code":{"type":"string","description":"A commodity code is a numeric code representing a particular product or service as defined by the National Institute of Governmental Purchasing. The code can be 3, 5, 7, or 11 digits in length. The longer the code the more granular the description of the product/service. (max 12 characters).","maxLength":12},"cost_per_unit":{"type":"integer","description":"The price in cents, excluding tax, of one unit of the item purchased."},"item_description":{"type":"string","description":"Required when `item_data` is supplied (max 25 characters).","maxLength":25},"item_discount_amount":{"type":"integer","description":"The item discount amount in cents. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"merchant_product_code":{"type":"string","description":"Merchant defined product code (max 12 characters).","maxLength":12},"quantity":{"type":"number","format":"decimal","description":"The number of items purchased. Must be greater than 0.","minimum":1,"maximum":99},"unit_of_measure":{"type":"string","description":"The unit of measure of the purchased item (max 3 characters).","maxLength":3}}}}}},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"currency":{"type":"string","description":"ISO 4217 3-letter currency code.","enum":["CAD","USD"]},"transfersAuthorizationsCreatedVia":{"type":"string","description":"Gives more information about the product flow that was used to create the resource. Finix retains the right to add additional enums for this field without it being a breaking change.","default":"UNKNOWN","enum":["CARD_PRESENT_SEMI_INTEGRATED_API","CARD_PRESENT_STANDALONE","CARD_PRESENT_STANDALONE_MANUAL_ENTRY","CARD_PRESENT_IOS_APP","CARD_PRESENT_IOS_APP_MANUAL_ENTRY","CARD_PRESENT_IOS_D135_SDK","CARD_PRESENT_ANDROID_APP","CARD_PRESENT_ANDROID_APP_MANUAL_ENTRY","CARD_PRESENT_ANDROID_D135_SDK","CHECKOUT_FORM","CYBERSOURCE","PAYMENT_LINK","PAYOUT_LINK","SUBSCRIPTION","UNKNOWN","VIRTUAL_TERMINAL"]},"failure_code":{"type":"string","description":"The code of the failure so the decline can be handled programmatically. For more info on how to handle the failure, see [Failure Codes](/additional-resources/developers/implementation-and-testing/failure-codes).","nullable":true},"failure_message":{"type":"string","description":"A human-readable description of why the transaction was declined. This will also include a suggestion on how to complete the payment.","nullable":true},"fee_transfer":{"type":"integer","format":"int64","description":"The minimum amount of the `Transfer` you'd like to collect as your fee in cents. Defaults to zero (must be less than or equal to the `amount`).\n- If the fees applied by the 'Fee Profile' are ***higher*** than the value passed in 'fee', 'fee' will not be applied and have no effect.\n- If the fees applied by the 'Fee Profile' are ***lower*** than the value passed in 'fee', an additional fee is be applied, in addition to the fees generated by the `Fee Profile`.\n    - The additional fee is equal to the difference between the value passed in 'fee' and the fees generated by the `Fee Profile`."},"funds_flow_type":{"type":"string","description":"The type of disbursement to perform. Defaults to `GENERAL_PAYOUT`.\n","enum":["GENERAL_PAYOUT","ME_TO_ME","GOVERNMENT"],"nullable":true},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"country":{"type":"string","enum":["ABW","AFG","AGO","AIA","ALA","ALB","AND","ARE","ARG","ARM","ASM","ATA","ATF","ATG","AUS","AUT","AZE","BDI","BEL","BEN","BES","BFA","BGD","BGR","BHR","BHS","BIH","BLM","BLR","BLZ","BMU","BOL","BRA","BRB","BRN","BTN","BVT","BWA","CAF","CAN","CCK","CHE","CHL","CHN","CIV","CMR","COD","COG","COK","COL","COM","CPV","CRI","CUB","CUW","CXR","CYM","CYP","CZE","DEU","DJI","DMA","DNK","DOM","DZA","ECU","EGY","ERI","ESH","ESP","EST","ETH","FIN","FJI","FLK","FRA","FRO","FSM","GAB","GBR","GEO","GGY","GHA","GIB","GIN","GLP","GMB","GNB","GNQ","GRC","GRD","GRL","GTM","GUF","GUM","GUY","HKG","HMD","HND","HRV","HTI","HUN","IDN","IMN","IND","IOT","IRL","IRN","IRQ","ISL","ISR","ITA","JAM","JEY","JOR","JPN","KAZ","KEN","KGZ","KHM","KIR","KNA","KOR","KWT","LAO","LBN","LBR","LBY","LCA","LIE","LKA","LSO","LTU","LUX","LVA","MAC","MAF","MAR","MCO","MDA","MDG","MDV","MEX","MHL","MKD","MLI","MLT","MMR","MNE","MNG","MNP","MRT","MSR","MTQ","MUS","MWI","MYS","MYT","NAM","NCL","NER","NFK","NGA","NIC","NIU","NLD","NOR","NPL","NRU","NZL","OMN","PAK","PAN","PCN","PER","PHL","PLW","PNG","POL","PRI","PRK","PRT","PRY","PSE","PYF","QAT","REU","ROU","RUS","RWA","SAU","SDN","SEN","SGP","SGS","SHN","SJM","SLB","SLE","SLV","SMR","SOM","SPM","SRB","SSD","STP","SUR","SVK","SVN","SWE","SWZ","SXM","SYC","SYR","TCA","TCD","TGO","THA","TJK","TKL","TKM","TLS","TON","TTO","TUN","TUR","TUV","TWN","TZA","UGA","UKR","UMI","URY","USA","UZB","VAT","VCT","VEN","VGB","VIR","VNM","VUT","WLF","WSM","XKX","YEM","ZAF","ZMB","ZWE"],"nullable":true},"address":{"type":"object","properties":{"line1":{"type":"string","minLength":1,"description":"First line of the address (max 35 characters).","nullable":true},"line2":{"type":"string","minLength":1,"description":"Second line of the address (max 35 characters).","nullable":true},"city":{"type":"string","minLength":1,"description":"City (max 20 characters).","nullable":true},"region":{"type":"string","minLength":1,"description":"2-letter State code.","nullable":true},"postal_code":{"type":"string","minLength":1,"description":"Zip or Postal code (max 7 characters).","nullable":true},"country":{"$ref":"#/components/schemas/country"}},"required":["city","country","line1","postal_code","region"]},"ip_address_v4":{"type":"string","description":"The card brands require the customer's IP address for online gaming clients. Only supports Internet Protocol version 4 (IPv4).","example":"192.168.1.1","nullable":true},"ip_address_details":{"type":"object","description":"This field returns `null` for all users except `ROLE_PLATFORM` users.","properties":{"ipv4":{"type":"object","properties":{"estimated_location":{"$ref":"#/components/schemas/address"},"ip":{"$ref":"#/components/schemas/ip_address_v4"},"latitude":{"type":"number","description":"Geo-location based on the IP address."},"longitude":{"type":"number","description":"Geo-location based on the IP address."}}}}},"pull_transfer_id":{"type":"string","description":"The ID of the corresponding pull `Transfer` linked in a `ME_TO_ME` transaction.\n","nullable":true},"statement_descriptor":{"type":"string","maxLength":22,"nullable":true,"description":"The description of the `Merchant` that appears on the buyer's bank or card statement."},"application_link":{"type":"object","description":"Link to the `Application` the request was made under.","properties":{"href":{"type":"string","minLength":1}}},"self":{"type":"object","description":"Link to the resource that was used in the request.","properties":{"href":{"type":"string","minLength":1}}},"transfer":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/id"},"created_at":{"$ref":"#/components/schemas/created_at"},"updated_at":{"$ref":"#/components/schemas/updated_at"},"additional_buyer_charges":{"description":"Details about any [Buyer Charges](../../../../guides/online-payments/payment-features/buyer-charges) included in the `Transfer`. The buyer charges are mutually exclusive.\n","allOf":[{"$ref":"#/components/schemas/additional_buyer_charges"}]},"additional_healthcare_data":{"$ref":"#/components/schemas/additional_healthcare_data"},"additional_purchase_data":{"$ref":"#/components/schemas/additional_purchase_data"},"address_verification":{"type":"string","description":"Details the results of the address verification checks.","nullable":true,"enum":["POSTAL_CODE_AND_STREET_MATCH","STREET_MATCH","POSTAL_CODE_MATCH","NO_ADDRESS","NO_MATCH","NOT_SUPPORTED","UNKNOWN"]},"amount":{"type":"number","format":"double","description":"The total amount that will be debited. The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00).\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`).\n","example":2.393},"amount_requested":{"type":"number","format":"double","description":"Details the `amount` that was requested to get debited from the `source` when the transaction was created.  The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00)\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`)\n","example":2.393},"application":{"type":"string","minLength":1,"description":"ID of the `Application` associated with the resource."},"bank_return_details":{"type":"object","description":"Details about a transfer that was returned and was unable to be processed. Only present when `state` is `RETURNED`","nullable":true,"properties":{"reason_code":{"type":"string","description":"Return response code from the bank."},"reason_message":{"type":"string","description":"Detailed message explaining reason for the return."},"reason_title":{"type":"string","description":"Short message categorizing reason for the return."}}},"card_present_details":{"type":"object","description":"Details needed to process card present transactions.","nullable":true,"properties":{"approval_code":{"type":"string","description":"Unique ID used to identify the approval of the `Transfer`.","nullable":true},"brand":{"type":"string","description":"The brand of the card saved in the `Payment Instrument`.","nullable":true},"emv_data":{"type":"object","description":"Encrypted card data used to process the transaction.","nullable":true,"properties":{"application_identifier":{"type":"string","description":"ID of the application used in the transaction. Tag 9F06 from the EMVCo standard."},"application_label":{"type":"string","description":"EMV application label. Tag 50 from the EMVCo standard."},"application_preferred_name":{"type":"string","description":"EMV application label with formatting (if provided). Tag 9F12 from the EMVCo standard.","nullable":true},"application_transaction_counter":{"type":"string","description":"Transaction number for the EMV application. Tag 9F36 from the EMVCo standard."},"cryptogram":{"type":"string","description":"Cryptogram returned by the card. Tag 9F26 of the EMVCo standard."},"issuer_code_table_index":{"type":"string","description":"The alphabet code table (according to ISO 8859) used by the EMV application (if provided). Tag 9F11.","nullable":true},"pin_verified":{"type":"boolean","description":"Whether the cardholder's PIN number was verified."},"tags":{"$ref":"#/components/schemas/tags"}}},"entry_mode":{"type":"string","description":"Details of the card payment method used to process the transaction.\n\nThe possible enums are:\n\n- UNKNOWN - The method by which the payment card was used is unknown.\n- SWIPED - The card was swiped through a POS terminal.\n- CONTACTLESS - The payment was made by tapping a card on a POS terminal.\n- CHIP_ENTRY - The payment card was inserted into a card reader.\n","enum":["UNKNOWN","SWIPED","CONTACTLESS","CHIP_ENTRY"],"nullable":true},"masked_account_number":{"type":"string","description":"Last four digits of the bank account number.","nullable":true},"name":{"type":"string","description":"The name of the bank account or card owner.","nullable":true},"payment_type":{"type":"string","description":"The type of `Payment Instrument` used in the transaction (or the original payment)."}}},"currency":{"$ref":"#/components/schemas/currency"},"created_via":{"$ref":"#/components/schemas/transfersAuthorizationsCreatedVia"},"destination":{"type":"string","description":"ID of the `Payment Instrument` where funds will be sent.","nullable":true},"device":{"type":"string","description":"The ID of the `Device` resource the `Transfer` was created under."},"externally_funded":{"type":"string","description":"Details if the `Transfer` will be settled externally by card processors."},"failure_code":{"$ref":"#/components/schemas/failure_code"},"failure_message":{"$ref":"#/components/schemas/failure_message"},"fee":{"$ref":"#/components/schemas/fee_transfer"},"fee_profile":{"type":"string","description":"The ID of the `Fee Profile` that will be used for calculating fees for this transfer."},"fee_type":{"type":"string","enum":["ACH_BASIS_POINTS","ACH_CREDIT_RETURN_FIXED_FEE","ACH_DEBIT_RETURN_FIXED_FEE","ACH_FIXED","ACH_MAX_FIXED","ACH_NOTICE_OF_CHANGE_CREDIT_FIXED","ACH_NOTICE_OF_CHANGE_DEBIT_FIXED","AMERICAN_EXPRESS_ASSESSMENT_BASIS_POINTS","AMERICAN_EXPRESS_BASIS_POINTS","AMERICAN_EXPRESS_FIXED","AMERICAN_EXPRESS_INTERCHANGE","ANCILLARY_FIXED_FEE_PRIMARY","ANCILLARY_FIXED_FEE_SECONDARY","APPLICATION_FEE","CARD_BASIS_POINTS","CARD_FIXED","CARD_INTERCHANGE","COMPLIANCE_FORMS_OVERDUE_FIXED","CUSTOM","DINERS_CLUB_BASIS_POINTS","DINERS_CLUB_FIXED","DINERS_CLUB_INTERCHANGE","DISCOVER_ASSESSMENT_BASIS_POINTS","DISCOVER_BASIS_POINTS","DISCOVER_DATA_USAGE_FIXED","DISCOVER_FIXED","DISCOVER_INTERCHANGE","DISCOVER_NETWORK_AUTHORIZATION_FIXED","DISPUTE_FIXED_FEE","DISPUTE_INQUIRY_FIXED_FEE","EFT_MAX_FIXED","INTERAC_BASIS_POINTS","INTERAC_FIXED","JCB_BASIS_POINTS","JCB_FIXED","JCB_INTERCHANGE","MASTERCARD_ACQUIRER_FEE_BASIS_POINTS","MASTERCARD_ASSESSMENT_OVER_1K_BASIS_POINTS","MASTERCARD_ASSESSMENT_UNDER_1K_BASIS_POINTS","MASTERCARD_BASIS_POINTS","MASTERCARD_FIXED","MASTERCARD_INTERCHANGE","QUALIFIED_TIER_BASIS_POINTS_FEE","QUALIFIED_TIER_FIXED_FEE","SETTLEMENT_FUNDING_TRANSFER_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_ACH_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_EFT_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_CREDIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_DEBIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_MAX_FIXED","SUBSCRIPTION_ACH_BASIS_POINTS","SUBSCRIPTION_ACH_FIXED","SUBSCRIPTION_ACH_MAX_FIXED","SUBSCRIPTION_CARD_BASIS_POINTS","SUBSCRIPTION_CARD_FIXED","SUBSCRIPTION_EFT_BASIS_POINTS","SUBSCRIPTION_EFT_FIXED","SUBSCRIPTION_EFT_MAX_FIXED","SUPPLEMENTAL_FEE_FIXED","VISA_ACQUIRER_PROCESSING_FIXED","VISA_ASSESSMENT_BASIS_POINTS","VISA_BASE_II_CREDIT_VOUCHER_FIXED","VISA_BASE_II_SYSTEM_FILE_TRANSMISSION_FIXED","VISA_BASIS_POINTS","VISA_CREDIT_VOUCHER_FIXED","VISA_FIXED","VISA_INTERCHANGE","VISA_KILOBYTE_ACCESS_FIXED","VISA_TRANSACTION_INTEGRITY_FIXED"],"description":"Details the type of fee if the `Transfer` includes a `fee`."},"funds_flow_type":{"$ref":"#/components/schemas/funds_flow_type"},"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"ip_address_details":{"$ref":"#/components/schemas/ip_address_details"},"merchant":{"type":"string","description":"The ID of the `Merchant` resource the `Transfer` was created under.","example":"MUxxxxxxxxxxxxxxxxxxxxxxx"},"merchant_identity":{"type":"string","example":"IDxxxxxxxxxxxxxxxxxxxxxxxx","description":"The ID of `Identity` resource used by the `Merchant` the `Transfer` was created under."},"network_details":{"type":"object","description":"Contains network-specific fields used by issuers to identify transactions.","properties":{"brand":{"type":"string","description":"Card brand associated with the saved payment instrument.","example":"VISA"},"authorization_code":{"type":"string","description":"Code returned by the issuing bank when a transaction is authorized.","example":840735},"acquirer_reference_number":{"type":"string","description":"Unique identifier banks use to trace chargebacks or refunds. Available only for Mastercard transactions; otherwise returns `null`.","nullable":true,"example":521600805857}}},"operation_key":{"type":"string","enum":["CARD_NOT_PRESENT_CAPTURE","CARD_NOT_PRESENT_REFUND","CARD_NOT_PRESENT_SALE","CARD_NOT_PRESENT_UNREFERENCED_REFUND","CARD_PRESENT_AUTHORIZATION","CARD_PRESENT_DEBIT","CARD_PRESENT_SALE","CARD_PRESENT_UNREFERENCED_REFUND","INSTANT_APPLICATION_FUNDING_PULL_FROM_ACH","INSTANT_APPLICATION_FUNDING_PULL_FROM_CARD","INSTANT_APPLICATION_FUNDING_PULL_FROM_FED_NOW","INSTANT_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_CARD","INSTANT_APPLICATION_FUNDING_PUSH_TO_FED_NOW","INSTANT_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_FED_NOW","INSTANT_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_CARD","INSTANT_MERCHANT_FUNDING_PUSH_TO_FED_NOW","INSTANT_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT_ADJUSTMENT","PULL_FROM_CARD","PUSH_TO_CARD","SALE","STANDARD_APPLICATION_FUNDING_PULL_FROM_ACH","STANDARD_APPLICATION_FUNDING_PULL_FROM_CARD","STANDARD_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_CARD","STANDARD_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_CARD","STANDARD_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_CARD","STANDARD_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","UNREFERENCED_REFUND"],"description":"Details the operation that's performed in the transaction.","nullable":true},"parent_transfer":{"type":"string","description":"- ID of the original parent `Transfer` where the transaction occurred.\n- Only is present when `type` is `REVERSAL` or `FEE`.","nullable":true},"parent_transfer_trace_id":{"type":"string","description":"- The `trace_id` of the original parent `Transfer` where the transaction occurred.\n- Only visible when `type` is `REVERSAL` or `FEE`.","nullable":true},"pull_transfer_id":{"$ref":"#/components/schemas/pull_transfer_id"},"messages":{"type":"array","description":"Message field that provides additional details.","default":[],"items":{"type":"string"}},"raw":{"description":"Raw response from the processor.","anyOf":[{"type":"object","nullable":true},{"type":"string","nullable":true}]},"ready_to_settle_at":{"type":"string","format":"date-time","description":"The timestamp indicating when the `Transfer` is ready to be settled.","nullable":true},"receipt_last_printed_at":{"type":"string","format":"date-time","description":"Timestamp when the receipt was last printed.","nullable":true},"security_code_verification":{"type":"string","description":"Details the results of the Card Verification Code check.","enum":["MATCHED","UNKNOWN","UNMATCHED"]},"source":{"type":"string","description":"The ID of the `Payment Instrument` that will be debited and performing the `Transfer`.","nullable":true},"split_transfers":{"type":"array","description":"Array containing the resource IDs of the `Split Transfers` generated from the `Transfer`.\n\nFor standard split transactions, this contains IDs of `Split Transfers` created from the parent `Transfer`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) on split transactions:\n- When a `MERCHANT_DEBIT` or `MERCHANT_CREDIT` adjustment `Transfer` is created for a [Dispute](/api/disputes) on a split transaction, this array contains the IDs of `Split Transfers` created for each participant.\n- The `Split Transfers` are created proportionally based on each merchant's share of the original sale.\n\nFor more information, see [Split Transactions - Disputes](../../../../guides/online-payments/payment-features/split-transactions#disputes).\n","default":[],"items":{"type":"string"}},"state":{"type":"string","enum":["CANCELED","PENDING","FAILED","SUCCEEDED","UNKNOWN","RETURNED"],"description":"The status of the `Transfer`."},"statement_descriptor":{"$ref":"#/components/schemas/statement_descriptor"},"subtype":{"type":"string","description":"Additional information describing the `payment_type`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) (`type: DISPUTE`):\n- `MERCHANT_DEBIT`: Funds are pulled from the merchant(s) when a chargeback occurs. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_DEBIT`.\n- `MERCHANT_CREDIT`: Funds are returned to the merchant(s) when a `Dispute` is ruled in their favor. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_CREDIT`.\n","enum":["API","APPLICATION_FEE","DISPUTE","MERCHANT_CREDIT","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT","MERCHANT_DEBIT_ADJUSTMENT","PLATFORM_CREDIT","PLATFORM_CREDIT_ADJUSTMENT","PLATFORM_DEBIT","PLATFORM_DEBIT_ADJUSTMENT","PLATFORM_FEE","SETTLEMENT_MERCHANT","SETTLEMENT_NOOP","SETTLEMENT_PARTNER","SETTLEMENT_PLATFORM","SPLIT_PAYOUT","SPLIT_PAYOUT_ADJUSTMENT","SYSTEM"]},"supplemental_fee":{"type":"string","description":"Amount in cents for which an additional fee will be created in addition to any fees created from the assigned fee profile.","nullable":true},"tags":{"$ref":"#/components/schemas/tags"},"tip_amount":{"type":"integer","description":"The tip amount included in the total amount.","nullable":true},"trace_id":{"type":"string","description":"Trace ID of the `Transfer`. The processor sends back the `trace_id` so you can track the `Transfer` end-to-end.","nullable":true},"type":{"type":"string","description":"Type of `Transfer`.","enum":["DEBIT","CREDIT","REVERSAL","FEE","ADJUSTMENT","DISPUTE","RESERVE","SETTLEMENT","UNKNOWN"]},"third_party_details":{"type":"object","description":"Details about the third-party processor associated with the `Transfer`.","nullable":true,"properties":{"external_trace_id":{"type":"string","description":"The trace ID returned by the third-party processor used to identify the `Transfer`.","nullable":true},"type":{"type":"string","description":"The name of the third-party processor associated with the `Transfer`.","nullable":true,"enum":["CYBERSOURCE"]}}},"_links":{"type":"object","properties":{"application":{"$ref":"#/components/schemas/application_link"},"destination":{"type":"object","description":"Link to the `Payment Instrument` where funds are getting sent.","properties":{"href":{"type":"string"}}},"device":{"type":"object","description":"Link to the `Device` the request was made under.","properties":{"href":{"type":"string"}}},"disputes":{"type":"object","description":"Link to the `Dispute` the request was made under.","properties":{"href":{"type":"string"}}},"fee_profile":{"type":"object","description":"Link to the `fee_profile` the request was made under.","properties":{"href":{"type":"string"}}},"fees":{"type":"object","description":"Link to the `fees` the request is associated with.","properties":{"href":{"type":"string"}}},"merchant_identity":{"type":"object","description":"Link to the `Identity` the `Merchant` was created under and the `Transfer` was submitted with.","properties":{"href":{"type":"string"}}},"payment_instruments":{"type":"object","description":"Link to the `Payment Instrument` associated with the Transfer.","properties":{"href":{"type":"string"}}},"disputed_transfer":{"type":"object","description":"Link to the `Transfer` the `Dispute` is about.","properties":{"href":{"type":"string"}}},"parent":{"type":"object","description":"Link to the original resource that was used in the request.","properties":{"href":{"type":"string"}}},"reversals":{"type":"object","description":"Link to the `reversals` associated with the `Transfer`.","properties":{"href":{"type":"string"}}},"self":{"$ref":"#/components/schemas/self"},"source":{"type":"object","description":"Link to the `Payment Instrument` the `Transfer` was created under.","properties":{"href":{"type":"string"}}}}}}}}}},"schemaResolvedErrors":[]},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["state"]}," will be ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SUCCEEDED"]}," when the refund finishes processing. Buyers will see the refund credited within 5-10 business days, depending on their bank. Refunds can't be canceled once processed."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"refunding-card-present-payments","__idx":2},"children":["Refunding Card-Present Payments"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Which refund method to use for card-present payments depends on how much time has passed since the original transaction. For debit transactions, the determining factor is whether the batch is still open; for credit transactions, whether it's within 45 days."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"#referenced-refunds"},"children":["Referenced Refunds"]}," — Reverse the original ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," directly using its ID. No card swipe required in most cases."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"#unreferenced-refunds"},"children":["Unreferenced Refunds"]}," — Create a new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," unlinked from the original. The cardholder must swipe their card to authorize the refund. Only available for physically swiped transactions."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"referenced-refunds","__idx":3},"children":["Referenced Refunds"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use a referenced refund when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The payment type was ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["credit"]}," and the transaction is within 45 days (regardless of batch status)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The payment type was ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["debit"]}," and the transaction is in the current open batch."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To perform the refund, ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/api/transfers/createtransferreversal"},"children":["reverse the original Transfer"]},":"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"oas-api/index.yaml","operationId":"createTransferReversal","exampleKey":"Refund Card Present Transfer - Referenced","parameters":{},"environments":{}},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/requestBodies/transfers/createTransferReversalReferencedRefund.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/createTransferReversalReferencedRefund"},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"createTransferOptionalFields":{"type":"object","properties":{"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"tags":{"$ref":"#/components/schemas/tags"}}},"createTransferReversalReferencedRefund":{"title":"Refund Card Present Transfer - Referenced","description":"Request fields to perform a [referenced refund](/guides/after-the-payment/refunds#referenced-refunds).","allOf":[{"type":"object","properties":{"device":{"type":"string","description":"The ID of the `Device` the `Transfer` was created under."},"refund_amount":{"type":"integer","description":"The amount of the refund in cents. It must be equal to or less than the amount of the original `Transfer`."}},"required":["refund_amount"]},{"$ref":"#/components/schemas/createTransferOptionalFields"}]}}}},"schemaResolvedErrors":[]},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A successful request returns a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201 Created"]}," status code, with the response body containing:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["state"]},":",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Initially set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PENDING"]}," to indicate that the refund is still processing."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Changes to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SUCCEEDED"]}," when the refund is processed."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}," is set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["REVERSAL"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Under ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["_links.parent"]},", you can find the original ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," that was reversed."]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"file":"../../../api/components/examples/transfers/responses/json/createTransferReversalReferencedRefund.jsonc","language":"json","title":"Reversed Card-Present Transfer Referencing Parent","header":{"title":"Reversed Card-Present Transfer Referencing Parent","controls":{"copy":{}}},"lang":"json","source":"{\n  \"id\": \"TRh57kBu89GbiaPmQ243DMUV\",\n  \"created_at\": \"2024-12-23T05:54:03.62Z\",\n  \"updated_at\": \"2024-12-23T05:54:03.62Z\",\n  \"additional_buyer_charges\": null,\n  \"additional_healthcare_data\": null,\n  \"additional_purchase_data\": null,\n  \"address_verification\": null,\n  \"amount\": 150,\n  \"amount_requested\": 150,\n  \"application\": \"APeUbTUjvYb1CdPXvNcwW1wP\",\n  \"card_present_details\": {\n    \"emv_data\": null,\n    \"masked_account_number\": null,\n    \"name\": null,\n    \"brand\": null,\n    \"entry_mode\": null,\n    \"payment_type\": \"NONE\",\n    \"approval_code\": null\n  },\n  \"currency\": \"USD\",\n  \"destination\": \"PInUwPXf1MYj7xJ8jfmdksa5\",\n  \"device\": \"DVtk6E4eWHsMzgZXvFaaUigM\",\n  \"externally_funded\": \"UNKNOWN\",\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"fee\": 0,\n  \"idempotency_id\": null,\n  \"merchant\": \"MUeDVrf2ahuKc9Eg5TeZugvs\",\n  \"merchant_identity\": \"IDsbTBawhnLBAVeinRb84vFR\",\n  \"messages\": [],\n  \"raw\": null,\n  \"ready_to_settle_at\": null,\n  \"receipt_last_printed_at\": null,\n  \"security_code_verification\": null,\n  \"source\": null,\n  \"state\": \"SUCCEEDED\", // [!code highlight]\n  \"statement_descriptor\": \"FIN*FINIX FLOWERS\",\n  \"subtype\": \"API\",\n  \"tags\": {},\n  \"tip_amount\": null,\n  \"trace_id\": \"FNX9HJndPy6MvvHwRszcyPsPW\",\n  \"type\": \"REVERSAL\", // [!code highlight]\n  \"_links\": {\n    \"application\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/applications/APeUbTUjvYb1CdPXvNcwW1wP\"\n    },\n    \"self\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRh57kBu89GbiaPmQ243DMUV\"\n    },\n    \"parent\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRn9pzzn1NVLdwwBwVrqSwAX\"\n    },\n    \"destination\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/payment_instruments/PInUwPXf1MYj7xJ8jfmdksa5\"\n    },\n    \"merchant_identity\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/identities/IDsbTBawhnLBAVeinRb84vFR\"\n    },\n    \"payment_instruments\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRh57kBu89GbiaPmQ243DMUV/payment_instruments\"\n    },\n    \"fee_profile\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/fee_profiles/FPrATYzpomaTRtdo2BssRoGx\"\n    }\n  }\n}\n"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/resources/transfers/transfer.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/transfer"},"id":{"type":"string","minLength":1,"description":"The ID of the resource."},"created_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was created."},"updated_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was last updated."},"additional_buyer_charges":{"type":"object","description":"Additional charges will be incurred by the buyer.\n\nThe following rules apply:\n\n- The `Merchant` must be enabled to charge these surcharges by setting the appropriate flags for each applicable surcharge to `true` using the PUT `/merchants` endpoint.\n- Only _one_ of the following charges can be applied during creation.\n","nullable":true,"properties":{"convenience_amount":{"type":"integer","description":"A convenience fee to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"rent_surcharge_amount":{"type":"integer","description":"A rent surcharge to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"surcharge_amount":{"type":"integer","description":"A surcharge amount to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true}}},"additional_healthcare_data":{"type":"object","nullable":true,"properties":{"clinic_amount":{"type":"integer","description":"A clinic or other qualified medical amount for the transaction.","nullable":true},"dental_amount":{"type":"integer","description":"The dental amount for the transaction.","nullable":true},"prescription_amount":{"type":"integer","description":"The prescription/RX amount for the transaction.","nullable":true},"vision_amount":{"type":"integer","description":"The vision/optical amount for the transaction.","nullable":true}}},"additional_purchase_data":{"type":"object","description":"Additional information about the purchase used for [Level 2 and Level 3 Processing](/guides/online-payments/payment-features/level-2-level-3-processing). Please note that Visa is ending its Level 2 offering in April 2026.","nullable":true,"properties":{"customer_reference_number":{"type":"string","description":"The customer reference for the purchase (max 17 characters). For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing.","maxLength":17},"customs_duty_amount":{"type":"integer","description":"The duty in cents on the total purchase amount for the order."},"destination_country_code":{"type":"string","description":"The ISO country code of the order destination."},"destination_postal_code":{"type":"string","description":"The postal code of the order destination (10 characters).","maxLength":10},"discount_amount":{"type":"integer","description":"The amount in cents of the discount for the order. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"invoice_reference_number":{"type":"string","description":"The order's invoice number (max 15 characters).","maxLength":15},"order_date":{"type":"object","properties":{"day":{"type":"integer","description":"Day of purchase (between 1 and 31)."},"month":{"type":"integer","description":"Month of purchase (between 1 and 12)."},"year":{"type":"integer","description":"Year of purchase (4-digit).","minimum":1990}}},"sales_tax":{"type":"integer","description":"- Total aggregate tax amount in cents for the entire purchase. Field is automatically calculated if you pass in the itemized tax amounts.\n- For non-taxable transactions either set `sales_tax` to 0 or omit from payload and also set `tax_exempt` to **True**.\n- Request must align so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`.\n- For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing."},"sales_tax_finix_generated":{"type":"integer","description":"The sales tax amount in cents Finix calculated from the `item_data` line items.","nullable":true},"ship_from_postal_code":{"type":"string","description":"The postal code from where order is shipped (10 characters).","maxLength":10},"shipping_amount":{"type":"integer","description":"The shipping cost in cents for the order.\n"},"tax_exempt":{"type":"boolean","description":"- For tax exempt purchases set to **True**.\n- If set to **True**, request can't include `sales_tax`."},"item_data":{"type":"array","description":"Additional information about the transaction. Used for Level 2 and Level 3 Processing.","items":{"type":"object","properties":{"amount_excluding_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, excluding tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"amount_including_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, including tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"commodity_code":{"type":"string","description":"A commodity code is a numeric code representing a particular product or service as defined by the National Institute of Governmental Purchasing. The code can be 3, 5, 7, or 11 digits in length. The longer the code the more granular the description of the product/service. (max 12 characters).","maxLength":12},"cost_per_unit":{"type":"integer","description":"The price in cents, excluding tax, of one unit of the item purchased."},"item_description":{"type":"string","description":"Required when `item_data` is supplied (max 25 characters).","maxLength":25},"item_discount_amount":{"type":"integer","description":"The item discount amount in cents. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"merchant_product_code":{"type":"string","description":"Merchant defined product code (max 12 characters).","maxLength":12},"quantity":{"type":"number","format":"decimal","description":"The number of items purchased. Must be greater than 0.","minimum":1,"maximum":99},"unit_of_measure":{"type":"string","description":"The unit of measure of the purchased item (max 3 characters).","maxLength":3}}}}}},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"currency":{"type":"string","description":"ISO 4217 3-letter currency code.","enum":["CAD","USD"]},"transfersAuthorizationsCreatedVia":{"type":"string","description":"Gives more information about the product flow that was used to create the resource. Finix retains the right to add additional enums for this field without it being a breaking change.","default":"UNKNOWN","enum":["CARD_PRESENT_SEMI_INTEGRATED_API","CARD_PRESENT_STANDALONE","CARD_PRESENT_STANDALONE_MANUAL_ENTRY","CARD_PRESENT_IOS_APP","CARD_PRESENT_IOS_APP_MANUAL_ENTRY","CARD_PRESENT_IOS_D135_SDK","CARD_PRESENT_ANDROID_APP","CARD_PRESENT_ANDROID_APP_MANUAL_ENTRY","CARD_PRESENT_ANDROID_D135_SDK","CHECKOUT_FORM","CYBERSOURCE","PAYMENT_LINK","PAYOUT_LINK","SUBSCRIPTION","UNKNOWN","VIRTUAL_TERMINAL"]},"failure_code":{"type":"string","description":"The code of the failure so the decline can be handled programmatically. For more info on how to handle the failure, see [Failure Codes](/additional-resources/developers/implementation-and-testing/failure-codes).","nullable":true},"failure_message":{"type":"string","description":"A human-readable description of why the transaction was declined. This will also include a suggestion on how to complete the payment.","nullable":true},"fee_transfer":{"type":"integer","format":"int64","description":"The minimum amount of the `Transfer` you'd like to collect as your fee in cents. Defaults to zero (must be less than or equal to the `amount`).\n- If the fees applied by the 'Fee Profile' are ***higher*** than the value passed in 'fee', 'fee' will not be applied and have no effect.\n- If the fees applied by the 'Fee Profile' are ***lower*** than the value passed in 'fee', an additional fee is be applied, in addition to the fees generated by the `Fee Profile`.\n    - The additional fee is equal to the difference between the value passed in 'fee' and the fees generated by the `Fee Profile`."},"funds_flow_type":{"type":"string","description":"The type of disbursement to perform. Defaults to `GENERAL_PAYOUT`.\n","enum":["GENERAL_PAYOUT","ME_TO_ME","GOVERNMENT"],"nullable":true},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"country":{"type":"string","enum":["ABW","AFG","AGO","AIA","ALA","ALB","AND","ARE","ARG","ARM","ASM","ATA","ATF","ATG","AUS","AUT","AZE","BDI","BEL","BEN","BES","BFA","BGD","BGR","BHR","BHS","BIH","BLM","BLR","BLZ","BMU","BOL","BRA","BRB","BRN","BTN","BVT","BWA","CAF","CAN","CCK","CHE","CHL","CHN","CIV","CMR","COD","COG","COK","COL","COM","CPV","CRI","CUB","CUW","CXR","CYM","CYP","CZE","DEU","DJI","DMA","DNK","DOM","DZA","ECU","EGY","ERI","ESH","ESP","EST","ETH","FIN","FJI","FLK","FRA","FRO","FSM","GAB","GBR","GEO","GGY","GHA","GIB","GIN","GLP","GMB","GNB","GNQ","GRC","GRD","GRL","GTM","GUF","GUM","GUY","HKG","HMD","HND","HRV","HTI","HUN","IDN","IMN","IND","IOT","IRL","IRN","IRQ","ISL","ISR","ITA","JAM","JEY","JOR","JPN","KAZ","KEN","KGZ","KHM","KIR","KNA","KOR","KWT","LAO","LBN","LBR","LBY","LCA","LIE","LKA","LSO","LTU","LUX","LVA","MAC","MAF","MAR","MCO","MDA","MDG","MDV","MEX","MHL","MKD","MLI","MLT","MMR","MNE","MNG","MNP","MRT","MSR","MTQ","MUS","MWI","MYS","MYT","NAM","NCL","NER","NFK","NGA","NIC","NIU","NLD","NOR","NPL","NRU","NZL","OMN","PAK","PAN","PCN","PER","PHL","PLW","PNG","POL","PRI","PRK","PRT","PRY","PSE","PYF","QAT","REU","ROU","RUS","RWA","SAU","SDN","SEN","SGP","SGS","SHN","SJM","SLB","SLE","SLV","SMR","SOM","SPM","SRB","SSD","STP","SUR","SVK","SVN","SWE","SWZ","SXM","SYC","SYR","TCA","TCD","TGO","THA","TJK","TKL","TKM","TLS","TON","TTO","TUN","TUR","TUV","TWN","TZA","UGA","UKR","UMI","URY","USA","UZB","VAT","VCT","VEN","VGB","VIR","VNM","VUT","WLF","WSM","XKX","YEM","ZAF","ZMB","ZWE"],"nullable":true},"address":{"type":"object","properties":{"line1":{"type":"string","minLength":1,"description":"First line of the address (max 35 characters).","nullable":true},"line2":{"type":"string","minLength":1,"description":"Second line of the address (max 35 characters).","nullable":true},"city":{"type":"string","minLength":1,"description":"City (max 20 characters).","nullable":true},"region":{"type":"string","minLength":1,"description":"2-letter State code.","nullable":true},"postal_code":{"type":"string","minLength":1,"description":"Zip or Postal code (max 7 characters).","nullable":true},"country":{"$ref":"#/components/schemas/country"}},"required":["city","country","line1","postal_code","region"]},"ip_address_v4":{"type":"string","description":"The card brands require the customer's IP address for online gaming clients. Only supports Internet Protocol version 4 (IPv4).","example":"192.168.1.1","nullable":true},"ip_address_details":{"type":"object","description":"This field returns `null` for all users except `ROLE_PLATFORM` users.","properties":{"ipv4":{"type":"object","properties":{"estimated_location":{"$ref":"#/components/schemas/address"},"ip":{"$ref":"#/components/schemas/ip_address_v4"},"latitude":{"type":"number","description":"Geo-location based on the IP address."},"longitude":{"type":"number","description":"Geo-location based on the IP address."}}}}},"pull_transfer_id":{"type":"string","description":"The ID of the corresponding pull `Transfer` linked in a `ME_TO_ME` transaction.\n","nullable":true},"statement_descriptor":{"type":"string","maxLength":22,"nullable":true,"description":"The description of the `Merchant` that appears on the buyer's bank or card statement."},"application_link":{"type":"object","description":"Link to the `Application` the request was made under.","properties":{"href":{"type":"string","minLength":1}}},"self":{"type":"object","description":"Link to the resource that was used in the request.","properties":{"href":{"type":"string","minLength":1}}},"transfer":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/id"},"created_at":{"$ref":"#/components/schemas/created_at"},"updated_at":{"$ref":"#/components/schemas/updated_at"},"additional_buyer_charges":{"description":"Details about any [Buyer Charges](../../../../guides/online-payments/payment-features/buyer-charges) included in the `Transfer`. The buyer charges are mutually exclusive.\n","allOf":[{"$ref":"#/components/schemas/additional_buyer_charges"}]},"additional_healthcare_data":{"$ref":"#/components/schemas/additional_healthcare_data"},"additional_purchase_data":{"$ref":"#/components/schemas/additional_purchase_data"},"address_verification":{"type":"string","description":"Details the results of the address verification checks.","nullable":true,"enum":["POSTAL_CODE_AND_STREET_MATCH","STREET_MATCH","POSTAL_CODE_MATCH","NO_ADDRESS","NO_MATCH","NOT_SUPPORTED","UNKNOWN"]},"amount":{"type":"number","format":"double","description":"The total amount that will be debited. The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00).\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`).\n","example":2.393},"amount_requested":{"type":"number","format":"double","description":"Details the `amount` that was requested to get debited from the `source` when the transaction was created.  The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00)\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`)\n","example":2.393},"application":{"type":"string","minLength":1,"description":"ID of the `Application` associated with the resource."},"bank_return_details":{"type":"object","description":"Details about a transfer that was returned and was unable to be processed. Only present when `state` is `RETURNED`","nullable":true,"properties":{"reason_code":{"type":"string","description":"Return response code from the bank."},"reason_message":{"type":"string","description":"Detailed message explaining reason for the return."},"reason_title":{"type":"string","description":"Short message categorizing reason for the return."}}},"card_present_details":{"type":"object","description":"Details needed to process card present transactions.","nullable":true,"properties":{"approval_code":{"type":"string","description":"Unique ID used to identify the approval of the `Transfer`.","nullable":true},"brand":{"type":"string","description":"The brand of the card saved in the `Payment Instrument`.","nullable":true},"emv_data":{"type":"object","description":"Encrypted card data used to process the transaction.","nullable":true,"properties":{"application_identifier":{"type":"string","description":"ID of the application used in the transaction. Tag 9F06 from the EMVCo standard."},"application_label":{"type":"string","description":"EMV application label. Tag 50 from the EMVCo standard."},"application_preferred_name":{"type":"string","description":"EMV application label with formatting (if provided). Tag 9F12 from the EMVCo standard.","nullable":true},"application_transaction_counter":{"type":"string","description":"Transaction number for the EMV application. Tag 9F36 from the EMVCo standard."},"cryptogram":{"type":"string","description":"Cryptogram returned by the card. Tag 9F26 of the EMVCo standard."},"issuer_code_table_index":{"type":"string","description":"The alphabet code table (according to ISO 8859) used by the EMV application (if provided). Tag 9F11.","nullable":true},"pin_verified":{"type":"boolean","description":"Whether the cardholder's PIN number was verified."},"tags":{"$ref":"#/components/schemas/tags"}}},"entry_mode":{"type":"string","description":"Details of the card payment method used to process the transaction.\n\nThe possible enums are:\n\n- UNKNOWN - The method by which the payment card was used is unknown.\n- SWIPED - The card was swiped through a POS terminal.\n- CONTACTLESS - The payment was made by tapping a card on a POS terminal.\n- CHIP_ENTRY - The payment card was inserted into a card reader.\n","enum":["UNKNOWN","SWIPED","CONTACTLESS","CHIP_ENTRY"],"nullable":true},"masked_account_number":{"type":"string","description":"Last four digits of the bank account number.","nullable":true},"name":{"type":"string","description":"The name of the bank account or card owner.","nullable":true},"payment_type":{"type":"string","description":"The type of `Payment Instrument` used in the transaction (or the original payment)."}}},"currency":{"$ref":"#/components/schemas/currency"},"created_via":{"$ref":"#/components/schemas/transfersAuthorizationsCreatedVia"},"destination":{"type":"string","description":"ID of the `Payment Instrument` where funds will be sent.","nullable":true},"device":{"type":"string","description":"The ID of the `Device` resource the `Transfer` was created under."},"externally_funded":{"type":"string","description":"Details if the `Transfer` will be settled externally by card processors."},"failure_code":{"$ref":"#/components/schemas/failure_code"},"failure_message":{"$ref":"#/components/schemas/failure_message"},"fee":{"$ref":"#/components/schemas/fee_transfer"},"fee_profile":{"type":"string","description":"The ID of the `Fee Profile` that will be used for calculating fees for this transfer."},"fee_type":{"type":"string","enum":["ACH_BASIS_POINTS","ACH_CREDIT_RETURN_FIXED_FEE","ACH_DEBIT_RETURN_FIXED_FEE","ACH_FIXED","ACH_MAX_FIXED","ACH_NOTICE_OF_CHANGE_CREDIT_FIXED","ACH_NOTICE_OF_CHANGE_DEBIT_FIXED","AMERICAN_EXPRESS_ASSESSMENT_BASIS_POINTS","AMERICAN_EXPRESS_BASIS_POINTS","AMERICAN_EXPRESS_FIXED","AMERICAN_EXPRESS_INTERCHANGE","ANCILLARY_FIXED_FEE_PRIMARY","ANCILLARY_FIXED_FEE_SECONDARY","APPLICATION_FEE","CARD_BASIS_POINTS","CARD_FIXED","CARD_INTERCHANGE","COMPLIANCE_FORMS_OVERDUE_FIXED","CUSTOM","DINERS_CLUB_BASIS_POINTS","DINERS_CLUB_FIXED","DINERS_CLUB_INTERCHANGE","DISCOVER_ASSESSMENT_BASIS_POINTS","DISCOVER_BASIS_POINTS","DISCOVER_DATA_USAGE_FIXED","DISCOVER_FIXED","DISCOVER_INTERCHANGE","DISCOVER_NETWORK_AUTHORIZATION_FIXED","DISPUTE_FIXED_FEE","DISPUTE_INQUIRY_FIXED_FEE","EFT_MAX_FIXED","INTERAC_BASIS_POINTS","INTERAC_FIXED","JCB_BASIS_POINTS","JCB_FIXED","JCB_INTERCHANGE","MASTERCARD_ACQUIRER_FEE_BASIS_POINTS","MASTERCARD_ASSESSMENT_OVER_1K_BASIS_POINTS","MASTERCARD_ASSESSMENT_UNDER_1K_BASIS_POINTS","MASTERCARD_BASIS_POINTS","MASTERCARD_FIXED","MASTERCARD_INTERCHANGE","QUALIFIED_TIER_BASIS_POINTS_FEE","QUALIFIED_TIER_FIXED_FEE","SETTLEMENT_FUNDING_TRANSFER_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_ACH_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_EFT_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_CREDIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_DEBIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_MAX_FIXED","SUBSCRIPTION_ACH_BASIS_POINTS","SUBSCRIPTION_ACH_FIXED","SUBSCRIPTION_ACH_MAX_FIXED","SUBSCRIPTION_CARD_BASIS_POINTS","SUBSCRIPTION_CARD_FIXED","SUBSCRIPTION_EFT_BASIS_POINTS","SUBSCRIPTION_EFT_FIXED","SUBSCRIPTION_EFT_MAX_FIXED","SUPPLEMENTAL_FEE_FIXED","VISA_ACQUIRER_PROCESSING_FIXED","VISA_ASSESSMENT_BASIS_POINTS","VISA_BASE_II_CREDIT_VOUCHER_FIXED","VISA_BASE_II_SYSTEM_FILE_TRANSMISSION_FIXED","VISA_BASIS_POINTS","VISA_CREDIT_VOUCHER_FIXED","VISA_FIXED","VISA_INTERCHANGE","VISA_KILOBYTE_ACCESS_FIXED","VISA_TRANSACTION_INTEGRITY_FIXED"],"description":"Details the type of fee if the `Transfer` includes a `fee`."},"funds_flow_type":{"$ref":"#/components/schemas/funds_flow_type"},"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"ip_address_details":{"$ref":"#/components/schemas/ip_address_details"},"merchant":{"type":"string","description":"The ID of the `Merchant` resource the `Transfer` was created under.","example":"MUxxxxxxxxxxxxxxxxxxxxxxx"},"merchant_identity":{"type":"string","example":"IDxxxxxxxxxxxxxxxxxxxxxxxx","description":"The ID of `Identity` resource used by the `Merchant` the `Transfer` was created under."},"network_details":{"type":"object","description":"Contains network-specific fields used by issuers to identify transactions.","properties":{"brand":{"type":"string","description":"Card brand associated with the saved payment instrument.","example":"VISA"},"authorization_code":{"type":"string","description":"Code returned by the issuing bank when a transaction is authorized.","example":840735},"acquirer_reference_number":{"type":"string","description":"Unique identifier banks use to trace chargebacks or refunds. Available only for Mastercard transactions; otherwise returns `null`.","nullable":true,"example":521600805857}}},"operation_key":{"type":"string","enum":["CARD_NOT_PRESENT_CAPTURE","CARD_NOT_PRESENT_REFUND","CARD_NOT_PRESENT_SALE","CARD_NOT_PRESENT_UNREFERENCED_REFUND","CARD_PRESENT_AUTHORIZATION","CARD_PRESENT_DEBIT","CARD_PRESENT_SALE","CARD_PRESENT_UNREFERENCED_REFUND","INSTANT_APPLICATION_FUNDING_PULL_FROM_ACH","INSTANT_APPLICATION_FUNDING_PULL_FROM_CARD","INSTANT_APPLICATION_FUNDING_PULL_FROM_FED_NOW","INSTANT_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_CARD","INSTANT_APPLICATION_FUNDING_PUSH_TO_FED_NOW","INSTANT_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_FED_NOW","INSTANT_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_CARD","INSTANT_MERCHANT_FUNDING_PUSH_TO_FED_NOW","INSTANT_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT_ADJUSTMENT","PULL_FROM_CARD","PUSH_TO_CARD","SALE","STANDARD_APPLICATION_FUNDING_PULL_FROM_ACH","STANDARD_APPLICATION_FUNDING_PULL_FROM_CARD","STANDARD_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_CARD","STANDARD_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_CARD","STANDARD_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_CARD","STANDARD_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","UNREFERENCED_REFUND"],"description":"Details the operation that's performed in the transaction.","nullable":true},"parent_transfer":{"type":"string","description":"- ID of the original parent `Transfer` where the transaction occurred.\n- Only is present when `type` is `REVERSAL` or `FEE`.","nullable":true},"parent_transfer_trace_id":{"type":"string","description":"- The `trace_id` of the original parent `Transfer` where the transaction occurred.\n- Only visible when `type` is `REVERSAL` or `FEE`.","nullable":true},"pull_transfer_id":{"$ref":"#/components/schemas/pull_transfer_id"},"messages":{"type":"array","description":"Message field that provides additional details.","default":[],"items":{"type":"string"}},"raw":{"description":"Raw response from the processor.","anyOf":[{"type":"object","nullable":true},{"type":"string","nullable":true}]},"ready_to_settle_at":{"type":"string","format":"date-time","description":"The timestamp indicating when the `Transfer` is ready to be settled.","nullable":true},"receipt_last_printed_at":{"type":"string","format":"date-time","description":"Timestamp when the receipt was last printed.","nullable":true},"security_code_verification":{"type":"string","description":"Details the results of the Card Verification Code check.","enum":["MATCHED","UNKNOWN","UNMATCHED"]},"source":{"type":"string","description":"The ID of the `Payment Instrument` that will be debited and performing the `Transfer`.","nullable":true},"split_transfers":{"type":"array","description":"Array containing the resource IDs of the `Split Transfers` generated from the `Transfer`.\n\nFor standard split transactions, this contains IDs of `Split Transfers` created from the parent `Transfer`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) on split transactions:\n- When a `MERCHANT_DEBIT` or `MERCHANT_CREDIT` adjustment `Transfer` is created for a [Dispute](/api/disputes) on a split transaction, this array contains the IDs of `Split Transfers` created for each participant.\n- The `Split Transfers` are created proportionally based on each merchant's share of the original sale.\n\nFor more information, see [Split Transactions - Disputes](../../../../guides/online-payments/payment-features/split-transactions#disputes).\n","default":[],"items":{"type":"string"}},"state":{"type":"string","enum":["CANCELED","PENDING","FAILED","SUCCEEDED","UNKNOWN","RETURNED"],"description":"The status of the `Transfer`."},"statement_descriptor":{"$ref":"#/components/schemas/statement_descriptor"},"subtype":{"type":"string","description":"Additional information describing the `payment_type`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) (`type: DISPUTE`):\n- `MERCHANT_DEBIT`: Funds are pulled from the merchant(s) when a chargeback occurs. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_DEBIT`.\n- `MERCHANT_CREDIT`: Funds are returned to the merchant(s) when a `Dispute` is ruled in their favor. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_CREDIT`.\n","enum":["API","APPLICATION_FEE","DISPUTE","MERCHANT_CREDIT","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT","MERCHANT_DEBIT_ADJUSTMENT","PLATFORM_CREDIT","PLATFORM_CREDIT_ADJUSTMENT","PLATFORM_DEBIT","PLATFORM_DEBIT_ADJUSTMENT","PLATFORM_FEE","SETTLEMENT_MERCHANT","SETTLEMENT_NOOP","SETTLEMENT_PARTNER","SETTLEMENT_PLATFORM","SPLIT_PAYOUT","SPLIT_PAYOUT_ADJUSTMENT","SYSTEM"]},"supplemental_fee":{"type":"string","description":"Amount in cents for which an additional fee will be created in addition to any fees created from the assigned fee profile.","nullable":true},"tags":{"$ref":"#/components/schemas/tags"},"tip_amount":{"type":"integer","description":"The tip amount included in the total amount.","nullable":true},"trace_id":{"type":"string","description":"Trace ID of the `Transfer`. The processor sends back the `trace_id` so you can track the `Transfer` end-to-end.","nullable":true},"type":{"type":"string","description":"Type of `Transfer`.","enum":["DEBIT","CREDIT","REVERSAL","FEE","ADJUSTMENT","DISPUTE","RESERVE","SETTLEMENT","UNKNOWN"]},"third_party_details":{"type":"object","description":"Details about the third-party processor associated with the `Transfer`.","nullable":true,"properties":{"external_trace_id":{"type":"string","description":"The trace ID returned by the third-party processor used to identify the `Transfer`.","nullable":true},"type":{"type":"string","description":"The name of the third-party processor associated with the `Transfer`.","nullable":true,"enum":["CYBERSOURCE"]}}},"_links":{"type":"object","properties":{"application":{"$ref":"#/components/schemas/application_link"},"destination":{"type":"object","description":"Link to the `Payment Instrument` where funds are getting sent.","properties":{"href":{"type":"string"}}},"device":{"type":"object","description":"Link to the `Device` the request was made under.","properties":{"href":{"type":"string"}}},"disputes":{"type":"object","description":"Link to the `Dispute` the request was made under.","properties":{"href":{"type":"string"}}},"fee_profile":{"type":"object","description":"Link to the `fee_profile` the request was made under.","properties":{"href":{"type":"string"}}},"fees":{"type":"object","description":"Link to the `fees` the request is associated with.","properties":{"href":{"type":"string"}}},"merchant_identity":{"type":"object","description":"Link to the `Identity` the `Merchant` was created under and the `Transfer` was submitted with.","properties":{"href":{"type":"string"}}},"payment_instruments":{"type":"object","description":"Link to the `Payment Instrument` associated with the Transfer.","properties":{"href":{"type":"string"}}},"disputed_transfer":{"type":"object","description":"Link to the `Transfer` the `Dispute` is about.","properties":{"href":{"type":"string"}}},"parent":{"type":"object","description":"Link to the original resource that was used in the request.","properties":{"href":{"type":"string"}}},"reversals":{"type":"object","description":"Link to the `reversals` associated with the `Transfer`.","properties":{"href":{"type":"string"}}},"self":{"$ref":"#/components/schemas/self"},"source":{"type":"object","description":"Link to the `Payment Instrument` the `Transfer` was created under.","properties":{"href":{"type":"string"}}}}}}}}}},"schemaResolvedErrors":[]},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"unreferenced-refunds","__idx":4},"children":["Unreferenced Refunds"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use an unreferenced refund when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The payment type is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["debit"]}," and the transaction is no longer in the batch."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The payment type is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["credit"]}," and the transaction is no longer in the batch and older than 45 days."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To perform the unreferenced refund, ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/api/transfers/createtransfer"},"children":["create a Transfer"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operation_key: CARD_PRESENT_UNREFERENCED_REFUND"]},". The cardholder must swipe their card to authorize the refund."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":""},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Card-not-present transactions (e.g., eCommerce) do not support unreferenced refunds."]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"oas-api/index.yaml","operationId":"createTransfer","exampleKey":"Transfer - Card Present - Unreferenced Refund","parameters":{},"environments":{}},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/requestBodies/transfers/createTransferUnreferencedRefund.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/createTransferUnreferencedRefund"},"amount":{"type":"integer","description":"The total amount that will be debited in cents (e.g. 100 cents to debit $1.00).","example":5000,"format":"int64"},"currency":{"type":"string","description":"ISO 4217 3-letter currency code.","enum":["CAD","USD"]},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"createTransferOptionalFields":{"type":"object","properties":{"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"tags":{"$ref":"#/components/schemas/tags"}}},"createTransferUnreferencedRefund":{"title":"Transfer - Card Present - Unreferenced Refund","description":"Request fields to perform an [unreferenced refund](/guides/after-the-payment/refunds#unreferenced-refunds).","allOf":[{"type":"object","properties":{"amount":{"$ref":"#/components/schemas/amount"},"currency":{"$ref":"#/components/schemas/currency"},"device":{"type":"string","description":"The ID of the `Device` the `Transfer` was created under."},"operation_key":{"type":"string","description":"The operation key for an [unreferenced refund](/guides/after-the-payment/refunds#unreferenced-refunds).","enum":["CARD_PRESENT_UNREFERENCED_REFUND"],"nullable":true}},"required":["amount","currency","device","operation_key"]},{"$ref":"#/components/schemas/createTransferOptionalFields"}]}}}},"schemaResolvedErrors":[]},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A successful request returns a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201 Created"]}," status code, with the response body containing:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operation_key"]}," is set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CARD_PRESENT_UNREFERENCED_REFUND"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["state"]},":",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Initially set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PENDING"]}," to indicate that the refund is still processing."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Changes to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SUCCEEDED"]}," when the refund is processed."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]}," is set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CREDIT"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DEBIT"]}," based on the original transfer type, rather than ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["REVERSAL"]},"."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":""},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Unlike referenced refunds, there is no ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["_links.parent"]}," property — a new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transfer"]}," was created instead of reversing an existing one."]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Example","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"file":"../../../api/components/examples/transfers/responses/json/createTransferUnreferencedRefund.jsonc","language":"json","title":"Card Present Transfer without Parent Reference","header":{"title":"Card Present Transfer without Parent Reference","controls":{"copy":{}}},"lang":"json","source":"{\n  \"id\": \"TRo5JpCqMY26ufvRdTJ8715j\",\n  \"created_at\": \"2025-11-19T20:31:16.48Z\",\n  \"updated_at\": \"2025-11-19T20:31:16.48Z\",\n  \"additional_buyer_charges\": null,\n  \"additional_healthcare_data\": null,\n  \"additional_purchase_data\": null,\n  \"address_verification\": null,\n  \"amount\": 150,\n  \"amount_requested\": 150,\n  \"application\": \"APc9vhYcPsRuTSpKD9KpMtPe\",\n  \"card_present_details\": {\n    \"emv_data\": {\n      \"application_identifier\": \"A0000000041010\",\n      \"application_label\": \"Mastercard Debit\",\n      \"application_preferred_name\": null,\n      \"application_transaction_counter\": \"01D2\",\n      \"cryptogram\": \"ARQC 579B6893AADF6245\",\n      \"issuer_code_table_index\": null,\n      \"network_emv_response\": null,\n      \"pin_verified\": false,\n      \"tags\": null\n    },\n    \"masked_account_number\": \"523499******4130\",\n    \"name\": null,\n    \"brand\": \"UNKNOWN\",\n    \"entry_mode\": \"CONTACTLESS\",\n    \"payment_type\": \"CREDIT\",\n    \"approval_code\": \"674313\",\n    \"digital_signature_file_id\": null\n  },\n  \"currency\": \"USD\",\n  \"destination\": \"PInqirmUHFh1FmPNa8reirAb\",\n  \"device\": \"DVoDo7F6yYCnX2d6Fj9hvsd\",\n  \"externally_funded\": \"UNKNOWN\",\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"fee\": 0,\n  \"fee_profile\": \"FPmtT4MYmiAs1qjLjneQmk4d\",\n  \"idempotency_id\": null,\n  \"ip_address_details\": null,\n  \"merchant\": \"MUsMvN47nRtdgUkE23SRHDC6\",\n  \"merchant_identity\": \"IDgu8uaRpVnfSEcRcZFXqpjK\",\n  \"messages\": [],\n  \"network_details\": null,\n  \"operation_key\": \"CARD_PRESENT_UNREFERENCED_REFUND\", // [!code highlight]\n  \"parent_transfer\": null,\n  \"parent_transfer_trace_id\": null,\n  \"raw\": null,\n  \"ready_to_settle_at\": \"2025-11-20T20:32:38.76Z\",\n  \"receipt_last_printed_at\": null,\n  \"security_code_verification\": null,\n  \"source\": null,\n  \"split_transfers\": [],\n  \"state\": \"SUCCEEDED\", // [!code highlight]\n  \"statement_descriptor\": \"FLX*FINIX FLOWERS\",\n  \"subtype\": \"API\",\n  \"supplemental_fee\": null,\n  \"tags\": {},\n  \"third_party_details\": null,\n  \"tip_amount\": null,\n  \"trace_id\": \"23f1fdf9-2783-4bbe-8de2-afd7a7502aad\",\n  \"type\": \"CREDIT\", // [!code highlight]\n  \"_links\": {\n    \"application\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/applications/APc9vhYcPsRuTSpKD9KpMtPe\"\n    },\n    \"self\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRo5JpCqMY26ufvRdTJ8715j\"\n    },\n    \"merchant_identity\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/identities/IDgu8uaRpVnfSEcRcZFXqpjK\"\n    },\n    \"device\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/devices/DVoDo7F6yYCnX2d6Fj9hvsd\"\n    },\n    \"payment_instruments\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRo5JpCqMY26ufvRdTJ8715j/payment_instruments\"\n    },\n    \"reversals\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRo5JpCqMY26ufvRdTJ8715j/reversals\"\n    },\n    \"fees\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/fees?linked_to=TRo5JpCqMY26ufvRdTJ8715j\"\n    },\n    \"disputes\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/transfers/TRo5JpCqMY26ufvRdTJ8715j/disputes\"\n    },\n    \"destination\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/payment_instruments/PInqirmUHFh1FmPNa8reirAb\"\n    },\n    \"fee_profile\": {\n      \"href\": \"https://finix.sandbox-payments-api.com/fee_profiles/FPmtT4MYmiAs1qjLjneQmk4d\"\n    }\n  }\n}\n"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"API Definition","disable":false},"children":[{"$$mdtype":"Tag","name":"JsonSchema","attributes":{"schema":{"$ref":"../../../api/components/schemas/resources/transfers/transfer.yaml"},"options":{},"schemaResolved":{"openapi":"3.1.0","components":{"schemas":{"__root":{"$ref":"#/components/schemas/transfer"},"id":{"type":"string","minLength":1,"description":"The ID of the resource."},"created_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was created."},"updated_at":{"type":"string","format":"date-time","description":"Timestamp of when the object was last updated."},"additional_buyer_charges":{"type":"object","description":"Additional charges will be incurred by the buyer.\n\nThe following rules apply:\n\n- The `Merchant` must be enabled to charge these surcharges by setting the appropriate flags for each applicable surcharge to `true` using the PUT `/merchants` endpoint.\n- Only _one_ of the following charges can be applied during creation.\n","nullable":true,"properties":{"convenience_amount":{"type":"integer","description":"A convenience fee to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"rent_surcharge_amount":{"type":"integer","description":"A rent surcharge to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true},"surcharge_amount":{"type":"integer","description":"A surcharge amount to charge the buyer for the transaction. This object property is mutually exclusive.","nullable":true}}},"additional_healthcare_data":{"type":"object","nullable":true,"properties":{"clinic_amount":{"type":"integer","description":"A clinic or other qualified medical amount for the transaction.","nullable":true},"dental_amount":{"type":"integer","description":"The dental amount for the transaction.","nullable":true},"prescription_amount":{"type":"integer","description":"The prescription/RX amount for the transaction.","nullable":true},"vision_amount":{"type":"integer","description":"The vision/optical amount for the transaction.","nullable":true}}},"additional_purchase_data":{"type":"object","description":"Additional information about the purchase used for [Level 2 and Level 3 Processing](/guides/online-payments/payment-features/level-2-level-3-processing). Please note that Visa is ending its Level 2 offering in April 2026.","nullable":true,"properties":{"customer_reference_number":{"type":"string","description":"The customer reference for the purchase (max 17 characters). For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing.","maxLength":17},"customs_duty_amount":{"type":"integer","description":"The duty in cents on the total purchase amount for the order."},"destination_country_code":{"type":"string","description":"The ISO country code of the order destination."},"destination_postal_code":{"type":"string","description":"The postal code of the order destination (10 characters).","maxLength":10},"discount_amount":{"type":"integer","description":"The amount in cents of the discount for the order. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"invoice_reference_number":{"type":"string","description":"The order's invoice number (max 15 characters).","maxLength":15},"order_date":{"type":"object","properties":{"day":{"type":"integer","description":"Day of purchase (between 1 and 31)."},"month":{"type":"integer","description":"Month of purchase (between 1 and 12)."},"year":{"type":"integer","description":"Year of purchase (4-digit).","minimum":1990}}},"sales_tax":{"type":"integer","description":"- Total aggregate tax amount in cents for the entire purchase. Field is automatically calculated if you pass in the itemized tax amounts.\n- For non-taxable transactions either set `sales_tax` to 0 or omit from payload and also set `tax_exempt` to **True**.\n- Request must align so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`.\n- For Visa, this field no longer qualifies for lower interchange after April 17, 2026. Include `item_data` for Level 3 processing."},"sales_tax_finix_generated":{"type":"integer","description":"The sales tax amount in cents Finix calculated from the `item_data` line items.","nullable":true},"ship_from_postal_code":{"type":"string","description":"The postal code from where order is shipped (10 characters).","maxLength":10},"shipping_amount":{"type":"integer","description":"The shipping cost in cents for the order.\n"},"tax_exempt":{"type":"boolean","description":"- For tax exempt purchases set to **True**.\n- If set to **True**, request can't include `sales_tax`."},"item_data":{"type":"array","description":"Additional information about the transaction. Used for Level 2 and Level 3 Processing.","items":{"type":"object","properties":{"amount_excluding_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, excluding tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"amount_including_sales_tax":{"type":"integer","description":"- Total cost of the line item in cents, including tax.\n- Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."},"commodity_code":{"type":"string","description":"A commodity code is a numeric code representing a particular product or service as defined by the National Institute of Governmental Purchasing. The code can be 3, 5, 7, or 11 digits in length. The longer the code the more granular the description of the product/service. (max 12 characters).","maxLength":12},"cost_per_unit":{"type":"integer","description":"The price in cents, excluding tax, of one unit of the item purchased."},"item_description":{"type":"string","description":"Required when `item_data` is supplied (max 25 characters).","maxLength":25},"item_discount_amount":{"type":"integer","description":"The item discount amount in cents. You must include this field to qualify for Level 3 interchange benefits. Even if the value is (0), you should pass the field to qualify for Level 3."},"merchant_product_code":{"type":"string","description":"Merchant defined product code (max 12 characters).","maxLength":12},"quantity":{"type":"number","format":"decimal","description":"The number of items purchased. Must be greater than 0.","minimum":1,"maximum":99},"unit_of_measure":{"type":"string","description":"The unit of measure of the purchased item (max 3 characters).","maxLength":3}}}}}},"tags":{"type":"object","title":"tags","additionalProperties":{"type":"string"},"description":"Include up to 50 `key: value` pairs to annotate requests with custom metadata.\n- Maximum character length for individual `keys` is 40.\n- Maximum character length for individual `values` is 500.\n(For example, `order_number: 25`, `item_type: produce`, `department: sales`)","nullable":true},"currency":{"type":"string","description":"ISO 4217 3-letter currency code.","enum":["CAD","USD"]},"transfersAuthorizationsCreatedVia":{"type":"string","description":"Gives more information about the product flow that was used to create the resource. Finix retains the right to add additional enums for this field without it being a breaking change.","default":"UNKNOWN","enum":["CARD_PRESENT_SEMI_INTEGRATED_API","CARD_PRESENT_STANDALONE","CARD_PRESENT_STANDALONE_MANUAL_ENTRY","CARD_PRESENT_IOS_APP","CARD_PRESENT_IOS_APP_MANUAL_ENTRY","CARD_PRESENT_IOS_D135_SDK","CARD_PRESENT_ANDROID_APP","CARD_PRESENT_ANDROID_APP_MANUAL_ENTRY","CARD_PRESENT_ANDROID_D135_SDK","CHECKOUT_FORM","CYBERSOURCE","PAYMENT_LINK","PAYOUT_LINK","SUBSCRIPTION","UNKNOWN","VIRTUAL_TERMINAL"]},"failure_code":{"type":"string","description":"The code of the failure so the decline can be handled programmatically. For more info on how to handle the failure, see [Failure Codes](/additional-resources/developers/implementation-and-testing/failure-codes).","nullable":true},"failure_message":{"type":"string","description":"A human-readable description of why the transaction was declined. This will also include a suggestion on how to complete the payment.","nullable":true},"fee_transfer":{"type":"integer","format":"int64","description":"The minimum amount of the `Transfer` you'd like to collect as your fee in cents. Defaults to zero (must be less than or equal to the `amount`).\n- If the fees applied by the 'Fee Profile' are ***higher*** than the value passed in 'fee', 'fee' will not be applied and have no effect.\n- If the fees applied by the 'Fee Profile' are ***lower*** than the value passed in 'fee', an additional fee is be applied, in addition to the fees generated by the `Fee Profile`.\n    - The additional fee is equal to the difference between the value passed in 'fee' and the fees generated by the `Fee Profile`."},"funds_flow_type":{"type":"string","description":"The type of disbursement to perform. Defaults to `GENERAL_PAYOUT`.\n","enum":["GENERAL_PAYOUT","ME_TO_ME","GOVERNMENT"],"nullable":true},"idempotency_id":{"type":"string","description":"Pass any randomly generated or internal ID to [idempotently](/api/section/idempotent-requests) identify `Transfers`, `Authorizations`, or refund requests.","nullable":true},"country":{"type":"string","enum":["ABW","AFG","AGO","AIA","ALA","ALB","AND","ARE","ARG","ARM","ASM","ATA","ATF","ATG","AUS","AUT","AZE","BDI","BEL","BEN","BES","BFA","BGD","BGR","BHR","BHS","BIH","BLM","BLR","BLZ","BMU","BOL","BRA","BRB","BRN","BTN","BVT","BWA","CAF","CAN","CCK","CHE","CHL","CHN","CIV","CMR","COD","COG","COK","COL","COM","CPV","CRI","CUB","CUW","CXR","CYM","CYP","CZE","DEU","DJI","DMA","DNK","DOM","DZA","ECU","EGY","ERI","ESH","ESP","EST","ETH","FIN","FJI","FLK","FRA","FRO","FSM","GAB","GBR","GEO","GGY","GHA","GIB","GIN","GLP","GMB","GNB","GNQ","GRC","GRD","GRL","GTM","GUF","GUM","GUY","HKG","HMD","HND","HRV","HTI","HUN","IDN","IMN","IND","IOT","IRL","IRN","IRQ","ISL","ISR","ITA","JAM","JEY","JOR","JPN","KAZ","KEN","KGZ","KHM","KIR","KNA","KOR","KWT","LAO","LBN","LBR","LBY","LCA","LIE","LKA","LSO","LTU","LUX","LVA","MAC","MAF","MAR","MCO","MDA","MDG","MDV","MEX","MHL","MKD","MLI","MLT","MMR","MNE","MNG","MNP","MRT","MSR","MTQ","MUS","MWI","MYS","MYT","NAM","NCL","NER","NFK","NGA","NIC","NIU","NLD","NOR","NPL","NRU","NZL","OMN","PAK","PAN","PCN","PER","PHL","PLW","PNG","POL","PRI","PRK","PRT","PRY","PSE","PYF","QAT","REU","ROU","RUS","RWA","SAU","SDN","SEN","SGP","SGS","SHN","SJM","SLB","SLE","SLV","SMR","SOM","SPM","SRB","SSD","STP","SUR","SVK","SVN","SWE","SWZ","SXM","SYC","SYR","TCA","TCD","TGO","THA","TJK","TKL","TKM","TLS","TON","TTO","TUN","TUR","TUV","TWN","TZA","UGA","UKR","UMI","URY","USA","UZB","VAT","VCT","VEN","VGB","VIR","VNM","VUT","WLF","WSM","XKX","YEM","ZAF","ZMB","ZWE"],"nullable":true},"address":{"type":"object","properties":{"line1":{"type":"string","minLength":1,"description":"First line of the address (max 35 characters).","nullable":true},"line2":{"type":"string","minLength":1,"description":"Second line of the address (max 35 characters).","nullable":true},"city":{"type":"string","minLength":1,"description":"City (max 20 characters).","nullable":true},"region":{"type":"string","minLength":1,"description":"2-letter State code.","nullable":true},"postal_code":{"type":"string","minLength":1,"description":"Zip or Postal code (max 7 characters).","nullable":true},"country":{"$ref":"#/components/schemas/country"}},"required":["city","country","line1","postal_code","region"]},"ip_address_v4":{"type":"string","description":"The card brands require the customer's IP address for online gaming clients. Only supports Internet Protocol version 4 (IPv4).","example":"192.168.1.1","nullable":true},"ip_address_details":{"type":"object","description":"This field returns `null` for all users except `ROLE_PLATFORM` users.","properties":{"ipv4":{"type":"object","properties":{"estimated_location":{"$ref":"#/components/schemas/address"},"ip":{"$ref":"#/components/schemas/ip_address_v4"},"latitude":{"type":"number","description":"Geo-location based on the IP address."},"longitude":{"type":"number","description":"Geo-location based on the IP address."}}}}},"pull_transfer_id":{"type":"string","description":"The ID of the corresponding pull `Transfer` linked in a `ME_TO_ME` transaction.\n","nullable":true},"statement_descriptor":{"type":"string","maxLength":22,"nullable":true,"description":"The description of the `Merchant` that appears on the buyer's bank or card statement."},"application_link":{"type":"object","description":"Link to the `Application` the request was made under.","properties":{"href":{"type":"string","minLength":1}}},"self":{"type":"object","description":"Link to the resource that was used in the request.","properties":{"href":{"type":"string","minLength":1}}},"transfer":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/id"},"created_at":{"$ref":"#/components/schemas/created_at"},"updated_at":{"$ref":"#/components/schemas/updated_at"},"additional_buyer_charges":{"description":"Details about any [Buyer Charges](../../../../guides/online-payments/payment-features/buyer-charges) included in the `Transfer`. The buyer charges are mutually exclusive.\n","allOf":[{"$ref":"#/components/schemas/additional_buyer_charges"}]},"additional_healthcare_data":{"$ref":"#/components/schemas/additional_healthcare_data"},"additional_purchase_data":{"$ref":"#/components/schemas/additional_purchase_data"},"address_verification":{"type":"string","description":"Details the results of the address verification checks.","nullable":true,"enum":["POSTAL_CODE_AND_STREET_MATCH","STREET_MATCH","POSTAL_CODE_MATCH","NO_ADDRESS","NO_MATCH","NOT_SUPPORTED","UNKNOWN"]},"amount":{"type":"number","format":"double","description":"The total amount that will be debited. The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00).\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`).\n","example":2.393},"amount_requested":{"type":"number","format":"double","description":"Details the `amount` that was requested to get debited from the `source` when the transaction was created.  The value may be returned as either:\n\n- an **integer** (`int32`) in cents for all transfer types except `FEE` (e.g., `100` = $1.00)\n- a **number** (`double`) if `Transfer#type` is `FEE` for a fractional amount (e.g., `2.393`)\n","example":2.393},"application":{"type":"string","minLength":1,"description":"ID of the `Application` associated with the resource."},"bank_return_details":{"type":"object","description":"Details about a transfer that was returned and was unable to be processed. Only present when `state` is `RETURNED`","nullable":true,"properties":{"reason_code":{"type":"string","description":"Return response code from the bank."},"reason_message":{"type":"string","description":"Detailed message explaining reason for the return."},"reason_title":{"type":"string","description":"Short message categorizing reason for the return."}}},"card_present_details":{"type":"object","description":"Details needed to process card present transactions.","nullable":true,"properties":{"approval_code":{"type":"string","description":"Unique ID used to identify the approval of the `Transfer`.","nullable":true},"brand":{"type":"string","description":"The brand of the card saved in the `Payment Instrument`.","nullable":true},"emv_data":{"type":"object","description":"Encrypted card data used to process the transaction.","nullable":true,"properties":{"application_identifier":{"type":"string","description":"ID of the application used in the transaction. Tag 9F06 from the EMVCo standard."},"application_label":{"type":"string","description":"EMV application label. Tag 50 from the EMVCo standard."},"application_preferred_name":{"type":"string","description":"EMV application label with formatting (if provided). Tag 9F12 from the EMVCo standard.","nullable":true},"application_transaction_counter":{"type":"string","description":"Transaction number for the EMV application. Tag 9F36 from the EMVCo standard."},"cryptogram":{"type":"string","description":"Cryptogram returned by the card. Tag 9F26 of the EMVCo standard."},"issuer_code_table_index":{"type":"string","description":"The alphabet code table (according to ISO 8859) used by the EMV application (if provided). Tag 9F11.","nullable":true},"pin_verified":{"type":"boolean","description":"Whether the cardholder's PIN number was verified."},"tags":{"$ref":"#/components/schemas/tags"}}},"entry_mode":{"type":"string","description":"Details of the card payment method used to process the transaction.\n\nThe possible enums are:\n\n- UNKNOWN - The method by which the payment card was used is unknown.\n- SWIPED - The card was swiped through a POS terminal.\n- CONTACTLESS - The payment was made by tapping a card on a POS terminal.\n- CHIP_ENTRY - The payment card was inserted into a card reader.\n","enum":["UNKNOWN","SWIPED","CONTACTLESS","CHIP_ENTRY"],"nullable":true},"masked_account_number":{"type":"string","description":"Last four digits of the bank account number.","nullable":true},"name":{"type":"string","description":"The name of the bank account or card owner.","nullable":true},"payment_type":{"type":"string","description":"The type of `Payment Instrument` used in the transaction (or the original payment)."}}},"currency":{"$ref":"#/components/schemas/currency"},"created_via":{"$ref":"#/components/schemas/transfersAuthorizationsCreatedVia"},"destination":{"type":"string","description":"ID of the `Payment Instrument` where funds will be sent.","nullable":true},"device":{"type":"string","description":"The ID of the `Device` resource the `Transfer` was created under."},"externally_funded":{"type":"string","description":"Details if the `Transfer` will be settled externally by card processors."},"failure_code":{"$ref":"#/components/schemas/failure_code"},"failure_message":{"$ref":"#/components/schemas/failure_message"},"fee":{"$ref":"#/components/schemas/fee_transfer"},"fee_profile":{"type":"string","description":"The ID of the `Fee Profile` that will be used for calculating fees for this transfer."},"fee_type":{"type":"string","enum":["ACH_BASIS_POINTS","ACH_CREDIT_RETURN_FIXED_FEE","ACH_DEBIT_RETURN_FIXED_FEE","ACH_FIXED","ACH_MAX_FIXED","ACH_NOTICE_OF_CHANGE_CREDIT_FIXED","ACH_NOTICE_OF_CHANGE_DEBIT_FIXED","AMERICAN_EXPRESS_ASSESSMENT_BASIS_POINTS","AMERICAN_EXPRESS_BASIS_POINTS","AMERICAN_EXPRESS_FIXED","AMERICAN_EXPRESS_INTERCHANGE","ANCILLARY_FIXED_FEE_PRIMARY","ANCILLARY_FIXED_FEE_SECONDARY","APPLICATION_FEE","CARD_BASIS_POINTS","CARD_FIXED","CARD_INTERCHANGE","COMPLIANCE_FORMS_OVERDUE_FIXED","CUSTOM","DINERS_CLUB_BASIS_POINTS","DINERS_CLUB_FIXED","DINERS_CLUB_INTERCHANGE","DISCOVER_ASSESSMENT_BASIS_POINTS","DISCOVER_BASIS_POINTS","DISCOVER_DATA_USAGE_FIXED","DISCOVER_FIXED","DISCOVER_INTERCHANGE","DISCOVER_NETWORK_AUTHORIZATION_FIXED","DISPUTE_FIXED_FEE","DISPUTE_INQUIRY_FIXED_FEE","EFT_MAX_FIXED","INTERAC_BASIS_POINTS","INTERAC_FIXED","JCB_BASIS_POINTS","JCB_FIXED","JCB_INTERCHANGE","MASTERCARD_ACQUIRER_FEE_BASIS_POINTS","MASTERCARD_ASSESSMENT_OVER_1K_BASIS_POINTS","MASTERCARD_ASSESSMENT_UNDER_1K_BASIS_POINTS","MASTERCARD_BASIS_POINTS","MASTERCARD_FIXED","MASTERCARD_INTERCHANGE","QUALIFIED_TIER_BASIS_POINTS_FEE","QUALIFIED_TIER_FIXED_FEE","SETTLEMENT_FUNDING_TRANSFER_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_ACH_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_ACH_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_EFT_CREDIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_DEBIT_RETURN_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_FIXED","SETTLEMENT_FUNDING_TRANSFER_EFT_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_FIXED","SETTLEMENT_FUNDING_TRANSFER_INSTANT_PAYOUT_CARD_MAX_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_CREDIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_NOC_DEBIT_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_BASIS_POINTS","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_FIXED","SETTLEMENT_FUNDING_TRANSFER_SAME_DAY_ACH_MAX_FIXED","SUBSCRIPTION_ACH_BASIS_POINTS","SUBSCRIPTION_ACH_FIXED","SUBSCRIPTION_ACH_MAX_FIXED","SUBSCRIPTION_CARD_BASIS_POINTS","SUBSCRIPTION_CARD_FIXED","SUBSCRIPTION_EFT_BASIS_POINTS","SUBSCRIPTION_EFT_FIXED","SUBSCRIPTION_EFT_MAX_FIXED","SUPPLEMENTAL_FEE_FIXED","VISA_ACQUIRER_PROCESSING_FIXED","VISA_ASSESSMENT_BASIS_POINTS","VISA_BASE_II_CREDIT_VOUCHER_FIXED","VISA_BASE_II_SYSTEM_FILE_TRANSMISSION_FIXED","VISA_BASIS_POINTS","VISA_CREDIT_VOUCHER_FIXED","VISA_FIXED","VISA_INTERCHANGE","VISA_KILOBYTE_ACCESS_FIXED","VISA_TRANSACTION_INTEGRITY_FIXED"],"description":"Details the type of fee if the `Transfer` includes a `fee`."},"funds_flow_type":{"$ref":"#/components/schemas/funds_flow_type"},"idempotency_id":{"$ref":"#/components/schemas/idempotency_id"},"ip_address_details":{"$ref":"#/components/schemas/ip_address_details"},"merchant":{"type":"string","description":"The ID of the `Merchant` resource the `Transfer` was created under.","example":"MUxxxxxxxxxxxxxxxxxxxxxxx"},"merchant_identity":{"type":"string","example":"IDxxxxxxxxxxxxxxxxxxxxxxxx","description":"The ID of `Identity` resource used by the `Merchant` the `Transfer` was created under."},"network_details":{"type":"object","description":"Contains network-specific fields used by issuers to identify transactions.","properties":{"brand":{"type":"string","description":"Card brand associated with the saved payment instrument.","example":"VISA"},"authorization_code":{"type":"string","description":"Code returned by the issuing bank when a transaction is authorized.","example":840735},"acquirer_reference_number":{"type":"string","description":"Unique identifier banks use to trace chargebacks or refunds. Available only for Mastercard transactions; otherwise returns `null`.","nullable":true,"example":521600805857}}},"operation_key":{"type":"string","enum":["CARD_NOT_PRESENT_CAPTURE","CARD_NOT_PRESENT_REFUND","CARD_NOT_PRESENT_SALE","CARD_NOT_PRESENT_UNREFERENCED_REFUND","CARD_PRESENT_AUTHORIZATION","CARD_PRESENT_DEBIT","CARD_PRESENT_SALE","CARD_PRESENT_UNREFERENCED_REFUND","INSTANT_APPLICATION_FUNDING_PULL_FROM_ACH","INSTANT_APPLICATION_FUNDING_PULL_FROM_CARD","INSTANT_APPLICATION_FUNDING_PULL_FROM_FED_NOW","INSTANT_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_ACH","INSTANT_APPLICATION_FUNDING_PUSH_TO_CARD","INSTANT_APPLICATION_FUNDING_PUSH_TO_FED_NOW","INSTANT_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_ACH","INSTANT_MERCHANT_FUNDING_PULL_FROM_FED_NOW","INSTANT_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_ACH","INSTANT_MERCHANT_FUNDING_PUSH_TO_CARD","INSTANT_MERCHANT_FUNDING_PUSH_TO_FED_NOW","INSTANT_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT_ADJUSTMENT","PULL_FROM_CARD","PUSH_TO_CARD","SALE","STANDARD_APPLICATION_FUNDING_PULL_FROM_ACH","STANDARD_APPLICATION_FUNDING_PULL_FROM_CARD","STANDARD_APPLICATION_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_ACH","STANDARD_APPLICATION_FUNDING_PUSH_TO_CARD","STANDARD_APPLICATION_FUNDING_PUSH_TO_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_ACH","STANDARD_MERCHANT_FUNDING_PULL_FROM_CARD","STANDARD_MERCHANT_FUNDING_PULL_FROM_SAME_DAY_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_ACH","STANDARD_MERCHANT_FUNDING_PUSH_TO_CARD","STANDARD_MERCHANT_FUNDING_PUSH_TO_SAME_DAY_ACH","UNREFERENCED_REFUND"],"description":"Details the operation that's performed in the transaction.","nullable":true},"parent_transfer":{"type":"string","description":"- ID of the original parent `Transfer` where the transaction occurred.\n- Only is present when `type` is `REVERSAL` or `FEE`.","nullable":true},"parent_transfer_trace_id":{"type":"string","description":"- The `trace_id` of the original parent `Transfer` where the transaction occurred.\n- Only visible when `type` is `REVERSAL` or `FEE`.","nullable":true},"pull_transfer_id":{"$ref":"#/components/schemas/pull_transfer_id"},"messages":{"type":"array","description":"Message field that provides additional details.","default":[],"items":{"type":"string"}},"raw":{"description":"Raw response from the processor.","anyOf":[{"type":"object","nullable":true},{"type":"string","nullable":true}]},"ready_to_settle_at":{"type":"string","format":"date-time","description":"The timestamp indicating when the `Transfer` is ready to be settled.","nullable":true},"receipt_last_printed_at":{"type":"string","format":"date-time","description":"Timestamp when the receipt was last printed.","nullable":true},"security_code_verification":{"type":"string","description":"Details the results of the Card Verification Code check.","enum":["MATCHED","UNKNOWN","UNMATCHED"]},"source":{"type":"string","description":"The ID of the `Payment Instrument` that will be debited and performing the `Transfer`.","nullable":true},"split_transfers":{"type":"array","description":"Array containing the resource IDs of the `Split Transfers` generated from the `Transfer`.\n\nFor standard split transactions, this contains IDs of `Split Transfers` created from the parent `Transfer`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) on split transactions:\n- When a `MERCHANT_DEBIT` or `MERCHANT_CREDIT` adjustment `Transfer` is created for a [Dispute](/api/disputes) on a split transaction, this array contains the IDs of `Split Transfers` created for each participant.\n- The `Split Transfers` are created proportionally based on each merchant's share of the original sale.\n\nFor more information, see [Split Transactions - Disputes](../../../../guides/online-payments/payment-features/split-transactions#disputes).\n","default":[],"items":{"type":"string"}},"state":{"type":"string","enum":["CANCELED","PENDING","FAILED","SUCCEEDED","UNKNOWN","RETURNED"],"description":"The status of the `Transfer`."},"statement_descriptor":{"$ref":"#/components/schemas/statement_descriptor"},"subtype":{"type":"string","description":"Additional information describing the `payment_type`.\n\nFor [dispute adjustment transfers](/api/disputes/listdisputesadjustments) (`type: DISPUTE`):\n- `MERCHANT_DEBIT`: Funds are pulled from the merchant(s) when a chargeback occurs. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_DEBIT`.\n- `MERCHANT_CREDIT`: Funds are returned to the merchant(s) when a `Dispute` is ruled in their favor. For split transactions, this creates `Split Transfers` with `type: DISPUTE_MERCHANT_CREDIT`.\n","enum":["API","APPLICATION_FEE","DISPUTE","MERCHANT_CREDIT","MERCHANT_CREDIT_ADJUSTMENT","MERCHANT_DEBIT","MERCHANT_DEBIT_ADJUSTMENT","PLATFORM_CREDIT","PLATFORM_CREDIT_ADJUSTMENT","PLATFORM_DEBIT","PLATFORM_DEBIT_ADJUSTMENT","PLATFORM_FEE","SETTLEMENT_MERCHANT","SETTLEMENT_NOOP","SETTLEMENT_PARTNER","SETTLEMENT_PLATFORM","SPLIT_PAYOUT","SPLIT_PAYOUT_ADJUSTMENT","SYSTEM"]},"supplemental_fee":{"type":"string","description":"Amount in cents for which an additional fee will be created in addition to any fees created from the assigned fee profile.","nullable":true},"tags":{"$ref":"#/components/schemas/tags"},"tip_amount":{"type":"integer","description":"The tip amount included in the total amount.","nullable":true},"trace_id":{"type":"string","description":"Trace ID of the `Transfer`. The processor sends back the `trace_id` so you can track the `Transfer` end-to-end.","nullable":true},"type":{"type":"string","description":"Type of `Transfer`.","enum":["DEBIT","CREDIT","REVERSAL","FEE","ADJUSTMENT","DISPUTE","RESERVE","SETTLEMENT","UNKNOWN"]},"third_party_details":{"type":"object","description":"Details about the third-party processor associated with the `Transfer`.","nullable":true,"properties":{"external_trace_id":{"type":"string","description":"The trace ID returned by the third-party processor used to identify the `Transfer`.","nullable":true},"type":{"type":"string","description":"The name of the third-party processor associated with the `Transfer`.","nullable":true,"enum":["CYBERSOURCE"]}}},"_links":{"type":"object","properties":{"application":{"$ref":"#/components/schemas/application_link"},"destination":{"type":"object","description":"Link to the `Payment Instrument` where funds are getting sent.","properties":{"href":{"type":"string"}}},"device":{"type":"object","description":"Link to the `Device` the request was made under.","properties":{"href":{"type":"string"}}},"disputes":{"type":"object","description":"Link to the `Dispute` the request was made under.","properties":{"href":{"type":"string"}}},"fee_profile":{"type":"object","description":"Link to the `fee_profile` the request was made under.","properties":{"href":{"type":"string"}}},"fees":{"type":"object","description":"Link to the `fees` the request is associated with.","properties":{"href":{"type":"string"}}},"merchant_identity":{"type":"object","description":"Link to the `Identity` the `Merchant` was created under and the `Transfer` was submitted with.","properties":{"href":{"type":"string"}}},"payment_instruments":{"type":"object","description":"Link to the `Payment Instrument` associated with the Transfer.","properties":{"href":{"type":"string"}}},"disputed_transfer":{"type":"object","description":"Link to the `Transfer` the `Dispute` is about.","properties":{"href":{"type":"string"}}},"parent":{"type":"object","description":"Link to the original resource that was used in the request.","properties":{"href":{"type":"string"}}},"reversals":{"type":"object","description":"Link to the `reversals` associated with the `Transfer`.","properties":{"href":{"type":"string"}}},"self":{"$ref":"#/components/schemas/self"},"source":{"type":"object","description":"Link to the `Payment Instrument` the `Transfer` was created under.","properties":{"href":{"type":"string"}}}}}}}}}},"schemaResolvedErrors":[]},"children":[]}]}]}]},"headings":[{"value":"Refunding with the API","id":"refunding-with-the-api","depth":1},{"value":"Refunding Online Payments","id":"refunding-online-payments","depth":2},{"value":"Refunding Card-Present Payments","id":"refunding-card-present-payments","depth":2},{"value":"Referenced Refunds","id":"referenced-refunds","depth":3},{"value":"Unreferenced Refunds","id":"unreferenced-refunds","depth":3}],"frontmatter":{"seo":{"title":"Refunding with the API","description":"Issue full or partial refunds programmatically using the Finix API.","image":"/assets/guides-after-the-payment-refunds-api.2ac1095a7db6e8f625b2de77b817efc70d5a72558e9526da00cb1dfcde649538.04fe652d.png"},"keywords":{"includes":["API refund","referenced refund","unreferenced refund","card present refund","online refund","card-not-present refund"]}},"lastModified":"2026-05-18T13:15:53.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/after-the-payment/refunds/api","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}