Hotmart

Creating the data source

Requirements

  • Follow the steps below using the account's "master"/primary user, as other collaborators may not have the necessary permissions

Instructions

  1. Log in to your Hotmart account. In the upper-right corner, click on the nine-dot icon and select Tools.
  2. On the tools page: (1) Select “For Producer” (2) Search for "credentials" and select the option Hotmart Credentials.
    1. If you cannot find the credentials option, you can access them directly through this link: https://app.hotmart.com/tools/credentials - if this link is not accessible, you do not have the necessary permissions and must use the master/primary user account, as outlined in the previous instructions.
  3. On the credentials page, click on Create Credential
  4. In the popup that opens
    1. Check the option Hotmart API
    2. Name your credential (e.g., "kondado")
    3. Click Create Credential
    4. After creating the credential, the details will be displayed
    5.  
  5. After creating the credential, the details will be displayed. Copy the values for each parameter without spaces, excluding the labels such as "Client ID:", "Client Secret:", or the first "Basic:". The second "Basic" is part of the parameter, as shown in the example image
  6. Log in to Kondado > Click CREATE + > Data Source > Hotmart
  7. On the Hotmart data source setup page, fill in the information using the values obtained in step (5), as illustrated below.

 

Pipelines

Summary

Relationship chart

Click to expand

Breakdown of sales price

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days previous to the savepoint the same record can still be refreshed
  • Read start date (Savepoint): Initial date for data replication

Relationships:

Detailed pricing breakdown for each transaction including base values, VAT, interest, exchange rates, coupon discounts, and currency information

Campo Tipo

transaction

text

[en] Unique reference code for a transaction, for example HP17715690036014. A transaction occurs when an order is placed, which can be a payment slip generated, an approved purchase, a recurring payment, and more

    Sales history > > purchase_transaction

product_id

text

[en] Unique identifier (ID) of the sold product (7-digit number)

    Products > > id

product_name

text

[en] Product name

real_conversion_rate

float

[en] Exchange rate used to convert the original offer value into the amount to be paid by the buyer in their local currency

total_currency_code

text

[en] Currency code for the total value in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

total_value

float

[en] Composition of base values, VAT and interest. VAT will only be charged if the sale is made in European and Mexican territories

fee_currency_code

text

[en] Currency code for interest in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

fee_value

float

[en] Interest amount to be charged on an installment purchase in BRL or MXN. This amount can be paid by the producer or the buyer, depending on the product sales configuration

vat_currency_code

text

[en] Currency code for VAT in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

vat_value

float

[en] VAT (Value Added Tax) represents the tax on the added value of the product

base_currency_code

text

[en] Currency code for the base value in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

base_value

float

[en] Used for commission split among producers, affiliates and co-producers. Additionally, addon fees are deducted from this amount

coupon_code

text

[en] Coupon identifier code

coupon_value

float

[en] If a discount coupon was applied, represents the discount percentage of the coupon applied to the product value. Its value is between 0 and 1

Hotmart Club: modules

Replication type: Full

Parameters:

  • Subdomain: Subdomain of the club's courses, separated by commas. Check our documentation for instructions on how to obtain these values
Campo Tipo

module_id

text

[en] Unique module identifier

subdomain

text

[en] Subdomain name

name

text

[en] Module name defined by the producer within the Club

sequence

int

[en] Sequential order in which the module will be displayed to students

is_public

boolean

[en] Indicates if the module is free. Free modules are available to people who have not yet purchased your course. The value true means it is free, false that it is not

is_extra

boolean

[en] Indicates if the module is extra. Extra modules are modules with additional content that can be offered to students, extra modules can be free or charged to users who want access to the additional content. The value true means it is an extra module, false that it is not

is_extra_paid

boolean

[en] Indicates if the extra module is a paid module or a free module. The value true means it is paid, false that it is free

classes

text

[en] Shows the module lessons

total_pages

int

[en] Indicates the total number of pages related to the module

Hotmart Club: pages

Replication type: Full

