Skip to content

Commit 0f97196

Browse files
committed
singular denial reason
1 parent fcae57d commit 0f97196

1 file changed

Lines changed: 10 additions & 11 deletions

File tree

src/ncpdp/script.ts

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,7 @@ const handleRemsRequest = async (message: any, res: Response) => {
152152
}
153153

154154
// Requirements not met - denial with reason code
155-
const reasonCodes = determineReasonCodes(outstandingRequirements);
156-
const reasonCode = reasonCodes[0];
155+
const reasonCode = determineReasonCodes(outstandingRequirements);
157156
const reasonText = buildReasonText(reasonCode);
158157

159158
const denialDetails = {
@@ -254,15 +253,15 @@ const handleRemsInitiation = async (message: any, res: Response) => {
254253
}
255254

256255
if (outstandingRequirements.length > 0) {
257-
const reasonCodes = determineReasonCodes(outstandingRequirements);
258-
const reasonText = buildReasonText(outstandingRequirements);
256+
const reasonCode = determineReasonCodes(outstandingRequirements);
257+
const reasonText = buildReasonText(reasonCode);
259258

260-
logger.info(`Requirements not met - closing with: ${reasonCodes.join(',')}`);
259+
logger.info(`Requirements not met - closing with: ${reasonCode}`);
261260
res.type('application/xml');
262261
return res.status(200).send(buildInitiationClosedResponse(
263262
header,
264263
initRequest,
265-
reasonCodes.join(','),
264+
reasonCode,
266265
reasonText
267266
));
268267
}
@@ -342,7 +341,7 @@ const handleRxFill = async (message: any, res: Response) => {
342341
};
343342

344343

345-
const determineReasonCodes = (outstandingRequirements: any[]): string[] => {
344+
const determineReasonCodes = (outstandingRequirements: any[]): string => {
346345
let hasPatientReq = false;
347346
let hasPrescriberReq = false;
348347
let hasPharmacyReq = false;
@@ -360,15 +359,15 @@ const determineReasonCodes = (outstandingRequirements: any[]): string[] => {
360359

361360
// Return only the highest priority requirement
362361
if (hasPatientReq) {
363-
return ['EM'];
362+
return 'EM';
364363
} else if (hasPrescriberReq) {
365-
return ['ES'];
364+
return 'ES';
366365
} else if (hasPharmacyReq) {
367-
return ['EO'];
366+
return 'EO';
368367
}
369368

370369
// Fallback - should not reach here
371-
return ['EC'];
370+
return 'EC';
372371
};
373372

374373

0 commit comments

Comments
 (0)