Banking - Transfer types

From Cyclos Wiki
Jump to navigation Jump to search

sub-modules

Banking - Account types, Banking - Transaction fields, Banking - Authorization levels, Banking - Authorization roles, Banking - Authorizations, Banking - Transfer fees, Users - References, Access - Channels, Users - Products.

Description

Transfer types are used to make it possible to transfer units (or another currency) from one account to another account. Transfer types are always part of an account type and define how units can be transfered from that account to another account. Through transfer types a lot of details and rules can be set for a certain transfer between two accounts. There are three sort of transfer types: payment transfer type, generated transfer type and loan transfer type.

Business rules

General rules:

  • A transfer type has always an account of origin and a destination account.
  • The source account type and the destination account type must be of the same currency.
  • The following transfers are possible:
    • From a member account type to another member account type.
    • From a member account type to the same member account type (After an account type is created, in the members product a member can get an account of a certain account type. These members then have an individual account of that account type. Therefore this transfer is possible).
    • From a system account to a member account type and vice versa.
    • From a system account to other system accounts.
  • It is not possible to transfer units from a system account to the same system account (unlike member account types, there is not a system account for every administrator, when you create a new system account this one will be unique and can be managed commonly by different administrators).


There are three sorts of transfer types:

  • Payment transfer types (used for normal direct payments).
  • Loan transfer types (used to grant loans to users or later maybe also for member to member loans (loans not supported yet)).
  • Generated transfer types (used by system generated transfers, like broker commissions, account fees and transfer fees).
    • Cannot be scheduled;
    • Cannot be authorized.
    • Cannot be disabled and will thus always work (e.g. when an initial credit uses a generated transfer type this must work, if it would be disabled this would give errors).


The following extra tabs can be displayed for a transfer type:


Finally if the source and destination account types are two different user account types there are two kind of payments:

  • Payments to others (e.g. payments from account type A of member 1 to account type B of member 2).
  • Self payments (e.g. payments from account type A of member 1 to account type B of member 1).

Notifications

  • The admin will get a notification when a payment is made if one of the selected transfer types to or from a system account in the notification settings is used . Shows only the payments which are made to/from a system account the admin can view.

Transfer type details

Tabs:

Fields Type Rules
Name
Text
  • Required
  • Max. length: 100 characters
  • Internationalizable
Internal name
Text
  • Generated automatically if not provided
Description
Text area
  • Allows to inform details of the present transfer type.
Enabled Boolean
  • Only visible for "Payment transfer types" (see New action)
From
Text (read only)
  • Not editable.
  • Automatically filled with the account type where the transfer type is registered (source account type).
To
At creation:
  • Single selection.

When editing:

  • Text (read only).
  • Required.
  • Only editable if creating a new transfer type.
  • The options of the selection field must be a list of account types that uses the same currency of the source account type. If the source account type is a system account type, it is excluded from this list.
Transfer direction
Single selection
  • Only editable if creating a new transfer type.
  • Only visible when From value is not a system account, and the From value is not equals to To value
  • Options: User to other user, User to self
Display transactions as
Text In some use cases it is preferred to use custom names for the transactions, especially when a transaction number is not used (defined in currency).

This setting overrides the setting with the same name in the currency
If nothing is specified, the default format is the transaction number if used, or the masked transfer / transaction id if not. You can use keys on this text, the available key/fields are:

    • {id}: The masked transfer / transaction id
    • {type}: The payment type name
    • {from}: The name of the from user or system account name
    • {to}: The name of the to user or system account name
    • {date}: The transfer / transaction date
    • {amount}: The payment amount, formatted as currency
    • {transactionNumber}: The transaction number
    • {channel}: The channel name
    • custom field internal name
Send payment performed notification
Boolean
  • User (payer) will always receive a notification when a payment is made.
Send payment received notification
Boolean
  • User (receiver) will always receive a notification when a payment is received.
  • Only visible if To value is a "User account"
Max chargeback time
Integer / single selection (period)

Allows to define the maximum period to realize a chargeback of a payment using this transfer type.

  • Options:
    • Days
    • Weeks
    • Months
Transfer status flows
Multi selection
  • Transfer status flow need to be created in order to be added to this list (See: 'Transfer status flows' in Account configuration menu)
Initial status for ...
Single selection
Maturity period newly created units
Time based rate
  • Only visible when:
    • "Enable maturity counter on balances" is enabled on From account type currency
    • From account is unlimited
    • To account is limited
Text area
  • Max. length: 4000 characteres.
  • Shown to the payer when making a payment using this transfer type.
Description availability
Radio buttons
  • Options: Optional, Required, Disabled
Value for empty description
Text area

Default description

Requires authorization
Boolean

Enabling this field will show/hide the authorization levels tab:

  • If the user is editing an existing transfer type and he disables this field and there are authorization levels, the authorization levels will be hidden from the user (not deleted). If the user checks this field again, the authorization levels tab will reappear again (with the old authorization levels).