Parameters:

  • Subdomain: Subdomain of the club's courses, separated by commas. Check our documentation for instructions on how to obtain these values

Relationships:

Main object

Campo Tipo

page_id

text

[en] Unique page identifier

subdomain

text

[en] Subdomain name

product_id

text

[en] Subdomain name

    Products > > id

module_id

text

[en] Unique module identifier

    Hotmart Club: modules > > module_id

name

text

[en] Page name defined by the producer within the Club

type

text

[en] Shows the page type. These types can be

page_order

text

[en] Sequential order of the page within the module

total_comments

int

[en] Sequential order of the page within the module

rates_average

float

[en] Average user ratings for the page

published

boolean

[en] Indicates if the page is published for users. The value true means yes, false means no

has_media

boolean

[en] Indicates if the page is published for users. The value true means yes, false means no

hotmart_members_area_pages_rates

Campo Tipo

page_id

text

[en] Unique page identifier

subdomain

text

[en] Subdomain name

product_id

text

[en] Subdomain name

    Products > > id

rates_rate

text

[en] Rating assigned to the page in an individual evaluation

rates_total

text

[en] Number of users who assigned a specific rating to the page

hotmart_members_area_pages_dripping_configs

Campo Tipo

page_id

text

[en] Unique page identifier

subdomain

text

[en] Subdomain name

product_id

text

[en] Subdomain name

    Products > > id

_dripping_configs_type

text

[en] Unique page identifier

_dripping_configs_liberation_date

timestamp

[en] Release date

_dripping_configs_id

text

[en] Class identifier

_dripping_configs_name

text

[en] Class name

_dripping_configs_default_class

boolean

[en] Indicates if it is the default class (true) or not (false)

Hotmart Club: students

Replication type: Full

Parameters:

  • Subdomain: Subdomain of the club's courses, separated by commas. Check our documentation for instructions on how to obtain these values

Student enrollment data in members area courses including access statistics, completion progress, engagement metrics, class assignments, and user profile information

Campo Tipo

user_id

text

[en] Unique student identifier in the Club

subdomain

text

[en] Subdomain name

access_count

int

[en] Number of accesses made to the Members Area

class_id

text

[en] Class identifier to which the student is associated

is_deletable

boolean

[en] Indicates whether the student can be blocked or not. The value true means yes, false means no

progress_completed_percentage

float

[en] Indicates the percentage of completed pages

progress_completed

float

[en] Indicates the number of completed pages

progress_total

float

[en] Total number of pages in the Members Area

engagement

text

[en] Student engagement within the course. Engagement is an index that measures how much your users are interacting overall with your product. Each user has their points that determine if their engagement is

locale

text

[en] Language in which the user made the purchase, or language that was used to import the user

first_access_date

timestamp

[en] Date of the student first access to the Members Area, represented as a timestamp in milliseconds

purchase_date

timestamp

[en] Date of course purchase by the student, represented as a timestamp in milliseconds

last_access_date

timestamp

[en] Date of the student last access to the Members Area, represented as a timestamp in milliseconds

email

text

[en] Student email address

name

text

[en] Student full name

role

text

[en] Student role on the platform (e.g.: ALUNO, MODERATOR)

status

text

[en] Current student status in the Members Area

plus_access

text

[en] Indicates if the student has Plus access on the platform

type

text

[en] Student type in the system (e.g.: IMPORTADO, CADASTRADO)

Hotmart Club: students progress

Replication type: Full

Parameters:

  • Subdomain: Subdomain of the club's courses, separated by commas. Check our documentation for instructions on how to obtain these values

Relationships:

Student progress tracking for individual pages and modules in the members area, including completion status and completion dates

Campo Tipo

student_id

text

[en] Unique student identifier in the Club

    Hotmart Club: students > > user_id

page_id

text

[en] Unique page identifier

    Hotmart Club: pages > > page_id

subdomain

text

[en] Subdomain name

student_email

text

[en] Student email in the Club

page_name

text

[en] Page name defined by the producer within the Club

is_module_extra

boolean

