Files
aitbc/apps/coordinator-api/migrations/004_payments.sql
oib ff4554b9dd ```
chore: remove obsolete payment architecture and integration test documentation

- Remove AITBC_PAYMENT_ARCHITECTURE.md (dual-currency system documentation)
- Remove IMPLEMENTATION_COMPLETE_SUMMARY.md (integration test completion summary)
- Remove INTEGRATION_TEST_FIXES.md (test fixes documentation)
- Remove INTEGRATION_TEST_UPDATES.md (real features implementation notes)
- Remove PAYMENT_INTEGRATION_COMPLETE.md (wallet-coordinator integration docs)
- Remove WALLET_COORDINATOR_INTEGRATION.md (payment
2026-01-29 12:28:43 +01:00

55 lines
1.9 KiB
SQL

-- Migration: Add payment support
-- Date: 2026-01-26
-- Add payment tracking to jobs table
ALTER TABLE job
ADD COLUMN payment_id VARCHAR(255) REFERENCES job_payments(id),
ADD COLUMN payment_status VARCHAR(20);
-- Create job_payments table
CREATE TABLE IF NOT EXISTS job_payments (
id VARCHAR(255) PRIMARY KEY,
job_id VARCHAR(255) NOT NULL,
amount DECIMAL(20, 8) NOT NULL,
currency VARCHAR(10) DEFAULT 'AITBC',
status VARCHAR(20) DEFAULT 'pending',
payment_method VARCHAR(20) DEFAULT 'aitbc_token',
escrow_address VARCHAR(100),
refund_address VARCHAR(100),
transaction_hash VARCHAR(100),
refund_transaction_hash VARCHAR(100),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
escrowed_at TIMESTAMP,
released_at TIMESTAMP,
refunded_at TIMESTAMP,
expires_at TIMESTAMP,
meta_data JSON
);
-- Create payment_escrows table
CREATE TABLE IF NOT EXISTS payment_escrows (
id VARCHAR(255) PRIMARY KEY,
payment_id VARCHAR(255) NOT NULL,
amount DECIMAL(20, 8) NOT NULL,
currency VARCHAR(10) DEFAULT 'AITBC',
address VARCHAR(100) NOT NULL,
is_active BOOLEAN DEFAULT TRUE,
is_released BOOLEAN DEFAULT FALSE,
is_refunded BOOLEAN DEFAULT FALSE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
released_at TIMESTAMP,
refunded_at TIMESTAMP,
expires_at TIMESTAMP
);
-- Create indexes
CREATE INDEX IF NOT EXISTS idx_job_payments_job_id ON job_payments(job_id);
CREATE INDEX IF NOT EXISTS idx_job_payments_status ON job_payments(status);
CREATE INDEX IF NOT EXISTS idx_job_payments_created_at ON job_payments(created_at);
CREATE INDEX IF NOT EXISTS idx_payment_escrows_payment_id ON payment_escrows(payment_id);
CREATE INDEX IF NOT EXISTS idx_payment_escrows_address ON payment_escrows(address);
-- Add index for job payment_id
CREATE INDEX IF NOT EXISTS idx_job_payment_id ON job(payment_id);