Skip to content

Configuration Actions

Thomas Trutt edited this page Jul 18, 2025 · 1 revision

The transfer action describes how data should be processed by the backend system. Users can select any of the fee/fine actions available in folio. It is important to not that only if an action is available in folio it will be available via this interface.

actions: 
  - ...

Processing example

vars:
  run_env: "TEST"
  trans_active: true

actions: 
  - name: "Transfer"
    action_type: "TRANSFER"
    payment_method: "Bursar"
    service_point_id: "7495d2e3-1e4b-4b6d-9f3b-1f4b1f0b1b6d"
    user_name: "app_test"
    comments: "STAFF : automated system"
    action_on: "charges"
    filters: 
        -   name: "FineType"
            error_message: "Wrong Fee Fine Type"
            load: "FeeFineTypes"
            flatten: true
            filter_field: "feeFineId"
            field_transform: "NONE"
            filter_operator: "IN_FILE"
            filter_value: ""
            log_error: false
    stop_processing: true
    process_active: true
  - name: "Block Patron"
    action_type: "BlockPatronAction"
    block_borrowing: true
    block_renewals: true
    block_requests: true
    block_expiration: 2-weeks
    description: "STAFF : automated system"
    staff_note: "STAFF : automated system"
    user_note: "STAFF : automated system"
    action_on: "credits"
    filters: 
        -   name: "FineType"
            error_message: "Wrong Fee Fine Type"
            load: "FeeFineTypes"
            flatten: true
            filter_field: "feeFineId"
            field_transform: "NONE"
            filter_operator: "IN_FILE"
            filter_value: ""
            log_error: false
    stop_processing: true
    process_active: true

vars Fields

The vars section allows you to set variables that can be used in the jobs section. This allows you to set a variable once and use it in multiple jobs.

Actions are required to be in order, as they will be processed in the order listed. If you do not wish to use a processor, you can just leave the actions array empty.

Fields (General)

name

  • The name of the processor. This will be used in the count data returned by the backend system.

action_type

  • (options) TransferFineAction, WaiveFineAction, REFUND or PAY
    • TransferFineAction will transfer the fee/fine to a "transfer" account inside of FOLIO.
    • WaiveFineAction will waive the fee/fine
    • RefundFineAction will refund the fee/fine
    • PayFineAction will pay the fee/fine
    • BlockPatronAction will block the patron from checking out items
    • RemoveBlockPatronAction will remove the block from the patron account related to that ffe/fine

action_on

  • (options) charges or credits
    • charges if selected this means that the action will be performed on the charge data set.
    • credits if selected this means that the action will be performed on the credit data set.

filters

  • Filters use the same format as the Filters and can be used to filter out data that should be processed.

stop_processing

  • (options) true or false
    • true if selected this means that no other processing will be performed on this fee/fine.
    • false if selected this means that the fee/fine will continue to be processed by the system.

process_active

  • (options) true or false
    • true if selected this means that the fee/fine will be processed by the system.
    • false if selected this means that the fee/fine will not be processed by the system but a pre-flit will be returned as well as the url and body that would have been sent.
  • default is true

false is used for testing if processing functions without changing data.

Fields (Transfer/Waive/Refund/Pay)

payment_method

  • The value of this field changes based on the value in action_type
    • TransferFineAction - The name of the FOLIO transfer account should be given; this can be found in Settings -> Users -> Transfer accounts
    • WaiveFineAction - The "Waive" reason to use when waiving the fee/fine; this can be found in Settings -> Users -> Waive reasons
    • RefundFineAction - The "refund" reason to use when refunding the fee/fine; this can be found in Settings -> Users -> Refund reasons
    • PayFineAction - The payment method to use when paying the fee/fine; this can be found in Settings -> Users -> Payment methods

All values are entered as a string.

service_point

  • The UUID of the service point to use when processing the fee/fine. This can be found in Settings -> Tenant -> Service points

This will be the service point identified as where the transaction was processed.

user_name

  • The username of the user who is processing the fee/fine. This is used to identify who processed the fee/fine.

This can be a User account or some other test as it is not validated against the system.

comments

  • The comments to add to the fee/fine action. This is used to identify why the action was taken.

Fields (BlockPatronAction)### Data Sets Allowed

  • charges

block_borrowing

  • (options) true or false
    • true if selected this means that the patron will be blocked from checking out items.
    • false if selected this means that the patron will not be blocked from checking out items.
  • default is false

block_renewals

  • (options) true or false
    • true if selected this means that the patron will be blocked from renewing items.
    • false if selected this means that the patron will not be blocked from renewing items.
  • default is false

block_requests

  • (options) true or false
    • true if selected this means that the patron will be blocked from requesting items.
    • false if selected this means that the patron will not be blocked from requesting items.
  • default is false

block_expiration

  • null or date value
    • null if selected this means that the block will not expire until removed by staff.
    • date value if selected this means that the block will expire on the date given.
  • default is null

Date patterns

This system uses the 'dateparser' library to parse dates. This means that you can use any of the following formats:

  • in 2 weeks - 2 weeks from now
  • in 2 weeks, 3 days - 2 weeks and 3 days from now

Note: 'In' is required for the date to phrased correctly.

More information can be found at dateparser.

description

  • The description to add to the block. This is used to identify why the block was added.

staff_note

  • The staff note to add to the block.
  • default is null

user_note

  • The user note or patron note to add to the block.
  • default is null

Fields (RemoveBlockPatronAction)

Data Sets Allowed

  • credits

There are no additional fields needed for this action besides the default fields.

Notes on this action.

While using the BlockPatronAction a system ID is inserted in to the staff notes after any defined notes. This is used to identify the block in the system and allow for its removal. If a block was added via the UI by a user or this key is missing the block will not be removed. The key used is the UUID of the Fee/Fine.

Clone this wiki locally