[en] Indicates if it is an extra module. The value true means yes, false means no

is_completed

boolean

[en] Indicates if the page has already been completed by the student. The value true means yes, false means no

module_name

text

[en] Module name defined by the producer in the Club

completed_date

timestamp

[en] Date when the page was completed. This value will only be returned if the is_completed parameter is true

Products

Replication type: Full

Campo Tipo

id

text

[en] Unique module identifier

ucode

text

[en] A unique global identifier (UUID) associated with the product, used for identification in different contexts or integrations

created_at

timestamp

[en] Date and time when the product was created on the platform, represented as a timestamp in milliseconds since the beginning of the Unix era (01/01/1970)

name

text

[en] Product name as defined by the user

status

text

[en] Similar to situation, indicates that the product is in DRAFT or APPROVE_PRODUCT (Approved for publication)

format

text

[en] Product format (e.g. ONLINE_COURSE, EBOOK, EVENT, ONLINE_EVENT)

is_subscription

boolean

[en] Indicates if the product is a subscription

warranty_period

int

[en] Product warranty

Sales comission

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days previous to the savepoint the same record can still be refreshed
  • Read start date (Savepoint): Initial date for data replication

Relationships:

Commission breakdown for each transaction, detailing participant roles, commission amounts, exchange rates, and payout currency information

Campo Tipo

transaction

text

[en] Unique reference code for a transaction, for example HP17715690036014. A transaction occurs when an order is placed, which can be a payment slip generated, an approved purchase, a recurring payment, and more

    Sales history > > purchase_transaction

product_id

text

[en] Unique identifier (ID) of the sold product (7-digit number)

    Products > > id

product_name

text

[en] Product name

exchange_rate_currency_payout

float

[en] Exchange rate used to convert the tax-free purchase amount into the gross commission value (before split among parties) in its respective currency. When no conversion occurs, the value returned in this field is 1

source

text

[en] Indicates the commission source, which can be one of the following values: PRODUCER, COPRODUCER, AFFILIATE or ADDON

user_name

text

[en] Commission participant name

user_ucode

text

[en] Unique identifier of the commission participant

commission_currency_code

text

[en] Currency used for commission in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

commission_value

float

[en] Commission amount

Sales history

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days previous to the savepoint the same record can still be refreshed
  • Read start date (Savepoint): Initial date for data replication

Relationships:

Transaction history of digital product sales including purchase details, buyer information, producer data, payment methods, commissions, fees, and order status

Campo Tipo

purchase_transaction

text

[en] Unique reference code for a transaction, for example HP17715690036014. A transaction occurs when an order is placed, which can be a payment slip generated, an approved purchase, a recurring payment, and more.

purchase_approved_date

timestamp

[en] Date when the order was approved

purchase_commission_as

text

[en] How the account user received commission for the sale. Possible values for this field are: PRODUCER, COPRODUCER, AFFILIATE

purchase_hotmart_fee_base

float

[en] Base value used for calculating Hotmart fee charges

purchase_hotmart_fee_total

float

[en] Total fee charged by Hotmart on the transaction

purchase_hotmart_fee_currency_code

text

[en] Currency code for fee values in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

purchase_hotmart_fee_fixed

float

[en] Fixed fee charged by Hotmart on every transaction

purchase_is_subscription

boolean

purchase_offer_code

text

[en] Offer identifier code

purchase_offer_payment_mode

text

[en] Payment mode. Possible values for this field are: UNIQUE_PAYMENT, SUBSCRIPTION, MULTIPLE_PAYMENTS, PAY_IN_FULL, NOT_DEFINED, INVOICE, SMART_INSTALLMENT

purchase_order_date

timestamp

[en] Date when the order was placed

purchase_payment_method

text

