Skip to main content
Hotmart is a digital platform that enables creators to sell digital products and online courses. It provides a comprehensive ecosystem for digital product creators, including tools for hosting, payment processing, and managing student access.

Configuring Hotmart as a Source

In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Hotmart option from the list of connectors. Click Next and you’ll be prompted to add your access.

1. Add account access

You’ll need your Hotmart API credentials for this connection. You can obtain these from the Hotmart Developer Portal (check official docs). Once you have them, add the following credentials:
  • Client ID: The client ID from your Hotmart credentials to authenticate against the API service.
  • Client Secret: The client secret from your Hotmart credentials to authenticate against the API service.
  • Basic Token: The basic token from your Hotmart credentials (without the ‘Basic’ prefix).
  • Members Area Subdomain: The subdomain of your member’s area, which can be extracted from hotmart.com/club/{subdomain}.
  • Start Date: The earliest date from which you want to sync records.

2. Select streams

Choose which data streams you want to sync - you can select all streams or pick specific ones that matter most to you. The available streams include sales history, subscriptions, products, and more.
Tip: The stream can be found more easily by typing its name.
Select the streams and click Next.

3. Configure data streams

Customize how you want your data to appear in your catalog. Select a name for each table (which will contain the fetched data) and the type of sync.
  • Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix and make this process faster!
  • Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
    • Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
    • Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
Once you are done configuring, click Next.

4. Configure data source

Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can determine when to execute a full sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while. Once you are ready, click Next to finalize the setup.

5. Check your new source

You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.
For you to be able to see it on your Catalog, you need at least one successful source run.

Streams and Fields

Below you’ll find all available data streams from Hotmart and their corresponding fields:
Stream containing historical sales data from your Hotmart products.Key Fields:
  • id: Unique identifier for the sale (transaction ID)
  • product: Product information
    • name: Name of the product
    • id: Product identifier
  • buyer: Buyer information
    • name: Name of the buyer
    • ucode: Unique code for the buyer
    • email: Email of the buyer
  • producer: Producer information
    • name: Name of the producer
    • ucode: Unique code for the producer
  • purchase: Purchase details
    • transaction: Transaction identifier
    • order_date: Date of the order
    • approved_date: Date of approval
    • status: Current status of the sale
    • recurrency_number: Recurrence number for subscriptions
    • is_subscription: Whether this is a subscription purchase
    • commission_as: Commission type
    • price:
      • value: Price value
      • currency_code: Currency code
    • payment:
      • method: Payment method
      • installments_number: Number of installments
      • type: Payment type
    • tracking:
      • source_sck: Source tracking code
      • source: Traffic source
      • external_code: External tracking code
    • warranty_expire_date: Warranty expiration date
    • offer:
      • payment_mode: Payment mode
      • code: Offer code
    • hotmart_fee:
      • total: Total fee
      • fixed: Fixed fee amount
      • currency_code: Currency code
      • base: Base fee amount
      • percentage: Fee percentage
Stream containing information about recurring subscriptions.Key Fields:
  • subscriber_code: Code identifying the subscriber
  • subscription_id: Unique identifier for the subscription
  • status: Current status of the subscription
  • accession_date: Date when the subscription started
  • end_accession_date: Date when the subscription ended
  • request_date: Date when the subscription was requested
  • date_next_charge: Date of the next charge
  • trial: Whether this is a trial subscription
  • transaction: Transaction identifier
  • plan: Subscription plan details
    • name: Name of the plan
    • id: Plan identifier
    • recurrency_period: Period between charges
    • max_charge_cycles: Maximum number of charges
  • product: Product information
    • id: Product identifier
    • name: Product name
    • ucode: Unique product code
  • price: Price information
    • value: Price value
    • currency_code: Currency code
  • subscriber: Subscriber information
    • name: Subscriber’s name
    • email: Subscriber’s email
    • ucode: Unique subscriber code
