PDR Platform
An entire association's operation, in a single system.



Screenshots from the live system's public pages.
01 — Problem
The professional body for psychological counselling and guidance ran member records in a legacy membership system, its website in a separate Laravel app, and training, dues, documents and its store as disconnected processes. No one could see a member's dues history, documents and training record in one place.
02 — System
We built a modular association platform that unifies the public site, member area and admin panel on a single Node/Next stack. From membership application to board decision, dues collection to certificates submitted to e-Devlet, store order to shipping label and e-Archive invoice, every process runs on the same data model. Legacy records were migrated without fabricating a single value and without losing a single file.
Membership application
Every step from application to member ID card is governed by a state machine.
- 01Application
- 02Document check
- 03Board review
- 04Member number
- 05Dues & ID card
Missing documents → returned to applicant
PDR Platform — yönetim
Application
Document check
Board review
Member number
Dues & ID card
03 — Architecture
Site and admin apps, separated by distinct session audiences, talk to one API. Data is split into separate schemas by business area; email, SMS and scheduled jobs are drained from a queue by a dedicated background process.
- L0Users
- Members
- Visitors
- Instructors
- Staff
- L1Interfaces
- pdr.org.tr
- Admin panel
- Member area
- 2 sub-sites
- L2Application
- API
- Worker · outbox
- Scheduled reports
- L3Modules
- Membership
- Dues
- LMS
- Certificates
- Store
- Governance
- Careers
- Support
- L4Data
- MySQL
- File storage · CDN
- L5External services
- Online payments
- Video conferencing
- e-Devlet
- e-Archive invoicing
- Shipping
- Email service
- SMS service
04 — Capabilities
- 01
Membership lifecycle
Full, honorary, corporate and emeritus applications; required-document workflow, board review, member-number allocation, and state machines for suspension, resignation and honorary-to-full transitions.
- 02
Dues and collection
Period-based debt standing, pay-everything-open in a single link, card payments with instalments, manual collection by bank transfer receipt, bulk operations and dues reports.
- 03
Learning management
Program → cohort → session structure, member pricing tiers, exams and surveys, automatic attendance from video-conference reports, recordings, refunds and training reports.
- 04
Certificates and verification
Template editor, HTML→PDF rendering, QR codes and barcodes, numbering, revocation, a public verification page, and certificates submitted to e-Devlet automatically.
- 05
Store, shipping and e-Archive
Catalogue with variants, campaign and coupon rules, stock movements, returns; barcodes and tracking through the shipping integration, and UBL e-Archive invoices through an integrator — enabled in production.
- 06
Governance
Units, terms, mandates, board and committee assignments, meetings, ethics-board operations, an org-chart PDF and an accreditation case workflow.
- 07
Career pool
A career space where members join with a private CV and employers post opportunities; CV sharing sits behind a legal-approval flag.
- 08
Support and notifications
Ticket queue with auto-assign and auto-close, reply templates, satisfaction scoring; transactional email and SMS, editable templates and bulk sends.
05 — Impact
- 01
Membership, dues, training, store and governance now share one data model.
- 02
Records, dues history and documents moved off the legacy membership system without inventing a single value.
- 03
Shipping and e-Archive integrations are live; order, label and invoice run in one flow.
- 04
The PDOK and EPDAB sub-sites share the same CMS pattern and run on their own databases.
- 50+
- modules on one platform
- 8
- business areas on one data model
- 7
- external service integrations
- 4
- user interfaces
- 2
- separate sign-in areas: site and admin
- 3
- live sites on the same foundation
Technology stack
Frontend
- Next.js
- React
- Tailwind
Backend
- Node.js
- Express
- TypeScript
Data
- MySQL
Documents
- Excel
Infrastructure
- Docker
- CI/CD

