Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This endpoint is used to submit a new order to Rx-Universe. The Remote Order Processor must be running to finish importing orders into the system - you can submit requests while the processor is down and they will be placed in the processing queue, but they will not be visible in customer service or in the GET orders endpoint.

...

Accepts

number($float)

Pantoscopic tilt (PANTO) (max:

Property

Description

customerJobId

string (required)
The identifier the customer is using for the order (max characters: 21)

customerNumber

string (required)
The identifier for the customer the order is for (max characters: 8)

jobType

string (required)

The job type of the order (F = Full, U = Uncut, A = Addon, E = Edge)

poNumber

string (required)
Job reference (PO NUM field) (max characters: 20)

balanceLens

string

Set the balance lens to R (right), L (left), or none (empty string/null)

corridorLength

number($float)

Corridor length (CORRLEN) (max: 99.9) (min: 0) (max characters: 4)

crib

number($float)

Uncut diameter for uncut with no frame measurements (max: 99.9) (min: 0)

dateWanted

string

The date the order is wanted (yyyy-mm-dd)

ellh

number($float)

Elliptical height of crib for uncut with no frame measurements (max: 99.9) (min: 0)

frameA

number($float)

Frame A box measurement (max: 80) (min: 30)

frameB

number($float)

Frame B box measurement (max: 80) (min: 15)

frameBridge

integer($int32)

The bridge size of the frame attached to the order (max: 99) (min: 0)

frameCircumference

number($float)

Frame circumference (CIRC) (max: 999.9) (min: 0)

frameColor

string

The color of the frame attached to the order (FCOL) (max characters: 30)

frameED

number($float)

Frame effective diameter box measurement (max: 80) (min: 30)

frameEye

integer($int32)

The eye size of the frame attached to the order (max: 99) (min: 0)

frameManufacturer

string

The manufacturer of the frame attached to the order (max characters: 4)

frameName

string

The name of the frame attached to the order (FRAM) (max characters: 30)

frameSKU

string

The sku of the frame attached to the order (_FMSKU) (max characters: 20)

frameStatusCode

string

A code indicating the status of the frame ([Blank] = None, S=supply, E = Edge, F=to follow, U=uncut, N=No Charge, L=lenses only, O = Other) (max characters: 1)

frameTemple

integer($int32)

The temple size of the frame attached to the order (max: 9999999) (min: 0) (max characters: 6)

frameType

string
OMA Frame type (max characters: 1)

frameUPC

string
The upc of the frame attached to the order (_FMUPC) (max characters: 20)

onHold

boolean

Whether or not the order should be put on hold

orderOrigin

string

Origin of order (RXSITE, ERP, etc (free text)) (max characters: 20)

pantoscopicTilt

orderRemoteUserName

string

Name of the user entering the order (Doctor Name, VISIONWEB, EYEFINITY, etc (free text)) (max characters: 20)

pantoscopicTilt

number($float)

Pantoscopic tilt (PANTO) (max: 99.9) (min: 0)

patientCAPE

number($float)

Cape head angle (max: 99.9) (min: -99.9) (max characters: 5)

patientDominantEye

string
The patient's dominant eye (CLDEYE)

R/L/N/Blank

patientDominantHand

string
The patient's dominant hand (CLDLAT)

R/L/N/Blank

patientHeadEyeCoefficient

number($float)

Patient head eye coefficient (HEADK) (max: 9.99) (min: 0) (max characters: 4)

patientHeight

number($float)

Patient height (CLHT) (max: 9.99) (min: 0)

patientInitials

string

Patient initials (CLINIT) (max characters: 10)

patientLifestyle

string
Patient lifestyle (CLLIFE)

Static/Active/Blank

patientNearVisionBehaviour

string

Patient near vision behaviour (CLNVB) (max characters: 7)

patientNearWorkingDistance

number($float)

Patient near working distance (in meters) (NWD) (max: 99.999) (min: 0)

patientStabilityCoefficient

number($float)

Patient stability coefficient (HEADS) (max: 9.99) (min: 0) (max characters: 4)

prismThinningCode

string
The prism thinning setting on the order (F = yes, N = No, blank = lab default)

F/N/Blank

releaseNumber

string

Release number for the order (max characters: 120)

shippingMethod

string
The shipping method to use (should match one returned by the /shipping_methods API) (max characters: 4)

shipToAddress1

string
The address to ship the order to (max characters: 200)

shipToAddress2

string
The address to ship the order to (max characters: 200)

shipToAddress3

string
The address to ship the order to (max characters: 200)

shipToAddress4

string
The address to ship the order to (max characters: 200)

shipToCode

string
The postal or zip code to ship the order to (max characters: 10)

shipToName

string
The account name to ship the order to (max characters: 35)

shipToNumber

string
The account to ship the order to (max characters: 10)

traceID

string
name;supplier;type;eyesize;bridgesize identifying a stored trace, each field separated by ; (max characters: 40)

trayNumber

string
The tray number (will auto-generate if omitted) (up to 5 chars, include any leading zeros) (max characters: 5)

vertexFittedDistance

number($float)

Vertex fitted distance (VFD) (max: 99.9) (min: 0)

vertexRefractedDistance

number($float)

Vertex refracted distance (VRD) (max: 99.9) (min: 0)

wrapAngle

number($float)

Wrap angle of the frame (ZTILT) (max: 99.9) (min: 0)

rtADD

number($float)

Add power right eye (max: 99.99) (min: 0)

ltADD

number($float)

Add power left eye (max: 99.99) (min: 0)

rtADD2

number($float)

Upper add power right eye (max: 99.99) (min: 0)

ltADD2

number($float)

Upper add power left eye (max: 99.99) (min: 0)

rtAxis

integer($int32)

Cylinder axis right eye (max: 180) (min: 0)

ltAxis

integer($int32)

Cylinder axis left eye (max: 180) (min: 0)

rtBOC

number($float)

The user-specified BOC for the right eye (max: 99.9) (min: 0)

ltBOC

number($float)

The user-specified BOC for the left eye (max: 99.9) (min: 0)

rtCyl

number($float)

Cylinder power right eye (max: 999.99) (min: -999.99)

ltCyl

number($float)

Cylinder power left eye (max: 999.99) (min: -999.99)

rtEdgeThickness

number($float)

The minimum edge thickness for the right eye (max: 9.99) (min: 0)

ltEdgeThickness

number($float)

The minimum edge thickness for the left eye (max: 9.99) (min: 0)

rtEyeRotationCenterDistance

number($float)

Eye rotation center distance - right eye (ERCD) (max: 99.9) (min: 0) (max characters: 4)

ltEyeRotationCenterDistance

number($float)

Eye rotation center distance - left eye (ERCD) (max: 99.9) (min: 0) (max characters: 4)

rtFarWorkingDistance

number($float)

Far working distance - right eye (FWD) (max: 99.999) (min: 0) (max characters: 6)

ltFarWorkingDistance

number($float)

Far working distance - left eye (FWD) (max: 99.999) (min: 0) (max characters: 6)

rtIPD

number($float)

Distance PD right eye (lab rules for monocular/binocular) (max: 99.9) (min: 0)

ltIPD

number($float)

Distance PD left eye (lab rules for monocular/binocular) (max: 99.9) (min: 0)

rtLensMaterial

string
Lens material code of right eye (value will be one returned by the /materials API) (max characters: 2)

ltLensMaterial

string
Lens material code of left eye (value will be one returned by the /materials API) (max characters: 2)

rtLensSpecifiedBaseCurve

string
The specific nominal base curve requested on the order (max characters: 5)

ltLensSpecifiedBaseCurve

string
The specific nominal base curve requested on the order (max characters: 5)

rtLensSpecifiedColor

string
Requested inherent color of right eye (max characters: 3)

ltLensSpecifiedColor

string
Requested inherent color of left eye (max characters: 3)

rtLensSpecifiedDiameter

integer($int32)

The specific blank diameter requested on the order (max: 99) (min: 0) (max characters: 2)

ltLensSpecifiedDiameter

integer($int32)

The specific blank diameter requested on the order (max: 99) (min: 0) (max characters: 2)

rtLensSpecifiedFinishType

string
The specific lens type requested on the order (S=semi-finished F=finished)

S/F/Blank

ltLensSpecifiedFinishType

string

The specific lens type requested on the order (S=semi-finished F=finished)

S/F/Blank

rtLensSpecifiedManufacturer

string
The specific manufacturer requested on the order (max characters: 4)

ltLensSpecifiedManufacturer

string
The specific manufacturer requested on the order (max characters: 4)

rtLensSpecifiedThicknessCode

string
The thickness code requested on the order (max characters: 1)

ltLensSpecifiedThicknessCode

string
The thickness code requested on the order (max characters: 1)

rtLensSpecifiedTreat

string
Inherent treatment of right eye (ex PLC for coated polarized, TR8 for transitions 8) (max characters: 3)

ltLensSpecifiedTreat

string
Inherent treatment of left eye (ex PLC for coated polarized, TR8 for transitions 8) (max characters: 3)

rtLensStyle

string
Lens style code of right eye (as returned by the /styles API) (max characters: 6)

ltLensStyle

string
Lens style code of left eye (as returned by the /styles API) (max characters: 6)

rtMinCT

number($float)

The user-specified center thickness for the right eye (max: 999.99) (min: 0) (max characters: 6)

ltMinCT

number($float)

The user-specified center thickness for the left eye (max: 999.99) (min: 0) (max characters: 6)

rtNearObjectDistance

number($float)

Near Object Distance - right eye (NOD) (max: 99.9) (min: 0) (max characters: 4)

ltNearObjectDistance

number($float)

Near Object Distance - left eye (NOD) (max: 99.9) (min: 0) (max characters: 4)

rtNearVisionInset

number($float)

Near Vision Inset - right eye (NVI) (max: 99.9) (min: 0) (max characters: 4)

ltNearVisionInset

number($float)

Near Vision Inset - left eye (NVI) (max: 99.9) (min: 0) (max characters: 4)

rtNPD

number($float)

Near PD right eye (lab rules for monocular/binocular) (max: 99.9) (min: 0)

ltNPD

number($float)

Near PD left eye (lab rules for monocular/binocular) (max: 99.9) (min: 0)

rtOCHeight

number($float)

The OC height for the right eye (max: 99.9) (min: -99.99)

ltOCHeight

number($float)

The OC height for the left eye (max: 99.9) (min: -99.99)

rtPrism1

number($float)

The first prescribed prism for the right eye (max: 20) (min: 0)

ltPrism1

number($float)

The first prescribed prism for the left eye (max: 20) (min: 0)

rtPrism2

number($float)

The second prescribed prism for the right eye (max: 20) (min: 0)

ltPrism2

number($float)

The second prescribed prism for the left eye (max: 20) (min: 0)

rtPrismDir1

string|number
The first prescribed prism for the right eye (number or one of U/D/I/O) (max: 360) (min: 0)

ltPrismDir1

string|number
The first prescribed prism for the left eye (number or one of U/D/I/O) (max: 360) (min: 0)

rtPrismDir2

string|number
The second prescribed prism for the right eye (number or one of U/D/I/O) (max: 360) (min: 0)

ltPrismDir2

string|number
The second prescribed prism for the left eye (number or one of U/D/I/O) (max: 360) (min: 0)

rtSegDepth

integer($int32)

The segment depth for the right eye (max: 99) (min: 0)

ltSegDepth

integer($int32)

The segment depth for the left eye (max: 99) (min: 0)

rtSegHeight

number($float)

The segment height for the right eye (max: 99.9) (min: 0)

ltSegHeight

number($float)

The segment height for the left eye (max: 99.9) (min: 0)

rtSegWidth

integer($int32)

The segment width for the right eye (max: 99) (min: 0)

ltSegWidth

integer($int32)

The segment width for the left eye (max: 99) (min: 0)

rtSphere

number($float)

Sphere power right eye (max: 999.99) (min: -999.99)

ltSphere

number($float)

Sphere power left eye (max: 999.99) (min: -999.99)

rtTraceFmt

string
OMA Trace format for right eye. Note that only trace type 1 will be accepted. trace type;number of points;point type (only type E);side (R) (max characters: 81)

ltTraceFmt

string
OMA Trace format for the left eye. Note that only trace type 1 will be accepted. trace type;number of points;point type (only type E);side (L) (max characters: 81)

rtTraceZFmt

string
OMA Z points format for left eye. Note that only Z type 1 will be accepted. Z type;number of points;point type (only type E);side (R) (max characters: 81)

ltTraceZFmt

string
OMA Z points format for left eye. Note that only Z type 1 will be accepted. Z type;number of points;point type (only type E);side (L) (max characters: 81)

remarks

Array of Strings

Remark or comment lines (max items: 11) (max characters: 35)

rtTracePoints

Array of Integers

The set of radii trace points for the right eye (max: 9999) (min: 1) (max items: 1024)

ltTracePoints

Array of Integers

The set of radii trace points for the left eye (max: 9999) (min: 1) (max items: 1024)

rtTraceZPoints

Array of Integers

The set of Z trace points for the right eye (max: 9999) (min: 1) (max items: 1024)

ltTraceZPoints

Array of Integers

The set of Z trace points for the left eye (max: 9999) (min: 1) (max items: 1024)

addons

Array of Addons

  • code (string): The addon code to apply (should match one returned by the /addons API) (max characters: 6)

e.g.

miscItems

Array of Misc Items

  • desc (string): Item UPC or SKU (max characters: 50)

  • sku (string): Item UPC
    Code Block
    languagejson
    "addons": [  
        {  
          "code": "ARC"
        },
        {  
          "code": "UV"
        }
      ] 

    miscItems

    Array of Misc Items

    • desc (string): Item UPC or SKU (max characters: 50)

    • sku (string): Item UPC or SKU (max characters: 20)

    Success

    Returns a JSON object representing the new order. This will match the structure returned by Fetch a Single Order, though some fields will be empty until the order undergoes further processing. The HTTP status is 202 (Accepted) as the order will not be available in Rx-Universe until the Remote Order Processor has processed the request has processed the request. The string array creationRemarks will also be returned which may include any additional (non-error) information messages.

    Error

    • If one or more parameters have invalid values based on their max/min/character count descriptions, an HTTP 400 code will be returned with an error body describing the issues

    ...

    • At least one of rtLensStyle/ltLensStyle and rtLensMaterial/ltLensMaterial must be provided, or else an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "Incorrect arguments provided",
        "details": [
          "rtLensStyle, ltLensStyle are missing, at least one parameter must be provided",
          "rtLensMaterial, ltLensMaterial are missing, at least one parameter must be provided"
        ]
      }
    • If a crib has been set and the job is not an uncut job (jobType = U) an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "crib is only valid on uncut jobs",
        "details": [
          "Job Type: F",
          "Frame SW:"
        ]
      }
    • If ellh has been set and the job is not an uncut job (jobType = U) an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "ellh is only valid on uncut jobs",
        "details": [
          "Job Type: F",
          "Frame SW:"
        ]
      }
    • If the customer number does not exist in Rx-Universe an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "Customer does not exist",
        "details": [
          "Provided: 9999"
        ]
      }
    • If the Frame Inventory module is in use, required for the order (the order is set to supply frame), and offline an HTTP 500 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "Frame Inventory Module is offline",
      and offline an HTTP 500
      
        "details": []
      }
    • If the job type is addon and no addons are entered an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "FrameNo Inventory Module is offlineaddons entered",
        "details": []
      }
    • If the job type is addon and no addons are entered fails calculation validation an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "Validation Failed",
        "details": "No addons entered",
        "details": [ [
          "ERROR 112: SPHERE MUST BE BETWEEN -39.0 AND +49.0"
        ]
      }
    • If the job fails calculation validation the entered PO is already in use for another order for the same customer an HTTP 400 code will be returned with an error

      Code Block
      languagejson
      {
        "error": "ValidationDuplicate Failedorder",
        "details": [
          "Duplicate of 10071993",
          "ERRORPO 112Number: SPHEREdup is MUSTalready BEin BETWEEN -39.0 AND +49.0use for customer 1"
        ]
      }
    • If the job has trace data attached (one or more of the following are set to a value) then an array of validation failures may be raised

      • Trace parameters:

        • rtTraceFmt

        • ltTraceFmt

        • rtTraceZFmt

        • ltTraceZFmt

        • rtTracePoints

        • ltTracePoints

        • rtTraceZPoints

        • ltTraceZPoints

      • Trace points are submitted without a valid format declaration (e.g. "rtTracePoints": [1,2,3,...], "rtTraceFmt: "")

        Code Block
        languagejson
        {
          "error": "Cannot process order - trace error",
          "details": [
            "Received rtTracePoints without rtTraceFmt",
            "Received ltTracePoints without ltTraceFmt",
            "Received rtTraceZPoints without rtTraceZFmt",
            "Received ltTraceZPoints without ltTraceZFmt"  
          ]
        }
      • The number of trace points does not match the number declared in the format declaration (e.g. "rtTracePoints": [1,2,3], "rtTraceFmt: "1;4;E;R")

        Code Block
        languagejson
        {
          "error": "Cannot process order - trace error",
          "details": [
            "Number of RADII points sent does not match the TRCFMT entry for the right eye",
            "Number of RADII points sent does not match the TRCFMT entry for the left eye",
            "Number of Z points sent does not match the ZFMT entry for the right eye",
            "Number of Z points sent does not match the ZFMT entry for the left eye"  
          ]
        }
      • Z points are submitted without the corresponding radii points

        Code Block
        languagejson
        {
          "error": "Cannot process order - trace error",
          "details": [
            "Right Z points with no right RADII points",
            "Left Z points with no left RADII points"  
          ]
        }