---
title: 'The Payage Database Tables'
url: 'https://manuals.remository.com/payage-dev/how-payage-works/the-payage-database-tables'
markdown: 'https://manuals.remository.com/payage-dev/how-payage-works/the-payage-database-tables.md'
date: '2026-11-14'
description: 'Applications do not normally need to directly access the Payage database tables, but it is useful to have some knowledge of them. There are two tables, the account table and the payments table. The account table stores details of each gateway account. The account table has several columns that are …'
taxonomy:
  category:
    - docs
---

[](#) [ edit this page](https://github.com/getgrav/grav-skeleton-rtfm-site/blob/develop/pages/03.how-payage-works/01.the-payage-database-tables/docs.md) 

# The Payage Database Tables

Applications do not normally need to directly access the Payage database tables, but it is useful to have some knowledge of them. There are two tables, the account table and the payments table.

The account table stores details of each gateway account. The account table has several columns that are common to all payment gateways, such as a type, a name, and an email address. It also has a text column ("specific\_data") that can store any number of gateway specific parameters. Payage handles serializing and unserializing the specific parameters, enabling gateway addons to configure and use any number of gateway specific parameters.

The payment table stores details of every payment. A record is created for every button request, and stores details of the proposed transaction so that the details can be retrieved if payment is successful. Some of these records will not result in a payment being made, and Payage discards these "unconfirmed payments" after 60 minutes (configurable). Transactions that result in a successful payment are stored for much longer (5 years by default).

Applications can store any data relating to the potential transaction in the payment table by including it with the button request. If and when the user does complete payment, the application can retrieve its stored data from the payment record via the API. Since the application has access to the transaction data and the verified payment status all in one place, post payment processing is very straightforward.

 [ ](https://manuals.remository.com/payage-dev/how-payage-works) [](https://manuals.remository.com/payage-dev/how-payage-works/payment-gateway-returns)

---

## Navigation

- Parent: [How Payage Works](https://manuals.remository.com/payage-dev/how-payage-works.md)
- Next: [Payment Gateway Returns](https://manuals.remository.com/payage-dev/how-payage-works/payment-gateway-returns.md)
