External System Block
An external system is a system outside the generated boundary that sends commands, receives events, answers queries, or provides reference information.
When To Use It
Use an External System block for payment gateways, identity providers, shipping carriers, ERP systems, CRM tools, government APIs, messaging platforms, data warehouses, and partner systems.
Required Data
- Name: system or provider name.
- Relationship: sends data to Code Genie system, receives data, both, or reference-only.
- Integration type: API, webhook, message bus, file import, file export, database view, manual upload, or email.
- Commands or events exchanged: what crosses the boundary.
- Ownership: team or vendor responsible for the external system.
Recommended Data
- Authentication method: API key, OAuth, mTLS, managed identity, SFTP credential, or manual control.
- Reliability expectation: synchronous, asynchronous, retryable, or best effort.
- Failure handling: timeout, retry, dead-letter, manual review, or compensation command.
- Data contract owner: person or team responsible for schema changes.
- Privacy classification: whether personal, financial, health, or regulated data crosses the boundary.
Examples
- Payment Gateway authorizes payments and sends Payment Captured webhook.
- Shipping Carrier receives Create Shipment and publishes Delivery Attempted.
- Identity Provider supplies user authentication and group claims.
- ERP receives Invoice Issued integration events.