diff --git a/djstripe/models/core.py b/djstripe/models/core.py
index <HASH>..<HASH> 100644
--- a/djstripe/models/core.py
+++ b/djstripe/models/core.py
@@ -2419,3 +2419,7 @@ class Refund(StripeModel):
         return (
             f"{self.human_readable_amount} ({enums.RefundStatus.humanize(self.status)})"
         )
+
+    @property
+    def human_readable_amount(self) -> str:
+        return get_friendly_currency_amount(self.amount / 100, self.currency)
diff --git a/tests/test_refund.py b/tests/test_refund.py
index <HASH>..<HASH> 100644
--- a/tests/test_refund.py
+++ b/tests/test_refund.py
@@ -164,10 +164,7 @@ class RefundTest(AssertStripeFksMixin, TestCase):
 
         refund = Refund.sync_from_stripe_data(fake_refund)
 
-        self.assertEqual(
-            f"{refund.human_readable_amount} ({enums.RefundStatus.humanize(fake_refund['status'])})",
-            str(refund),
-        )
+        self.assertEqual(str(refund), "$20.00 USD (Succeeded)")
 
         self.assert_fks(refund, expected_blank_fks=self.default_expected_blank_fks)
Overrode Refund.human_readable_amount

This was done so that amount/<I> instead of amount could be passed to it.