[en] Payment method for the purchase. Possible values include: BILLET, PAYPAL, BANK_TRANSFER_BB, BANK_TRANSFER_BRADESCO, BANK_TRANSFER_ITAU, CREDIT_CARD, CREDIT_CARD_MASTERCARD, CREDIT_CARD_AMERICAN_EXPRESS, CREDIT_CARD_AURA, CREDIT_CARD_DINERS, CREDIT_CARD_HIPERCARD, CREDIT_CARD_ELO, HOTMART, BANK_DEBIT, CREDIT_CARD_DISCOVER, SEPA_DIRECT_DEBIT, MULTIBANCO, GOOGLE_PAY, BALOTO, OXXO, CUPON_DE_PAGO, SAMSUNG_PAY, PAGO_EFECTIVO, BACS_DIRECT_DEBIT, PICPAY, FINANCED_INSTALLMENT_ADYEN_ONEY, DIRECT_BANK_TRANSFER_ADYEN_SOFORT, FINANCED_INSTALLMENT_ADYEN_ONEY_3X, FINANCED_INSTALLMENT_ADYEN_ONEY_4X, FINANCED_INSTALLMENT_ADYEN_ONEY_6X, FINANCED_INSTALLMENT_ADYEN_ONEY_10X, FINANCED_INSTALLMENT_ADYEN_ONEY_12X, PIX

purchase_payment_type

text

[en] Payment type for the purchase, which can be: BILLET, CREDIT_CARD, PAYPAL, BANK_DEBT, HOTMART_BALANCE, CASH_PAYMENT, PIX, SAMSUNG_PAY or GOOGLE_PAY

purchase_payment_installments_number

float

[en] Total number of installments for installment purchases in BRL, MXN or COP

purchase_price_currency_code

text

[en] Currency code for the base price value in the international three-letter standard, for example: BRL, USD, EUR, MXN and more

purchase_price_value

float

[en] Total amount paid by the buyer, including fees and interest

purchase_recurrency_number

float

[en] Recurrence number for installment purchases on credit card or via Smart Installment

purchase_status

text

[en] Purchase status, which can be: STARTED, PROCESSING_TRANSACTION, COMPLETE, PRINTED_BILLET, WAITING_PAYMENT, APPROVED, UNDER_ANALISYS, CANCELLED, PROTESTED, REFUNDED, CHARGEBACK, BLOCKED, OVERDUE, PRE_ORDER, NO_FUNDS or EXPIRED. The description of each status can be found on Hotmart support page

purchase_tracking_source_sck

text

[en] Tracking code that the producer registers to know the origin of the sale. This code is exclusive to the producer and works to identify a checkout page

purchase_tracking_source

text

[en] Tracking code related to the src field that the seller registers to know the origin of the sale

purchase_tracking_external_code

text

[en] Tracking code related to the xcod field passed as a parameter in the checkout page URL

purchase_warranty_expire_date

timestamp

[en] Warranty expiration date. The period in which the buyer can request a refund for the order.

buyer_name

text

[en] Buyer name

buyer_ucode

text

[en] Unique buyer identifier

buyer_email

text

[en] Email address of the buyer. You can use this data to search for purchases from specific people

producer_name

text

[en] Producer name

producer_ucode

text

[en] Unique producer identifier

product_id

text

[en] Unique identifier (ID) of the sold product

    Products > > id

product_name

text

[en] Product name

Subscribers’ purchases

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days previous to the savepoint the same record can still be refreshed
  • Read start date (Savepoint): Initial date for data replication (based on subscription date)

Relationships:

Purchase history for subscriptions including transaction codes, adoption dates, charge types, payment details, recurrence information, and product data

Campo Tipo

subscriber_code

text

[en] Subscriber code. This field is used by the external system to identify a subscription subscriber. The same buyer will have 2 different subscribersCodes if they subscribe to two different products

    Subscriptions > > subscriber_code

transaction

text

[en] Transaction reference code

    Sales history > > purchase_transaction

payment_engine

text

[en] Payment platform. For example, if it was made using HotPay or HotPay International

payment_method

text

