transactions

Verify a Transaction

POST Transactions

/transactions endpoint allows you to operate on the Transaction entity.

In order to pass the payload of a transaction to Flagright and verify the transaction, you will need to call this endpoint with the transaction payload. Not all fields are mandatory, you will only need to pass in the fields that you have and are relevant for your compliance setup.

Payload

Here are some of the most used payload fields explained (you can find the full payload schema below with 1 line descriptions):

  • type: Type of transaction (Ex: WITHDRAWAL, DEPOSIT, TRANSFER etc).
  • transactionId - Unique Identifier for the transaction.
  • timestamp - UNIX timestamp in milliseconds of when the transaction took place
  • transactionState - The state of the transaction, set to CREATED by default. More details here
  • originUserId - Unique identifier (if any) of the user who is sending the money. This user must be created within the Flagright system before using the create a consumer user or create a business user endpoint
  • destinationUserId - Unique identifier (if any) of the user who is receiving the money. This user must be created within the Flagright system before using the create a consumer user or create a business user endpoint
  • originAmountDetails - Details of the amount being sent from the origin
  • destinationAmountDetails - Details of the amount being received at the destination
  • originPaymentDetails - Payment details (if any) used at the origin (ex: CARD, IBAN, WALLET etc). You can click on the dropdown next to the field in the schema below to view all supported payment types.
  • destinationPaymentDetails - Payment details (if any) used at the destination (ex: CARD, IBAN, WALLET etc). You can click on the dropdown next to the field in the schema below to view all supported payment types.
post/transactions

Request

  • Base URL: https://sandbox.api.flagright.com
  • URL: https://sandbox.api.flagright.com/transactions
  • Auth: API key in header x-api-key

Query parameters

validateOriginUserId'true' | 'false'

Boolean string whether Flagright should validate if provided originUserId exist. True by default

validateDestinationUserId'true' | 'false'

Boolean string whether Flagright should validate if provided destinationUserId exist. True by default

Request body

typestring required

Type of transaction (ex: DEPOSIT, WITHDRAWAL, TRANSFER, EXTERNAL_PAYMENT, REFUND, OTHER)

transactionIdstring required

Unique transaction identifier

timestampnumber double required

Timestamp of when transaction took place

originUserIdstring

UserId for where the transaction originates from

destinationUserIdstring

UserId for transaction's destination. In other words, where the value is being transferred to.

transactionState'CREATED' | 'PROCESSING' | 'SENT' | 'EXPIRED' | 'DECLINED' | 'SUSPENDED' | 'REFUNDED' | 'SUCCESSFUL' | 'REVERSED'

Model for transaction states. E.g. Processing, Refunded, Successful etc.

relatedTransactionIdsstring[]

IDs of transactions related to this transaction. Ex: refund, split bills

productTypestring

Type of produce being used by the consumer (ex wallets, payments etc)

promotionCodeUsedboolean

Whether a promotion code was used or not the transaction

referencestring

Reference field for the transaction indicating the purpose of the transaction etc.

jurisdictionstring

Legal authority or region governing the transaction

externalLinksstring[]

External links related to the transaction

customObjectTransactionCustomObject

Typed Object defined on the console for additional data

Response

Created

transactionIdstring required

Transaction ID that the results pertain to

status'ALLOW' | 'FLAG' | 'BLOCK' | 'SUSPEND' required

Model for rule action if a rule is hit. This is returned in the API response and can be configured on Console by operational accounts like a Compliance Analyst

messagestring

Changes

No recorded changes to this operation across all 1 revision of this API.