# Client transactions

## Get transactions of a client

> The transactions are sorted by creation date, in descending order. The most recently created transactions appears first.\<br /> The transactions can be filtered by date using the \`from\` and \`to\` parameters. \<br /> If the \`from\` and \`to\` parameters are not provided, the transactions are fetched from the beginning until now.\<br /> The transactions can be paginated using the \`limit\` parameter. \<br /> If there are more transactions to fetch with the provided parameters, the response will contain a \`hasNextPage\` field set to \`true\`.\<br /> In order to fetch the next page, the \`to\` parameter must be set to the \`createdAt\` field of the last transaction of the current page.<br>

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"parameters":{"filterTransactionFrom":{"name":"from","in":"query","required":false,"description":"The date from which the transactions are fetched.<br /> The comparison is made using the `createdAt` field of the transactions.<br /> The comparison is **inclusive**, meaning that the transactions created at the provided date are **included** in the result.<br /> The value is in ISO 8601 format.<br /> If the value is not provided, the transactions are fetched from the beginning.\n","schema":{"type":"string","format":"date-time"}},"filterTransactionTo":{"name":"to","in":"query","required":false,"description":"The date to which the transactions are fetched.<br /> The comparison is made using the `createdAt` field of the transactions.<br /> The comparison is **exlusive**, meaning that the transactions created at the provided date are **not included** in the result.<br /> The value is in ISO 8601 format.<br /> If the value is not provided, the transactions are fetched until now.\n","schema":{"type":"string","format":"date-time"}},"filterTransactionLimit":{"name":"limit","in":"query","required":false,"description":"The maximum number of transactions to fetch.<br /> The value must be a positive integer.<br /> If the value is not provided, the default value is 10.<br/> The maximum value is 100.\n","schema":{"type":"integer","format":"int32"}}},"schemas":{"Transaction":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the transaction."},"transactionType":{"type":"string","description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"status":{"type":"string","description":"The status of the transaction. Possible values are:\n  - IDLE: The transaction has been created and is waiting for the initial funds transfer to be initiated,\n  - INITIATED: transaction has been initiated, it is in progress of resolution by Rialto,\n  - COMPLETED: The transaction has been completed,\n  - CANCELLED: The transaction has been cancelled,\n  - DISMISSED: The transaction has been dismissed by Rialto.\n","enum":["IDLE","INITIATED","COMPLETED","CANCELLED","DISMISSED"]},"idempotencyKey":{"type":["string","null"],"description":"The idempotency key input at the transaction creation.<br /> It is only defined for transactions created by the API\n"},"originalAmount":{"type":"number","format":"float","description":"The original amount of the transaction.<br /> The value is always positive.\n"},"fiatCurrency":{"type":"string","description":"The fiat currency of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat currencies."},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchains."},"blockchainWalletId":{"type":"string","format":"uuid","description":"The blockchain wallet identifier of transaction."},"bankAccountId":{"type":"string","format":"uuid","description":"The bank account identifier of transaction.<br /> The fiat currency of the transaction is the one of the bank account.\n"},"wireReferenceOverride":{"type":["string","null"],"description":"In case of offramp, string that will replace the default wire reference.<br /> Use for specific cases of matching and integration on the client bank side.<br /> Field is optional.\n"},"additionalDetails":{"type":"object","description":"The additional details of the transaction.<br /> It can be used to store additional information about the transaction.\n","properties":{"sourceOfFundsDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the source of funds.<br /> Each key can be used in order to download the document.\n"},"businessJustificationDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the business justification.<br /> Each key can be used in order to download the document.\n"},"comments":{"type":"string","description":"Comments added by the user at the creation of the transaction."}}},"initiationInstruction":{"type":"object","description":"The initiation instruction of the transaction.<br /> It changes depending on the transaction type.<br />\n","properties":{"blockchainWallet":{"type":["object","null"],"description":"The Rialto blockchain wallet to which the initiation transfer must be done.<br /> Only present if the transaction is an off-ramp transaction, i.e. transaction type **OFFRAMP**.\n","properties":{"address":{"type":"string","description":"The blockchain wallet address."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the wallet."}}},"bankAccount":{"type":["object","null"],"description":"The Rialto bank account to which the initiation transfer must be done.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n","properties":{"countryCode":{"type":"string","description":"The country code of the bank account."},"iban":{"type":"string","description":"The IBAN of the bank account."},"bic":{"type":"string","description":"The BIC of the bank account."},"intermediaryBic":{"type":["string","null"],"description":"The intermediary BIC of the bank account."},"beneficiary":{"type":"object","description":"The beneficiary of the bank account.","properties":{"name":{"type":"string","description":"The name of the beneficiary."},"address":{"type":["string","null"],"description":"The address of the beneficiary."},"city":{"type":["string","null"],"description":"The city of the beneficiary."},"postcode":{"type":"string","description":"The postcode of the beneficiary."},"countryCode":{"type":"string","description":"The country code of the beneficiary."}}}}},"wireReference":{"type":["string","null"],"description":"The wire reference to include in the initiation transfer to Rialto bank account.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n"}}},"createdAt":{"type":"string","format":"date-time","description":"The creation date of the transaction."},"initiation":{"type":["object","null"],"description":"The initiation object of the transaction.<br /> Only present if the transaction has been initiated, i.e. in statuses **INITIATED** or **COMPLETED**.<br /> Object will also be present if the transaction has been dismissed by Rialto after initiation, i.e. in status **DISMISSED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the initial funds transfer to Rialto.<br /> A margin of 1% with respect to the original amount is allowed.<br /> The value is always positive.\n"},"bpsFee":{"type":"number","format":"uint32","description":"The previsionnal fee of the transaction in BPS (basis points).<br /> The volume part of the fee amount can be derived by applying the BPS fee to the amount of the initial funds transfer.<br /> The value is always positive.\n"},"fixedFee":{"type":"number","format":"uint32","description":"The previsionnal fixed fee applied to the transaction.<br /> The fixed fee is applied after the calculation of the volume fee in the total fee computation.<br /> This fee is only applied on offramps, for flows originating from usd or euro stablecoins.<br /> The value is always positive.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the funds were received by Rialto, activating the transaction"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the initiation of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the initiation of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"}}},"completion":{"type":["object","null"],"description":"The completion object of the transaction.<br /> Only present if the transaction is completed, i.e. in status **COMPLETED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the transfer to the user.<br /> The value is always positive.\n"},"conversionRate":{"type":"number","format":"float","description":"The conversion rate of the transaction.<br /> For off-ramp transactions, it is the rate of the blockchain asset to fiat currency.<br /> For on-ramp transactions, it is the rate of the fiat currency to blockchain asset.<br/> The value is always positive.\n"},"volumeConsumption":{"type":"number","format":"float","description":"The consumption of the monthly volume of the transaction. <br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the completion of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the completion of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was completed"}}},"cancelledAt":{"type":["string","null"],"format":"date-time","description":"The date when the transaction was cancelled.<br /> Only present if the transaction was cancelled, i.e. in status **CANCELLED**.\n"},"dismissal":{"type":["object","null"],"description":"The dismissal object of the transaction.<br /> A transaction can be dismissed by Rialto at any time in case of a problem.<br /> Only present if the transaction was dismissed by Rialto, i.e. in status **DISMISSED**.\n","properties":{"reason":{"type":"string","description":"The reason why the transaction was dismissed."},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was dismissed"}}},"clientId":{"type":"string","format":"uuid","description":"The unique identifier of the client."},"clientType":{"type":"string","enum":["INDIVIDUAL","ENTITY"],"description":"The type of the client. <br />\n  - INDIVIDUAL: The client is an individual. <br />\n  - ENTITY: The client is an entity.\n"}}}}},"paths":{"/clients/{clientId}/transactions":{"get":{"summary":"Get transactions of a client","description":"The transactions are sorted by creation date, in descending order. The most recently created transactions appears first.<br /> The transactions can be filtered by date using the `from` and `to` parameters. <br /> If the `from` and `to` parameters are not provided, the transactions are fetched from the beginning until now.<br /> The transactions can be paginated using the `limit` parameter. <br /> If there are more transactions to fetch with the provided parameters, the response will contain a `hasNextPage` field set to `true`.<br /> In order to fetch the next page, the `to` parameter must be set to the `createdAt` field of the last transaction of the current page.\n","operationId":"getClientTransactions","tags":["Client transactions"],"parameters":[{"$ref":"#/components/parameters/filterTransactionFrom"},{"$ref":"#/components/parameters/filterTransactionTo"},{"$ref":"#/components/parameters/filterTransactionLimit"},{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A JSON array of transactions.","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Transaction"}},"hasNextPage":{"type":"boolean","description":"Whether there are more transactions to fetch with the provided parameters."}}}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","description":"The reason why the request is invalid."},"parameterErrors":{"type":["object","null"],"description":"The errors related to the parameters of the request.<br /> The object is null if there is no error related to the parameters.\n"}}}}}},"401":{"description":"Invalid API key"},"404":{"description":"The client is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Creates a transaction for a client

> Creates a new transaction on the Rialto platform for a client.\<br /> The transaction can be either an on-ramp (fiat to blockchain asset) or off-ramp (blockchain asset to fiat) transaction.\<br /> The transaction is created in status \*\*IDLE\*\* and is waiting for the initial funds transfer to be initiated.<br>

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"requestBodies":{"CreateTransactionBody":{"description":"A JSON object containing the transaction parameters","required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"transactionType":{"type":"string","description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"transactionAmount":{"type":"number","format":"float","description":"The amount of the transaction.<br /> The value is always positive.\n"},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"bankAccountId":{"type":"string","format":"uuid","description":"The identifier of the selected bank account for the transaction."},"blockchainWalletId":{"type":"string","format":"uuid","description":"The identifier of the selected blockchain wallet for the transaction"},"sourceOfFundsDocuments":{"type":"array","items":{"type":"string"},"description":"The filenames of the documents related to the source of funds of the transaction.<br /> The documents must be uploaded before submitting the onboarding.<br /> Field is optional.\n"},"businessJustificationDocuments":{"type":"array","items":{"type":"string"},"description":"The filenames of the documents related to the business justification of the transaction.<br /> The documents must be uploaded before submitting the onboarding.<br /> Field is optional.\n"},"comments":{"type":"string","description":"Comments added by the user at the creation of the transaction.<br /> Field is optional.\n"},"wireReferenceOverride":{"type":["string","null"],"description":"In case of offramp, string that will replace the default wire reference.<br /> Use for specific cases of matching and integration on the client bank side.<br /> Field is optional.\n"}},"required":["transactionType","transactionAmount","blockchainAsset","bankAccountId","blockchainWalletId"]}}}}},"schemas":{"Transaction":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the transaction."},"transactionType":{"type":"string","description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"status":{"type":"string","description":"The status of the transaction. Possible values are:\n  - IDLE: The transaction has been created and is waiting for the initial funds transfer to be initiated,\n  - INITIATED: transaction has been initiated, it is in progress of resolution by Rialto,\n  - COMPLETED: The transaction has been completed,\n  - CANCELLED: The transaction has been cancelled,\n  - DISMISSED: The transaction has been dismissed by Rialto.\n","enum":["IDLE","INITIATED","COMPLETED","CANCELLED","DISMISSED"]},"idempotencyKey":{"type":["string","null"],"description":"The idempotency key input at the transaction creation.<br /> It is only defined for transactions created by the API\n"},"originalAmount":{"type":"number","format":"float","description":"The original amount of the transaction.<br /> The value is always positive.\n"},"fiatCurrency":{"type":"string","description":"The fiat currency of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat currencies."},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchains."},"blockchainWalletId":{"type":"string","format":"uuid","description":"The blockchain wallet identifier of transaction."},"bankAccountId":{"type":"string","format":"uuid","description":"The bank account identifier of transaction.<br /> The fiat currency of the transaction is the one of the bank account.\n"},"wireReferenceOverride":{"type":["string","null"],"description":"In case of offramp, string that will replace the default wire reference.<br /> Use for specific cases of matching and integration on the client bank side.<br /> Field is optional.\n"},"additionalDetails":{"type":"object","description":"The additional details of the transaction.<br /> It can be used to store additional information about the transaction.\n","properties":{"sourceOfFundsDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the source of funds.<br /> Each key can be used in order to download the document.\n"},"businessJustificationDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the business justification.<br /> Each key can be used in order to download the document.\n"},"comments":{"type":"string","description":"Comments added by the user at the creation of the transaction."}}},"initiationInstruction":{"type":"object","description":"The initiation instruction of the transaction.<br /> It changes depending on the transaction type.<br />\n","properties":{"blockchainWallet":{"type":["object","null"],"description":"The Rialto blockchain wallet to which the initiation transfer must be done.<br /> Only present if the transaction is an off-ramp transaction, i.e. transaction type **OFFRAMP**.\n","properties":{"address":{"type":"string","description":"The blockchain wallet address."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the wallet."}}},"bankAccount":{"type":["object","null"],"description":"The Rialto bank account to which the initiation transfer must be done.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n","properties":{"countryCode":{"type":"string","description":"The country code of the bank account."},"iban":{"type":"string","description":"The IBAN of the bank account."},"bic":{"type":"string","description":"The BIC of the bank account."},"intermediaryBic":{"type":["string","null"],"description":"The intermediary BIC of the bank account."},"beneficiary":{"type":"object","description":"The beneficiary of the bank account.","properties":{"name":{"type":"string","description":"The name of the beneficiary."},"address":{"type":["string","null"],"description":"The address of the beneficiary."},"city":{"type":["string","null"],"description":"The city of the beneficiary."},"postcode":{"type":"string","description":"The postcode of the beneficiary."},"countryCode":{"type":"string","description":"The country code of the beneficiary."}}}}},"wireReference":{"type":["string","null"],"description":"The wire reference to include in the initiation transfer to Rialto bank account.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n"}}},"createdAt":{"type":"string","format":"date-time","description":"The creation date of the transaction."},"initiation":{"type":["object","null"],"description":"The initiation object of the transaction.<br /> Only present if the transaction has been initiated, i.e. in statuses **INITIATED** or **COMPLETED**.<br /> Object will also be present if the transaction has been dismissed by Rialto after initiation, i.e. in status **DISMISSED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the initial funds transfer to Rialto.<br /> A margin of 1% with respect to the original amount is allowed.<br /> The value is always positive.\n"},"bpsFee":{"type":"number","format":"uint32","description":"The previsionnal fee of the transaction in BPS (basis points).<br /> The volume part of the fee amount can be derived by applying the BPS fee to the amount of the initial funds transfer.<br /> The value is always positive.\n"},"fixedFee":{"type":"number","format":"uint32","description":"The previsionnal fixed fee applied to the transaction.<br /> The fixed fee is applied after the calculation of the volume fee in the total fee computation.<br /> This fee is only applied on offramps, for flows originating from usd or euro stablecoins.<br /> The value is always positive.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the funds were received by Rialto, activating the transaction"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the initiation of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the initiation of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"}}},"completion":{"type":["object","null"],"description":"The completion object of the transaction.<br /> Only present if the transaction is completed, i.e. in status **COMPLETED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the transfer to the user.<br /> The value is always positive.\n"},"conversionRate":{"type":"number","format":"float","description":"The conversion rate of the transaction.<br /> For off-ramp transactions, it is the rate of the blockchain asset to fiat currency.<br /> For on-ramp transactions, it is the rate of the fiat currency to blockchain asset.<br/> The value is always positive.\n"},"volumeConsumption":{"type":"number","format":"float","description":"The consumption of the monthly volume of the transaction. <br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the completion of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the completion of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was completed"}}},"cancelledAt":{"type":["string","null"],"format":"date-time","description":"The date when the transaction was cancelled.<br /> Only present if the transaction was cancelled, i.e. in status **CANCELLED**.\n"},"dismissal":{"type":["object","null"],"description":"The dismissal object of the transaction.<br /> A transaction can be dismissed by Rialto at any time in case of a problem.<br /> Only present if the transaction was dismissed by Rialto, i.e. in status **DISMISSED**.\n","properties":{"reason":{"type":"string","description":"The reason why the transaction was dismissed."},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was dismissed"}}},"clientId":{"type":"string","format":"uuid","description":"The unique identifier of the client."},"clientType":{"type":"string","enum":["INDIVIDUAL","ENTITY"],"description":"The type of the client. <br />\n  - INDIVIDUAL: The client is an individual. <br />\n  - ENTITY: The client is an entity.\n"}}}}},"paths":{"/clients/{clientId}/transactions":{"post":{"summary":"Creates a transaction for a client","description":"Creates a new transaction on the Rialto platform for a client.<br /> The transaction can be either an on-ramp (fiat to blockchain asset) or off-ramp (blockchain asset to fiat) transaction.<br /> The transaction is created in status **IDLE** and is waiting for the initial funds transfer to be initiated.\n","operationId":"createClientTransaction","tags":["Client transactions"],"parameters":[{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"description":"A unique identifier for the request.<br /> It is used to ensure that the request is idempotent.<br /> The same request with the same idempotency key will return a 409 status.\n","schema":{"type":"string"}}],"requestBody":{"$ref":"#/components/requestBodies/CreateTransactionBody"},"responses":{"201":{"description":"The transaction has been created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transaction"}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","description":"The reason why the request is invalid."},"parameterErrors":{"type":["object","null"],"description":"The errors related to the parameters of the request.<br /> The object is null if there is no error related to the parameters.\n"}}}}}},"401":{"description":"Invalid API key"},"404":{"description":"User not found."},"409":{"description":"The request has already been processed."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Get a transaction of a client

> Get a transaction of a client by unique identifier.

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"schemas":{"Transaction":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the transaction."},"transactionType":{"type":"string","description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"status":{"type":"string","description":"The status of the transaction. Possible values are:\n  - IDLE: The transaction has been created and is waiting for the initial funds transfer to be initiated,\n  - INITIATED: transaction has been initiated, it is in progress of resolution by Rialto,\n  - COMPLETED: The transaction has been completed,\n  - CANCELLED: The transaction has been cancelled,\n  - DISMISSED: The transaction has been dismissed by Rialto.\n","enum":["IDLE","INITIATED","COMPLETED","CANCELLED","DISMISSED"]},"idempotencyKey":{"type":["string","null"],"description":"The idempotency key input at the transaction creation.<br /> It is only defined for transactions created by the API\n"},"originalAmount":{"type":"number","format":"float","description":"The original amount of the transaction.<br /> The value is always positive.\n"},"fiatCurrency":{"type":"string","description":"The fiat currency of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat currencies."},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchains."},"blockchainWalletId":{"type":"string","format":"uuid","description":"The blockchain wallet identifier of transaction."},"bankAccountId":{"type":"string","format":"uuid","description":"The bank account identifier of transaction.<br /> The fiat currency of the transaction is the one of the bank account.\n"},"wireReferenceOverride":{"type":["string","null"],"description":"In case of offramp, string that will replace the default wire reference.<br /> Use for specific cases of matching and integration on the client bank side.<br /> Field is optional.\n"},"additionalDetails":{"type":"object","description":"The additional details of the transaction.<br /> It can be used to store additional information about the transaction.\n","properties":{"sourceOfFundsDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the source of funds.<br /> Each key can be used in order to download the document.\n"},"businessJustificationDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the business justification.<br /> Each key can be used in order to download the document.\n"},"comments":{"type":"string","description":"Comments added by the user at the creation of the transaction."}}},"initiationInstruction":{"type":"object","description":"The initiation instruction of the transaction.<br /> It changes depending on the transaction type.<br />\n","properties":{"blockchainWallet":{"type":["object","null"],"description":"The Rialto blockchain wallet to which the initiation transfer must be done.<br /> Only present if the transaction is an off-ramp transaction, i.e. transaction type **OFFRAMP**.\n","properties":{"address":{"type":"string","description":"The blockchain wallet address."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the wallet."}}},"bankAccount":{"type":["object","null"],"description":"The Rialto bank account to which the initiation transfer must be done.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n","properties":{"countryCode":{"type":"string","description":"The country code of the bank account."},"iban":{"type":"string","description":"The IBAN of the bank account."},"bic":{"type":"string","description":"The BIC of the bank account."},"intermediaryBic":{"type":["string","null"],"description":"The intermediary BIC of the bank account."},"beneficiary":{"type":"object","description":"The beneficiary of the bank account.","properties":{"name":{"type":"string","description":"The name of the beneficiary."},"address":{"type":["string","null"],"description":"The address of the beneficiary."},"city":{"type":["string","null"],"description":"The city of the beneficiary."},"postcode":{"type":"string","description":"The postcode of the beneficiary."},"countryCode":{"type":"string","description":"The country code of the beneficiary."}}}}},"wireReference":{"type":["string","null"],"description":"The wire reference to include in the initiation transfer to Rialto bank account.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n"}}},"createdAt":{"type":"string","format":"date-time","description":"The creation date of the transaction."},"initiation":{"type":["object","null"],"description":"The initiation object of the transaction.<br /> Only present if the transaction has been initiated, i.e. in statuses **INITIATED** or **COMPLETED**.<br /> Object will also be present if the transaction has been dismissed by Rialto after initiation, i.e. in status **DISMISSED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the initial funds transfer to Rialto.<br /> A margin of 1% with respect to the original amount is allowed.<br /> The value is always positive.\n"},"bpsFee":{"type":"number","format":"uint32","description":"The previsionnal fee of the transaction in BPS (basis points).<br /> The volume part of the fee amount can be derived by applying the BPS fee to the amount of the initial funds transfer.<br /> The value is always positive.\n"},"fixedFee":{"type":"number","format":"uint32","description":"The previsionnal fixed fee applied to the transaction.<br /> The fixed fee is applied after the calculation of the volume fee in the total fee computation.<br /> This fee is only applied on offramps, for flows originating from usd or euro stablecoins.<br /> The value is always positive.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the funds were received by Rialto, activating the transaction"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the initiation of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the initiation of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"}}},"completion":{"type":["object","null"],"description":"The completion object of the transaction.<br /> Only present if the transaction is completed, i.e. in status **COMPLETED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the transfer to the user.<br /> The value is always positive.\n"},"conversionRate":{"type":"number","format":"float","description":"The conversion rate of the transaction.<br /> For off-ramp transactions, it is the rate of the blockchain asset to fiat currency.<br /> For on-ramp transactions, it is the rate of the fiat currency to blockchain asset.<br/> The value is always positive.\n"},"volumeConsumption":{"type":"number","format":"float","description":"The consumption of the monthly volume of the transaction. <br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the completion of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the completion of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was completed"}}},"cancelledAt":{"type":["string","null"],"format":"date-time","description":"The date when the transaction was cancelled.<br /> Only present if the transaction was cancelled, i.e. in status **CANCELLED**.\n"},"dismissal":{"type":["object","null"],"description":"The dismissal object of the transaction.<br /> A transaction can be dismissed by Rialto at any time in case of a problem.<br /> Only present if the transaction was dismissed by Rialto, i.e. in status **DISMISSED**.\n","properties":{"reason":{"type":"string","description":"The reason why the transaction was dismissed."},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was dismissed"}}},"clientId":{"type":"string","format":"uuid","description":"The unique identifier of the client."},"clientType":{"type":"string","enum":["INDIVIDUAL","ENTITY"],"description":"The type of the client. <br />\n  - INDIVIDUAL: The client is an individual. <br />\n  - ENTITY: The client is an entity.\n"}}}}},"paths":{"/clients/{clientId}/transactions/{transactionId}":{"get":{"summary":"Get a transaction of a client","description":"Get a transaction of a client by unique identifier.","operationId":"getClientTransaction","tags":["Client transactions"],"parameters":[{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}},{"name":"transactionId","in":"path","description":"The transaction ID","required":true,"schema":{"type":"string"}},{"name":"id_type","in":"query","description":"Defines whether the specified ID is the transaction ID of the transaction hash.","required":false,"schema":{"type":"string","enum":["tx_id","tx_hash"]}}],"responses":{"200":{"description":"The transaction","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transaction"}}}},"401":{"description":"Invalid API key"},"404":{"description":"The client or the transaction is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Cancel a transaction of a client

> Cancel a transaction of a client by unique identifier.

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"schemas":{"Transaction":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier of the transaction."},"transactionType":{"type":"string","description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"status":{"type":"string","description":"The status of the transaction. Possible values are:\n  - IDLE: The transaction has been created and is waiting for the initial funds transfer to be initiated,\n  - INITIATED: transaction has been initiated, it is in progress of resolution by Rialto,\n  - COMPLETED: The transaction has been completed,\n  - CANCELLED: The transaction has been cancelled,\n  - DISMISSED: The transaction has been dismissed by Rialto.\n","enum":["IDLE","INITIATED","COMPLETED","CANCELLED","DISMISSED"]},"idempotencyKey":{"type":["string","null"],"description":"The idempotency key input at the transaction creation.<br /> It is only defined for transactions created by the API\n"},"originalAmount":{"type":"number","format":"float","description":"The original amount of the transaction.<br /> The value is always positive.\n"},"fiatCurrency":{"type":"string","description":"The fiat currency of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat currencies."},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchains."},"blockchainWalletId":{"type":"string","format":"uuid","description":"The blockchain wallet identifier of transaction."},"bankAccountId":{"type":"string","format":"uuid","description":"The bank account identifier of transaction.<br /> The fiat currency of the transaction is the one of the bank account.\n"},"wireReferenceOverride":{"type":["string","null"],"description":"In case of offramp, string that will replace the default wire reference.<br /> Use for specific cases of matching and integration on the client bank side.<br /> Field is optional.\n"},"additionalDetails":{"type":"object","description":"The additional details of the transaction.<br /> It can be used to store additional information about the transaction.\n","properties":{"sourceOfFundsDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the source of funds.<br /> Each key can be used in order to download the document.\n"},"businessJustificationDocuments":{"type":"array","items":{"type":"string"},"description":"The keys of the documents uploaded by the user as the business justification.<br /> Each key can be used in order to download the document.\n"},"comments":{"type":"string","description":"Comments added by the user at the creation of the transaction."}}},"initiationInstruction":{"type":"object","description":"The initiation instruction of the transaction.<br /> It changes depending on the transaction type.<br />\n","properties":{"blockchainWallet":{"type":["object","null"],"description":"The Rialto blockchain wallet to which the initiation transfer must be done.<br /> Only present if the transaction is an off-ramp transaction, i.e. transaction type **OFFRAMP**.\n","properties":{"address":{"type":"string","description":"The blockchain wallet address."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the wallet."}}},"bankAccount":{"type":["object","null"],"description":"The Rialto bank account to which the initiation transfer must be done.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n","properties":{"countryCode":{"type":"string","description":"The country code of the bank account."},"iban":{"type":"string","description":"The IBAN of the bank account."},"bic":{"type":"string","description":"The BIC of the bank account."},"intermediaryBic":{"type":["string","null"],"description":"The intermediary BIC of the bank account."},"beneficiary":{"type":"object","description":"The beneficiary of the bank account.","properties":{"name":{"type":"string","description":"The name of the beneficiary."},"address":{"type":["string","null"],"description":"The address of the beneficiary."},"city":{"type":["string","null"],"description":"The city of the beneficiary."},"postcode":{"type":"string","description":"The postcode of the beneficiary."},"countryCode":{"type":"string","description":"The country code of the beneficiary."}}}}},"wireReference":{"type":["string","null"],"description":"The wire reference to include in the initiation transfer to Rialto bank account.<br /> Only present if the transaction is an on-ramp transaction, i.e. transaction type **ONRAMP**.\n"}}},"createdAt":{"type":"string","format":"date-time","description":"The creation date of the transaction."},"initiation":{"type":["object","null"],"description":"The initiation object of the transaction.<br /> Only present if the transaction has been initiated, i.e. in statuses **INITIATED** or **COMPLETED**.<br /> Object will also be present if the transaction has been dismissed by Rialto after initiation, i.e. in status **DISMISSED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the initial funds transfer to Rialto.<br /> A margin of 1% with respect to the original amount is allowed.<br /> The value is always positive.\n"},"bpsFee":{"type":"number","format":"uint32","description":"The previsionnal fee of the transaction in BPS (basis points).<br /> The volume part of the fee amount can be derived by applying the BPS fee to the amount of the initial funds transfer.<br /> The value is always positive.\n"},"fixedFee":{"type":"number","format":"uint32","description":"The previsionnal fixed fee applied to the transaction.<br /> The fixed fee is applied after the calculation of the volume fee in the total fee computation.<br /> This fee is only applied on offramps, for flows originating from usd or euro stablecoins.<br /> The value is always positive.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the funds were received by Rialto, activating the transaction"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the initiation of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the initiation of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"}}},"completion":{"type":["object","null"],"description":"The completion object of the transaction.<br /> Only present if the transaction is completed, i.e. in status **COMPLETED**.\n","properties":{"amount":{"type":"number","format":"float","description":"The amount of the transfer to the user.<br /> The value is always positive.\n"},"conversionRate":{"type":"number","format":"float","description":"The conversion rate of the transaction.<br /> For off-ramp transactions, it is the rate of the blockchain asset to fiat currency.<br /> For on-ramp transactions, it is the rate of the fiat currency to blockchain asset.<br/> The value is always positive.\n"},"volumeConsumption":{"type":"number","format":"float","description":"The consumption of the monthly volume of the transaction. <br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"transactionHash":{"type":["string","null"],"description":"The transaction hash of the completion of the transaction.<br /> Only present for on-ramps, i.e. transaction type **ONRAMP**.\n"},"wireReference":{"type":["string","null"],"description":"The wire reference of the completion of the transaction.<br /> Only present for off-ramps, i.e. transaction type **OFFRAMP**.\n"},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was completed"}}},"cancelledAt":{"type":["string","null"],"format":"date-time","description":"The date when the transaction was cancelled.<br /> Only present if the transaction was cancelled, i.e. in status **CANCELLED**.\n"},"dismissal":{"type":["object","null"],"description":"The dismissal object of the transaction.<br /> A transaction can be dismissed by Rialto at any time in case of a problem.<br /> Only present if the transaction was dismissed by Rialto, i.e. in status **DISMISSED**.\n","properties":{"reason":{"type":"string","description":"The reason why the transaction was dismissed."},"timestamp":{"type":"string","format":"date-time","description":"The date when the transaction was dismissed"}}},"clientId":{"type":"string","format":"uuid","description":"The unique identifier of the client."},"clientType":{"type":"string","enum":["INDIVIDUAL","ENTITY"],"description":"The type of the client. <br />\n  - INDIVIDUAL: The client is an individual. <br />\n  - ENTITY: The client is an entity.\n"}}}}},"paths":{"/clients/{clientId}/transactions/{transactionId}/cancel":{"post":{"summary":"Cancel a transaction of a client","description":"Cancel a transaction of a client by unique identifier.","operationId":"cancelClientTransaction","tags":["Client transactions"],"parameters":[{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}},{"name":"transactionId","in":"path","description":"The transaction ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The transaction has been cancelled.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transaction"}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","description":"The reason why the request is invalid."}}}}}},"401":{"description":"Invalid API key"},"404":{"description":"The client or the transaction is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Returns a quote for a new transaction

> Returns a quote for a new transaction on the Rialto platform The quote is an estimation of the amount that the client will receive in the completion of the transaction.\<br /> The quote is based on the current exchange rate and the client's preset fees.<br>

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"parameters":{"quoteTransactionType":{"name":"transactionType","in":"query","required":true,"description":"The type of the transaction. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","schema":{"type":"string","enum":["OFFRAMP","ONRAMP"]}},"quoteTransactionAmount":{"name":"transactionAmount","in":"query","required":true,"description":"The amount of the transaction.<br /> The value is always positive.\n","schema":{"type":"number","format":"float"}},"quoteBankAccountId":{"name":"bankAccountId","in":"query","required":true,"description":"The identifier of the selected bank account for the transaction.","schema":{"type":"string","format":"uuid"}},"quoteBlockchainWalletId":{"name":"blockchainWalletId","in":"query","required":true,"description":"The identifier of the selected blockchain wallet for the transaction.","schema":{"type":"string","format":"uuid"}},"quoteBlockchainAsset":{"name":"blockchainAsset","in":"query","required":true,"description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets.","schema":{"type":"string"}}},"schemas":{"TransactionQuote":{"type":"object","properties":{"initiationAmount":{"type":"number","format":"float","description":"The input amount of the transaction.<br /> It will be the amount of the initial funds transfer to Rialto.<br /> The value is always positive.\n"},"completionAmount":{"type":"number","format":"float","description":"The estimated amount of the transferred amount to the user.<br /> The value is always positive.\n"},"bpsFee":{"type":"number","format":"uint32","description":"The previsionnal fee of the transaction in BPS (basis points).<br /> The volume part of the fee amount can be derived by applying the BPS fee to the amount of the initial funds transfer.<br /> The value is always positive.\n"},"fixedFee":{"type":"number","format":"uint32","description":"The previsionnal fixed fee applied to the transaction.<br /> The fixed fee is applied after the calculation of the volume fee in the total fee computation.<br /> This fee is only applied on offramps, for flows originating from usd or euro stablecoins.<br /> The value is always positive.\n"},"conversionRate":{"type":"number","format":"float","description":"The conversion rate of the transaction.<br /> For off-ramp transactions, it is the rate of the blockchain asset to fiat currency.<br /> For on-ramp transactions, it is the rate of the fiat currency to blockchain asset.<br/> The value is always positive.\n"},"volumeConsumption":{"type":"number","format":"float","description":"The estimated consumption of the monthly volume of the transaction. <br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"remainingPrevisionalVolume":{"type":"number","format":"float","description":"The remaining previsional volume of the user for the current month.<br /> It takes into account the volume consumed by the transaction and the volume consumed by the other transactions of the user.<br /> The value is in US dollars. It is computed based on the amount of the transaction, the blockchain asset, the fiat currency, the execution conversion rate and possibly the conversion rate to USD at the time of completion of the transaction.<br /> The value is always positive. Only two decimal places are allowed.\n"},"presetFeeId":{"type":"string","format":"uuid","description":"The unique identifier of the preset fee applied to the transaction.<br /> The value is null if no preset fee is applicable.\n"},"fiatCurrency":{"type":"string","description":"The fiat currency of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat currencies.<br /> The value is the one of the bank account.\n"},"blockchainAsset":{"type":"string","description":"The blockchain asset of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain assets."},"blockchainNetwork":{"type":"string","description":"The blockchain network of the transaction. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchains.<br /> The value is the one of the blockchain wallet.\n"}}}}},"paths":{"/clients/{clientId}/transactions/quote":{"get":{"summary":"Returns a quote for a new transaction","description":"Returns a quote for a new transaction on the Rialto platform The quote is an estimation of the amount that the client will receive in the completion of the transaction.<br /> The quote is based on the current exchange rate and the client's preset fees.\n","operationId":"getClientTransactionQuote","tags":["Client transactions"],"parameters":[{"$ref":"#/components/parameters/quoteTransactionType"},{"$ref":"#/components/parameters/quoteTransactionAmount"},{"$ref":"#/components/parameters/quoteBankAccountId"},{"$ref":"#/components/parameters/quoteBlockchainWalletId"},{"$ref":"#/components/parameters/quoteBlockchainAsset"},{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The quote for the transaction.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransactionQuote"}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","description":"The reason why the request is invalid."},"parameterErrors":{"type":["object","null"],"description":"The errors related to the parameters of the request.<br /> The object is null if there is no error related to the parameters.\n"}}}}}},"401":{"description":"Invalid API key"},"404":{"description":"The client is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Returns the transactions volume breakdown of a client

> Returns the volume breakdown of the transactions of a client.\<br /> The summary is returned for the current month.\<br /> The breakdown for each transaction path is returned for the current month and the current day.\<br /> The volume is in US dollars. Two decimal places are allowed.\<br /> The volume is divided according to the status of the transactions:\
> &#x20; \- \*\*IDLE\*\*: transaction has been created and is waiting for initiation,\
> &#x20; \- \*\*INITIATED\*\*: transaction has been initiated, it is in progress of resolution by Rialto,\
> &#x20; \- \*\*COMPLETED\*\*: transaction has been completed.<br>

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}},"schemas":{"TransactionVolumeBreakdown":{"type":"object","properties":{"currentMonth":{"type":"object","properties":{"limit":{"type":"number","format":"float","description":"The monthly volume limit of the user.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"remaining":{"type":"number","format":"float","description":"The remaining volume of the user for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"idle":{"type":"number","format":"float","description":"The volume consumed by the user in **IDLE** transactions for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"initiated":{"type":"number","format":"float","description":"The volume consumed by the user in **INITIATED** transactions for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"completed":{"type":"number","format":"float","description":"The volume consumed by the user in **COMPLETED** transactions for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"total":{"type":"number","format":"float","description":"The total volume consumed by the user for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"}}},"paths":{"type":"array","items":{"type":"object","properties":{"transactionType":{"type":"string","description":"The type of the transaction path. Possible values are:\n  - OFFRAMP: The transaction is an off-ramping of blockchain asset to fiat currency,\n  - ONRAMP: The transaction is an on-ramping of fiat currency to blockchain asset.\n","enum":["OFFRAMP","ONRAMP"]},"fiatFeGroup":{"type":"string","description":"The fiat fee group of the transaction path. See [the list of supported](https://docs.rialtobridge.xyz/concepts) fiat fee groups."},"blockchainFeeGroup":{"type":"string","description":"The blockchain fee group of the transaction path. See [the list of supported](https://docs.rialtobridge.xyz/concepts) blockchain fee groups."},"currentMonth":{"type":"object","properties":{"idle":{"type":"number","format":"float","description":"The volume consumed by the user in **IDLE** transactions for this path for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"initiated":{"type":"number","format":"float","description":"The volume consumed by the user in **INITIATED** transactions for this path for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"completed":{"type":"number","format":"float","description":"The volume consumed by the user in **COMPLETED** transactions for this path for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"total":{"type":"number","format":"float","description":"The total volume consumed by the user for this path for the current month.<br /> The value is in US dollars. Only two decimal places are allowed.\n"}}},"currentDay":{"type":"object","properties":{"idle":{"type":"number","format":"float","description":"The volume consumed by the user in **IDLE** transactions for this path for the current day.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"initiated":{"type":"number","format":"float","description":"The volume consumed by the user in **INITIATED** transactions for this path for the current day.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"completed":{"type":"number","format":"float","description":"The volume consumed by the user in **COMPLETED** transactions for this path for the current day.<br /> The value is in US dollars. Only two decimal places are allowed.\n"},"total":{"type":"number","format":"float","description":"The total volume consumed by the user for this path for the current day.<br />\nThe value is in US dollars. Only two decimal places are allowed.\n"}}}}}}}}}},"paths":{"/clients/{clientId}/transactions/volume":{"get":{"summary":"Returns the transactions volume breakdown of a client","description":"Returns the volume breakdown of the transactions of a client.<br /> The summary is returned for the current month.<br /> The breakdown for each transaction path is returned for the current month and the current day.<br /> The volume is in US dollars. Two decimal places are allowed.<br /> The volume is divided according to the status of the transactions:\n  - **IDLE**: transaction has been created and is waiting for initiation,\n  - **INITIATED**: transaction has been initiated, it is in progress of resolution by Rialto,\n  - **COMPLETED**: transaction has been completed.\n","operationId":"getClientTransactionsVolumeBreakdown","tags":["Client transactions"],"parameters":[{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The transactions volume breakdown.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransactionVolumeBreakdown"}}}},"401":{"description":"Invalid API key"},"404":{"description":"The client is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```

