Print Page as PDF
PFSS CHARGE ICR (4665)

PFSS CHARGE    ICR (4665)

Name Value
NUMBER 4665
IA # 4665
DATE CREATED 2005/05/23
CUSTODIAL PACKAGE INTEGRATED BILLING
USAGE Controlled Subscription
TYPE Routine
DBIC APPROVAL STATUS APPROVED
ROUTINE IBBAPI
NAME PFSS CHARGE
GENERAL DESCRIPTION
Two entry points are added to routine IBBAPI in order
to accommodate Patient Financial Services System (PFSS) functionality
requirements to provide charge data to the commercial medical billing system.
These entry points are called by several VistA applications involved in PFSS.
STATUS Active
KEYWORDS
  • PFSS
  • CHARGE
DURATION Till Otherwise Agreed
ID IBBAPI
COMPONENT/ENTRY POINT
COMPONENT/ENTRY POINT COMPONENT DESCRIPTION VARIABLES
$$GETCHGID
$$GETCHGID returns to the calling application the
value of the CURRENT CHARGE ID field (#2) of the PFSS SITE PARAMETERS file
#372).  Those applications that are responsible for providing charge data to
IBB use $$GETCHGID to obtain a Unique Charge ID.  The Unique Charge ID is then
retained in the application database in association with the charge data set.
VARIABLES TYPE VARIABLES DESCRIPTION
$$GETCHGID Output
The return value is equivalent to contents of the
CURRENT CHARGE ID field (#2) of the PFSS SITE PARAMETERS file (#372) at the
time the call was made.  $$GETCHGID increments the value of field #2 before
exiting.

Upon installation of PFSS, field #2 is initialized to a value of 90000001.
Once this counter reaches 99999999 it will be re-initialized.
$$CHARGE
$$CHARGE is used by those applications responsible
for relaying charge data to the commercial medical billing system used by
PFSS.

Called as $$CHARGE^IBBAPI(VAR1,VAR2,VAR3,VAR4,.ARR1,.ARR2,.ARR3,.ARR4,.ARR5,
VAR5,.ARR6) where IBBDFN=VAR1 (required) IBBARFN=VAR2 (required) IBBCTYPE=VAR3
(required) IBBUCID=VAR4 (required) IBBFT1=ARR1 (required) IBBPR1=ARR2
(required, except Pharmacy) IBBDG1(n)=ARR3(n) (optional) IBBZCL(n)=ARR4(n)
(optional) IBBRXE=ARR5 (required, Pharmacy only) IBBORIEN=VAR5 (optional)
IBBPROS=ARR6 (required, Prosthetics only)

All data passed in is stored in the PFSS CHARGE CACHE file (#373).  Both the
internal entry number and #.01 of the record are set to the same value.
VARIABLES TYPE VARIABLES DESCRIPTION
VAR1 Input
Patient Identifier; numeric; standard VistA variable
DFN.

VAR1 is required.
VAR2 Input
PFSS Account Reference; numeric; pointer to PFSS
ACCOUNT file (#375).

VAR2 is required.
VAR3 Input
Charge Type; identifies the charge as being either a
debit (i.e., charge) ("CG") or a credit ("CD") to the account.

VAR3 is required.
VAR4 Input
The Unique Charge ID associated with the service
event.  The IBB function $$GETCHGID^IBBAPI should be used to obtain the Unique
Charge ID prior to the initial $$CHARGE^IBBAPI.  The Unique Charge ID is then
stored in the application s database in association with the CPT code, HCPCS
code, or prescription fill/refill.

VAR4 is required.
ARR1 Input
Array of data elements for HL7 Segment FT1 as
follows: ARR1(4) = Transaction Date (required) ARR1(7) = Transaction Code
(optional)
Pharmacy only; required; 6-digit Service Code
for prescribed product.  ARR1(10) = Transaction Quantity (required)
Integer.
PCE - number of occurrences for the CPT code in ARR2(3).
Prosthetics - number of occurrences for the HCPCS code in
ARR2(3).
OP Pharmacy - number of dispense units prescribed.  ARR1(13) =
Department Code (required)
Prosthetics - 423
OP Pharmacy - 160
PCE - as provided to PCE; otherwise, Primary Stop Code
associated with visit.  ARR1(16) = Assigned Patient Location
(optional)
Pointer to file #44.  ARR1(18) = Patient Copay Status(optional)
1 - Rx Copay Exempt
0 - Not Exempt
Pharmacy only.  ARR1(20) = Performed By Code (optional)
Pointer to file #200.  ARR1(21) = Ordered By Code (optional)
Pointer to file #200.  ARR1(22) = Unit Cost (optional)
Pharmacy and Prosthetics only; numeric; 2 decimal digits
allowed.  ARR1(29) = NDC_"; _Generic Name (optional)
Pharmacy only; free text.  ARR1(31) = Copay Transaction Type
(optional)
1 - PSO NSC RX COPAY
2 - PSO SC RX COPAY
Pharmacy only.

Array ARR1 is required, although some elements are optional.
ARR2 Input
Array of data elements for HL7 Segment PR1 as
follows: ARR2(3) = Procedure Code (required)
Pointer to file #81.
Note:  The number of times the CPT procedure was performed,
or the number of HCPCS items that were delivered, must be
specified in ARR1(10).  ARR2(4) = Procedure Description (optional)
Free text upto 200 characters; may be used to modify or
enhance the data provided in ARR2(3).  ARR2(5) = Procedure Date/Time
(optional)
FileMan date/time; time optional.  ARR2(6) = Procedure Functional
Type (optional)
Prosthetics - "O" (Home Oxygen), "P" (Purchasing),
"I" (Stock Issue).
Radiology - Imaging Type (file #79.2) abbreviation.  ARR2(11,1) =
Surgeon (optional)
For Surgery procedures only; pointer to file #200.  ARR2(11,2) =
Attending Surgeon (optional)
For Surgery procedures only; pointer to file #200.  ARR2(16) =
Procedure Code Modifier(s) (optional)
Free text; one or more pointers to file #81.3
delimited by ";".

Array ARR2 is required from all applications except Pharmacy.
ARR3 Input
Array of data elements for HL7 Segment DG1 as
follows: ARR3(n,3) = Diagnosis Code (required)
Pointer to file #80.  ARR3(n,6) = Diagnosis Type (required)
"A" (admitting), "W" (working), "D" (discharging),
"F" (final).

Since there may be more than one diagnosis, ARR3 will have two subscripts.
The first subscript is a sequential integer that pertains to a given diagnosis
The second subscript refers to the corresponding Sequence number within the
DG1 Segment.  Diagnoses must be placed in the array in priority order; i.e.,
primary diagnosis must be first, followed in descending priority order by
additional diagnoses (if any).

Array ARR3 is optional.
ARR4 Input
Array of data elements for HL7 Segment ZCL as
follows: ARR4(n,2) = Type (required)
1 - AO (Agent Orange)
2 - IR (Ionizing Radiation)
3 - SC (Service Connected)
4 - EC (Environmental Contaminants)
5 - MST (Military Sexual Trauma)
6 - HNC (Head and/or Neck Cancer)
7 - CV (Combat Veteran) ARR4(n,3) = Value (required)
1 - Yes
2 - No

Each ARR4(n) represents one of the possible SC/EI classifications.

Array ARR4 is optional.
ARR5 Input
The input array is used only by Pharmacy.  Array of
data elements for HL7 Segment RXE as follows: ARR5(1) = Quantity_";; _Days
Supply (required)
Free text; numerics separated by ";;" ARR5(17) = Refills Dispensed
(required)
Integer.  ARR5(18) = Date of Most Recent Fill (required)
FileMan date/time; date only.  ARR5(31) = DEA, Special Handling
(required)
Free text; max. 5 characters.

Array ARR5 is required for Pharmacy only.
VAR5 Input
Pointer to the ORDER file (#100) in OE/RR.  Provider
orders entered in CPRS are maintained in file #100 and forwarded to the
service applications such as Radiology and Laboratory.  These applications
retain the ORDER pointer in their files and it is passed to PCE as service
requests are completed/resulted.  PCE will always pass the ORDER file pointer
to IBB, if it exists.

VAR5 is optional.
ARR6 Input
Array of data elements for Prosthetics only as
follows: ARR6(1) = Vendor (required)
Pointer to file #440.  ARR6(2) = OBL# (required)
Free text; max. 30 characters.

Array ARR6 is required for Prosthetics only.
$$CHARGE Output
1, if a new record in file #373 is successfully
created; 0, if unsucessful.
SUBSCRIBING PACKAGE