[en] Payment method, which can be: BILLET, PAYPAL, BANCO_BRASIL_ONLINE_TRANSFER, BRADESCO_ONLINE_TRANSFER, ITAU_ONLINE_TRANSFER, VISA_CREDIT_CARD, MASTERCARD_CREDIT_CARD, AMERICAN_EXPRESS_CREDIT_CARD, AURA_CREDIT_CARD, DINERS_CREDIT_CARD, HIPERCARD_CREDIT_CARD, ELO_CREDIT_CARD, HOTMART, BANK_DEBT, DISCOVER_CREDIT_CARD, SEPA_DIRECT_DEBT or MULTIBANK

payment_type

text

[en] Payment type, which are: BILLET, CREDIT_CARD, PAYPAL, BANK_DEBT, HOTMART_BALANCE, CASH_PAYMENT, SAMSUNG_PAY and GOOGLE_PAY

price_currency_code

text

[en] Currency used in the international three-letter standard, for example: BRL, USD, EUR, MXN, etc...

price_value

float

[en] Transaction value

recurrency_number

float

[en] Shows the corresponding recurrence number

status

text

[en] Purchase status, which can be: STARTED, PROCESSING_TRANSACTION, COMPLETE, PRINTED_BILLET, WAITING_PAYMENT, APPROVED, UNDER_ANALISYS, CANCELLED, PROTESTED, REFUNDED, CHARGEBACK, BLOCKED, OVERDUE, PRE_ORDER, NO_FUNDS or EXPIRED

under_warranty

boolean

[en] Whether the transaction is within the warranty period

Subscriptions

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days previous to the savepoint the same record can still be refreshed
  • Read start date (Savepoint): Initial date for data replication (based on subscription date)

Relationships:

Subscription records including subscriber details, subscription status, product information, plan details, trial periods, and recurring payment schedules

Campo Tipo

subscriber_code

text

[en] Subscriber code. This field is used by the external system to identify a subscription subscriber. The same buyer will have 2 different subscribersCodes if they subscribe to two different products

subscriber_ucode

text

[en] External subscriber identification. This is what you will use in your system to identify your product

subscriber_name

text

[en] Subscriber name

subscriber_email

text

[en] Subscriber email address

status

text

[en] Current subscription status. These statuses can be: ACTIVE, INACTIVE, DELAYED, CANCELLED_BY_CUSTOMER, CANCELLED_BY_SELLER, CANCELLED_BY_ADMIN, STARTED or OVERDUE

trial

boolean

[en] Indicates if the subscription has or had a trial period. The value true means yes, false means no

product_ucode

text

[en] External product identification. This is what you will use in your system to identify your product

product_id

text

[en] Product ID

    Products > > id

product__name

text

[en] Product name

request_date

timestamp

[en] Subscription creation date

accession_date

timestamp

[en] Start date for access to subscription content

date_next_charge

timestamp

[en] Next payment attempt date. For cancelled subscriptions, indicates the last subscriber access date to the product, so no charges will be made after this period

plan_name

text

[en] Subscription plan name

plan_id

text

[en] Subscription plan ID

plan_max_charge_cycles

float

[en] Maximum number of charges (recurrences) that will be made on the subscription plan

plan_recurrency_period

text

[en] Recurrence period defined for the selected plan

subscription_id

text

[en] Subscription identification on Hotmart platform

price_currency_code

text

[en] Subscription identification on Hotmart platform

price_value

float

[en] Price of each subscription recurrence

Subscription transactions

Replication type: Incremental with update window

Parameters:

  • Update window (days): How many days prior to the Savepoint should records keep being updated
  • Read start date (Savepoint): Initial date to filter results

Relationships:

Detailed transaction records for subscriptions including payment information, recurrence status, charge attempts, transaction sequences, subscriber details, and product data

Campo Tipo

purchase_transaction

text

[en] Unique reference code for a transaction

    Sales history > > purchase_transaction

adoption_date

timestamp

[en] Subscription or product adoption date

billing_type

text

[en] The charge type indicates whether the subscriber_code is SUBSCRIPTION, SMART_INSTALLMENT or SMART_RECOVERY

date_next_charge

timestamp

[en] Next charge date

has_credit_card_change

boolean

