Custom PMS Integration
Generic portfolio management system integration patterns for DMTR.
Overview
Custom PMS (Portfolio Management System) integration enables you to connect DMTR to portfolio systems that do not have a pre-built integration. Use the generic integration patterns, data model, and API reference to build your own PMS connector. Custom integrations follow the same authentication, sync, and error handling patterns as certified integrations. Complete the approval checklist before go-live.
Integration patterns
Integration patterns for custom PMS include batch sync (scheduled export/import of positions), real-time sync (webhook-triggered updates), and hybrid (batch for initial load, real-time for changes). Choose the pattern based on your PMS API capabilities and latency requirements. Implement idempotency for writes; use pagination for large datasets. Follow the SDK patterns for authentication and error handling.
Data model
The DMTR data model for positions includes Position (holding, quantity, identifiers), Participant (owner, custodian, issuer), and related entities (Transfer, LifecycleEvent). Map your PMS holdings, accounts, and securities to these entities. Use the Position object schema for field-level mapping. Handle identifier resolution (CUSIP, ISIN, custom IDs) and data type conversions. Document your mapping for approval and maintenance.
API reference
The API reference for custom PMS integration includes the Positions API (list, get, create, update), Participants API (list, get, create), and Webhooks API (subscribe to position and transfer events). Use the REST API with JSON request/response format. Authentication via API key or OAuth; request appropriate scopes. Rate limits and pagination apply; implement retry logic. Refer to the full API documentation for endpoint details and examples.
Examples
Examples include a Python script for batch position sync, a Node.js webhook handler for real-time updates, and a mapping configuration template. Examples are available in the DMTR integrations GitHub repository and documentation. Adapt examples to your PMS API and data model. Use the sandbox environment for development and testing. Contact the integrations team for review and approval of custom integrations.