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.
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:Sales History
Sales History
Stream containing historical sales data from your Hotmart products.Key Fields:
id: Unique identifier for the sale (transaction ID)product: Product informationname: Name of the productid: Product identifier
buyer: Buyer informationname: Name of the buyerucode: Unique code for the buyeremail: Email of the buyer
producer: Producer informationname: Name of the producerucode: Unique code for the producer
purchase: Purchase detailstransaction: Transaction identifierorder_date: Date of the orderapproved_date: Date of approvalstatus: Current status of the salerecurrency_number: Recurrence number for subscriptionsis_subscription: Whether this is a subscription purchasecommission_as: Commission typeprice:value: Price valuecurrency_code: Currency code
payment:method: Payment methodinstallments_number: Number of installmentstype: Payment type
tracking:source_sck: Source tracking codesource: Traffic sourceexternal_code: External tracking code
warranty_expire_date: Warranty expiration dateoffer:payment_mode: Payment modecode: Offer code
hotmart_fee:total: Total feefixed: Fixed fee amountcurrency_code: Currency codebase: Base fee amountpercentage: Fee percentage
Subscriptions
Subscriptions
Stream containing information about recurring subscriptions.Key Fields:
subscriber_code: Code identifying the subscribersubscription_id: Unique identifier for the subscriptionstatus: Current status of the subscriptionaccession_date: Date when the subscription startedend_accession_date: Date when the subscription endedrequest_date: Date when the subscription was requesteddate_next_charge: Date of the next chargetrial: Whether this is a trial subscriptiontransaction: Transaction identifierplan: Subscription plan detailsname: Name of the planid: Plan identifierrecurrency_period: Period between chargesmax_charge_cycles: Maximum number of charges
product: Product informationid: Product identifiername: Product nameucode: Unique product code
price: Price informationvalue: Price valuecurrency_code: Currency code
subscriber: Subscriber informationname: Subscriber’s nameemail: Subscriber’s emailucode: Unique subscriber code
Subscription Transactions
Subscription Transactions
Stream containing transaction history for subscriptions.Key Fields:
id: Unique identifier for the transactionlast_recurrency_start_date: Start date of the last recurrencehas_unpaid_recurrency: Whether there are unpaid recurrencesproduct: Product informationname: Product nameid: Product identifier
subscriber: Subscriber informationphone: Phone numbername: Subscriber’s nameid: Subscriber identifierphone_ddd: Phone area codeemail: Subscriber’s email
recurrency: Recurrence informationnumber: Recurrence numberscheduled_retry: Scheduled retry timestampnumber_list: List of recurrence numberstransaction_sequence: Transaction sequence numberstart_datetime: Start date and timepayment_delays_days: Days of payment delaytransaction_type: Type of transactionis_current_purchase: Whether this is the current purchasehas_retry: Whether retries are availablestatus: Status of the recurrence
last_recurrency_number: Last recurrence numbertrial_info: Trial informationtrial_end: Trial end datetrial_period: Trial period durationtrial: Whether this is a trial
purchase: Purchase informationorder_date: Order dateprice:total_value: Total price valuecurrency: Currency codevalue: Base price value
installment:installment_number: Number of installmentsinstallment_type: Type of installment
payment:refusal_message: Payment refusal messagerefund_chargeback_date: Refund or chargeback datepayment_type: Type of paymentbillet_expiration_date: Expiration date for bank slipbillet_recovery_type: Recovery type for bank slippix_expiration_date: PIX expiration datebillet_reprint_code: Bank slip reprint codecredit_card_flag: Credit card flag
commission:original_value: Original commission valueproducer_paid_value: Amount paid to producercurrency: Currency codeoriginal_paid_value: Original paid valueconversion_rate: Conversion rateproducer_value: Producer’s commission value
approved_date: Approval datetransaction: Transaction identifierstatus: Transaction status
cancellation_date: Cancellation dateis_paid_anticipation: Whether payment was anticipatedmax_cycles: Maximum number of cyclesadoption_date: Adoption datesubscriber_code: Subscriber’s codedate_next_charge: Next charge dateis_paid_negotiation: Whether payment was negotiatedlast_update: Last update timestampbilling_type: Type of billingproducer: Producer informationname: Producer’s name
subscription_id: Subscription identifierhas_credit_card_change: Whether credit card was changedplan: Plan informationoffer:code: Offer codedescription: Offer descriptionkey: Offer key
recurrency_period: Period between recurrencescoupon_code: Applied coupon coderecurrency_type: Type of recurrencename: Plan name
status: Overall status
Sales Commission
Sales Commission
Stream containing commission information for sales.Key Fields:
transaction: Unique identifier for the transactionproduct: Product informationname: Name of the productid: Product identifier
exchange_rate_currency_payout: Exchange rate for currency payoutcommissions: Array of commission informationcommission: Commission detailscurrency_value: Currency of the commissionvalue: Commission amount
user: User informationucode: Unique user codename: User name
source: Source of the commission
Sales Participants
Sales Participants
Stream containing information about participants in sales transactions.Key Fields:
transaction: Unique identifier for the transactionproduct: Product informationname: Name of the productid: Product identifier
users: Array of user informationrole: Role of the user in the transactionuser: User detailsucode: Unique user codelocale: User’s localename: User’s nametrade_name: User’s trade namecellphone: Cellphone numberphone: Phone numberemail: Email addressdocuments: Array of document informationvalue: Document valuetype: Document type
address: Address informationcity: Citystate: Statecountry: Countryzip_code: ZIP codeaddress: Street addresscomplement: Address complementneighborhood: Neighborhoodnumber: Street number
Price Details
Price Details
Stream containing detailed pricing information for products.Key Fields:
transaction: Unique identifier for the transactionproduct: Product informationid: Product identifiername: Product name
base: Base price informationvalue: Base price valuecurrency_code: Currency code
total: Total price informationvalue: Total price valuecurrency_code: Currency code
vat: VAT informationvalue: VAT amountcurrency_code: Currency code
fee: Fee informationvalue: Fee amountcurrency_code: Currency code
coupon: Coupon informationcode: Coupon codevalue: Coupon value
real_conversion_rate: Real currency conversion rate
Products
Products
Stream containing information about your Hotmart products.Key Fields:
id: Unique identifier for the productname: Name of the productucode: Unique product codestatus: Current status of the productcreated_at: Creation date timestampformat: Product formatis_subscription: Whether the product is a subscriptionwarranty_period: Warranty period in days
Students
Students
Stream containing information about students enrolled in your products.Key Fields:
user_id: Unique identifier for the studentengagement: Student’s engagement levelname: Student’s nameemail: Student’s emaillast_access_date: Last access timestamprole: Student’s rolefirst_access_date: First access timestamplocale: Student’s localeplus_access: Plus access statusprogress: Progress informationcompleted_percentage: Percentage of completiontotal: Total number of itemscompleted: Number of completed items
status: Current statusaccess_count: Number of accessesis_deletable: Whether the student can be deletedclass_id: Class identifiertype: Student type