diff --git a/duniterpy/documents/transaction.py b/duniterpy/documents/transaction.py
index cd2ad5b18f7639109611c53aeae3fec21b455160..71aeda2f5bf90ae0a3faa0d4ff67d15cc28b11f0 100644
--- a/duniterpy/documents/transaction.py
+++ b/duniterpy/documents/transaction.py
@@ -154,7 +154,7 @@ class OutputSource:
     """
     A Transaction OUTPUT
     """
-    re_inline = re.compile("([0-9]+):([0-9]+):(.*)\n")
+    re_inline = re.compile("([0-9]+):([0-9]):(.*)")
 
     def __init__(self, amount: int, base: int, condition: str) -> None:
         """
diff --git a/tests/documents/test_transaction.py b/tests/documents/test_transaction.py
index 34e1cfabd25c27a08a71d58de05e0768557f81a3..af5aa0721a7da8d2418a8154281d5f043b9842fa 100644
--- a/tests/documents/test_transaction.py
+++ b/tests/documents/test_transaction.py
@@ -6,7 +6,7 @@ Created on 12 déc. 2014
 import unittest
 import pypeg2
 from duniterpy.grammars import output
-from duniterpy.documents.transaction import Transaction, reduce_base, SimpleTransaction, InputSource
+from duniterpy.documents.transaction import Transaction, reduce_base, SimpleTransaction, InputSource, OutputSource
 
 compact_change = """TX:10:1:1:1:1:1:0
 13410-000041DF0CCA173F09B5FBA48F619D4BC934F12ADF1D0B798639EB2149C4A8CC
@@ -486,3 +486,9 @@ class TestTransaction(unittest.TestCase):
         input_source_str = "30:0:T:6991C993631BED4733972ED7538E41CCC33660F554E3C51963E2A0AC4D6453D3:2"
         i = InputSource.from_inline(10, input_source_str)
         self.assertEqual(i.inline(10), input_source_str)
+
+
+    def test_outputsource_from_inline(self):
+        output_source_str = "460:0:SIG(8kXygUHh1vLjmcRzXVM86t38EL8dfFJgfBeHmkaWLamu)"
+        o = OutputSource.from_inline(output_source_str)
+        self.assertEqual(o.inline(), output_source_str)