[en] Indicates if there was a change in the credit card associated with the subscription

has_unpaid_recurrency

text

[en] Indicates if there are unpaid recurrences

is_paid_anticipation

text

[en] Indicates if there was an advance payment

is_paid_negotiation

text

[en] Indicates if there was a payment negotiation

last_recurrency_number

float

[en] Sequential number of the last recurrence

last_recurrency_start_date

timestamp

[en] Start date of the last recurrence

last_update

timestamp

[en] Last update date of the subscription or purchase

plan_name

text

[en] Subscription plan name

plan_offer_key

text

[en] The offer key is a subscription identifier. This can change if the subscription plan changes

plan_recurrency_period

float

[en] Plan recurrence period in days

plan_recurrency_type

text

[en] Plan recurrence type, example: MONTHLY

producer_name

text

[en] Producer name of the subscription or product

product_id

text

[en] Unique identifier (ID) of the sold product (7-digit number)

    Products > > id

product_name

text

[en] Sold product name

purchase_approved_date

timestamp

[en] Date when the purchase was approved

purchase_commission_conversion_rate

float

[en] Exchange rate used to calculate the commission

purchase_commission_currency

text

[en] Commission currency

purchase_commission_original_paid_value

text

[en] Commission amount that was effectively paid

purchase_commission_original_value

float

[en] Original commission value

purchase_commission_producer_paid_value

text

[en] Amount that the producer effectively received for the sale

purchase_commission_producer_value

float

[en] Amount that the producer receives for the sale

purchase_installment_installment_number

float

[en] Number of purchase installments

purchase_installment_installment_type

text

[en] Installment type, for example, single payment

purchase_order_date

timestamp

[en] Date when the order was generated

purchase_payment_credit_card_flag

text

[en] Credit card brand used in the purchase

purchase_payment_payment_type

text

[en] Payment type used by the buyer to make the purchase

purchase_price_currency

text

[en] Currency used in the transaction, for example, BRL

purchase_price_total_value

float

[en] Total purchase amount

purchase_price_value

float

[en] Unit purchase value

purchase_status

text

[en] Describes the status of a purchase transaction

recurrency_has_retry

boolean

[en] Indicates if there were charge attempts after failure

recurrency_is_current_purchase

boolean

[en] Indicates if it is the current purchase

recurrency_number

float

[en] Sequential number of the current recurrence

recurrency_payment_delays_days

float

[en] Number of days late in recurrence payment

recurrency_start_datetime

timestamp

[en] Start date and time of the current recurrence

recurrency_status

text

[en] Describes the current payment status of a subscription recurrence

recurrency_transaction_sequence

float

[en] Transaction sequence within the same recurrence

recurrency_transaction_type

text

[en] Transaction type, for example, AUTOMATIC

status

text

[en] Subscription status or charge type

subscriber_email

text

[en] Email of the subscriber involved in the transaction

subscriber_id

text

[en] Unique subscriber identifier

subscriber_name

text

[en] Name of the subscriber involved in the transaction

subscriber_phone

text

[en] Subscriber phone number

subscriber_phone_ddd

text

[en] Area code of the subscriber phone number

subscriber_code

text

[en] Unique subscriber identifier

    Subscriptions > > subscriber_code

subscription_id

text

[en] Unique subscription identifier

trial_info_trial

boolean

[en] Indicates if the subscription is in trial period

trial_info_trial_period

float

[en] Trial period duration in days

Notes

Club Subdomain

To obtain the subdomain of a club, follow the steps below. Remember that you can include multiple clubs in a single integration by separating the subdomains with commas

  1. In the sidebar, select Products > Membership Area
  2. Select the Club you want to use
  3. Once in the Club, on the left-hand menu, select Products and access the product you want to integrate
  4. In your product, select the Settings option
  5. On the club product settings page, scroll to the bottom, and you will find your subdomain. Copy it

Field Descriptions

Part of the field descriptions was generated using artificial intelligence with examples of the returned values

  • Part of this documentation was automatically generated by AI and may contain errors. We recommend verifying critical information