How best to use IN for recurring royalties billing from multiple tiered sources?

Hello, I am hoping someone here can advise on the optimal way to use the awesome Invoice Ninja system to create & track royalty payments for a client of mine within the capabilities of this invoicing system.
Leaning towards a self-hosted with white-label solution, should Invoice Ninja met the need.

One of my clients needs a way to track ongoing recurring royalty payments, as follows:

  1. There are multiple Companies (clients) that should pay him monthly recurring royalty amounts.
  2. Each Company (client) has several distinct subsidiaries, each with several departments.
  3. Royalty amounts (new recurring invoices) should allow for amount adjustment going forward from a set date.
  4. Departments (as part of each subsidiary of the company/client) will start to pay out (be invoiced) a royalty from a set inception date.
  5. Each royalty (recurring invoice) should automatically renew, monthly on the anniversary of inception, thus increasing the due amount for that department, in the associated subsidiary of the particular Company (client).
  6. A tally of both paid and due royalties needs to be kept per company/subsidiary/department.
  7. Once payments from the Company (client) are received (may be bundled as one larger sum payment to cover multiple subsidiaries & departments across multiple months), they need to be applied to the corresponding department’s individual outstanding invoices, and thus to the overall balance for that Company (client).

In the end it would be ideal to be able to see what departments/subsidiaries have not yet been paid, see outstanding balance details, track the payments applying credit, and (through a cron job) duplicate royalties (recurring invoices) in the system on a monthly basis, based on their inception date. As new recurring invoices are created monthly, each could potentially be adjusted/edited should the amounts change going forward.

Here is an example:

  1. There is a Company (client) called “COMP-A” that will be paying royalties.
  2. COMP-A has three subsidiaries with two departments each.
  3. Two of COMP-A’s subsidiaries (and their corresponding two departments each) have to pay one royalty payment each starting 1/2020 for $10/mo. - If nothing else changes and no payments are received for several months, total $ due for COMP-A effective 2/2020 will be $40, and total $ due in 3/2020 will be $80, etc, etc…
  4. The remaining 3rd subsidiary in COMP-A may begin payments at a future date for one or both of their departments, and any balances will be added to the overall due balance of COMP-A.
  5. As payments are received for specific departments of subsidiaries, they will be applied to the corresponding outstanding invoices and drive the respective department/subsidiary/overall Company (client) balance down.

Question: Can this be accomplished using Invoice Ninja by using “Clients” for the Companies, maybe “Recurring” for the billing/invoices, and maybe “Tasks” and “Vendors” for the subsidiaries and divisions? Not exactly sure what mapping combination would work best to ensure this hierarchy.

Would appreciate suggestions and best practices to configure and use this Ninja system based on this specific need.

Thank you very much in advance!

Assuming the companies should share the payment methods between departments you may want to create each department as a contact using a custom contact dropdown field to specify the department.

Thanks Hillel for the prompt reply.

So to recap:

  1. Create companies as “Clients”
  2. Create departments as “Contacts”
    correct?

But what about the multiple subsidiaries in each company/client?
Also, what about the invoices themselves? I assume thy have to me made “Recurring Invoices”, but How do we tie them to the Subsidiaries and then the Departments/Contacts in order to maintain the hierarchy and proper tracking?

Thanks.

Correct

  • Not sure I follow, each client can have multiple contacts
  • When creating an invoice you can check with contacts/departments to include