Insurance Services
General Insurance Services
BCP Components and APIs
BCP Integration
Sidebar On this page

Global Notes

This document describes the data integration specifications between BCP (Billing, Collection & Payment) module and various business modules (PA, Claim, RI, etc.).

Important Notes

  1. Interface Structure Universality: The interface structure described in this document (e.g., request/response format, field hierarchy) is the universal standard specification. All tenants/projects should follow this structure for integration.

  2. Fields and Code Values are References: The specific field names, enumeration values, and code tables listed in this document are reference suggestions only. During actual implementation:

    • Specific fields can be added or removed based on business requirements
    • Code values (such as BizModule, BizSource, BcpFeeType, etc.) should be based on the DataTable configured in the actual project
    • Dynamic extension fields can be added at root level (configured in BcpBizTransaction object) and fee level (configured in BcpFee object)
  3. Integration Method: All data interaction between business modules and BCP is implemented through direct API calls to the REST API interfaces provided by BCP.


API Overview

Core APIs

APIMethodDescription
/bcp-core/fee/v1/syncDataToBCPPOSTSynchronize business data to BCP (main interface)
/bcp-core/fee/v1/syncAdditionalFeeToBCPPOSTAppend fee data to BCP

Batch Data Processing

When the fee list contains a large number of records (over 1000), data needs to be transmitted through multiple requests:

  • First request: GenerateNewTransaction = true
  • Subsequent requests: GenerateNewTransaction = false

Common Enumeration Values

The following enumeration values are for reference only. Please refer to the DataTable configured in the project for actual usage.

Module Code

CodeModuleDescription
10PAPolicy Administration
20ClaimClaim Management
30ReinsuranceReinsurance
40ChannelChannel/Commission
50FinanceFinance

BizSource

CodeSourceDescription
1Direct BusinessDirect business
2RI Fac-InFacultative inward
3Coinsurance-InCoinsurance inward

TransactionType

CodeDescription
NEWBIZNew business
ENDORSEMENTEndorsement
RENEWALRenewal
CLAIMClaim
REINSURANCEReinsurance
COMMISSIONCommission settlement
COLLECTIONCollection
PAYMENTPayment
APPLICATIONApplication
SUSPENSESuspense
OFFSETOffset
REVERSEReversal

PA → BCP (Policy Module Integration)

Business Scenarios

PA module synchronizes data to BCP in the following scenarios:

  • Upon new business/renewal/endorsement submission
  • Distinguished by IsPrepay parameter for CBC (Cash Before Cover) and NCBC (Non Cash Before Cover) modes

Request Structure

{
"BizModule": "10",
"BizSource": "1",
"BizTransType": "NEWBIZ",
"BizUniqueId": 23865192828,
"BranchCode": "10001",
"LocalCurrencyCode": "SGD",
"BookingCurrencyCode": "SGD",
"CurrencyCode": "SGD",
"DirectEr": 1,
"DirectBookingEr": 1,
"IsPrepay": "N",
"PaymentMethod": "30",
"PaymentType": "1",
"PolicyHolderTypeCode": "",
"PolicyHolderName": "cc cc",
"PolicyHolderCode": "",
"PolicyId": 23865192828,
"PolicyNo": "POMI00000012",
"MasterPolicyNo": "",
"EndoId": "",
"EndoNo": "",
"EndoType": "",
"SubEndoType": "",
"EndoEffDate": "",
"PolicyEffDate": "",
"PolicyExpDate": "",
"ChannelCode": "",
"ProductCode": "MI",
"ProductLineCode": "Bond",
"QuotationNo": "PMI0000000012",
"RefTransId": 23865192828,
"RefTransNo": "PMI0000000012",
"TotalPeriods": 26,
"FeeList": [
{
"Amount": 10,
"AmountSign": "+",
"ArapCate": "1",
"Balance": 10,
"BcpFeeType": "100101",
"BranchCode": "370068002",
"CurrentPeriod": 1,
"CurrencyCode": "SGD",
"DirectEr": 1,
"DirectBookingEr": 1,
"PayerPayeeCode": "",
"PayerPayeeName": "cc cc",
"PayerPayeeType": "",
"PayerPayeeCate": "",
"PeriodEndDate": "2021-06-24",
"PeriodStartDate": "2021-05-25",
"TotalPeriods": 26
},
{
"Amount": 10,
"AmountSign": "+",
"ArapCate": "1",
"Balance": 10,
"BcpFeeType": "100501",
"BranchCode": "370068002",
"CurrentPeriod": 1,
"CurrencyCode": "SGD",
"DirectEr": 1,
"DirectBookingEr": 1,
"PayerPayeeCode": "",
"PayerPayeeName": "cc cc",
"PayerPayeeType": "",
"PayerPayeeCate": "",
"PeriodEndDate": "2021-06-24",
"PeriodStartDate": "2021-05-25",
"TotalPeriods": 26
}
]
}

