Skip to content

[FEAT-XXX] Feature Name

Bank: CNB EASI-Link
Status: Draft | Confirm-Blocked | Spec-Complete | Test-Ready | UAT-Ready | Signed-Off
Last Updated: YYYY-MM-DD
Author:
Confirm Gate: OPEN | CLEARED(list unresolved [CONFIRM with CNB] items here or "None")


1. Business Context

What problem does this feature solve? What business process does it replace or automate? 1–3 sentences.

Replaces: (e.g., manual check courier, NetSuite AR module, Excel reconciliation)
Trigger: (What initiates this feature? User action, scheduled job, bank event?)
Outcome: (What is the expected end state when this feature completes successfully?)


2. Actors & Preconditions

Actors:

  • Sub-ledger application
  • CNB EASI-Link API
  • (Add: GL approver, AR team member, Treasury, etc. as applicable)

Preconditions (must be true before this feature executes):

  • [ ] OAuth 2.0 Bearer Token is valid (FEAT-001 Authentication)
  • [ ] (Add feature-specific preconditions)

Postconditions (guaranteed true when feature completes successfully):

  • [ ] (e.g., Transaction recorded in sub-ledger with status = Confirmed)
  • [ ] (e.g., Journal Entry queued for NetSuite posting)

3. API Mapping

StepActionCNB ServiceProtocolSource Doc
1REST / SOAP / SFTP[Doc, p. X]
2

Endpoint(s):

METHOD https://api.cnb.com/rs/...

Service Availability: (e.g., 3am–11pm PT Mon–Sat)
Rate Limits / Pagination: (MaxRec, cursor, polling cadence)


4. Request Schema

All fields sourced from CNB documentation. Unconfirmed fields tagged [CONFIRM with CNB].

FieldTypeRequiredConstraintsDescriptionSource
[Doc, p. X]

Example Request:

json
{
  
}

5. Response Schema

FieldTypeDescriptionNotesSource
[Doc, p. X]

Example Response — Happy Path:

json
{
  
}

Example Response — Failure:

json
{
  
}

6. Business Rules

Numbered, atomic, testable. Each rule becomes at least one test case.

Rule IDRuleSource
BR-XXX-001[Doc, p. X]
BR-XXX-002

7. Error Handling & Failure Modes

Every known error code for this feature's API calls must appear here. No gaps.

Error CodeSeverityDescriptionSub-Ledger ActionRetry?
Fatal / Warning / InfoY / N

Failure Queue: (Does this feature feed the Failed Postings Queue? Which failure modes?)
Alerting: (When does this failure surface to a human? GL approver, Treasury, on-call?)


8. Data Mapping — Sub-Ledger Schema

How CNB response fields map to internal sub-ledger fields and NetSuite GL fields.

CNB FieldSub-Ledger FieldNetSuite FieldTransformation

9. Open Items

All unresolved [CONFIRM with CNB] items blocking this feature. RTM row must reflect these.

Item IDQuestionSubmitted ToDate SubmittedStatus
OI-XXX-001Jerome / Joann / MauriceOpen / Resolved

10. Dev Test Cases

Written before dev begins. Each maps to at least one Business Rule. Confirm Gate must be CLEARED.

TC-IDTypeDescriptionInputExpected ResultBR Reference
TC-XXX-001Happy PathBR-XXX-001
TC-XXX-002Failure
TC-XXX-003Edge Case

Mock Payload File: /payloads/CNB_FEAT-XXX_happy.json (create when test cases are written)


11. UAT Scenarios

Business-language. A finance or treasury team member should be able to execute these without reading the TRD.

UAT-IDScenario TitleStepsExpected OutcomeTesterPass/FailDate
UAT-XXX-0011. …
2. …
3. …

12. Sign-Off

RoleNameDateStatus
Product (Cliff)Pending
Engineering (Amir)Pending
CNB ConfirmedJerome / JoannPending
UAT PassedPending

Template version: 1.0 — CNB EASI-Link Integration

Confidential. For internal use only.

Loading...