Articles on: Resources

Pennylane integration mapping

Connecting to Pennylane


Follow this guide to establish the connection to the Pennylane API.


Synchronized data


Entity


Key fields synchronized


Customers


id, name, email, country, postal_code, client_reference


Products (Products)


id, name


Prices (Prices)


id, amount_excluding_tax, currency (linked_to_product)


Subscriptions (Subscriptions)


id, linked_customer, status, start and end dates, monthly_amount


Invoices (Invoices)


id, status, date, number, customer • Lines: linked_product, amount_excluding_tax, VAT, currency, quantity, period, description


Credit Notes (Credit Notes)


Extracts of credit_notes attached to an invoice


Detailed operation of the integration


  • Structured mapping: all entities are mapped field by field from the Pennylane structure
  • Subscription detection: based on billing patterns (invoice_template.line_items)
  • Amounts excluding tax and taxes: analyzed line by line, with conversion to base currency
  • Integrated credit notes: via invoice credit_notes, with reversed amount
  • Service periods: extracted automatically (period_start, period_end)


To know


  • Draft invoices (is_draft): not synchronized
  • Discounts: not imported currently (field forced to 0)
  • Daily synchronization: every night automatically
  • Data deletion in Pennylane: not propagated to Fincome
  • Custom references: supported via the customers' reference field
  • Incremental synchronization not supported: data must be extracted in full


Integration overview


Item


Detail


Integration method


OAuth 2.0 or Pennylane API key


Supported entities


Customers, Products, Prices, Subscriptions, Invoices, Credit Notes


Synchronization frequency


Daily (night)


Scope of initial import


Data available via API


Synchronization method


REST API with pagination


Pennylane data deletion


Not supported


Data settings


Behavior / Setting


Operation in Fincome


Customer country / Postal code


Detection via several priority fields (country_alpha2, etc.)


Subscriptions


From billing templates (template)


Amounts excluding tax / taxes


Fields currency_price_before_tax, currency_tax


Credit notes


Reversed lines, with structure identical to invoices


Discounts


Not available (reported as 0)


Currency conversion


Based on currency and date


Billing periods


period_start, period_end extracted by Fincome


Technical mapping (Pennylane → Fincome)

Customers


Pennylane field


Fincome field


source_id


original_id


name


name


email


email


country_alpha2, billing_address.country_alpha2, delivery_address.country_alpha2


country


postal_code, billing_address.postal_code, delivery_address.postal_code


zip_code


reference


custom_axis_field.reference


Products & Prices


Pennylane field


Fincome field


source_id


original_id (product & price)


label


name (product & price)


price_before_tax


amount


currency


currency_code


Subscriptions


Pennylane field


Fincome field


invoice_template.line_items[].product_id


price_id


invoice_template.currency


currency_code


invoice_template.line_items[].subscription_set_id


subscription_set_id


start


subscription_start_date


stopped_at


canceled_at


finish


effective_cancellation_date


activated_at


deal_closed_date


Invoices & Lines


Pennylane field


Fincome field


id


original_id (invoice)


date


date


invoice_number


invoice_number


status


status


customer.source_id


customer_id


Invoice lines


Pennylane field


Fincome field


id


original_id (line)


product_id


price_id


currency_price_before_tax


amount_excluding_tax_after_discount


currency_tax


tax_amount


label


description


quantity


quantity


currency


currency_code


Periods


period_start, period_end


Credit notes


Pennylane field


Fincome field


credit_notes[].id


original_id


currency_price_before_tax


amount (reversed)


currency_tax


tax_amount (reversed)


currency


currency_code


Discounted amount


discount_amount = 0 (forced)


Credit note attached to invoice


credit_note_id, invoice_id


Next steps


  • Check your KPIs in the MRR, Churn, and Cohorts views
  • Add other billing sources (Stripe, Chargebee, etc.)
  • Enrich your customer data (segmentation, company size...)
  • Schedule a session with your Customer Success to go further

Updated on: 01/06/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!