Operation - Repay

Key Steps

  1. Parse Repayment Amount:

    • Convert the repayment amount into the correct unit using the parseUnits function, specifying the number of decimals that match the debt token's specifications (usually 18, like Ethereum).

  2. Execute Repayment Transaction:

    • Use the doRepay function to initiate the repayment. This function requires parameters such as the public and wallet clients, protocol configuration, collateral details, and the repayment amount. It processes the transaction on the blockchain and updates the user's debt status accordingly.


This function is typically used by users who wish to:

  • Decrease Financial Liabilities: Repaying part of the borrowed amount to reduce the accruing interest and improve financial standing.

  • Improve Trove Health: Enhancing the collateral-to-debt ratio to secure the trove against potential liquidations in volatile market conditions.


import { parseUnits } from 'viem';
import { publicClient, walletClient, protocolConfig, collateral } from 'satoshi-sdk';

async function repayDebt() {
  // Step 1: Define the amount to repay
  const repayAmt = parseUnits('5', DEBT_TOKEN_DECIMALS);  // Repaying 5 SAT stablecoins

  // Step 2: Execute the repayment transaction
  const receipt = await satoshiClient.Postition.doRepay({

  console.log('Repayment successful:', receipt);


This example function, repayDebt, outlines the process of repaying a specified amount of SAT stablecoins. It demonstrates how to correctly convert the repayment amount to the proper unit and execute the transaction, ensuring the debt is correctly reduced in the user's trove.

Last updated