## Generates a pre-signed URL for downloading the invoice of a completed transaction

> Generates a pre-signed URL for downloading the invoice of a completed transaction.\<br /> The invoice is a PDF file containing the details of the transaction.\<br /> The invoice is generated only for completed transactions. \<br /> Each pre-signed URL is valid for 5 minutes.\<br /> See the \[S3 documentation]\(<https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html>) for more information on S3 pre-signed URLs.<br>

```json
{"openapi":"3.1.0","info":{"title":"Rialto Manager API","version":"1.0.0"},"servers":[{"url":"https://api.rialtobridge.xyz/api/manager/v1","description":"Main (production) server for the Rialto Manager API"},{"url":"https://staging.api.rialtobridge.xyz/api/manager/v1","description":"Test (staging) server for the Rialto Manager API"},{"url":"http://localhost:3002/api/manager/v1","description":"Development server for the Rialto Manager API"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","name":"RIALTO_API_KEY","in":"header"}}},"paths":{"/clients/{clientId}/transactions/{transactionId}/request-invoice":{"post":{"summary":"Generates a pre-signed URL for downloading the invoice of a completed transaction","description":"Generates a pre-signed URL for downloading the invoice of a completed transaction.<br /> The invoice is a PDF file containing the details of the transaction.<br /> The invoice is generated only for completed transactions. <br /> Each pre-signed URL is valid for 5 minutes.<br /> See the [S3 documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html) for more information on S3 pre-signed URLs.\n","operationId":"requestAccountTransactionInvoice","tags":["Client transactions"],"parameters":[{"name":"clientId","in":"path","description":"The unique identifier of the client.","required":true,"schema":{"type":"string"}},{"name":"transactionId","in":"path","description":"The transaction ID","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The pre-signed URL for downloading the invoice.","content":{"application/json":{"schema":{"type":"object","properties":{"preSignedUrl":{"type":"string","description":"The pre-signed URL for downloading the invoice."}}}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","description":"The reason why the request is invalid."}}}}}},"401":{"description":"Invalid API key"},"404":{"description":"The account or the transaction is not found."},"500":{"description":"An unexpected error occurred."}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rialtobridge.xyz/manager-api-reference/client-transactions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
