FOSSBilling: Payment amount not validated in PayPalEmail adapter allows invoice underpayment
FOSSBilling is a free, open-source billing and client management system. Prior to version 0.8.0, the PayPalEmail payment adapter accepts PayPal IPN callbacks and credits the IPN-supplied amount (`mc_gross`) to the client's balance without validating it against the invoice total. Combined with a $0.05 floating-point epsilon tolerance in the invoice credit-payment logic, this allows a client to underpay an invoice by up to $0.04 and still have it marked as fully paid. Version 0.8.0 patches the issue. There is no effective workaround without modifying the source code. Merchants using the PayPalEmail adapter should monitor IPN transactions for amounts that do not match their corresponding invoice totals, and manually review and refund suspicious payments.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-43928
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 15:49 UTC · Revision 1
Source evidence
FOSSBilling: Payment amount not validated in PayPalEmail adapter allows invoice underpayment
core-osv · Original sourcePublished 6 Jul 2026, 21:53 UTC
FOSSBilling is a free, open-source billing and client management system. Prior to version 0.8.0, the PayPalEmail payment adapter accepts PayPal IPN callbacks and credits the IPN-supplied amount (`mc_gross`) to the client's balance without validating it against the invoice total. Combined with a $0.05 floating-point epsilon tolerance in the invoice credit-payment logic, this allows a client to underpay an invoice by up to $0.04 and still have it marked as fully paid. Version 0.8.0 patches the issue. There is no effective workaround without modifying the source code. Merchants using the PayPalEmail adapter should monitor IPN transactions for amounts that do not match their corresponding invoice totals, and manually review and refund suspicious payments.
osv:CVE-2026-43928
Complete source record
{
"id": "99fca1623ec4c104cc88f3e7a3d4bc478bac645dd10f517e764d37c62fcfcc39",
"url": "https://osv.dev/vulnerability/CVE-2026-43928",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "FOSSBilling: Payment amount not validated in PayPalEmail adapter allows invoice underpayment",
"summary": "FOSSBilling is a free, open-source billing and client management system. Prior to version 0.8.0, the PayPalEmail payment adapter accepts PayPal IPN callbacks and credits the IPN-supplied amount (`mc_gross`) to the client's balance without validating it against the invoice total. Combined with a $0.05 floating-point epsilon tolerance in the invoice credit-payment logic, this allows a client to underpay an invoice by up to $0.04 and still have it marked as fully paid. Version 0.8.0 patches the issue. There is no effective workaround without modifying the source code. Merchants using the PayPalEmail adapter should monitor IPN transactions for amounts that do not match their corresponding invoice totals, and manually review and refund suspicious payments.",
"evidence": "osv:CVE-2026-43928",
"products": [],
"severity": "low",
"structured": {
"id": "CVE-2026-43928",
"aliases": [
"CVE-2026-43928",
"GHSA-xjc6-g382-h942"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/fossbilling/fossbilling",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "3bd35f5b2921d8a26a403142ae0408f95e6463cc"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.8.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.8.0"
}
],
"source": "DESCRIPTION"
}
]
}
}
],
"versions": [
"0.7.2",
"0.7.1",
"0.7.0",
"0.6.22",
"0.6.21",
"0.6.20",
"0.6.19",
"0.6.18",
"0.6.17",
"0.6.16",
"0.6.15",
"0.6.14",
"0.6.13",
"0.6.12",
"0.6.11",
"0.6.10",
"0.6.9",
"0.6.8",
"0.6.7",
"0.6.6",
"0.6.5",
"0.6.4",
"0.6.3",
"0.6.2",
"0.6.1",
"0.6.0",
"0.5.5",
"0.5.4",
"0.5.3",
"0.5.2",
"0.5.1",
"0.5.0",
"0.4.3",
"0.4.2",
"0.4.1",
"0.4.0",
"0.3.0",
"0.2.10",
"0.2.9",
"0.2.8",
"0.2.7",
"0.2.6",
"0.2.5",
"0.2.4",
"0.2.3",
"0.2.2",
"0.2.1",
"0.2.0",
"0.1.1",
"0.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-43928.json"
}
}
],
"modified": "2026-10-28T02:30:37.047891411Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/43xxx/CVE-2026-43928.json",
"https://github.com/FOSSBilling/FOSSBilling/security/advisories/GHSA-xjc6-g382-h942",
"https://nvd.nist.gov/vuln/detail/CVE-2026-43928"
],
"provider_metadata": {
"cwe_ids": [
"CWE-1284",
"CWE-754"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/43xxx/CVE-2026-43928.json"
}
},
"related_cves": [
{
"value": "CVE-2026-43928",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 504268,
"published_at": "2026-07-06T21:53:31.172+00:00"
}