Transfer Paylet

What is a Transfer Transaction?

A Transfer moves funds across Managed Instruments within OPC. The source and destination Managed Instruments must be owned by the same Corporate Identity.

Refer to the Transfer Swagger documentation for the complete list of APIs that may be invoked in relation to the transfer transaction.

Transfer Paylet API

URL Method Description
/transfers/get POST Retrieve a list of Transfer instances within the specified programme
/transfers/{id}/get POST Retrieve details of the Transfer transaction specified in the request
/transfers/_/create POST Create a Transfer transaction to move money between a source and a destination Managed instruments
/transfers/profiles/get POST Retrieve a list of Profiles that can be used to create a Transfer transaction
/transfers/profiles/{id}/get POST Retrieve details of a specified Transfer Profile

Transfer Instance Attributes:

Attribute Description
Id The ID of the Transfer transaction
Programme Id The Programme within which the Transfer transaction is being executed
Profile Id The ID of the Profile used to configure the Transfer transaction
State The current state of the Transfer transaction. It can be one of: Initialised, Completed or Failed.
Timestamp The date and time when the Transfer transaction was initiated
Transfer currency The currency of the Transfer transaction
Transfer amount The value of the Transfer transaction. Note that this is currently scaled to the lowest denomination of the currency e.g. to specify a transfer of 10 Euro, a value of 1000 would need to be entered
Source Source Instrument from which funds are to be transferred
Destination Destination Instrument to which funds are to be transferred
Calculated Fees The fee to be applied during the execution of a Transfer transaction specifying the amounts to be taken as a fee from the source / destination Instruments. The fee source may be one of the source or destination Instruments or, another instrument belonging to the same Corporate Identity.
Failure Reason Provides details in case of errors during a Transfer transaction

Other Information:

A Developer can specify a fee to be collected upon the execution of a Transfer transaction.

In general the /transfers/_/create method allows for the definition of more than one fee to be specified.

Please note that there is currently a constraint of a maximum of one fee definition.

Both the source and destination Instruments must be in an active state for a Transfer transaction to be executed. If there are any restrictions of any sort on an Instrument (e.g. a single-spend card which has already processed an Authorisation request; or a Managed Account that has exceeded the maximum number of allowed transactions within a 24-hour period).

A Transfer transaction is executed if:

  • The Transfer is in one of the supported currencies
  • There are sufficient funds to cover the Transfer and any associated fees
  • The source and destination Instruments are both active, not blocked or destroyed, and owned by the same identity
  • The Transaction Profile is in an active state
  • The Fee Instrument indicated (if different from source or destination Instruments) has sufficient funds and is not blocked