 <p>This one is working for me please try this</p> <pre><code>import sys import cdecimal sys.modules["decimal"] = cdecimal from sqlalchemy import create_engine, Numeric, Integer, Column from sqlalchemy.ext.declarative import declarative_base engine = create_engine('mysql://test:test@localhost/test1') Base = declarative_base() class Exchange(Base): __tablename__ = 'exchange' id = Column(Integer, primary_key=True) amount = Column(Numeric(10,2)) def __init__(self, amount): self.amount = cdecimal.Decimal(amount) Base.metadata.create_all(engine) from sqlalchemy.orm import sessionmaker Session = sessionmaker(bind=engine) session = Session() x = Exchange(10.5) session.add(x) session.commit() </code></pre> <p>Note: I dont have pgsql in my pc so I tried on mysql.</p>