Stream containing transaction history for subscriptions.Key Fields:
  • id: Unique identifier for the transaction
  • last_recurrency_start_date: Start date of the last recurrence
  • has_unpaid_recurrency: Whether there are unpaid recurrences
  • product: Product information
    • name: Product name
    • id: Product identifier
  • subscriber: Subscriber information
    • phone: Phone number
    • name: Subscriber’s name
    • id: Subscriber identifier
    • phone_ddd: Phone area code
    • email: Subscriber’s email
  • recurrency: Recurrence information
    • number: Recurrence number
    • scheduled_retry: Scheduled retry timestamp
    • number_list: List of recurrence numbers
    • transaction_sequence: Transaction sequence number
    • start_datetime: Start date and time
    • payment_delays_days: Days of payment delay
    • transaction_type: Type of transaction
    • is_current_purchase: Whether this is the current purchase
    • has_retry: Whether retries are available
    • status: Status of the recurrence
  • last_recurrency_number: Last recurrence number
  • trial_info: Trial information
    • trial_end: Trial end date
    • trial_period: Trial period duration
    • trial: Whether this is a trial
  • purchase: Purchase information
    • order_date: Order date
    • price:
      • total_value: Total price value
      • currency: Currency code
      • value: Base price value
    • installment:
      • installment_number: Number of installments
      • installment_type: Type of installment
    • payment:
      • refusal_message: Payment refusal message
      • refund_chargeback_date: Refund or chargeback date
      • payment_type: Type of payment
      • billet_expiration_date: Expiration date for bank slip
      • billet_recovery_type: Recovery type for bank slip
      • pix_expiration_date: PIX expiration date
      • billet_reprint_code: Bank slip reprint code
      • credit_card_flag: Credit card flag
    • commission:
      • original_value: Original commission value
      • producer_paid_value: Amount paid to producer
      • currency: Currency code
      • original_paid_value: Original paid value
      • conversion_rate: Conversion rate
      • producer_value: Producer’s commission value
    • approved_date: Approval date
    • transaction: Transaction identifier
    • status: Transaction status
  • cancellation_date: Cancellation date
  • is_paid_anticipation: Whether payment was anticipated
  • max_cycles: Maximum number of cycles
  • adoption_date: Adoption date
  • subscriber_code: Subscriber’s code
  • date_next_charge: Next charge date
  • is_paid_negotiation: Whether payment was negotiated
  • last_update: Last update timestamp
  • billing_type: Type of billing
  • producer: Producer information
    • name: Producer’s name
  • subscription_id: Subscription identifier
  • has_credit_card_change: Whether credit card was changed
  • plan: Plan information
    • offer:
      • code: Offer code
      • description: Offer description
      • key: Offer key
    • recurrency_period: Period between recurrences
    • coupon_code: Applied coupon code
    • recurrency_type: Type of recurrence
    • name: Plan name
  • status: Overall status
Stream containing commission information for sales.Key Fields:
  • transaction: Unique identifier for the transaction
  • product: Product information
    • name: Name of the product
    • id: Product identifier
  • exchange_rate_currency_payout: Exchange rate for currency payout
  • commissions: Array of commission information
    • commission: Commission details
      • currency_value: Currency of the commission
      • value: Commission amount
    • user: User information
      • ucode: Unique user code
      • name: User name
    • source: Source of the commission
Stream containing information about participants in sales transactions.Key Fields:
  • transaction: Unique identifier for the transaction
  • product: Product information
    • name: Name of the product
    • id: Product identifier
  • users: Array of user information
    • role: Role of the user in the transaction
    • user: User details
      • ucode: Unique user code
      • locale: User’s locale
      • name: User’s name
      • trade_name: User’s trade name
      • cellphone: Cellphone number
      • phone: Phone number
      • email: Email address
      • documents: Array of document information
        • value: Document value
        • type: Document type
      • address: Address information
        • city: City
        • state: State
        • country: Country
        • zip_code: ZIP code
        • address: Street address
        • complement: Address complement
        • neighborhood: Neighborhood
        • number: Street number
Stream containing detailed pricing information for products.Key Fields:
  • transaction: Unique identifier for the transaction
  • product: Product information
    • id: Product identifier
    • name: Product name
  • base: Base price information
    • value: Base price value
    • currency_code: Currency code
  • total: Total price information
    • value: Total price value
    • currency_code: Currency code
  • vat: VAT information
    • value: VAT amount
    • currency_code: Currency code
  • fee: Fee information
    • value: Fee amount
    • currency_code: Currency code
  • coupon: Coupon information
    • code: Coupon code
    • value: Coupon value
  • real_conversion_rate: Real currency conversion rate
Stream containing information about your Hotmart products.Key Fields:
  • id: Unique identifier for the product
  • name: Name of the product
  • ucode: Unique product code
  • status: Current status of the product
  • created_at: Creation date timestamp
  • format: Product format
  • is_subscription: Whether the product is a subscription
  • warranty_period: Warranty period in days
Stream containing information about students enrolled in your products.Key Fields:
  • user_id: Unique identifier for the student
  • engagement: Student’s engagement level
  • name: Student’s name
  • email: Student’s email
  • last_access_date: Last access timestamp
  • role: Student’s role
  • first_access_date: First access timestamp
  • locale: Student’s locale
  • plus_access: Plus access status
  • progress: Progress information
    • completed_percentage: Percentage of completion
    • total: Total number of items
    • completed: Number of completed items
  • status: Current status
  • access_count: Number of accesses
  • is_deletable: Whether the student can be deleted
  • class_id: Class identifier
  • type: Student type
I