How to send historical data

Historical data are uploaded in batches.

  • Files must be in gZip format.
  • Files should contain a JSON file with an array of all transactions.
  • Make a request to the url you received from the response above to upload your data to be analyzed by sigma. For example:
Method: PUT
Endpoint: [THE URL YOU RECEIVED FROM THE RESPONSE OF THE UPLOAD ENDPOINT]
Body : [YOUR GZIP.FILE]
  • The body of the request should be a gZip file containing a JSON file with an array of all transactions.

This is a typical example of transaction data you can send to us (You don’t have to send everything, send what you have).

[
  {
    transaction_data: {
      transaction_id: "d48ed552-eaef-46ed-bd0c-d230189e1de0",
      status: true,
      amount: "234.90",
      balance_before: "9000.00",
      externalPayment: false,
      Provider: "atm",
      type: "debit",
      channel: "card",
      transaction_date: "2023-04-28T20:16:12.642Z",
      sender_bank_code: "255",
      receiver_bank_code: "2435",
      sender_account_number: "2000456355",
      receiver_account_number: "25735262625",
      narration: "Payment for groceries",
      device: {
        device_id: "d48ed552-eaef-46edbd0c-d230189e1de0",
        manufacturer: "Samsung",
        model: "s22 Ultra",
        name: "s22 Ultra",
        os_name: "Android",
        os_version: "13.0",
        location: {
          latitude: "37.7749",
          longitude: "-122.4194",
        },
      },
      anonymized_user_data: {
        unique_id: "d48ed552-eaef-46edbd0c-d230189e1de0",
        is_phone_number_verified: true,
        is_banned: false,
        date_joined: "2023-04-28T20:16:12.642Z",
        age_years: "25",
        is_identity_verified: true,
        state: "Lagos",
        city: "Egbeda",
        country: "Nigeria",
        accountType: "individual",
        updatedAt: "2023-04-28T20:16:12.642Z",
      },
      fraudulent: false,
    },
  },
];
Sample Parameter NameDescriptionType
transaction_dataAn object containing information about the transaction.JSON object
transaction_idThe unique identifier of the transaction.String e.g d48ed552-eaef-46ed-bd0c-d230189e1de0
statusBefore a fraud check is run on a transaction, the client must have run some pre-checks e.g. does user have enough balance? has user passed KYC checks? etc. True if all checks passed, false otherwise.Boolean e.g true | false
amountThe amount of the transaction.String e.g 234.90
balance_beforeThe current balance of the account before the transaction.String e.g 9000.00
externalPaymentAnswers: “Is this an internal transfer or an external payment?”Boolean e.g true | false
ProviderThe provider of the transaction.String e.g atm, pos
typeThe type of the transaction, such as “debit” or “credit”.String e.g debit | credit
channelTransaction channel (i.e. card, mobile, web transfer, cash withdrawal, etc.).String e.g card
transaction_dateThe date and time when the transaction occurred.String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z
sender_bank_codeThe bank code of the sender (User if debit).String e.g 255
receiver_bank_codeThe bank code of the receiver (User if credit).String e.g 2435
sender_account_numberThe account number of the sender (User if debit).String e.g 2000456355
receiver_account_numberThe account number of the receiver (User if credit).String e.g 25735262625
narrationThe narration of the transaction.
deviceAn object containing information about the device used to make the transaction.JSON object
device_idThe unique identifier of the device used to make the transaction.String e.g d48ed552-eaef-46edbd0c-d230189e1de0
manufacturerThe manufacturer of the device used to make the transaction.String e.g Samsung
modelThe model of the device used to make the transaction.String e.g s22 Ultra
nameThe name of the device used to make the transaction.String e.g s22 Ultra
os_nameThe name of the operating system of the device used to make the transaction.String e.g Android
os_versionThe version of the OS of the device used to make the transaction.String e.g 13.0
locationAn object containing latitude and longitude of the transaction location.JSON object
latitudeThe latitude of the transaction location.String e.g 37.7749
longitudeThe longitude of the transaction location.String e.g -122.4194
anonymized_user_dataAn object containing anonymized info about the user.JSON object
unique_idA unique identifier for the user.String e.g d48ed552-eaef-46edbd0c-d230189e1de0
is_phone_number_verifiedIndicates whether the user’s phone number has been verified.Boolean e.g true | false
is_bannedIndicates whether the user’s account has been banned.Boolean e.g true | false
date_joinedThe date and time when the user joined the service.String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z
age_yearsThe age of the User.String e.g 25
is_identity_verifiedIndicates whether the user’s identity has been verified.Boolean e.g true | false
stateThe state the user lives in.String e.g Lagos
cityThe city the user lives in.String e.g Egbeda
countryThe country the user lives in.String e.g Nigeria
accountTypeThe type of the account.String e.g business or individual
updatedAtWhen the user data was updated last.String in ISO-8601 format e.g 2023-04-28T20:16:12.642Z
fraudulentTarget variable (indicates whether the transaction was fraudulent).Boolean e.g true | false

Data is securely stored and anonymized to maintain confidentiality.