Configuring Kiwify as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Kiwify option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
API access is created inside Kiwify, under Apps > API. Create a credential there and copy its values before leaving the screen — the client secret is displayed only once, at creation time. The following configurations are required:- Client ID: The client ID of the API credential.
- Client Secret: The client secret of the API credential. It is shown only once, when the credential is created.
- Account ID: The Kiwify account (store) ID shown next to the API credential. It identifies which store the extraction reads from.
- Start Date: The earliest date from which records will be synced. Sales are swept from this date in 85-day windows, so an unnecessarily old date makes every sync slower. Defaults to two years ago.
- Full Sale Details: Whether sales are fetched with the payment breakdown, UTM tracking, revenue splits and affiliate commission. Enabled by default; turn it off to fetch only the summary fields.
2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.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 the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once 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). 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.Monetary values are returned by Kiwify as integers in the smallest unit of the currency. An amount of
8853 means R$ 88,53.Streams and Fields
Below you’ll find all available data streams from Kiwify and their corresponding fields. Sales, daily statistics and event participants sync incrementally; the remaining streams are extracted as full tables. Product details, event participants and balances are fetched per parent record, so they cost one extra request per product or legal entity.Sales
Sales
Orders placed on the store’s checkout, incrementally synced by their last-change date. Because Kiwify filters orders by creation date in windows of at most 90 days, the connector sweeps the whole configured history on every run and asks only for the orders changed since the last sync — so refunds and chargebacks of older orders are picked up as well.Key Fields:
id- Unique identifier of the salereference- Short order reference shown to the buyerstatus- Current status (paid, waiting_payment, refunded, chargedback, refused, and so on)payment_method- How the order was paid: credit_card, boleto or pixnet_amount- Amount credited to the producer after fees, in centscurrency- Currency the order was charged insale_type- Role of this account in the sale (producer, affiliate or co-producer)created_at/updated_at- Order placement and last-change timestampsapproved_date/refunded_at- Payment approval and refund timestampsproduct_id/product_name- Product that was soldcustomer_id,customer_name,customer_email,customer_cpf,customer_cnpj,customer_mobile,customer_instagram,customer_country- Buyer identificationcustomer_address_street,customer_address_number,customer_address_city,customer_address_state,customer_address_zipcode- Buyer addressinstallments,card_type,card_last_digits,card_rejection_reason,two_cards,is_one_click- Payment attempt detailspayment_charge_amount,payment_net_amount,payment_fee,payment_product_base_price,payment_settlement_amount,payment_sale_tax_rate,payment_sale_tax_amount- Full payment breakdown, with the matching currency fieldstracking_utm_source,tracking_utm_medium,tracking_utm_campaign,tracking_utm_content,tracking_utm_term,tracking_src,tracking_sck,tracking_s1,tracking_s2,tracking_s3- Attribution parameters captured at the checkoutaffiliate_commission_name,affiliate_commission_email,affiliate_commission_document,affiliate_commission_amount- Affiliate credited for the saleshipping_id,shipping_name,shipping_price- Shipping option chosen for physical productsrevenue_partners- Co-producers who shared the revenue of the order (JSON)parent_order_id- Originating order, for renewals and upsells
Sales Stats Daily
Sales Stats Daily
Checkout performance metrics aggregated by day, incrementally synced. Useful for tracking approval and refund quality over time without recomputing it from the orders.Key Fields:
date- Day the metrics refer tototal_sales- Number of sales approved on the daytotal_net_amount- Net revenue credited on the day, in centscredit_card_approval_rate- Share of credit card attempts approved, as a percentagerefund_rate- Share of the day’s sales that were refunded, as a percentagechargeback_rate- Share of the day’s sales that were charged back, as a percentagetotal_boleto_generated/total_boleto_paid- Boletos issued and paid on the dayboleto_rate- Share of the issued boletos that were paid, as a percentage
Products
Products
Products sold by the store, extracted as a full table.Key Fields:
id- Unique identifier of the productname- Name of the product as shown on the checkouttype- Kind of product being sold (for example membership, course or event)status- Current status of the productpayment_type- Whether the product is a one-off charge or a recurring subscriptionprice- Price in cents, when the product has a base pricecurrency- Currency the product is priced inaffiliate_enabled- Whether the product accepts affiliatescreated_at- Product creation timestamp
Product Details
Product Details
Full checkout configuration of each product, extracted as a full table. Complements the Products stream with the data returned only by the per-product endpoint, so it costs one request per product on every run.Key Fields:
id- Unique identifier of the productstore_id- Kiwify store that owns the productoffers- Alternative price offers of the product (JSON)links- Checkout links of the product (JSON)bumps- Order bumps configured on the checkout (JSON)subscriptions- Subscription plans, for recurring products (JSON)shipping_options- Shipping options offered for physical products (JSON)event_settings- Event address, check-in options and sale window, for event products (JSON)event_batches- Ticket batches with prices and ticket counters, for event products (JSON)revenue_partners- Co-producers sharing the revenue of the product (JSON)
Affiliates
Affiliates
Affiliates approved to promote the store’s products, extracted as a full table. The API returns one record per affiliate and product, so the same person appears once for each product they promote.Key Fields:
affiliate_id- Unique identifier of the affiliateproduct_id/product_name- Product the affiliate promotesname- Full name of the affiliateemail- Email address of the affiliatecompany_name,director_cpf,company_cnpj- Registration data of the affiliatecommission- Commission the affiliate earns on the product, in centsstatus- Current status of the affiliationcreated_at- Affiliation creation timestamp
Event Participants
Event Participants
Ticket holders of the store’s event products, incrementally synced by their last-change date. Products that are not events simply return no participants.Key Fields:
id- Unique identifier of the participantproduct_id- Event product the ticket belongs toexternal_id- Ticket code used for check-in at the eventbatch_id/batch_name- Ticket batch the ticket was sold inname,email,cpf,phone- Participant identificationorder_id- Sale that issued the ticketcheckin_at- Check-in timestamp at the eventcreated_at/updated_at- Ticket issue and last-change timestamps
Payouts
Payouts
Withdrawals requested from the account’s balance, extracted as a full table.Key Fields:
id- Unique identifier of the payoutamount- Amount withdrawn, in centsstatus- Current status of the payout (for example pending_review or paid)legal_entity_id- Legal entity that received the payoutcreated_at/updated_at- Request and last-change timestamps
Balances
Balances
Current balance of each legal entity of the account, extracted as a full table snapshot.Key Fields:
legal_entity_id- Legal entity the balance belongs toavailable- Balance already released for withdrawal, in centspending- Balance still held by the platform’s settlement period, in cents
Account Details
Account Details
Registration data of the connected Kiwify account, extracted as a full table.Key Fields:
id- Unique identifier of the account (store)company_name- Registered company name of the accountdirector_cpf/company_cnpj- Tax identification of the accountlegal_entities- Legal entities that can receive payouts, with their company data and pix key (JSON)
Webhooks
Webhooks
Webhooks configured on the account, extracted as a full table.Key Fields:
id- Unique identifier of the webhookname- Name given to the webhookurl- Endpoint Kiwify posts the events toproducts- Product the webhook listens to, or “all” when it covers every producttriggers- Events that fire the webhook (compra_aprovada, compra_reembolsada, chargeback, and so on)created_at/updated_at- Creation and last-change timestamps