Buyer From Insurer Integration
This document explains how the system works with credit insurance providers to manage buyer credit limits. It describes the business process for each insurer and how buyer information is retrieved and synchronized.
Overview
The system integrates with four main credit insurance providers:
Allianz
Atradius
Coface
Groupama
Each insurer has different capabilities and workflows for:
Fetching buyer credit limit information
Identifying buyers in their system
Requesting new or updated credit limits
Common Workflow Pattern
Most insurers follow a similar pattern when working with credit limits:
Check for existing insurer reference: First check if the buyer already has a reference number in the insurer's system
Lookup buyer in insurer system: If not found, search for the buyer using their legal identifier (VAT number, SIREN, etc.)
Request credit limit: Submit the credit limit request using the insurer's reference
Store insurer information: Save the insurer's reference and response data
Share across duplicate buyers: When a buyer has the same legal identity across multiple records, share the insurer information with all of them
Allianz Integration
How Buyer Information is Retrieved
When fetching credit limit information from Allianz, the system tries multiple approaches in this order:
Using saved Allianz reference: If the buyer already has an Allianz company ID stored, use it directly
Using internal buyer code: Search Allianz using the buyer's internal reference code
Using legal identifier: If the above fail, search Allianz using the buyer's legal identifier (VAT, registration number, etc.) to find their company ID, then retrieve the cover
Finding a Buyer in Allianz System
To find a buyer's Allianz company ID:
Requirements:
Buyer must have a country
Buyer must have a legal identifier (VAT number, commercial register number, etc.)
Process: The system searches Allianz's database using the buyer's legal identifier, country, and identifier type. If found, Allianz returns the company ID which is then stored for future use.
Requesting Credit Limits
Workflow:
Obtain the buyer's Allianz company ID (using the methods above)
If the buyer is not registered in Allianz, the request cannot proceed (manual registration required)
Submit the credit limit request with:
Buyer's Allianz company ID
Requested amount and currency
Contract policy information
Information Received from Allianz:
Credit limit amount
Decision status (approved, refused, etc.)
Request date
Last update date
Expiration date (if applicable)
Atradius Integration
How Buyer Information is Retrieved
When fetching credit limit information from Atradius, the system tries multiple approaches in this order:
Using saved Atradius reference: If the buyer already has an Atradius buyer ID stored, use it directly
Using internal buyer code: Search Atradius using the buyer's internal reference code
Using legal identifier: If the above fail, search Atradius using the buyer's legal identifier to find their buyer ID, then retrieve the cover
Finding a Buyer in Atradius System
To find a buyer's Atradius buyer ID:
Supported Legal Identifiers:
Commercial Register number
Dun & Bradstreet number
National Registration Number
SIREN number
VAT Number
Process: The system calls Atradius API to search for the buyer using their country (ISO 3-letter code), legal identifier, and identifier type. If found, Atradius returns the buyer ID which is then stored for future use.
Requesting Credit Limits
Workflow:
Obtain the buyer's Atradius buyer ID (using the methods above, or proceed without it)
Determine if this is a new request or an update:
If the buyer already has Atradius data stored: Update the existing cover (supersede action)
If not, check if a cover exists in Atradius by searching:
If cover exists: Update it (supersede the existing cover)
If no cover exists: Create a new cover request
Submit the appropriate request type to Atradius API
Store the buyer ID from the response for future use
Special Cases:
If creating a new cover fails because it already exists, the system automatically switches to updating the existing cover
New buyers without a buyer ID will have it extracted from Atradius's response
Information Received from Atradius:
Buyer ID (if not already known)
Credit limit amount
Decision status
Cover details
Coface Integration
How Buyer Information is Retrieved
When fetching credit limit information from Coface, the system tries two approaches in this order:
Using saved Coface reference: If the buyer already has a Coface easy number stored, use it directly
Using internal buyer code: Search Coface using the buyer's internal reference code
Finding a Buyer in Coface System
To find a buyer's Coface easy number:
Requirements:
Buyer must have a country
Buyer must have a legal identifier
Process: The system calls Coface API to search for the buyer using their country, identifier type, and identifier value. Different countries use different identifier types (VAT, SIREN, commercial register, etc.). If found, Coface returns the easy number which is then stored for future use.
Requesting Credit Limits
Workflow:
Obtain the buyer's Coface easy number (using the methods above)
If the buyer is not found in Coface, the system can still proceed with an "unknown debtor" request
Determine the type of request needed:
Create: For unknown debtors or buyers without existing products
Update: For buyers with existing credit limit products
Change: For buyers with other product types that need to be changed to credit limit
Submit the request to Coface API with buyer information and requested amount
Store the easy number from the response
Unknown Debtor Handling: When a buyer is not found in Coface's system, the system can still submit a credit limit request by providing:
Debtor name
Country
Address details (street, postal code, city)
Coface will process this as a new debtor registration along with the credit limit request.
Information Received from Coface:
Easy number (Coface's buyer reference)
Credit limit amount
Decision status
Product details
Groupama Integration
How Buyer Information is Retrieved
Groupama works differently from other insurers - it only supports batch retrieval of all credit limits for a contract. There is no way to look up individual buyers or request new credit limits through their API.
Process: The system calls Groupama API to retrieve all credit limits for a specific insurance policy. The response includes all buyers covered under that policy.
Finding a Buyer in Groupama System
Groupama does not have a separate search function. The buyer's Groupama reference number (NumeroGac) is provided directly in the credit limit data when retrieving all covers for a contract.
Duplicate Buyer Handling
Problem: When the same buyer exists across multiple sectors or contracts in Groupama, they return multiple records for the same buyer (identified by their Groupama reference number and legal ID).
Solution: The system automatically consolidates these duplicate records:
Group by buyer: Identify all records belonging to the same buyer
Select latest: Keep only the record with the most recent decision date
Avoid duplicates: This prevents duplicate buyer errors during import
Credit Limit Amount Calculation
Groupama supports both permanent and temporary credit limit increases:
How it works:
Each buyer has a base (permanent) credit limit amount
They may also have a temporary increase amount with start and end dates
The system calculates the effective credit limit based on the current date:
If today is within the temporary increase period: Base amount + Temporary amount
Otherwise: Base amount only
This ensures that temporary credit limit increases are automatically applied and removed based on their validity period.
Decision Status Codes
Groupama provides decision status codes for each credit limit:
Code | Meaning |
AC | Accepted |
AN | Cancelled |
LI | Partially Accepted |
R | Cancelled |
RF | Refused |
ND | No Decision (treated as refused) |
Limitations
Groupama has a more limited integration compared to other insurers:
No individual buyer lookup: Cannot search for or retrieve a specific buyer's information
No credit limit requests: Cannot request new credit limits through the API
Read-only integration: Only supports retrieving existing credit limits
Batch only: Must retrieve all buyers for a contract at once
Currency: All amounts are in EUR only
Blind Cover
What is Blind Cover?
Blind cover is a default credit limit amount set at the contract level that is automatically applied to buyers who don't have an official credit limit from the insurer.
When is Blind Cover Assigned?
Blind cover is assigned in the following scenarios:
After contract save/update: When a contract is created or updated with a blind cover amount
After fetching covers from insurer: After retrieving credit limits from the insurer (batch or individual)
After invoice creation: When buyer balances are recalculated after invoice import
Who Receives Blind Cover?
Blind cover is assigned to buyers who meet ALL of these conditions:
Belong to the contract's company and currency
Do NOT have an existing credit limit (or only have a blind cover credit limit)
The contract has a blind cover amount configured
How Blind Cover Works
Creation: A single credit limit with blind cover status is created per contract
Assignment: This credit limit is shared across all eligible buyers in the contract
Removal: When a buyer receives an official credit limit from the insurer, the blind cover is automatically replaced
Update: If the blind cover amount changes, all buyers with blind cover are updated
Deletion: When a contract is deleted, blind cover is removed from all its buyers
The system automatically manages blind cover assignment and removal based on contract and buyer changes.
Decision Handling
No Decision (ND) Type
When an insurer returns a decision type of "ND" (No Decision), the system:
Removes the buyerFromInsurer record for that buyer
Removes the associated creditLimit for that buyer
This applies to Groupama and Allianz insurers
This ensures that buyers without a decision from the insurer don't have stale or invalid credit limit data.
Sharing Buyer From Insurer
What is Sharing?
When multiple buyer records in the system represent the same legal entity (same company, currency, and legal identifier), they should share the same insurer information.
When Does Sharing Occur?
Sharing happens automatically in these scenarios:
After credit limit request: When new insurer information is received, it's shared with all buyers having the same legal identity
After batch import: When importing covers from insurer, the system shares insurer data across duplicate buyers
Manual trigger: The system can be triggered to share insurer data for all buyers in a company
How Does Sharing Work?
Process:
Identify all buyers with the same legal identity (company + currency + legal identifier type + legal identifier value)
Find the most recent insurer information or credit limit among them
Assign this insurer data to all buyers in the group
Benefits
Consistency: All buyers representing the same entity have the same credit limit
Efficiency: Reduces duplicate API calls to insurers
Data integrity: Ensures credit limit information is synchronized across duplicate buyers