Applications keep their data in databases and expose it through APIs. In this course you build both for Tallybook's invoicing, in Python with SQLite and Flask, all runnable in Colab. You'll design a schema that stores each fact once, add named constraints and watch the database refuse every invoice-level problem in the raw export on its own, query safely with parameters (and see an f-string query break on a customer called Chi's Bakery), import bank payments in transactions so a bad row can't leave half a batch saved, read query plans and add the index that turns a scan into a search, change the schema with numbered migrations, design REST routes with meaningful status codes and pagination, and test the API with pytest fixtures that give every test a fresh database. Every query, plan and test in the lessons is run and checked.