# Dispute dynamic flow entry point Retrieves the JSON for initiating the dispute flow. Use this endpoint with Wise's Dynamic Flow framework. The JSON response must be passed into the Dynamic Flow framework, which handles the multi-step dispute submission including the generation of subsequent pages and the creation of the dispute. Setting up the API You will need to implement a GET API with the following format: GET https://{{yourApiUrl}}/v3/spend/profiles/{{profileId}}/dispute-form/flows/step/{{scheme}}/{{reason}}?transactionId={{transactionId}} This API should forward the call to: POST https://{{wiseUrl}}/v3/spend/profiles/{{profileId}}/dispute-form/flows/step/{{scheme}}/{{reason}}?transactionId={{transactionId}} This is required as the dynamic flow returned by Wise will automatically be configured to call your GET API. Use baseUrl or fetcher as part of the dynamic flow setup to redirect the Dynamic Flow JavaScript library to your domain. For a full integration guide, including example backend implementation and styling, see Disputes via Dynamic Flow. Endpoint: POST /v3/spend/profiles/{profileId}/dispute-form/flows/step/{scheme}/{reason} Security: UserToken ## Path parameters: - `profileId` (integer, required) Your profile ID. Example: 14547572 - `scheme` (string, required) The network of the card that was used to make this transaction. Enum: "MASTERCARD", "VISA" - `reason` (string, required) Dispute reason code supplied by the dispute reasons endpoint. Example: "TROUBLE_WITH_GOODS_SERVICES" ## Query parameters: - `transactionId` (string, required) The ID of the transaction being disputed. Can be a comma-separated list of IDs if the reason code has the supportsMultipleTransactions flag. Example: "6789" ## Request fields (application/json): - `email` (string) Email used to receive communications regarding the dispute from Wise (e.g. your support team's email). Example: "support@partner.com"