TransactionEvent

During processing of a transaction we can provide callbacks to you for a selection of events. The format of the callback in each case is the same and is shown in the following table.

ElementDatatypeDescription
TransactionRequestIdGuidThe unique identifier for the transaction
EventTypeStringThe event that has occurred.
TimestampUTCDate/TimeThis defines the instant that the event was recorded by our system.
LinkStringFully qualified URI to the transaction that raised the event. You can use this value to query our system for full details of the transaction.
ExternalReference1StringThis optional field is provided if you sent the value in the initial transaction request.
ExternalReference2StringThis optional field is provided if you sent the value in the initial transaction request
ExternalReference3StringThis optional field is provided if you sent the value in the initial transaction request

An example event callback is shown below.

{
    "TransactionRequestId": "ef3f0690-ea25-406b-b71d-6a645081cabb",
    "EventType": "GroupingInitiated",
    "TimestampUTC": "2018-01-15T08:46:10.974809Z",
    "Link": "https://staging-api.vitessepsp.com/api/transactions/ef3f0690-ea25-406b-b71d-6a645081cabb",
    "ExternalReference1": "xxx",
    "ExternalReference2": "yyy",
    "ExternalReference3": "zzz"
}

The value of the EventType element can be one of the following values...

EventDescription
GroupingInitiatedWhen a deferred transaction is added to the system it's "waiting" to be grouped. This callback provides details of the transaction.
GroupingCompletedWhen a deferred transaction (or transactions) are grouped, this callback notifies you of the event.
LiquidityAwaitedOnce grouped, we are then awaiting payment for the deferred transaction group. This event signifies that we are waiting for payment to arrive.
LiquidityProvidedOnce payment has arrived for a deferred transaction group, a callback is made for each transaction in that group to indicate that liquidity has arrived.
LiquidityFailedDeferred transactions have a discrete lifetime, and we require payment to be made by a specific point (detailed in the response of the grouping call). If payment has not reached us by this point we will provide a callback indicating that liquidity was not provided in time for the transaction.