File size: 829 Bytes
b198f8a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-- 0021_settlement_ledger.sql

CREATE TABLE IF NOT EXISTS settlements (
    settlement_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    transaction_id VARCHAR NOT NULL REFERENCES orders(transaction_id),
    merchant_id VARCHAR NOT NULL REFERENCES merchants(merchant_id),
    gross_amount_inr DOUBLE PRECISION NOT NULL,
    platform_fee_inr DOUBLE PRECISION NOT NULL,
    delivery_fee_inr DOUBLE PRECISION NOT NULL,
    tax_amount_inr DOUBLE PRECISION NOT NULL,
    net_payout_inr DOUBLE PRECISION NOT NULL,
    utr_number VARCHAR,
    settled_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    status VARCHAR NOT NULL DEFAULT 'COMPLETED' -- 'COMPLETED', 'FAILED', 'REVERSED'
);

CREATE INDEX idx_settlements_merchant_id ON settlements(merchant_id);
CREATE INDEX idx_settlements_transaction_id ON settlements(transaction_id);