# Core Banking Connector Guide
## Integration Guide for Major Core Banking Systems

### Overview

This guide provides specific integration instructions for major Core Banking systems with DBIS IRU.

### Temenos T24/Temenos Transact

#### Prerequisites
- Temenos Transact API access
- API credentials
- Network connectivity

#### Configuration

```typescript
import { TemenosAdapter } from '@dbis/iru-sdk/adapters/temenos';

const adapter = new TemenosAdapter({
  apiEndpoint: 'https://your-temenos-instance.com/api',
  apiKey: 'your-api-key',
});
```

#### Data Mapping

**Participant Mapping:**
- `customerId` → `participantId`
- `shortName` or `name` → `name`
- `sector` → `regulatoryTier` (mapped via sector codes)

**Account Mapping:**
- `accountNumber` → `ibanOrLocalAccount`
- `accountType` → `accountType` (NOSTRO/VOSTRO)

**Transfer Mapping:**
- `transactionId` → `transferId`
- `debitAccount` / `creditAccount` → `fromAccountId` / `toAccountId`

### Oracle Flexcube

#### Configuration

```typescript
import { FlexcubeAdapter } from '@dbis/iru-sdk/adapters/flexcube';

const adapter = new FlexcubeAdapter({
  dbConnection: 'oracle://user:pass@host:1521/db',
  apiEndpoint: 'https://your-flexcube-instance.com/api',
});
```

#### Data Mapping

**Participant Mapping:**
- `customerNo` → `participantId`
- `customerName` → `name`
- `customerCategory` → `regulatoryTier`

### SAP Banking Services

#### Configuration

```typescript
import { SAPBankingAdapter } from '@dbis/iru-sdk/adapters/sap-banking';

const adapter = new SAPBankingAdapter({
  sapEndpoint: 'https://your-sap-instance.com:8000',
  sapClient: '100',
  sapUser: 'your-user',
  sapPassword: 'your-password',
});
```

#### Integration Methods

1. **RFC (Remote Function Call)**
   - Direct SAP function calls
   - Real-time integration
   - Requires SAP RFC library

2. **OData Services**
   - RESTful API access
   - Easier integration
   - Standard HTTP/JSON

### Oracle Banking Platform

#### Configuration

```typescript
import { OracleBankingAdapter } from '@dbis/iru-sdk/adapters/oracle-banking';

const adapter = new OracleBankingAdapter({
  oracleEndpoint: 'https://your-obp-instance.com/api',
  oracleUser: 'your-user',
  oraclePassword: 'your-password',
});
```

### Custom System Integration

If your system is not listed, follow the Plugin Development Guide to create a custom adapter.

See: [Plugin Development Guide](../nostro-vostro/plugin-development-guide.md)

### Testing Checklist

- [ ] Adapter connectivity verified
- [ ] Participant mapping tested
- [ ] Account mapping tested
- [ ] Transfer mapping tested
- [ ] Transfer posting tested
- [ ] Balance queries tested
- [ ] Reconciliation tested
- [ ] Error handling tested
- [ ] Performance tested
- [ ] Security validated

### Support

For connector-specific support, contact:
- Temenos: temenos-support@dbis.org
- Flexcube: flexcube-support@dbis.org
- SAP: sap-support@dbis.org
- Oracle: oracle-support@dbis.org