Key Field Descriptions

FieldTypeRequiredDescription
BizModuleStringYBusiness module code, PA is fixed as “10”
BizSourceStringYBusiness source: 1-Direct, 2-Fac-in, 3-Coinsurance-in
BizTransTypeStringYTransaction type: NEWBIZ/ENDORSEMENT/RENEWAL
BizUniqueIdLongYBusiness unique identifier, recommend using PolicyId + EndoId
BranchCodeStringYBranch/Organization code
IsPrepayStringYCash before cover flag: Y-CBC, N-NCBC
BcpFeeTypeStringYFee type, refer to BcpFeeType DataTable
ArapCateStringYAR/AP category: 1-Receivable, 2-Payable
AmountDecimalYAmount (absolute value)
AmountSignStringYAmount sign: +/-

CBC Mode Additional Fields

When IsPrepay = "Y", pass PrepayOrderList:

{
"PrepayOrderList": [
{
"Amount": 196.34,
"Balance": 196.34,
"CurrentPeriod": 1,
"DueDate": "2024-05-21",
"PayerPayeeName": "CC",
"PayerPayeeType": "IndiCustomer",
"PeriodEndDate": "2024-05-21",
"PeriodStartDate": "2024-05-21",
"TotalPeriods": 2
}
]
}

Claim → BCP (Claim Module Integration)

Business Scenarios

Claim module synchronizes data to BCP in the following scenarios:

  1. Indemnity: Settlement submit, prepay application, recovery submit
  2. Reserve: Registration submit, manual reserve adjustment, settlement, subrogation, salvage, etc.

Indemnity Sync Request

{
"BizModule": "20",
"BizSource": "1",
"BizTransType": "CLAIM",
"BizUniqueId": "858278123_12312_20210101120000",
"BranchCode": "370068002",
"FeeList": [
{
"ClaimReserveType": "01",
"SubClaimId": "1",
"CoverageCode": "C001",
"Amount": 1000,
"AmountSign": "+",
"ArapCate": "2",
"Balance": 1000,
"BcpFeeType": "200100",
"CurrencyCode": "SGD",
"FeeId": 23865192828,
"PaymentMethod": "30",
"PayerPayeeName": "Payee Name",
"PeriodEndDate": "2021-06-24",
"PeriodStartDate": "2021-05-25"
},
{
"ClaimReserveType": "01",
"SubClaimId": "1",
"CoverageCode": "C001",
"Amount": 1000,
"AmountSign": "+",
"ArapCate": "2",
"Balance": 1000,
"BcpFeeType": "200312",
"CurrencyCode": "SGD",
"FeeId": 23865192828,
"PaymentMethod": "30",
"PayerPayeeName": "Payee Name",
"PeriodEndDate": "2021-06-24",
"PeriodStartDate": "2021-05-25"
}
],
"PolicyId": 23865192828,
"PolicyNo": "POMI00000012",
"ClaimNo": "CLM000001",
"ClaimId": 12345,
"ProductCode": "MI"
}

Reserve Sync Request

{
"BizModule": "20",
"BizSource": "1",
"BizTransType": "CLAIM",
"BizUniqueId": "858278123_Reserve_20210101120000",
"BranchCode": "370068002",
"FeeList": [
{
"ClaimReserveType": "01",
"SubClaimId": "1",
"CoverageCode": "C001",
"UpdateType": "03",
"Amount": 5000,
"AmountSign": "+",
"ArapCate": "2",
"Balance": 5000,
"BcpFeeType": "200201",
"CurrencyCode": "SGD",
"FeeId": 23865192828
}
]
}

Key Field Descriptions

FieldDescription
BizUniqueIdFormat: {ClaimId}_{settlementId/ssrId}_{yyyyMMddHHmmss} or {ClaimId}_Reserve_{yyyyMMddHHmmss}
ClaimReserveTypeReserve type: 01-Loss(Indemnity), 02-Loss(Expense), 03-Subrogation, 05-Salvage
UpdateTypeReserve update type: 03-New, 01-Manual Update, 05-Final Settlement, 02-Decline
FeeIdPrimary key of fee table, must be unique

RI → BCP (Reinsurance Module Integration)

Business Scenarios

  1. When RI generates expenses, directly call BCP API to synchronize each transaction
  2. RI sends summary settlement to BCP
  3. BCP provides cancellation interface, ARAP can be cancelled before actual payment/collection

Request Structure

