POST

/BizTransaction/Allotment

Usage Notes

When

  • Process distribution-driven unit allocations
  • Execute dividend reinvestment (DRP) allocations
  • Record corporate action allotments

Requirements

  • Account and Investment must exist with active pricing
  • TransactionDate required

Notes

  • Links to originating deposit via depositBizTransactionID
  • Integrates with Distribution workflow for DRP processing
  • Transaction records are permanent

Description

Creates an allotment transaction for distribution-driven unit allocations. Commonly used for dividend reinvestment programs and corporate action processing.

Required Headers - See Authentication

HeaderValueDescription
Content-Typeapplication/jsonRequest content type
Authorization{accessToken}Bearer token for API access
Version2.0API version identifier

Request Body

Parameter Type Required Description
productID >
integer (int32)
Native 7G identifier for the product.
externalProductId >
string
External system identifier for the product (alternative to productID).
externalBizTransactionId
string
Optional
External transaction identifier for idempotency preventing duplicate allotments during integration failures (e.g., Distribution workflows, IPO processing).
amount >
number (double)
Dollar amount for allotment (system converts to units: amount ÷ price = units allocated, used for distribution reinvestment and IPO applications).
quantity >
number (double)
Exact unit quantity to allot (used for bonus units, rights exercises, DRP where units already calculated).
overridePrice
number (double)
Optional
Manual price override for special allotment pricing (DRP discount pricing, IPO issue price, default: 0 uses current investmentPrice).
comment
string
Optional
Audit trail notation for allotment source and context (appears on investor statements).
accountID >
integer (int32)
Native account identifier receiving allotted units (creates/updates Holdings record for accountID+investmentID combination).
externalAccountId >
string
External account identifier for cross-platform integration (e.g., distribution processors, registry systems).
transactionDate >
string (date)
Transaction date for the allotment. Format: YYYY-MM-DD. Cannot be empty or default value.
investmentID
integer (int32)
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent (type To_Be_Allotted, status Pending). See the InfoBox above.
externalInvestmentId
string
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent. See the InfoBox above.
securityCode
string
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent. See the InfoBox above.
depositBizTransactionID
integer (int64)
Optional
Links allotment to originating deposit transaction for Distribution integration workflows. If specified, must be greater than 0.
depositExternalBizTransactionID
string
Optional
External deposit identifier for linking allotment to deposit using external system references (alternative to depositBizTransactionID).
productID
integer (int32)
Native 7G identifier for the product.
externalProductId
string
External system identifier for the product (alternative to productID).
externalBizTransactionId
string
Optional
External transaction identifier for idempotency preventing duplicate allotments during integration failures (e.g., Distribution workflows, IPO processing).
amount
number (double)
Dollar amount for allotment (system converts to units: amount ÷ price = units allocated, used for distribution reinvestment and IPO applications).
quantity
number (double)
Exact unit quantity to allot (used for bonus units, rights exercises, DRP where units already calculated).
overridePrice
number (double)
Optional
Manual price override for special allotment pricing (DRP discount pricing, IPO issue price, default: 0 uses current investmentPrice).
comment
string
Optional
Audit trail notation for allotment source and context (appears on investor statements).
accountID
integer (int32)
Native account identifier receiving allotted units (creates/updates Holdings record for accountID+investmentID combination).
externalAccountId
string
External account identifier for cross-platform integration (e.g., distribution processors, registry systems).
transactionDate
string (date)
Transaction date for the allotment. Format: YYYY-MM-DD. Cannot be empty or default value.
investmentID
integer (int32)
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent (type To_Be_Allotted, status Pending). See the InfoBox above.
externalInvestmentId
string
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent. See the InfoBox above.
securityCode
string
Optional
Present on the DTO for symmetry with other BizTransaction payloads. IGNORED on Allotment — the investment is resolved from the parent BizEvent. See the InfoBox above.
depositBizTransactionID
integer (int64)
Optional
Links allotment to originating deposit transaction for Distribution integration workflows. If specified, must be greater than 0.
depositExternalBizTransactionID
string
Optional
External deposit identifier for linking allotment to deposit using external system references (alternative to depositBizTransactionID).
⚠️

Investment Identifiers Are Ignored on Allotment

Unlike other POST /BizTransaction/* payloads, Allotment does not resolve the investment from the body. The investment is inherited from the parent BizEvent (status To_Be_Allotted) that the allotment draws down.

As a result, investmentID, externalInvestmentId, and securityCode are all present on the DTO for structural symmetry with the other transaction payloads, but the service ignores them. Supplying any of them has no effect; the investment is taken from the pending BizEvent.

Example Requests

bash
# Amount-based allotment (dollar value)
curl -X POST 'https://api.7g.com.au/BizTransaction/Allotment' \
  -H 'Authorization: {accessToken}' \
  -H 'Version: 2.0' \
  -H 'Content-Type: application/json' \
  -d '{
    "productID": 10,
    "amount": 50000.00,
    "overridePrice": 1.25,
    "comment": "IPO allotment - Growth Fund Class A",
    "accountID": 12345,
    "transactionDate": "2025-08-14",
    "investmentID": 25,
    "depositBizTransactionID": 998
  }'

# Quantity-based allotment (unit count)
curl -X POST 'https://api.7g.com.au/BizTransaction/Allotment' \
  -H 'Authorization: {accessToken}' \
  -H 'Version: 2.0' \
  -H 'Content-Type: application/json' \
  -d '{
    "productID": 10,
    "quantity": 40000.00,
    "comment": "Bonus share allotment - 1:4 ratio",
    "accountID": 12345,
    "transactionDate": "2025-08-14",
    "investmentID": 25
  }'

Response Examples

json
{
  "result": true,
  "message": "Allotment processed successfully",
  "recordCount": 1,
  "data": {
    "bizTransactionID": 1001,
    "externalBizTransactionId": "ALLOT-2024-001",
    "bizTransactionTypeID": 6,
    "typeName": "Allotment",
    "movementReasonCode": "NEW_ALLOTMENT",
    "parentBizTransactionID": null,
    "transactionDate": "2025-08-14T00:00:00Z",
    "productID": 10,
    "externalProductId": "FUND-001",
    "accountID": 12345,
    "externalAccountId": "ACC-12345",
    "accountNumber": "ACC001234",
    "bizEntityName": "Smith Family Trust",
    "investmentID": 25,
    "externalInvestmentId": "INV-GROWTH",
    "securityCode": "GRW001",
    "investmentName": "Growth Investment Class A",
    "investmentPrice": 1.2500,
    "comment": "IPO allotment - Growth Fund Class A",
    "corporateActionID": null,
    "externalCorporateActionId": null,
    "corporateActionName": null,
    "amount": 50000.00,
    "quantity": 40000.00,
    "transactionClosingAmount": null,
    "transactionClosingQuantity": null,
    "accountClosingAmount": null,
    "accountClosingQuantity": null,
    "createdDate": "2025-08-14T10:30:15Z",
    "updatedDate": null,
    "bizTransactionStatusID": 1,
    "statusName": "Complete"
  }
}