Verify a Transaction
## POST Transactions
`/transactions` endpoint allows you to operate on the [Transaction entity.](/guides/overview/entities#transaction)
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](/api-reference/api-reference/transactions/verify#request) 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](/guides/overview/entities#transaction-lifecycle-through-transaction-events)
* `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](/api-reference/api-reference/consumer-users/create) or [create a business user](/api-reference/api-reference/business-users/create) 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](/api-reference/api-reference/consumer-users/create) or [create a business user](/api-reference/api-reference/business-users/create) 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.
Authentication
x-api-keystring
API Key authentication via header
Query Parameters
validateOriginUserId
Boolean string whether Flagright should validate if provided originUserId exist. True by default
Allowed values:
validateDestinationUserId
Boolean string whether Flagright should validate if provided destinationUserId exist. True by default
Allowed values:
Request
type
Type of transaction (ex: DEPOSIT, WITHDRAWAL, TRANSFER, EXTERNAL_PAYMENT, REFUND, OTHER)
transactionId
Unique transaction identifier
timestamp
Timestamp of when transaction took place
originUserId
UserId for where the transaction originates from
destinationUserId
UserId for transaction's destination. In other words, where the value is being transferred to.
transactionState
Model for transaction states. E.g. Processing, Refunded, Successful etc.
originAmountDetails
Model for transaction amount details
destinationAmountDetails
Model for transaction amount details
originPaymentDetails
Payment details of the origin. It can be a bank account number, wallet ID, card fingerprint etc.
destinationPaymentDetails
originFundsInfo
Model for origin funds information
productType
Type of produce being used by the consumer (ex wallets, payments etc)
promotionCodeUsed
Whether a promotion code was used or not the transaction
reference
Reference field for the transaction indicating the purpose of the transaction etc.
originDeviceData
Model for device data
destinationDeviceData
Model for device data
jurisdiction
Legal authority or region governing the transaction
Response
Created
executedRules
Unique transaction identifier
hitRules
Unique transaction identifier
status
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
Allowed values:
transactionId
Transaction ID that the results pertain to
message
riskScoreDetails