{
"BizModule": "30",
"BizSource": "1",
"BizTransType": "REINSURANCE",
"BizUniqueId": "RI_FEE_12345",
"BranchCode": "370068002",
"CurrencyCode": "SGD",
"DirectEr": 1,
"DirectBookingEr": 1,
"IsPrepay": "N",
"RiPolicyId": "RI001",
"RiPolicyNo": "RI0000001",
"RiStatementId": 12345,
"RiStatementNo": "STMT001",
"FeeList": [
{
"Amount": 10000,
"AmountSign": "+",
"ArapCate": "2",
"Balance": 10000,
"BcpFeeType": "300110",
"CurrencyCode": "SGD",
"CurrentPeriod": 1,
"DirectEr": 1,
"DirectBookingEr": 1,
"FeeId": "FEE001",
"RefTransType": null,
"TotalPeriods": 1,
"PeriodStartDate": "2021-05-25",
"PeriodEndDate": "2021-06-24",
"PayerPayeeName": "Reinsurer A"
}
]
}

Key Field Descriptions

FieldDescription
BizUniqueIdAccounting scenario uses RI fee ID; reconciliation scenario uses summary settlement number
RefTransTypePass “OFFSET” for settlement statement details, null for other scenarios
TotalPeriodsRI has no installment concept, always pass 1

BCP → PA (BCP Callback to Policy)

Business Scenario

BCP returns payment information to PA module after collection/payment is completed.

Response Structure

{
"NewBiz23866962810": [
{
"PrepayOrder": true,
"PaymentNo": "R100001",
"Amount": 26.60,
"FeeType": "100101",
"InstallmentPeriodSeq": 6,
"PaidDate": "2021-06-07T15:02:09",
"PaidUp": "Y"
}
]
}

Field Descriptions

FieldDescription
KeyFormat: {BizTransType}{PolicyId}
PrepayOrderWhether it is a prepay order
PaymentNoBCP receipt number (returned only when PrepayOrder=true)
PaidUpWhether fully settled: Y/N

BCP → Claim (BCP Callback to Claim)

Business Scenario

BCP returns payment/collection status information to Claim module.

Response Structure

{
"ClaimPaymentInfo": [
{
"ClaimId": 23866962810,
"PaymentInfo": [
{
"Amount": 26.60,
"FeeSeq": 6,
"FeeType": "200100",
"InstallmentPeriodSeq": 6,
"PaidDate": "2021-06-07T15:02:09",
"PaidUp": "Y",
"FeeId": 23865192828
}
]
}
]
}

Partial Collection Notes

For AR (such as recovery), BCP supports partial collection with multiple operations until fully collected:

  • Amount: Current accumulated amount
  • PaidUp: Y indicates fully settled, N indicates partial collection

BCP → RI (BCP Callback to Reinsurance)

API

URL: /v1/settleInfoResultNotify

Request Structure

FieldTypeRequiredDescription
SettleNoStringNSummary settlement number
SendDateStringYDate of sending to GL
ProcessTypeStringNPayment result: 0-payment success

Response Structure

FieldTypeDescription
statusStringOK/ERROR
messageStringError message (when status=ERROR)

BcpFeeType Reference

Note: The following are only common fee type examples. For complete and up-to-date fee type definitions, please refer to the BcpFeeType DataTable configured in the project.

PA Module (10)

FeeTypeNameDescription
100101Policy ARAP - DirectDirect business AR/AP
100501Premium - DirectDirect business premium income
100601Broker Commission - DirectDirect business broker commission
100400Policy TaxPolicy tax

Claim Module (20)

FeeTypeNameDescription
200100Claim ARAPClaim AR/AP
200201Reserve - DirectDirect business reserve movement
200301Settlement - DirectDirect business claim settlement
200400Claim TaxClaim tax

RI Module (30)

FeeTypeNameDescription
300110Treaty Inward - PremiumTreaty inward premium
300111Treaty Outward - StatementTreaty outward quarterly statement
300302Settlement - Fac-InFac-in claim settlement
300600Broker CommissionRI broker commission

Channel/Finance Module (40/50)

FeeTypeNameDescription
400100Settled Commission ARAPSettled commission AR/AP
400800CollectionCollection
401100Payment ApprovalPayment approval
401400Write OffWrite off

Payment Method Mapping

BCP Payment Method

CodeName
100Cash
101Cheque
102Direct Debit
106Bank Transfer
107Post Pay
108Online Pay
109Direct Credit

Claim → BCP Payment Method Mapping

Claim CodeClaim NameBCP Code
01Cash100
02Online Pay108
03Unionpay110
04Direct Credit109

Feedback
Was this page helpful?
|
Provide feedback