Hello Community,
We’ve been working on a vendor billback discount process in Acumatica and would like to share our implementation—and a gap we’re currently facing that we’d love input on.
Our Business Scenario
In our sales workflow, we offer customers discounts on certain products. A portion of those discounts is supported by the vendor, which we then claim back as a billback.
For example:
- Product sells at $120
- We apply a 20% customer discount
- From that $24 discount, we claim 15% from the vendor and absorb the remaining 5% ourselves
Our Implementation in Acumatica
To manage this, we customized the Customer Discount Codes screen with three user-defined fields (UDFs):
- Vendor – Who is providing the billback
- Vendor Discount % – Portion of discount claimed from vendor
- Our Discount % – Portion we absorb
Once these are set up and the criteria are met, the discount is automatically applied to the invoice. We also built a Generic Inquiry to pull invoice-level discount details, including the vendor's share, for tracking and AP debit adjustments. This part is working perfectly.
The Challenge: Vendor Billback Without Customer Discount
Now we've encountered a new requirement:
There are situations where no discount is offered to the customer, but we still need to claim a billback from the vendor (e.g., promotional support).
Example:
- Product sells at $120
- Customer pays full price (no visible discount)
- We need to claim 3% of the invoice amount as a billback from the vendor
Since Acumatica’s standard discount engine does not allow zero discount codes, we cannot apply a discount line purely for tracking purposes. As a result, no discount row is generated on the invoice, and the Vendor Billback logic is not triggered.
What We Need Help With
We’re looking for ideas on how to:
- Track vendor billbacks even when there’s no customer-facing discount
- Trigger the billback logic from a zero-discount invoice, while still recording a percentage for vendor claims
- Possibly simulate a "non-visible" discount line or find a workaround to still leverage our existing tracking/reporting
Used the reason Code to resolve this; however, I was unable to achieve it.
Has anyone solved this
Happy to share screenshots or expand on the use case. Appreciate any suggestions!
Thank you!