Store Transaction Details

POST https://{baseUrl}/v2/merchant/{merchantId}/transactionDetails

The Authorization Header is required if JWT (JSON Web Token) authentication is enabled in the application configuration (config.server.jwt_enable is true). This header must contain a valid JWT token prefixed with the word "Bearer". The token is used to authenticate the request and verify that the sender is authorized to perform the requested operation

The Request Body must be an array containing exactly one object. This object includes the details of the transaction and payment information.

This endpoint is used to store transaction details for a merchant identified by merchantId. The endpoint validates the request body, checks the merchant's enrollment, and stores the transaction data in both MongoDB and optionally in AWS DynamoDB.

Headers

NameValue

Content-Type

application/json

Authorization

Bearer <token>

Path Parameters

NameDescription

merchantId

Merchant Id for create transaction

Body

NameTypeRequiredDescription

cardBin

String

True

The first 6 digits of the card used in the transaction.

cardLast4

String

True

The last 4 digits of the card used in the transaction.

transactionDate

String

True

The date and time of the transaction.

paymentDescriptor

String

True

The payment descriptor

receipt

Object

True

Object containing transaction details like payment information and purchased products.

receipt.paymentInformation

Object

True

Object containing payment details.

receipt.paymentInformation.paymentTotalAmount

Object

True

Object containing the total amount and currency.

receipt.paymentInformation.paymentTotalAmount.amount

Number

True

The total payment amount.

receipt.paymentInformation.paymentTotalAmount.currency

String

True

The currency of the payment.

receipt.productsPurchasedList

Array

True

List of products purchased in the transaction.

receipt.productsPurchasedList[].productType

String

False

The type of product purchased.

receipt.productsPurchasedList[].productDescription

String

True

The description of the product.

receipt.productsPurchasedList[].productUrl

String

False

The URL of the product purchased.

receipt.productsPurchasedList[].artistOrSeller

String

False

The artist or seller of the product.

receipt.productsPurchasedList[].unitPriceAmount

Object

True

Object containing the price per unit of the product.

receipt.productsPurchasedList[].unitPriceAmount.amount

Number

True

The unit price amount of the product.

receipt.productsPurchasedList[].unitPriceAmount.currency

String

True

The currency of the unit price.

receipt.productsPurchasedList[].quantity

Number

True

The quantity of the product purchased.

receipt.productsPurchasedList[].creditReimbursementSequenceNumber

Number

False

The sequence number for credit reimbursement.

receipt.productsPurchasedList[].deliveryDetails

Object

True

Object containing delivery details for the purchased product.

receipt.productsPurchasedList[].deliveryDetails.shippingCarrier

String

False

The shipping carrier used for delivery.

receipt.productsPurchasedList[].deliveryDetails.trackingNumber

String

False

The tracking number for the shipment.

receipt.productsPurchasedList[].deliveryDetails.dateOfShipment

String

False

The date the product was shipped.

receipt.productsPurchasedList[].deliveryDetails.dateOfDelivery

String

False

The date the product was delivered.

receipt.productsPurchasedList[].deliveryDetails.deliveryStatus

String

True (Conditionally)

Required if deliveryStatus is "OTHER".

receipt.productsPurchasedList[].deliveryDetails.otherStatusDescription

String

True (Conditionally)

Required if deliveryStatus is "OTHER".

merchantInformation

Object

True

Object containing information about the merchant.

merchantInformation.merchantName

String

True

The name of the merchant.

merchantInformation.merchantUrl

String

True

The URL of the merchant.

merchantInformation.merchantContactPhone

String

True

The contact phone number of the merchant.

merchantInformation.storeDetails

Object

True

Object containing details about the merchant's store.

merchantInformation.storeDetails.storeName

String

True

The name of the store.

customerInformation

Object

True (Conditionally)

Object containing information about the customer, required for "CE" merchants.

customerInformation.accountId

String

True (Conditionally)

Required for "CE" merchants if deliveryAddress is not provided.

deliveryAddress

Object

True (Conditionally)

Required for "CE" merchants if accountId is not provided.

deliveryAddress.address1

String

True (Conditionally)

Required if the merchant enrollment is "CE" or based on specific conditions.

device

Object

True (Conditionally)

Required for "CE" merchants or if additional security checks are needed.

device.deviceId

String

True (Conditionally)

Required if other device fields are not provided.

device.ipAddress

String

True (Conditionally)

Required if other device fields are not provided.

device.deviceFingerprint

String

True (Conditionally)

Required if other device fields are not provided.

Last updated