Authorization expiration period
Time interval Maximum period in which the payment can be authorized
  • Only visible if [[#RequiresAuthorization|Requires authorization] value is enabled
Maturity Policy
Single selection
  • Visible only if:
    • "Enable maturity counter on balances" is enabled on From account currency
    • From account type is limited
  • Options:
    • Allow payments allways
    • Allow payments if maturity could have been zero
    • Allow payments if maturity is zero
  • A transfer type with maturity policy other than "Allow payments allways" cannot be authorized or scheduled. As soon as a user selects this combination, an error message will be displayed: You cannot use a maturity policy other than “always allowed” in combination with scheduling, authorizing or recurring payments.

The form’s validator will also check on this combination.

Number of received payments allowed for past maturity
Integer
  • Only visible if Maturity Policy value is "Allow payments if maturity could have been zero"
Default payment request expiration period
Time interval
Hide payment request expiration date
Boolean This hides the option to define the expiration data on creation. The expiration time is taken from the default setting, and the person that sends the payment request cannot change it.
Skip payment preview
Boolean When selected the payment will be done directly when submitting the payment details (no confirmation page with the payment details is shown)
Allow custom name in from
Boolean Transactions are in some places shown as links, and rather than showing generic names you could chose more explanatory name, or example 'conversion payment'.
  • Can only be used in scripts (see script example in documentation)
Allow custom name in to
Boolean See explanation in field above
Ignore account limits
Boolean This will ignore any account limit (in transaction type or product)
Lock origin account
Boolean TODO
  • Only visible if:
    • "Enable maturity counter on balances" is disabled on From account type currency
    • Ignore account limits value is disabled
    • From account is not Unlimited
Lock destination account
Boolean TODO
  • Only visible if:
    • "Enable maturity counter on balances" is diabled on From account type currency
    • Ignore account limits value is disabled
    • To account is not Unlimited
Payment limits
Use fixed amount
Boolean

Defines a fixed amount. When a user performs a payment the amount is pre-filled and read only.

  • Any payments of this type will be validated, only payments with the fixed amount can be processed.
  • After destination is selected in the payment form the fixed amount is pre-filled (and read only)
  • If fixed amount is defined the amount variable can be omitted for SMS operations
  • In case a transaction type with fixed amount is used for Mobile POS payments it would be preferable that the merchant (shop owner) first specifies the user (instead of the amount). This because only when the user is know the payment type is load (with a possible fixed amount). There is a setting in the Mobile POS where the user (shop owner) can define if the amount or user input is shown first.
Fixed amount
Decimal
Min amount per payment
Currency amount

Defines the minimum amount per payment

Max amount per payment
Currency amount

Defines the maximum amount per payment

Max amount per payment for trusted devices
Currency amount

Applies specifically for trusted devices (non trusted devices would have other rules, typically a lower max amount)

Max amount per payment without requiring confirmation password
Currency amount

Defines the amount per payment without requiring a confirmation password.

  • When no confirmation password is configured in the channel this setting is not applied
  • Only visible if "Use fixed amount" is disabled
Max amount per payment without requiring confirmation password for trusted devices
Currency amount
Max amount per day
Currency amount Max total amount of payments per day

Defines the maximum total amount of payments or scheduled payments installments which can be transfered from an account each day.

  • Has a checkbox wrapper to define or not
  • Only visible if "Use fixed amount" is disabled
  • Must be a positive (non zero) value
[INSERTED]
Max amount per day for trusted devices
Currency amount Max total amount of payments per day for trusted devices
Max amount per day without requiring confirmation password
Currency amount

Defines the amount per day without requiring a confirmation password

Max amount per day without requiring confirmation password for trusted devices
Currency amount
Max amount per week
Currency amount

Defines the maximum total amount of payments or scheduled payments installments which can be transferred from an account each week.

  • Only visible if "Use fixed amount" is disabled
  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Max amount per week for trusted devices
Currency amount
Max amount per month
Currency amount

Defines the maximum total amount of payments or scheduled payments installments which can be transferred from an account each month.

  • Only visible if "Use fixed amount" is disabled
  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Max amount per month for trusted devices
Currency amount
Max amount per year
Currency amount
Max amount per year for trusted devices
Currency amount
Max number of payments per day
Integer Defines the maximum number of payments per day
  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Max number of payments per day for trusted devices
Integer
Max number of payments per week
Integer

Defines the maximum of payments per week

  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Max number of payments per week for trusted devices
Integer
Max number of payments per month
Integer

Defines the maximum of payments per month

  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Max number of payments per month for trusted devices
Integer
Min period of time between payments
Time interval

Defines the minimum time between payments

  • Has a checkbox wrapper to define or not
  • Must be a positive (non zero) value
Applicability
Channels
Multi selection

Define what channels are available for the transfer type (non selected channels won't be available for payments)

  • Options: all configuration channels available
User identification methods
Multi selection

Define what User identification methods are available for the transfer type

  • Options: all identification methods available
Priority
Boolean

If the priority option is selected the transfer type will have priority over other transfers. This means that when a payment could show more than one possible transfer type only the transfer types with the priority settings will be shown (among all possible accounts). If none of the payments is set as priority they will all show up. If multiple priority and non-priority transfer types are available for a payment only the transfer types with the priority setting will be available for a payment.

Destination restrict to
Single selection Fixed destination account (user or system)
  • Visible only if "To" is user account, and "Transfer direction" is not "User to self"
  • If "From" is a system account the options of the selection field must be:
    • No restrictions
    • Specific users
    • Specific groups
  • If "From" is a user account the options of the selection field must be:
    • No restrictions
    • Specific users
    • Specific groups
    • Only users who belong to the same group
    • Only users who belong to the same group set
    • Only users who do not belong to the same group
    • Only users who do not belong to the same group set
    • Brokered users(from the broker to one of his users)
    • Brokers (from a user to one of his brokers)
Possible destination groups
Multi selection
Possible destination users
Multiple user selection
Scheduling
Allows recurring payments
Boolean Allows recurring payments. Meaning a payment can be configured by the payer to repeat periodically (until manually cancelled or fix number of payments).
Show recurring payments to receiver
Allows scheduled payments
Boolean If checked, it is possible to define settings for scheduled payments using this transfer type. Just as recurring payments scheduled payments will be periodically repeated, but are bundled as installments.
Max installments on scheduled payments*
Integer

The maximum installments on scheduled payments of this type.

Show scheduled payments to receiver
Boolean

Only when enabled, incoming scheduled payments will be shown in the scheduled payments search page

Reserve total amount on scheduled payments
Boolean

When enabled, performing an scheduled payment will reserve the total amount on the source account. As installments are processed, the respective amounts are dereserved.

Payment feedback
Enable payment feedback
Boolean
Allows members (payers) to give payment feedback on this transfer type.
Payment feedback settings
Single selection

Here the admin can select if the feedback is required (under which conditions) or optional.

  • Only visible if "Enable payment feedback" is enabled
  • Options:
    • Always required
    • Required for webshop payments
    • Optional for all payments
Max. amount of days to give feedback
Integer

When a payment is done the payer (=buyer) has a maximum time in days in which the feedback can be made.

Send notification to give feedback
Integer

The payer (buyer of product or service) will be reminded to give feedback after the defined number of days.

  • Only visible if "Enable payment feedback" is enabled
  • Required when visible
  • Display "days after the payment was processed" after the integer field
  • If set to zero the notification is send inmediatly after the payment is done
Send notification to remind feedback expiration
Integer

For required feedback the member is notified before his feedback will expire. This reminder will be send x days after the payment has been made.

Max. amount of days to change feedback
Integer

After the feedback is given, the feedback can still be changed by the user for this amount of days.

Max. amount of days to reply to feedback
Integer

The receiver of a feedback (=seller) can reply to a feedback. The maximum time in days can be specified here

Feedback level on expiration
Single selection

Once a required feedback has been expired a default feedback will be created. You can specify the default level in this setting.

  • Only visible and required if the field "Payment feedback settings" is not "Optional for all payments"
  • Options:
    • Very Good
    • Good
    • Neutral
    • Bad
    • Very Bad
Feedback comments on expiration
Text area

Once a required feedback has been expired, a default feedback will be created. You can specify the default comment in this setting (this would be typically something like "No feedback given").


Payment fields (tab)

Search page (filters)

Fields Type Rules
Add payment field (multi) action button Only enabled when there are transfer fields available in the network. Otherwise the info text is shown: "Please first create the payment field and then add it to the transfer types. To create the transfer field go to: System management > Account configuration > Payment fields."
  • Shows a dropdown button with all transfer fields that can be added to the transfer type.
  • If all existing transfer fields have been added to the transfer type, the button will be disabled.
  • The transfer fields can be created trough: Banking_-_Transaction_fields.


Search result (list)

* Automatically shows all transfer fields added to this transfer, sorted by order.

Fields Type Rules
Display name Text (read only) The name of the field displayed to the user.
Data type Text (read only) The data type of the payment field.
Remove Action button Removes the payment field.


Transfer fees (tab)

See Banking - Transfer fees

Generated transfer type details

Fields Type Rules
Name This is a shared field. Click on the link the fields column to jump to the explanation.
  • Internationalizable
  • Required
  • Max. length: 100 characters
Internal name This is a shared field. Click on the link the fields column to jump to the explanation.
Description This is a shared field. Click on the link the fields column to jump to the explanation.
From This is a shared field. Click on the link the fields column to jump to the explanation.
To This is a shared field. Click on the link the fields column to jump to the explanation.
Display transactions as (overrides the one in currency) This is a shared field. Click on the link the fields column to jump to the explanation.
Send payment received notification This is a shared field. Click on the link the fields column to jump to the explanation.
Max chargeback time This is a shared field. Click on the link the fields column to jump to the explanation.
Transfer status flows This is a shared field. Click on the link the fields column to jump to the explanation.
Initial status for ... This is a shared field. Click on the link the fields column to jump to the explanation.
Maturity period newly created units This is a shared field. Click on the link the fields column to jump to the explanation.
Ignore account limits This is a shared field. Click on the link the fields column to jump to the explanation.
Lock origin account This is a shared field. Click on the link the fields column to jump to the explanation.
Lock destination account This is a shared field. Click on the link the fields column to jump to the explanation.
Value for empty description This is a shared field. Click on the link the fields column to jump to the explanation.