Overview

Fee is a type of financial records representing fees charged by payment processors for processing the transaction. Those fees are transaction costs to merchants.

Fee structures vary greatly across payment processors. Some charge as a percentage value, and others charge a flat value. Some charge one fee per transaction, other charge multiple fees at different transaction stages. Leapfin does not handle fee calculations. Only the final amounts calculated by payment processors are stored on Leapfin Platform.

📘

Marketplace Fees

For marketplace business, the term "fee" or “transaction fee” often refers to the amounts charged by the marketplace for transactions between buyers and sellers. Such "fee" is different from Leapfin's Fee record. The former is revenue to the marketplace business, while the latter is cost to the business.

To capture marketplace fees, Leapfin creates customFields on Line Item record to breakdown the full item amount into fees and pass-through amounts.

Create a Fee

The following fields are required :

  • objectType: type of financial record. For Fee, the value is "fee".
  • id: unique identifier of this record. This is external id received by Leapfin.
  • amount: amount of transaction fee. The value should be non-negative. This is the primary amount of this record.
  • currencyCode: 3-digit ISO code of amount field, e.g. “USD”, "GBP", etc. This is the primary currency of this record
  • date: the date-time of when this fee is charged by payment processor.

The following fields are optional but are commonly need for creating journal entries:

  • description: description of the fee. Use this field to explain the type of fee.
  • exchangeRates: a list of exchange rates used to calculate currency conversions
    • currencyCode: 3-digit ISO code, e.g. “USD”, "GBP", etc. This is the target currency of this record
    • rate: conversion rate from primary currency to target currency. i.e. amount in primary currency * rate = converted amount in target currency.
  • links: directional relationships pointing from this record to other financial records. Fee is commonly linked to Payment.
    • objectType: type of the target financial record, e.g. "payment"
    • id: unique identifier of the target financial record
  • customFields: additional fields (i.e. key-value pairs) related to this record

Sample Data

{
  "objectType": "fee",
  "id": "fee_001",
  "amount": 0.90,
  "currencyCode": "USD",
  "description": "a sample transaction fee object",
  "date": "2020-12-28T06:09:38",
  "exchangeRates": [
    {
      "currencyCode": "EUR",
      "rate": 0.84
    },
    {
      "currencyCode": "GBP",
      "rate": 0.73
    }
  ],
  "links": [
    {
      "objectType": "payment",
      "id": "payment_001"
    }
  ],
  "customFields": {
    "field1": "value1",
    "field2": "value2"
  }
}

Query a Fee

Fee records are stored in VW_FT_FEE table. It can be accessed via Snowflake Data Sharing and Access.

ColumnDescription
LEAPFIN_IDunique identifier created by Leapfin.
DECODED_LEAPFIN_ID_VTdecoded version of LEAPFIN_ID in json format. It contains following values:

- external_code: unique identifier of this record. This is external id received by Leapfin.
- integration_id: unique identifier of the data source. This is internal id created by Leapfin.
- leapfin_data_type: type of financial record, i.e. "LeapfinFee"
- leapfin_suffix: additional string to distinguish different financial records when the same external_code is received from the data source.
- raw_data_type: type of raw data record received from the data source.
ORGANIZATION_IDunique identifier of the account. This is internal id created by Leapfin.
DATE_DTthe date of when this fee is created by payment processor.
DESCRIPTIONdescription of the fee. Use this field to explain the reason of fee.
CURRENCY_CODE3-digit ISO code of amount field, e.g. “USD”, "GBP", etc. This is the primary currency of this record.
AMOUNTamount of money impacted by this record. The value should be non-negative. This is the primary amount of this record.
EXCHANGE_RATES_VTa list of exchange rates used to calculate currency conversions. Each rate contains following values:

- currencyCode: 3-digit ISO code, e.g. “USD”, "GBP", etc. This is the target currency of this record.
- rate: conversion rate from primary currency to target currency. i.e. amount in primary currency * rate = converted amount in target currency.
CUSTOM_FIELDS_VTadditional fields (i.e. key-value pairs) about the financial record in json format
ACCOUNTING_TRANSACTIONS_VTa list of journal entries associated with this financial record. Each item contains following values:

- date: the date of the journal entry
- entries: a list of journal lines within the journal entry. Each line contains following values:
--- account: unique identifier of the financial account. This is an internal id created by Leapfin (refer to VW_LK_ACCOUNT).
--- amount: amount of money booked towards the account.
--- accountingSide: an indicator of whether the amount is a debt ("dr") or credit ("cr") to the acount.
- comments: additional fields (i.e. key-value pairs) on the journal entry in json format.
CREATED_AT_DTthe date-time when the financial record is created by Leapfin. Value format: "2022-07-14 23:01:26.400"
UPDATED_AT_DTthe date-time when the financial record is last updated by Leapfin. Value format: "2022-09-01 06:09:57.379"