Pennylane integration mapping

Connection 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, customer_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 templates (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

  • Deletion of data 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 multiple 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

Last updated