aurelienclere-365/bpa-cowork-plugin/bpa-intercompany

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

WHEN: "intercompany report", "intercompany reconciliation", "GL summary by entity", "cross-entity transactions", "intercompany packing slips", "intercompany sales orders", "reversing journal entries", "invoice matching variances", "open POs without invoices", "invoices without purchase orders", "negative expense balances", "intercompany anomalies", "intercompany elimination", "multi-entity GL"

Install

npx vskill@latest install aurelienclere-365/bpa-cowork-plugin/bpa-intercompany

SKILL.md

bpa-intercompany

Runs a consolidated intercompany report across all active legal entities in BPA with anomaly detection. Designed for Senior Analysts who need exhaustive data coverage, D365FO-specific terminology, and actionable recommendations — not just raw numbers.

When to use this skill

Use when asked for:

  • Intercompany reconciliation across entities
  • GL summary by entity and account type (net balance, debits, credits, entry count)
  • Intercompany indicators: packing slips, linked intercompany ledgers, sales orders,

reversing journal entries

  • Purchase activity per entity: PO count/amount, invoice count/amount, vendor count,

invoice matching variances

  • Anomaly flags: negative expense balances, invoices without POs, open POs without

invoices, missing intercompany reconciliation activity

Workflow

Step 1 — Retrieve schema

Call get_bpa_dataset_schema to identify:

  • FactGeneralLedger — GL entries (LedgerDimension, CompanyId, AccountType, Amount,

Debit, Credit, EntryCount, IsReversing)

  • FactVendorInvoice — purchase invoices (VendorId, PurchaseOrderId, Amount, CompanyId)
  • FactPurchaseOrder — POs (PurchaseOrderId, CompanyId, VendorId, LineAmount, Status)
  • DimCompany / DimLegalEntity — legal entity names and active status
  • DimAccount — account type classification
Step 2 — GL summary by entity and account type

Call execute_dax_query:

dax
EVALUATE
SUMMARIZECOLUMNS(
DimLegalEntity[CompanyName],
DimAccount[AccountType],
"NetBalance", [Net Balance],
"TotalDebits", [Total Debits],
"TotalCredits", [Total Credits],
"EntryCount", [Entry Count]
)
ORDER BY DimLegalEntity[CompanyName], DimAccount[AccountType]
Step 3 — Purchase activity per entity

Call execute_dax_query:

dax
EVALUATE
SUMMARIZECOLUMNS(
DimLegalEntity[CompanyName],
"POCount", DISTINCTCOUNT(FactPurchaseOrder[PurchaseOrderId]),
"POAmount", SUM(FactPurchaseOrder[LineAmount]),
"InvoiceCount", DISTINCTCOUNT(FactVendorInvoice[InvoiceId]),
"InvoiceAmount", SUM(FactVendorInvoice[Amount]),
"VendorCount", DISTINCTCOUNT(FactVendorInvoice[VendorId]),
"MatchingVar", [Invoice Matching Variance]
)
Step 4 — Anomaly detection

Run targeted DAX queries for each anomaly type:

Negative expense balances:

dax
EVALUATE
FILTER(
SUMMARIZECOLUMNS(
DimLegalEntity[CompanyName],
DimAccount[AccountName],
"NetBalance", [Net Balance]
),
[NetBalance] < 0 && RELATED(DimAccount[AccountType]) = "Expense"
)

Invoices without POs:

dax
EVALUATE
FILTER(
FactVendorInvoice,
ISBLANK(FactVendorInvoice[PurchaseOrderId])
)

Open POs without invoices:

dax
EVALUATE
FILTER(
FactPurchaseOrder,
FactPurchaseOrder[Status] = "Open"
&& ISBLANK(RELATED(FactVendorInvoice[InvoiceId]))
)
Step 5 — Assemble and present

Return a structured report:

  1. GL Summary table — by entity and account type
  2. Purchase Activity table — by entity
  3. Anomaly flags table — with description and recommended action per finding

For each anomaly, provide a concrete recommendation:

  • Negative expense balance → suggest reviewing the offsetting entry or incorrect posting
  • Invoice without PO → flag for three-way match review
  • Open PO without invoice → check with vendor or close if goods not received
  • Missing intercompany reconciliation → escalate to Controller for elimination entry

Sample result

GL Summary — All entities

EntityAccount TypeNet BalanceDebitsCreditsEntries
USSIRevenue(4,820,100)04,820,100412
USMFExpense3,104,2003,104,2000388
FRSIIntercompany12,400980,200967,80054

Anomalies detected (3)

TypeEntityDetailRecommendation
Negative expenseUSMFAccount 6200 – IT Costs: -$8,400Review reversing entry #JNL-2025-0341
Invoice w/o POUSSI3 invoices, Vendor Fabrikam, $22,100Three-way match review required
Open PO no invoiceFRSIPO-FR-00482, $14,800, 45 days oldContact vendor or cancel PO

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/aurelienclere-365/bpa-cowork-plugin/bpa-intercompany/badge)](https://verified-skill.com/skills/aurelienclere-365/bpa-cowork-plugin/bpa-intercompany)

Something wrong with this skill or its page? Tell us.