Capabilities
Outcome
Each trading partner's capability set matches what the partner agreement authorizes — no more, no less — so the gateway never tries to send a transaction the partner cannot accept and never expects an inbound the partner does not produce.
Prerequisites
| Scope | What it lets you do |
|---|---|
edi.partner.read | View capabilities |
edi.partner.write | Toggle capabilities |
What is a capability
A capability is a (transaction_set_id, direction) pair the partner
supports. Examples:
| Capability | Meaning |
|---|---|
837P outbound | We can submit professional claims to this partner. |
837I outbound | We can submit institutional claims. |
270 outbound / 271 inbound | Real-time eligibility round trip. |
278 outbound / 278 inbound | Auth request / auth response. |
276 outbound / 277 inbound | Claim status inquiry round trip. |
277CA inbound | Claim acknowledgments. |
999 inbound | Functional acknowledgments. |
TA1 inbound | Interchange acknowledgments. |
835 inbound | Remittance advice. |
834 inbound | Member enrollment files. |
A partner record without 277CA inbound will not produce 277CAs — the
gateway expects them only from partners who advertise the capability.
Steps
Open the partner detail → Capabilities tab. The tab shows a grid: rows are transaction sets, columns are direction (outbound / inbound). Each cell is a checkbox.
Toggle capabilities to match the partner agreement. A common clearinghouse setup:
Outbound Inbound 837P✓ — 837I✓ — 999— ✓ TA1— ✓ 277CA— ✓ 835— ✓ A real-time eligibility partner:
Outbound Inbound 270✓ — 271— ✓ A direct state Medicaid partner often supports the full set including
278and834.Save. Effects:
- The
Companion Guidestab now shows guide bindings for only the capabilities you enabled. - Outbound submission for a non-enabled capability returns 409 from
the gateway with a
capability_not_enabledreason. - The routing rules editor restricts the partner picker to partners whose capability set covers the rule's transaction.
- The
Capability nuances
277CA vs 277
Both are 277 transactions. They differ in BHT02:
BHT02 | Variant | Capability |
|---|---|---|
08 | 277CA — Claim Acknowledgment | 277CA inbound |
00 | 277 — Claim Status Response | 277 inbound |
Some partners only acknowledge (277CA); some only respond to status
inquiries (277); some do both. The gateway parses both via the same
parser but routes them differently based on BHT02.
999 implementation level
The 999 has been the standard since 5010; pre-5010 partners used 997. The platform only emits 999 inbound; if a partner sends 997, parse it manually and contact the partner about upgrading.
TA1 inline vs separate file
TA1 can travel either inside the same interchange that triggered it or
as a separate inbound. Most partners send it as a separate file.
Capability TA1 inbound covers both.
Validation
| Check | Expected |
|---|---|
| Capability toggle saves immediately | Yes. |
| Outbound for a disabled capability returns 409 | Yes. |
| Companion Guides tab restricts to enabled transactions | Yes. |
| Inbound traffic for a disabled capability is dropped with a log warning | Yes — the file is stored as unprocessable_capability for forensics. |
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Outbound 837 returns "no capable partner" | Partner is enabled but 837P outbound capability is unchecked | Toggle the capability. |
| Inbound 835 dropped silently | 835 inbound capability is unchecked | Enable; replay the dropped file from the unprocessable bucket. |
| Cannot bind a companion guide | Guide's transaction is not in the partner's capability set | Enable the capability, or pick a different guide. |
| Routing rule editor shows no eligible partner | None of your active partners has the capability for the rule's transaction | Enable on the right partner; or onboard a new one. |