Create a Billing Account
/billingAccount
Request
-
fields: string
Specifies the comma-separated properties to include in the response.
- application/json
-
allOf
PartyAccount_FVO
-
object
BillingAccount_FVO-allOf[1]
Represents a party account used for billing purposes. It includes a bill structure that defines frequency presentation media format. It specializes PartyAccount.
-
object
BillingAccountOracle_FVO-allOf[0]
Represents a party account used for billing purposes. It includes a bill structure that defines frequency presentation media format. It specializes PartyAccount.
-
allOf
Account_FVO
-
object
PartyAccount_FVO-allOf[1]
Represents an account used for billing or settlement purposes for a party. Specializes Account.
-
object
allOf
Entity_FVO
Represents a base entity schema for TM Forum Open APIs.
-
object
Account_FVO-allOf[1]
Defines a generic account structure shared by PartyAccount, FinancialAccount, and other account types supported by the API.
object-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Addressable_FVO
Defines a base schema for addressable entities.
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
id: string
The ID.
object-
accountRelationship: array
accountRelationship
-
accountType: string
The account's category. Examples individual joint. For flexibility, the API uses a string, but implementations can use an enumeration with a limited list of valid values.
-
contact: array
contact
-
creditLimit: object
Money
Represents a monetary amount.
-
description: string
The account's detailed description.
-
name(required): string
The account's name.
- relatedParty: array relatedParty
-
state: string
Contains the lifecycle state such as: Active, Closed, Suspended and so on.
-
taxExemption: array
taxExemption
objectobjectobject-
unit: string
The currency's ISO 4217 three-letter code.
-
value: number
(double)
A signed floating-point number whose sign depends on the API context.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
AccountRelationship_FVO-allOf[1]
Represents a significant connection between accounts. For example, an aggregating account for a list of shop branches, each with its own billing account.
object-
account: object
AccountRef_FVO
Refers to an account. An account may be a party account or a financial account.
-
relationshipType(required): string
The relationship type.
object-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Addressable_FVO
Defines a base schema for addressable entities.
-
object
EntityRef_FVO-allOf[2]
Represents an entity reference schema for EntityRef classes.
object-
@referredType: string
The actual type of the target instance when needed for disambiguation.
-
href: string
The URI of the referred entity.
-
id(required): string
The identifier of the referred entity.
-
name: string
The referred entity's name.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Contact_FVO-allOf[1]
Represents an individual or organization that serves as an account contact through a contact medium.
object-
contactMedium: array
contactMedium
-
contactName: string
The contact's display name.
-
contactType(required): string
The contact type, for example primary secondary.
-
id: string
The contact's ID within the contact list.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
ContactMedium_FVO-allOf[1]
Indicates the contact medium that can contact the party.
object-
id: string
The contact medium's ID.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
RelatedPartyRefOrPartyRoleRef_FVO-allOf[1]
Refers to a related party or party role linked to a specific entity.
object-
partyOrPartyRole: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "PartyRef":"#/components/schemas/PartyRef_FVO", "PartyRoleRef":"#/components/schemas/PartyRoleRef_FVO" } } -
role(required): string
The related party or party role role for the linked entity. Examples initiator customer salesAgent user.
objectDiscriminator Values
-
object
PartyRef_FVO
Refers to a party.
-
PartyRoleRef_FVO
object-
allOf
EntityRef_FVO
-
object
PartyRoleRef_FVO-allOf[1]
Refers to a party role. A party role represents the part that a party plays in a context.
object-
partyId: string
The engaged party's ID.
-
partyName: string
The engaged party's name.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
TaxExemptionCertificate_FVO-allOf[1]
Represents a tax exemption certificate granted by a tax jurisdiction. Defines the exempt portion of each tax.
object-
certificateNumber: string
The ID of the document that proves a tax exemption for the taxing jurisdiction.
-
id: string
The tax exemption's ID within the exemption list.
-
issuingJurisdiction: string
The name of the jurisdiction that issued the exemption.Example:
USA -
reason: string
The reason for the tax exemption.
-
taxDefinition: array
taxDefinition
-
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
object-
endDateTime: string
(date-time)
The end of the time period in IETF RFC 3339 format.Example:
1985-04-12T23:20:50.52Z -
startDateTime: string
(date-time)
The start of the time period in IETF RFC 3339 format.Example:
1985-04-12T23:20:50.52Z
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
TaxDefinition_FVO-allOf[1]
Refers to a tax definition. A tax jurisdiction levies the tax.
object-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
BillStructure_FVO-allOf[1]
Represents the bill structure for party accounts, including billing and settlement accounts.
object-
cycleSpecification:
BillingCycleSpecification_FVO
-
format: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillFormat":"#/components/schemas/BillFormat_FVO", "BillFormatRef":"#/components/schemas/BillFormatRef_FVO" } }The BillFormat entity, not the BillFormatRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
presentationMedia: array
presentationMedia
-
object
allOf
Entity_FVO
Represents a base entity schema for TM Forum Open APIs.
-
object
BillingCycleSpecification_FVO-allOf[1]
Describes when to initiate a billing cycle and its substeps.
objectDiscriminator Values
-
schema
-
object
BillFormatRef_FVO
Refers to a bill format. A bill format describes how a bill is presented.
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillPresentationMedia":"#/components/schemas/BillPresentationMedia_FVO", "BillPresentationMediaRef":"#/components/schemas/BillPresentationMediaRef_FVO" } }The BillPresentationMedia entity, not the BillPresentationMediaRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
object-
billingDateShift: integer
The billing or settlement date offset, expressed in days from the start of the billing or settlement period.
-
description: string
The billing cycle specification's explanatory text.
-
frequency: string
The billing cycle frequency, for example monthly.
-
name(required): string
The billing cycle specification's short descriptive name.
-
paymentDueDateOffset: integer
The payment due date offset, expressed in days from the start of the billing period.
-
object
allOf
Entity_FVO
Represents a base entity schema for TM Forum Open APIs.
-
object
type
Represents a detailed description of how a bill is presented.
objectobject-
description: string
The bill format's explanatory text.
-
name(required): string
The bill format's short descriptive name.
objectDiscriminator Values
-
schema
-
object
BillPresentationMediaRef_FVO
Refers to bill presentation media. Bill presentation media represents a means of communicating a bill that the associated bill format supports. For example post mail email web page.
-
object
allOf
Entity_FVO
Represents a base entity schema for TM Forum Open APIs.
-
object
type
Represents a means of communicating a bill that the associated bill format supports. For example post mail email web page.
objectobject-
description: string
The bill presentation media's explanatory text.
-
name(required): string
The bill presentation media's short descriptive name.
object-
accountNum: string
The account number.
-
accountRelationship: array
accountRelationship
-
accountType: string
Allowed Values:
[ "consumer", "business" ]The account's category. Examples individual joint. For flexibility, the API uses a string, but implementations can use an enumeration with a limited list of valid values. -
billStructure:
BillStructureOracle_FVO
-
brmAccountType: string
Allowed Values:
[ "standard", "brand" ]The BRM account type. Accepted values standard brand. -
contact: array
contact
-
currency: string
The currency's ISO 4217 three-letter code.
-
currencySecondary: string
The secondary currency's ISO 4217 three-letter code.
-
customerSegmentList: string
The customer segment list.
-
description: string
The account's detailed description.
-
glSegment: string
The GL segment value.
-
id: string
The ID.
-
locale: string
The locale. Default value en_US.
-
name(required): string
The account's name.
- relatedParty(required): array relatedParty
-
serviceBillStructure: array
ServiceBillStructureOracle_FVO
Represents an array of bill structures.
-
state: string
Allowed Values:
[ "active", "inactive", "closed" ]The account's lifecycle state. Examples active inactive closed. -
taxExemption: array
taxExemption
-
vatCertificate: string
The resource's or account's VAT certificate.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
BillStructureOracle_FVO-allOf[1]
Represents an extended bill structure for Oracle implementation.
array-
allOf
AccountRelationship_FVO
-
object
AccountRelationshipOracle_FVO-allOf[1]
Represents a significant connection between accounts. For example, an aggregating account for a list of shop branches, each with its own billing account.
object-
account(required): object
account
Refers to an account. An account may be a party account or a financial account.
-
billStructure: object
billStructure
The child account's bill structure.
-
relationshipType: string
Allowed Values:
[ "AR", "Parent", "Subordinate", "Child" ]The relationship type.
object-
billStructure: object
billStructure
The account's bill structure.
-
id: string
The account's ID.
object-
id(required): string
The child account's bill structure ID.
-
name: string
The bill structure name of child account.
object-
id(required): string
The parent account's bill structure ID.
-
name: string
The parent account's bill structure name.
object-
acctSuppressed: boolean
Specifies whether the account is suppressed. Accepted values true false.
-
actgType: string
Allowed Values:
[ "open_items", "balance_forward" ]The accounting type. Accepted values open_items balance_forward. -
balanceGroup: array
balanceGroup
-
billingSegment: string
The bill structure's billing segment.
-
businessProfileId: string
The business profile ID.
-
cycleSpecification: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillingCycleSpecification":"#/components/schemas/BillingCycleSpecification_FVO", "BillingCycleSpecificationRef":"#/components/schemas/BillingCycleSpecificationRef_FVO" } }The BillingCycleSpecification entity, not the BillingCycleSpecificationRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
format: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillFormat":"#/components/schemas/BillFormat_FVO", "BillFormatRef":"#/components/schemas/BillFormatRef_FVO" } }The BillFormat entity, not the BillFormatRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
id: string
The bill unit ID.
-
name(required): string
The bill unit's name.
-
presentationMedia: array
presentationMedia
objectDiscriminator Values
-
BillingCycleSpecificationOracle_FVO
-
object
BillingCycleSpecificationRef_FVO
Refers to a billing cycle specification. Describes when to initiate a billing cycle and its substeps.
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillPresentationMedia":"#/components/schemas/BillPresentationMedia_FVO", "BillPresentationMediaRef":"#/components/schemas/BillPresentationMediaRef_FVO" } }The BillPresentationMedia entity, not the BillPresentationMediaRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
object-
id: string
The balance group's ID.
-
isDefault: boolean
Boolean value for default balance group.
-
limit: array
limit
-
name: string
The balance group's name.
-
rolledUpCreditLimit: number
(double)
The rolled-up credit limit.
-
rules: array
rules
-
tempLimit: array
tempLimit
object-
creditFloor: number
(double)
The credit floor.
-
creditLimit(required): number
(double)
The balance group's credit limit.
-
creditThreshold: number
(double)
The credit threshold.
-
dynamicCreditFloor: boolean
Specifies whether the credit floor is dynamic.
-
overrideCreditLimit: number
(double)
The overridden credit limit.
-
thresholds: array
thresholds
-
unit(required): string
The credit limit's unit.
object-
amount: number
(double)
The threshold's amount.
-
threshold: number
(double)
The threshold's value.
object-
consumptionRule(required): string
Allowed Values:
[ "EST", "LST", "EET", "LET", "ESTLET", "ESTEET", "LSTEET", "LSTLET", "EETEST", "EETLST", "LETEST", "LETLST" ]The consumption rule. -
unit(required): string
The consumption rule.'s unit.
object-
creditLimit(required): number
(double)
The credit limit.
-
recId: string
The record ID.
-
unit(required): string
The credit limit's unit.
-
validFrom: string
(date-time)
The start date.Example:
1985-04-12T23:20:50.52Z -
validFromDuration: object
validFromDuration
-
validTo: string
(date-time)
The end date.Example:
1985-04-12T23:20:50.52Z -
validToDuration: object
validToDuration
object-
offset: integer
(double)
The start date's offset.
-
unit: string
(date-time)
The start date's unit.Example:
1985-04-12T23:20:50.52Z
object-
offset: integer
(double)
The end date's offset.
-
unit: string
(date-time)
The end date's unit.Example:
1985-04-12T23:20:50.52Z
-
object
allOf
Entity_FVO
Represents a base entity schema for TM Forum Open APIs.
-
object
BillingCycleSpecificationOracle_FVO-allOf[1]
Describes when to initiate a billing cycle and its substeps.
objectobject-
billingDateShift: integer
The billing or settlement date offset, expressed in days from the start of the billing or settlement period.
-
description: string
The billing cycle specification's explanatory text.
-
frequency: string
Allowed Values:
[ "monthly", "bi-monthly", "quarterly", "semiyearly", "yearly" ]The billing cycle frequency, for example monthly. -
name(required): string
The billing cycle specification's short descriptive name.
-
paymentDueDateOffset: integer
The payment due date offset, expressed in days from the start of the billing period.
-
object
ContactOracle_FVO-allOf[0]
Represents an individual or organization that serves as an account contact through a contact medium.
object-
contactMedium: array
contactMedium
-
contactName: string
The contact's name.
-
contactType: string
The contact type.
-
salutation: string
The contact's salutation.
-
object
ContactMediumOracle_FVO-allOf[0]
Indicates the contact medium that can contact the party.
object-
company: string
The associated company name.
-
geoCode: string
The geographic address contact medium code.
-
mediumType: string
Allowed Values:
[ "PostalAddress", "Phone", "Email", "Fax" ]The contact medium type. -
phoneType: string
Allowed Values:
[ "email", "home", "work", "pager", "portable", "pop", "support" ]The phone type classification, for example home work fax.
-
object
TaxExemptionCertificateOracle_FVO-allOf[0]
Represents a tax exemption certificate granted by a tax jurisdiction. Defines the exempt portion of each tax.
object-
certificateNumber: string
The ID of the document that proves a tax exemption for the taxing jurisdiction.
-
id: string
The tax exemption's ID within the exemption list.
-
issuingJurisdiction: string
The name of the jurisdiction that issued the exemption.Example:
USA -
reason: string
The reason for the tax exemption.
-
taxDefinition: array
taxDefinition
-
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
-
object
Extensible_FVO
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
TaxDefinitionOracle_FVO-allOf[1]
Refers to a tax definition. A tax jurisdiction levies the tax.
object-
percent: number
(double)
The tax percentage.
-
Type: string
Allowed Values:
[ "federal", "state", "country", "city", "secondary country", "secondary city", "territory", "secondary state", "district", "secondary federal", "country district", "city district", "other" ]The tax issuing jurisdiction.
Response
201 Response
-
allOf
PartyAccount
-
object
BillingAccount-allOf[1]
Represents a party account used for billing purposes. It includes a bill structure that defines frequency presentation media format. It specializes PartyAccount.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
BillingAccountOracle-allOf[1]
Represents a party account used for billing purposes. It includes a bill structure that defines frequency presentation media format. It specializes PartyAccount.
-
allOf
Account
-
object
PartyAccount-allOf[1]
Represents an account used for billing or settlement purposes for a party. Specializes Account.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
Account-allOf[1]
Defines a generic account structure shared by PartyAccount, FinancialAccount, and other account types supported by the API.
object-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Addressable
Defines a base schema for addressable entities.
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
href: string
The hyperlink reference.
-
id: string
The ID.
object-
accountBalance: array
accountBalance
-
accountRelationship: array
accountRelationship
-
accountType: string
The account's category. Examples individual joint. For flexibility, the API uses a string, but implementations can use an enumeration with a limited list of valid values.
-
contact: array
contact
-
creditLimit: object
Money
Represents a monetary amount.
-
description: string
The account's detailed description.
-
lastUpdate: string
(date-time)
The date and time when the system last updated the account.
-
name: string
The account's name.
- relatedParty: array relatedParty
-
state: string
Contains the lifecycle state such as: Active, Closed, Suspended and so on.
-
taxExemption: array
taxExemption
objectobject-
ratingType: string
The account's payment option, such as prepaid postpaid.
object-
unit: string
The currency's ISO 4217 three-letter code.
-
value: number
(double)
A signed floating-point number whose sign depends on the API context.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
AccountBalance-allOf[1]
Represents balances linked to an account.
object-
amount: object
Money
Represents a monetary amount.
-
balanceType: string
The balance's type, such as a deposit, disputed, loyalty, or receivable balance.
-
id: string
The balance's ID within the list of balances.
-
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
object-
endDateTime: string
(date-time)
The end of the time period in IETF RFC 3339 format.Example:
1985-04-12T23:20:50.52Z -
startDateTime: string
(date-time)
The start of the time period in IETF RFC 3339 format.Example:
1985-04-12T23:20:50.52Z
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
AccountRelationship-allOf[1]
Represents a significant connection between accounts. For example, an aggregating account for a list of shop branches, each with its own billing account.
object-
account: object
AccountRef
Refers to an account. An account may be a party account or a financial account.
-
relationshipType: string
The relationship type.
object-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Addressable
Defines a base schema for addressable entities.
-
object
EntityRef-allOf[2]
Represents an entity reference schema for EntityRef classes.
object-
@referredType: string
The actual type of the target instance when needed for disambiguation.
-
href: string
The URI of the referred entity.
-
id(required): string
The identifier of the referred entity.
-
name: string
The referred entity's name.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Contact-allOf[1]
Represents an individual or organization that serves as an account contact through a contact medium.
object-
contactMedium: array
contactMedium
-
contactName: string
The contact's display name.
-
contactType: string
The contact type, for example primary secondary.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
ContactMedium-allOf[1]
Indicates the contact medium that can contact the party.
object-
id: string
The contact medium's ID.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
RelatedPartyRefOrPartyRoleRef-allOf[1]
Refers to a related party or party role linked to a specific entity.
object-
partyOrPartyRole: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "PartyRef":"#/components/schemas/PartyRef", "PartyRoleRef":"#/components/schemas/PartyRoleRef" } } -
role: string
The related party or party role role for the linked entity. Examples initiator customer salesAgent user.
objectDiscriminator Values
-
object
PartyRef
Refers to a party.
-
PartyRoleRef
-
allOf
EntityRef
-
object
PartyRoleRef-allOf[1]
Refers to a party role. A party role represents the part that a party plays in a context.
object-
partyId: string
The engaged party's ID.
-
partyName: string
The engaged party's name.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
TaxExemptionCertificate-allOf[1]
Represents a tax exemption certificate granted by a tax jurisdiction. Defines the exempt portion of each tax.
object-
attachment: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "Attachment":"#/components/schemas/Attachment", "AttachmentRef":"#/components/schemas/AttachmentRef" } }The Attachment entity, not the AttachmentRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
certificateNumber: string
The ID of the document that proves a tax exemption for the taxing jurisdiction.
-
id: string
The tax exemption's ID within the exemption list.
-
issuingJurisdiction: string
The name of the jurisdiction that issued the exemption.Example:
USA -
reason: string
The reason for the tax exemption.
-
taxDefinition: array
taxDefinition
-
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
objectDiscriminator Values
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
Attachment-allOf[1]
Represents an attachment that complements an element's description, such as a product description, through videos or pictures.
-
allOf
EntityRef
-
object
AttachmentRef-allOf[1]
Represents an attachment reference. An attachment complements an element's description, such as a product description, through videos or pictures.
object-
attachmentType: string
The business characterization of the attachment's purpose, for example logo instructionManual contractCopy.
-
content: string
(base64)
The attachment's Base64-encoded content when embedded.
-
description: string
The attachment's description.Example:
Photograph of the Product -
mimeType: string
The technical characterization of the attachment content format using IETF MIME types.
-
name: string
The attachment's name.
-
size: object
Quantity
Represents an amount in a specified unit.
-
url: string
The URL of the attachment content.Example:
http://host/Content/4aafacbd-11ff-4dc8-b445-305f2215715f -
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
object-
amount: number
(double)
Default Value:
1The numeric value in the specified unit. -
units: string
The unit.
object-
description: string
The attachment's description.
-
url: string
The link to the attachment media or content.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
TaxDefinition-allOf[1]
Refers to a tax definition. A tax jurisdiction levies the tax.
object-
certificateNumber: string
The certificate number.
-
id: string
The tax's ID.
-
issuingJurisdiction: string
The tax issuing jurisdiction.
-
jurisdictionLevel: string
The level of the jurisdiction that levies the tax.Example:
Country -
jurisdictionName: string
The name of the jurisdiction that levies the tax.Example:
USA -
name: string
The tax's name.
-
percent: integer
The tax percentage.
-
reason: string
The tax reason.
-
taxType: string
The tax type.Example:
VAT -
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
BillStructure-allOf[1]
Represents the bill structure for party accounts, including billing and settlement accounts.
object-
cycleSpecification: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillingCycleSpecification":"#/components/schemas/BillingCycleSpecification", "BillingCycleSpecificationRef":"#/components/schemas/BillingCycleSpecificationRef" } }The BillingCycleSpecification entity, not the BillingCycleSpecificationRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
format: object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillFormat":"#/components/schemas/BillFormat", "BillFormatRef":"#/components/schemas/BillFormatRef" } }The BillFormat entity, not the BillFormatRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes. -
presentationMedia: array
presentationMedia
objectDiscriminator Values
-
BillingCycleSpecification
-
object
BillingCycleSpecificationRef
Refers to a billing cycle specification. Describes when to initiate a billing cycle and its substeps.
objectDiscriminator Values
-
BillFormat
-
object
BillFormatRef
Refers to a bill format. A bill format describes how a bill is presented.
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillPresentationMedia":"#/components/schemas/BillPresentationMedia", "BillPresentationMediaRef":"#/components/schemas/BillPresentationMediaRef" } }The BillPresentationMedia entity, not the BillPresentationMediaRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
BillingCycleSpecification-allOf[1]
Describes when to initiate a billing cycle and its substeps.
objectobject-
billingDateShift: integer
The billing or settlement date offset, expressed in days from the start of the billing or settlement period.
-
description: string
The billing cycle specification's explanatory text.
-
frequency: string
The billing cycle frequency, for example monthly.
-
name: string
The billing cycle specification's short descriptive name.
-
paymentDueDateOffset: integer
The payment due date offset, expressed in days from the start of the billing period.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
BillFormat-allOf[1]
Represents a detailed description of how a bill is presented.
objectobject-
description: string
The bill format's explanatory text.
-
name: string
The bill format's short descriptive name.
objectDiscriminator Values
-
BillPresentationMedia
-
object
BillPresentationMediaRef
Refers to bill presentation media. Bill presentation media represents a means of communicating a bill that the associated bill format supports. For example post mail email web page.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
-
object
BillPresentationMedia-allOf[1]
Represents a means of communicating a bill that the associated bill format supports. For example post mail email web page.
objectobject-
description: string
The bill presentation media's explanatory text.
-
name: string
The bill presentation media's short descriptive name.
object-
accountBalance: array
accountBalance
-
accountNum: string
The account number.
-
accountRelationship: array
accountRelationship
-
accountType: string
Allowed Values:
[ "unknown", "consumer", "business" ]The account's category. Examples individual joint. For flexibility, the API uses a string, but implementations can use an enumeration with a limited list of valid values. -
attribute: integer
The attribute.
-
billStructure: object
billStructure
-
brmAccountType: string
Allowed Values:
[ "standard", "brand" ]The BRM account type. Accepted values standard brand. -
contact: array
contact
-
currency: string
The currency's ISO 4217 three-letter code.
-
currencySecondary: string
The secondary currency's ISO 4217 three-letter code.
-
customerSegmentList: string
The customer segment list.
-
description: string
The account's detailed description.
-
glSegment: string
The GL segment value.
-
href: string
The hyperlink reference.
-
id: string
The ID.
-
locale: string
The locale. Default value en_US.
-
name: string
The account's name.
- relatedParty: array relatedParty
-
serviceBillStructure: array
ServiceBillStructureOracle
Represents an array of bill structures.
-
state: string
Allowed Values:
[ "active", "inactive", "closed" ]The account's lifecycle state. Examples active inactive closed. -
taxExemption: array
taxExemption
-
vatCertificate: string
The resource's or account's VAT certificate.
array-
allOf
AccountBalance
-
object
AccountBalanceOracle-allOf[1]
Balances linked to the account
object-
delayedBal: object
Money
Represents a monetary amount.
-
grantedBal: object
Money
Represents a monetary amount.
-
nextBal: object
Money
Represents a monetary amount.
-
allOf
AccountRelationship
-
object
AccountRelationshipOracle-allOf[1]
Represents a significant connection between accounts. For example, an aggregating account for a list of shop branches, each with its own billing account.
object-
account: object
account
Refers to an account. An account may be a party account or a financial account.
-
billStructure: object
billStructure
The child account's bill structure.
-
relationshipType: string
Allowed Values:
[ "AR", "Parent", "Subordinate", "Child" ]The relationship type.
object-
billStructure: object
billStructure
The account's bill structure.
-
id: string
The account's ID.
object-
id: string
The child account's bill structure ID.
-
name: string
The bill structure name of child account.
object-
id: string
The parent account's bill structure ID.
-
name: string
The parent account's bill structure name.
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
BillStructureOracle-allOf[1]
Represents an extended bill structure for Oracle implementation.
object-
acctSuppressed: boolean
Specifies whether the account is suppressed. Accepted values true false.
-
actgType: string
Allowed Values:
[ "open_items", "balance_forward" ]The accounting type. Accepted values open_items balance_forward. -
balanceGroup: array
balanceGroup
-
billingSegment: string
The bill structure's billing segment.
-
businessProfileId: string
The business profile ID.
-
cycleSpecification: object
cycleSpecification
-
format: object
format
-
id: string
The bill unit ID.
-
name: string
The bill unit's name.
-
payType: string
Allowed Values:
[ "invoice", "credit_card", "direct_debit", "subordinate" ]The payment type. Accepted values invoice credit_card direct_debit subordinate. -
presentationMedia: array
presentationMedia
object-
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillingCycleSpecification":"#/components/schemas/BillingCycleSpecification", "BillingCycleSpecificationRef":"#/components/schemas/BillingCycleSpecificationRef" } }The BillingCycleSpecification entity, not the BillingCycleSpecificationRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
object-
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillFormat":"#/components/schemas/BillFormat", "BillFormatRef":"#/components/schemas/BillFormatRef" } }The BillFormat entity, not the BillFormatRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "BillPresentationMedia":"#/components/schemas/BillPresentationMedia", "BillPresentationMediaRef":"#/components/schemas/BillPresentationMediaRef" } }The BillPresentationMedia entity, not the BillPresentationMediaRefOrValue class, uses the polymorphic @type, @schemaLocation, and @referredType attributes.
object-
balances: array
balances
-
id: string
The balance group's ID.
-
isDefault: boolean
Boolean value for default balance group.
-
limit: array
limit
-
name: string
The balance group's name.
-
rolledUpCreditLimit: number
(double)
description: The rolled-up credit limit.
-
rules: array
rules
-
services: array
services
-
tempLimit: array
tempLimit
object-
amount: object
Money
Represents a monetary amount.
-
grantedBal: object
Money
Represents a monetary amount.
-
outstandingAmount: object
Money
Represents a monetary amount.
-
totalAmount: object
Money
Represents a monetary amount.
object-
creditFloor: number
(double)
The credit floor.
-
creditLimit: number
(double)
The balance group's credit limit.
-
creditThreshold: number
(double)
The credit threshold
-
dynamicCreditFloor: boolean
Specifies whether the credit floor is dynamic.
-
fixedThreshold: string
The fixed credit threshold
-
overrideCreditLimit: number
(double)
The overridden credit limit.
-
thresholds: array
thresholds
-
unit: string
The credit limit's unit.
object-
amount: number
(double)
The threshold's amount.
-
threshold: number
(double)
The threshold's value.
object-
consumptionRule: string
Allowed Values:
[ "EST", "LST", "EET", "LET", "ESTLET", "ESTEET", "LSTEET", "LSTLET", "EETEST", "EETLST", "LETEST", "LETLST" ]The consumption rule. -
unit: string
The consumption rule.'s unit.
object-
id: string
The balance group's associated service ID.
object-
creditLimit: number
(double)
The credit limit.
-
recId: string
The record ID.
-
unit: string
The credit limit's unit.
-
validFrom: string
(date-time)
The start date.Example:
1985-04-12T23:20:50.52Z -
validFromDuration: object
validFromDuration
-
validTo: string
(date-time)
The end date.Example:
1985-04-12T23:20:50.52Z -
validToDuration: object
validToDuration
object-
offset: integer
(double)
The start date's offset.
-
unit: string
(date-time)
The start date's unit.Example:
1985-04-12T23:20:50.52Z
object-
offset: integer
(double)
The end date's offset.
-
unit: string
(date-time)
The end date's unit.Example:
1985-04-12T23:20:50.52Z
objectDiscriminator Values
-
BillingCycleSpecificationOracle
-
object
BillingCycleSpecificationRef
Refers to a billing cycle specification. Describes when to initiate a billing cycle and its substeps.
-
object
ContactOracle-allOf[0]
Represents account contacts accessed through contact media.
object-
contactMedium: array
contactMedium
-
contactName: string
The contact's name.
-
contactType: string
The contact type.
-
salutation: string
The contact's salutation.
-
object
ContactMediumOracle-allOf[0]
Indicates the contact medium that can contact the party.
object-
company: string
The associated company name.
-
geoCode: string
The address geographic code.
-
mediumType: string
Allowed Values:
[ "PostalAddress", "Phone", "Email", "Fax" ]The contact medium type. -
phoneType: string
Allowed Values:
[ "home", "work", "pager", "portable", "pop", "support" ]The phone type classification, for example home work fax.
-
object
allOf
TaxExemptionCertificateOracle-allOf[0]
Represents a tax exemption certificate granted by a tax jurisdiction. Defines the exempt portion of each tax.
object-
certificateNumber: string
The ID of the document that proves a tax exemption for the taxing jurisdiction.
-
id: string
The tax exemption's ID within the exemption list.
-
issuingJurisdiction: string
The name of the jurisdiction that issued the exemption.Example:
USA -
reason: string
The reason for the tax exemption.
-
taxDefinition: array
taxDefinition
-
validFor: object
TimePeriod
Represents a time period with a start date, an end date, or both.
-
object
allOf
Entity
Represents a base entity schema for TM Forum Open APIs.
202 Response
400 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
401 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
403 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
404 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
405 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
409 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
500 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
501 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
503 Response
-
object
Extensible
Represents a base extensible schema for TM Forum Open APIs. The entity must include @type.
-
object
Error-allOf[1]
object-
@baseType: string
The superclass.
-
@schemaLocation: string
The URI of a JSON Schema file that defines additional attributes and relationships.
-
@type(required): string
The subclass Extensible name.
object-
code(required): string
The application-specific error detail defined by the API or a common list.
-
message: string
Provides error details and corrective actions for a client user.
-
reason(required): string
Explains the error to a client user.
-
referenceError: string
The URI of documentation that describes the error.
-
status: string
The HTTP error code extension.
Examples
-
Example 2: Account and balance group limits for different resources
-
Example 3: Account and balance group limits for the same resource
Note:
For Examples 1 through 6, set externalIdMappingEnabled to true when using external IDs in the request. By default, external ID mapping is disabled.Example 1: Account-level credit limit
This example shows how to create a billing account with an account-level credit limit by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount1.json
Request Body
The following example shows the contents of the postBillingAccount1.json file sent as the request body.
{
"@type": "BillingAccount",
"name": "Home Account",
"id": "billing-account-post-001",
"description": "This billing account represents the main household billing structure",
"state": "active",
"accountType": "consumer",
"creditLimit": {
"unit": "YES",
"value": 1000
},
"billStructure": {
"@type": "BillStructure",
"id": "billing-account-strucuture-post-001",
"name": "BI_NAME405",
"presentationMedia": [
{
"name": "Post Mail-1"
},
{
"name": "Electronic-1"
}
],
"format": {
"id": "test3",
"name": "Summary Invoice-test-id"
},
"cycleSpecification": {
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"frequency": "yearly",
"id": "test4",
"name": "Annual billing-testid",
"paymentDueDateOffset": 3
}
},
"contact": [
{
"contactType": "primary",
"contactName": "John",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"country": "France",
"city": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test2 blr",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "28412"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
]
}
],
"relatedParty": [
{
"role": "service provider",
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyId": "PartyId101",
"partyName": "PartyName101"
}
},
{
"role": "service provider2",
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2"
}
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "vat",
"name": "Home Account",
"@type": "BillingAccount",
"billStructure": {
"payType": "invoice",
"name": "BI_NAME405",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"id": "billing-account-strucuture-post-001",
"@type": "BillStructure",
"format": {
"name": "Summary Invoice-test-id",
"id": "test3",
"href": "https://localhost:8089/brm/accountManagement/v5/billFormat/test3",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"name": "",
"id": "test4",
"href": "https://localhost:8089/brm/accountManagement/v5/billingCycleSpecification/test4",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+312700",
"name": "",
"isDefault": true,
"limit": [
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 1000.0
}
]
}
],
"presentationMedia": [
{
"name": "Post Mail-1",
"id": "0.0.0.1+-config-bill_presentation_media+182304",
"href": "https://localhost:8089/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+182304",
"@type": "BillPresentationMedia"
},
{
"name": "Electronic-1",
"id": "0.0.0.1+-config-bill_presentation_media+181280",
"href": "https://localhost:8089/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+181280",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2",
"partyName": "",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "billing-account-post-001",
"href": "https://localhost:8089/brm/accountManagement/v5/billingAccount/billing-account-post-001",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "billing-account-post-001",
"contact": [
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "France",
"street1": "Rue des Canards",
"street2": "test2 blr",
"postCode": "75014",
"company": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "email",
"@type": "PhoneContactMedium",
"phoneNumber": "28412",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"faxNumber": "141231112",
"mediumType": "Fax"
}
],
"@type": "Contact",
"contactType": "primary",
"contactName": "John",
"salutation": ""
},
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "Paris",
"street1": "Rue des Canards",
"street2": "test ind",
"postCode": "75014",
"company": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
}
],
"@type": "Contact",
"contactType": "secondary",
"contactName": "Rachel Douglas",
"salutation": ""
}
],
"customerSegmentList": "",
"locale": "en_US",
"currency": "USD"
}
Example 2: Account and balance group limits for different resources
This example shows how to create a billing account with account and balance group limits for different resources by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount2.json
Request Body
The following example shows the contents of the postBillingAccount2.json file sent as the request body.
{
"@type": "BillingAccount",
"name": "Home Account",
"id": "billing-account-post-002",
"description": "This billing account represents the main household billing structure",
"state": "active",
"accountType": "consumer",
"vatCertificate": "vat",
"creditLimit": {
"unit": "YES",
"value": 1000
},
"billStructure": {
"@type": "BillStructure",
"id": "billing-account-strucuture-post-002",
"name": "BI_NAME405",
"presentationMedia": [
{
"name": "Post Mail-1"
},
{
"name": "Electronic-1"
}
],
"format": {
"id": "test3",
"name": "Summary Invoice-test-id"
},
"cycleSpecification": {
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"frequency": "yearly",
"id": "test4",
"name": "Annual billing-testid",
"paymentDueDateOffset": 3
},
"balanceGroup": [
{
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
],
"isDefault": true
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"dynamicCreditFloor": false,
"creditFloor": -500
}
]
}
]
},
"contact": [
{
"contactType": "secondary",
"contactName": "Rachel Douglas",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"city": "Paris",
"country": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test ind",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IND"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
}
]
},
{
"contactType": "primary",
"contactName": "John",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"country": "France",
"city": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test2 blr",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "28412"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
]
}
],
"relatedParty": [
{
"role": "service provider",
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyId": "PartyId101",
"partyName": "PartyName101"
}
},
{
"role": "service provider2",
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2"
}
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "vat",
"name": "Home Account",
"@type": "BillingAccount",
"billStructure": {
"payType": "invoice",
"name": "BI_NAME405",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"id": "billing-account-strucuture-post-002",
"@type": "BillStructure",
"format": {
"name": "Summary Invoice-test-id",
"id": "test3",
"href": "https://host:port/brm/accountManagement/v5/billFormat/test3",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"name": "",
"id": "test4",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/test4",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+310562",
"name": "",
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 1000.0
}
]
},
{
"id": "0.0.0.1+-balance_group+308002",
"name": "",
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500.0,
"creditLimit": 1000.0
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 1000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
}
]
}
],
"presentationMedia": [
{
"name": "Post Mail-1",
"id": "0.0.0.1+-config-bill_presentation_media+182304",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+182304",
"@type": "BillPresentationMedia"
},
{
"name": "Electronic-1",
"id": "0.0.0.1+-config-bill_presentation_media+181280",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+181280",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2",
"partyName": "",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "billing-account-post-002",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/billing-account-post-002",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "billing-account-post-002",
"contact": [
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "France",
"street1": "Rue des Canards",
"street2": "test2 blr",
"postCode": "75014",
"company": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "email",
"@type": "PhoneContactMedium",
"phoneNumber": "28412",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"faxNumber": "141231112",
"mediumType": "Fax"
}
],
"@type": "Contact",
"contactType": "primary",
"contactName": "John",
"salutation": ""
},
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "Paris",
"street1": "Rue des Canards",
"street2": "test ind",
"postCode": "75014",
"company": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
}
],
"@type": "Contact",
"contactType": "secondary",
"contactName": "Rachel Douglas",
"salutation": ""
}
],
"customerSegmentList": "",
"locale": "en_US",
"currency": "USD"
}
Example 3: Account and balance group limits for the same resource
This example shows how to create a billing account with account and balance group limits for the same resource by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount3.json
Request Body
The following example shows the contents of the postBillingAccount3.json file sent as the request body.
{
"@type": "BillingAccount",
"name": "Home Account",
"id": "billing-account-post-003",
"description": "This billing account represents the main household billing structure",
"state": "active",
"accountType": "consumer",
"vatCertificate": "vat",
"creditLimit": {
"unit": "USD",
"value": 1000
},
"billStructure": {
"@type": "BillStructure",
"id": "billing-account-strucuture-post-003",
"name": "BI_NAME405",
"presentationMedia": [
{
"name": "Post Mail-1"
},
{
"name": "Electronic-1"
}
],
"format": {
"id": "test3",
"name": "Summary Invoice-test-id"
},
"cycleSpecification": {
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"frequency": "yearly",
"id": "test4",
"name": "Annual billing-testid",
"paymentDueDateOffset": 3
},
"balanceGroup": [
{
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
],
"isDefault": true
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"dynamicCreditFloor": false,
"creditFloor": -500
}
]
}
]
},
"contact": [
{
"contactType": "secondary",
"contactName": "Rachel Douglas",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"city": "Paris",
"country": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test ind",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IND"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@url.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
}
]
},
{
"contactType": "primary",
"contactName": "John",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"country": "France",
"city": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test2 blr",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@url.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "28412"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
]
}
],
"relatedParty": [
{
"role": "service provider",
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyId": "PartyId101",
"partyName": "PartyName101"
}
},
{
"role": "service provider2",
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2"
}
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "vat",
"name": "Home Account",
"@type": "BillingAccount",
"billStructure": {
"payType": "invoice",
"name": "BI_NAME405",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"id": "billing-account-strucuture-post-003",
"@type": "BillStructure",
"format": {
"name": "Summary Invoice-test-id",
"id": "test3",
"href": "https://host:port/brm/accountManagement/v5/billFormat/test3",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"name": "",
"id": "test4",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/test4",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+310659",
"name": "",
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
}
]
},
{
"id": "0.0.0.1+-balance_group+308099",
"name": "",
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500.0,
"creditLimit": 1000.0
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 1000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
}
]
}
],
"presentationMedia": [
{
"name": "Post Mail-1",
"id": "0.0.0.1+-config-bill_presentation_media+182304",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+182304",
"@type": "BillPresentationMedia"
},
{
"name": "Electronic-1",
"id": "0.0.0.1+-config-bill_presentation_media+181280",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+181280",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2",
"partyName": "",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "billing-account-post-003",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/billing-account-post-003",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "billing-account-post-003",
"contact": [
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "France",
"street1": "Rue des Canards",
"street2": "test2 blr",
"postCode": "75014",
"company": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "email",
"@type": "PhoneContactMedium",
"phoneNumber": "28412",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"faxNumber": "141231112",
"mediumType": "Fax"
}
],
"@type": "Contact",
"contactType": "primary",
"contactName": "John",
"salutation": ""
},
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "Paris",
"street1": "Rue des Canards",
"street2": "test ind",
"postCode": "75014",
"company": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
}
],
"@type": "Contact",
"contactType": "secondary",
"contactName": "Rachel Douglas",
"salutation": ""
}
],
"customerSegmentList": "",
"locale": "en_US",
"currency": "USD"
}
Example 4: Account with a VAT certificate
This example shows how to create a billing account with a VAT certificate by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount4.json
Request Body
The following example shows the contents of the postBillingAccount4.json file sent as the request body.
{
"@type": "BillingAccount",
"name": "Home Account",
"id": "billing-account-post-003",
"description": "This billing account represents the main household billing structure",
"state": "active",
"accountType": "consumer",
"vatCertificate": "vat",
"creditLimit": {
"unit": "USD",
"value": 1000
},
"billStructure": {
"@type": "BillStructure",
"id": "billing-account-strucuture-post-003",
"name": "BI_NAME405",
"presentationMedia": [
{
"name": "Post Mail-1"
},
{
"name": "Electronic-1"
}
],
"format": {
"id": "test3",
"name": "Summary Invoice-test-id"
},
"cycleSpecification": {
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"frequency": "yearly",
"id": "test4",
"name": "Annual billing-testid",
"paymentDueDateOffset": 3
},
"balanceGroup": [
{
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
],
"isDefault": true
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"dynamicCreditFloor": false,
"creditFloor": -500
}
]
}
]
},
"contact": [
{
"contactType": "secondary",
"contactName": "Rachel Douglas",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"city": "Paris",
"country": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test ind",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IND"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "890128412",
"phoneType": "home"
}
]
},
{
"contactType": "primary",
"contactName": "John",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"country": "France",
"city": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test2 blr",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "28412"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
]
}
],
"relatedParty": [
{
"role": "service provider",
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyId": "PartyId101",
"partyName": "PartyName101"
}
},
{
"role": "service provider2",
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2"
}
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "vat",
"name": "Home Account",
"@type": "BillingAccount",
"billStructure": {
"payType": "invoice",
"name": "BI_NAME405",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"id": "billing-account-strucuture-post-003",
"@type": "BillStructure",
"format": {
"name": "Summary Invoice-test-id",
"id": "test3",
"href": "https://host:port/brm/accountManagement/v5/billFormat/test3",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"name": "",
"id": "test4",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/test4",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+310659",
"name": "",
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
}
]
},
{
"id": "0.0.0.1+-balance_group+308099",
"name": "",
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500.0,
"creditLimit": 1000.0
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 1000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"creditLimit": 10000.0
}
]
}
],
"presentationMedia": [
{
"name": "Post Mail-1",
"id": "0.0.0.1+-config-bill_presentation_media+182304",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+182304",
"@type": "BillPresentationMedia"
},
{
"name": "Electronic-1",
"id": "0.0.0.1+-config-bill_presentation_media+181280",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+181280",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "9947",
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "9948",
"name": "Related Party Name2",
"partyName": "",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "billing-account-post-003",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/billing-account-post-003",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "billing-account-post-003",
"contact": [
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "France",
"street1": "Rue des Canards",
"street2": "test2 blr",
"postCode": "75014",
"company": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "email",
"@type": "PhoneContactMedium",
"phoneNumber": "28412",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"faxNumber": "141231112",
"mediumType": "Fax"
}
],
"@type": "Contact",
"contactType": "primary",
"contactName": "John",
"salutation": ""
},
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "Paris",
"street1": "Rue des Canards",
"street2": "test ind",
"postCode": "75014",
"company": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
},
{
"phoneType": "home",
"@type": "PhoneContactMedium",
"phoneNumber": "890128412",
"mediumType": "Phone"
}
],
"@type": "Contact",
"contactType": "secondary",
"contactName": "Rachel Douglas",
"salutation": ""
}
],
"customerSegmentList": "",
"locale": "en_US",
"currency": "USD"
}
Example 5: Account creation before a product purchase
This example shows how to create a billing account before purchasing a product by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json'-d @postBillingAccount5.json
Request Body
The following example shows the contents of the postBillingAccount5.json file sent as the request body.
{
"@type": "BillingAccount",
"accountType": "consumer",
"billStructure": {
"@type": "BillStructure",
"name": "BI_NAME405",
"format": {
"name": "Summary Invoice-098"
},
"cycleSpecification": {
"billingDateShift": 8,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecification",
"name": "Annual billing-100",
"frequency": "yearly"
},
"id": "billStruct-id-002",
"presentationMedia": [
{
"name": "Post Mail-098"
},
{
"name": "Electronic-098"
}
]
},
"name": "Home Account",
"description": "This billing account represents the main household billing structure",
"state": "active",
"id": "account-with-temp-limit-test-100-002",
"relatedParty": [
{
"partyOrPartyRole": {
"name": "Related Party Name",
"partyName": "PartyName101",
"id": "9947",
"partyId": "PartyId101"
},
"role": "service provider"
},
{
"partyOrPartyRole": {
"name": "Related Party Name2",
"id": "9948"
},
"role": "service provider2"
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"customerSegmentList": "",
"accountNum": "account-with-temp-limit-test-100-002",
"@type": "BillingAccountOracle",
"billStructure": {
"@type": "BillStructureOracle",
"billingSegment": "0",
"balanceGroup": [
{
"isDefault": true,
"name": "",
"id": "0.0.0.1+-balance_group+178736"
}
],
"name": "BI_NAME405",
"format": {
"@type": "BillFormat",
"name": "Summary Invoice-098",
"id": "0.0.0.1+-config-bill_format+177616",
"href": "https://host:port/brm/accountManagement/v5/billFormat/0.0.0.1+-config-bill_format+177616"
},
"cycleSpecification": {
"billingDateShift": 8,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecificationOracle",
"name": "",
"id": "0.0.0.1+-config-bill_cycle_specification+179664",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/0.0.0.1+-config-bill_cycle_specification+179664",
"frequency": "yearly"
},
"id": "billStruct-id-002",
"presentationMedia": [
{
"@type": "BillPresentationMedia",
"name": "Post Mail-098",
"id": "0.0.0.1+-config-bill_presentation_media+176592",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+176592"
},
{
"@type": "BillPresentationMedia",
"name": "Electronic-098",
"id": "0.0.0.1+-config-bill_presentation_media+178640",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+178640"
}
],
"acctSuppressed": false,
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward"
},
"accountType": "consumer",
"brmAccountType": "standard",
"description": "This billing account represents the main household billing structure",
"glSegment": ".",
"relatedParty": [
{
"partyOrPartyRole": {
"@type": "PartyRefOrPartyRoleRef",
"name": "Related Party Name",
"partyName": "PartyName101",
"id": "9947",
"partyId": "PartyId101"
},
"role": "service provider",
"@type": "RelatedPartyRefOrPartyRoleRef"
},
{
"partyOrPartyRole": {
"@type": "PartyRefOrPartyRoleRef",
"name": "Related Party Name2",
"partyName": "",
"id": "9948",
"partyId": ""
},
"role": "service provider2",
"@type": "RelatedPartyRefOrPartyRoleRef"
}
],
"locale": "en_US",
"name": "Home Account",
"currencySecondary": "",
"currency": "USD",
"state": "active",
"id": "account-with-temp-limit-test-100-002",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/account-with-temp-limit-test-100-002"
}
Example 6: Account with consumption rules
This example shows how to create a billing account with consumption rules by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount6.json
Request Body
The following example shows the contents of the postBillingAccount6.json file sent as the request body.
{
"@type": "BillingAccount",
"accountType": "consumer",
"billStructure": {
"@type": "BillStructure",
"balanceGroup": [
{
"isDefault": true,
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
],
"rules": [
{
"unit": "USD",
"consumptionRule": "EST"
},
{
"unit": "CAD",
"consumptionRule": "LST"
}
]
}
],
"name": "BI_NAME405",
"format": {
"name": "Summary Invoice-test-id",
"id": "test3"
},
"cycleSpecification": {
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecification",
"name": "Annual billing-testid",
"id": "test4",
"frequency": "yearly"
},
"id": "billing-account-strucuture-post-rules",
"presentationMedia": [
{
"name": "Post Mail-1"
},
{
"name": "Electronic-1"
}
]
},
"contact": [
{
"contactMedium": [
{
"country": "France",
"stateOrProvince": "IN",
"city": "Paris",
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"geoCode": "IND",
"postCode": "75014",
"street1": "Rue des Canards",
"company": "IN",
"street2": "test ind"
},
{
"emailAddress": "test@oracle.com",
"@type": "EmailContactMedium",
"mediumType": "Email"
},
{
"phoneType": "home",
"phoneNumber": "890128412",
"@type": "PhoneContactMedium",
"mediumType": "Phone"
},
{
"phoneType": "home",
"phoneNumber": "890128412",
"@type": "PhoneContactMedium",
"mediumType": "Phone"
}
],
"contactName": "Rachel Douglas",
"contactType": "secondary"
},
{
"contactMedium": [
{
"country": "France",
"stateOrProvince": "IN",
"city": "France",
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"geoCode": "IN",
"postCode": "75014",
"street1": "Rue des Canards",
"company": "IN",
"street2": "test2 blr"
},
{
"emailAddress": "test@url.com",
"@type": "EmailContactMedium",
"mediumType": "Email"
},
{
"phoneNumber": "28412",
"@type": "PhoneContactMedium",
"mediumType": "Phone"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
],
"contactName": "John",
"contactType": "primary"
}
],
"name": "Home Account",
"description": "This billing account represents the main household billing structure",
"id": "billing-account-post-rules",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"name": "Related Party Name",
"partyName": "PartyName101",
"id": "9947",
"partyId": "PartyId101"
},
"role": "service provider"
},
{
"partyOrPartyRole": {
"name": "Related Party Name2",
"id": "9948"
},
"role": "service provider2"
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"customerSegmentList": "",
"accountNum": "billing-account-post-rules",
"@type": "BillingAccountOracle",
"billStructure": {
"@type": "BillStructureOracle",
"billingSegment": "0",
"balanceGroup": [
{
"isDefault": true,
"name": "",
"limit": [
{
"unit": "USD",
"creditLimit": 10000,
"creditFloor": null,
"dynamicCreditFloor": false
},
{
"unit": "CAD",
"creditFloor": null,
"dynamicCreditFloor": false
}
],
"rules": [
{
"unit": "USD",
"consumptionRule": "EST"
},
{
"unit": "CAD",
"consumptionRule": "LST"
}
],
"id": "0.0.0.1+-balance_group+181104"
}
],
"name": "BI_NAME405",
"format": {
"@type": "BillFormat",
"name": "Summary Invoice-test-id",
"id": "test3",
"href": "https://host:port/brm/accountManagement/v5/billFormat/test3"
},
"cycleSpecification": {
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecificationOracle",
"name": "",
"id": "test4",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/test4",
"frequency": "yearly"
},
"id": "billing-account-strucuture-post-rules",
"presentationMedia": [
{
"@type": "BillPresentationMedia",
"name": "Post Mail-1",
"id": "0.0.0.1+-config-bill_presentation_media+176816",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+176816"
},
{
"@type": "BillPresentationMedia",
"name": "Electronic-1",
"id": "0.0.0.1+-config-bill_presentation_media+178864",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+178864"
}
],
"acctSuppressed": false,
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward"
},
"accountType": "consumer",
"brmAccountType": "standard",
"description": "This billing account represents the main household billing structure",
"glSegment": ".",
"relatedParty": [
{
"partyOrPartyRole": {
"@type": "PartyRefOrPartyRoleRef",
"name": "Related Party Name",
"partyName": "PartyName101",
"id": "9947",
"partyId": "PartyId101"
},
"role": "service provider",
"@type": "RelatedPartyRefOrPartyRoleRef"
},
{
"partyOrPartyRole": {
"@type": "PartyRefOrPartyRoleRef",
"name": "Related Party Name2",
"partyName": "",
"id": "9948",
"partyId": ""
},
"role": "service provider2",
"@type": "RelatedPartyRefOrPartyRoleRef"
}
],
"locale": "en_US",
"contact": [
{
"contactMedium": [
{
"country": "France",
"stateOrProvince": "IN",
"city": "France",
"@type": "GeographicAddressContactMediumOracle",
"mediumType": "PostalAddress",
"geoCode": "IN",
"street1": "Rue des Canards",
"postCode": "75014",
"company": "IN",
"street2": "test2 blr"
},
{
"emailAddress": "test@url.com",
"@type": "EmailContactMedium",
"mediumType": "Email"
},
{
"phoneType": null,
"phoneNumber": "28412",
"@type": "PhoneContactMediumOracle",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
],
"@type": "ContactOracle",
"contactName": "John",
"contactType": "primary",
"salutation": ""
},
{
"contactMedium": [
{
"country": "France",
"stateOrProvince": "IN",
"city": "Paris",
"@type": "GeographicAddressContactMediumOracle",
"mediumType": "PostalAddress",
"street1": "Rue des Canards",
"postCode": "75014",
"company": "IN",
"street2": "test ind"
},
{
"emailAddress": "test@url.com",
"@type": "EmailContactMedium",
"mediumType": "Email"
},
{
"phoneType": "home",
"phoneNumber": "890128412",
"@type": "PhoneContactMediumOracle",
"mediumType": "Phone"
},
{
"phoneType": "home",
"phoneNumber": "890128412",
"@type": "PhoneContactMediumOracle",
"mediumType": "Phone"
}
],
"@type": "ContactOracle",
"contactName": "Rachel Douglas",
"contactType": "secondary",
"salutation": ""
}
],
"name": "Home Account",
"creditLimit": {
"unit": "USD",
"value": 10000
},
"currencySecondary": "",
"currency": "USD",
"state": "active",
"id": "billing-account-post-rules",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/billing-account-post-rules"
}
Example 7: Create an account without an account ID
This example shows how to create a billing account without supplying an account ID by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount7.json
Request Body
The following example shows the contents of the postBillingAccount7.json file sent as the request body.
{
"@type": "BillingAccount",
"accountType": "consumer",
"billStructure": {
"@type": "BillStructure",
"balanceGroup": [
{
"isDefault": true,
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
]
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"creditFloor": -500,
"dynamicCreditFloor": false
}
]
}
],
"name": "Billing Account",
"format": {
"name": "Summary Invoice OOTB"
},
"cycleSpecification": {
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecification",
"name": "Annual billing OOTB",
"frequency": "yearly"
},
"presentationMedia": [
{
"name": "Post Mail OOTB"
},
{
"name": "Electronic OOTB"
}
]
},
"name": "Home Account New Configs",
"description": "This billing account represents the main household billing structure",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"role": "service provider"
},
{
"partyOrPartyRole": {
"name": "Related Party Name2"
},
"role": "service provider2"
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "",
"name": "Home Account New Configs",
"@type": "BillingAccount",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660",
"name": "Billing Account",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"@type": "BillStructure",
"format": {
"id": "0.0.0.1+-config-bill_format+248964",
"href": "https://host:port/brm/accountManagement/v5/billFormat/0.0.0.1+-config-bill_format+248964",
"name": "Summary Invoice OOTB",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"id": "0.0.0.1+-config-bill_cycle_specification+246404",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/0.0.0.1+-config-bill_cycle_specification+246404",
"name": "Annual billing OOTB",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+247684",
"name": "",
"rules": [
{
"unit": "USD",
"consumptionRule": null
}
],
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 10000.0
}
]
},
{
"id": "0.0.0.1+-balance_group+249732",
"name": "",
"rules": [
{
"unit": "CAD",
"consumptionRule": null
},
{
"unit": "USD",
"consumptionRule": null
},
{
"unit": "YES",
"consumptionRule": null
}
],
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500.0,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 1000.0
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 1000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 10000.0
}
]
}
],
"presentationMedia": [
{
"id": "0.0.0.1+-config-bill_presentation_media+247940",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+247940",
"name": "Post Mail OOTB",
"@type": "BillPresentationMedia"
},
{
"id": "0.0.0.1+-config-bill_presentation_media+246916",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+246916",
"name": "Electronic OOTB",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+248900",
"name": "Related Party Name",
"partyName": "PartyName101",
"@type": "PartyRefOrPartyRoleRef",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+246340",
"name": "Related Party Name2",
"partyName": "",
"@type": "PartyRefOrPartyRoleRef",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "0.0.0.1+-account+248452",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/0.0.0.1+-account+248452",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "0.0.0.1-248452",
"customerSegmentList": "",
"locale": "en_US",
"creditLimit": {
"unit": "USD",
"value": 10000.0
},
"currency": "USD"
}
Example 8: Create an account without a bill structure ID
This example shows how to create a billing account without supplying a bill structure ID by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount8.json
Request Body
The following example shows the contents of the postBillingAccount8.json file sent as the request body.
{
"@type": "BillingAccount",
"accountType": "consumer",
"billStructure": {
"@type": "BillStructure",
"balanceGroup": [
{
"isDefault": true,
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
]
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"creditFloor": -500,
"dynamicCreditFloor": false
}
]
}
],
"name": "Billing Account",
"format": {
"name": "Summary Invoice OOTB"
},
"cycleSpecification": {
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"@type": "BillingCycleSpecification",
"name": "Annual billing OOTB",
"frequency": "yearly"
},
"presentationMedia": [
{
"name": "Post Mail OOTB"
},
{
"name": "Electronic OOTB"
}
]
},
"name": "Home Account New Configs",
"description": "This billing account represents the main household billing structure",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"name": "Related Party Name",
"partyName": "PartyName101",
"partyId": "PartyId101"
},
"role": "service provider"
},
{
"partyOrPartyRole": {
"name": "Related Party Name2"
},
"role": "service provider2"
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "",
"name": "Home Account New Configs",
"@type": "BillingAccount",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660",
"name": "Billing Account",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"@type": "BillStructure",
"format": {
"id": "0.0.0.1+-config-bill_format+248964",
"href": "https://host:port/brm/accountManagement/v5/billFormat/0.0.0.1+-config-bill_format+248964",
"name": "Summary Invoice OOTB",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"id": "0.0.0.1+-config-bill_cycle_specification+246404",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/0.0.0.1+-config-bill_cycle_specification+246404",
"name": "Annual billing OOTB",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+247684",
"name": "",
"rules": [
{
"unit": "USD",
"consumptionRule": null
}
],
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 10000.0
}
]
},
{
"id": "0.0.0.1+-balance_group+249732",
"name": "",
"rules": [
{
"unit": "CAD",
"consumptionRule": null
},
{
"unit": "USD",
"consumptionRule": null
},
{
"unit": "YES",
"consumptionRule": null
}
],
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500.0,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 1000.0
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 1000.0
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0.0,
"creditThreshold": 0.0,
"creditLimit": 10000.0
}
]
}
],
"presentationMedia": [
{
"id": "0.0.0.1+-config-bill_presentation_media+247940",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+247940",
"name": "Post Mail OOTB",
"@type": "BillPresentationMedia"
},
{
"id": "0.0.0.1+-config-bill_presentation_media+246916",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+246916",
"name": "Electronic OOTB",
"@type": "BillPresentationMedia"
}
]
},
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+248900",
"name": "Related Party Name",
"partyName": "PartyName101",
"@type": "PartyRefOrPartyRoleRef",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+246340",
"name": "Related Party Name2",
"partyName": "",
"@type": "PartyRefOrPartyRoleRef",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "0.0.0.1+-account+248452",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/0.0.0.1+-account+248452",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "0.0.0.1-248452",
"customerSegmentList": "",
"locale": "en_US",
"creditLimit": {
"unit": "USD",
"value": 10000.0
},
"currency": "USD"
}
Example 9: Create an account with an account relationship
This example shows how to create a billing account with an account relationship by submitting a POST request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the sample request body file.
curl -X POST 'http://hostname:port/brm/accountManagement/v5/billingAccount' -H 'Content-Type: application/json' -d @postBillingAccount9.json
Request Body
The following example shows the contents of the postBillingAccount9.json file sent as the request body.
{
"@type": "BillingAccount",
"name": "Home Account",
"description": "This billing account represents the main household billing structure",
"state": "active",
"accountType": "consumer",
"billStructure": {
"@type": "BillStructure",
"name": "BI_NAME405",
"presentationMedia": [
{
"name": "Post Mail"
},
{
"name": "Electronic"
}
],
"format": {
"name": "Summary Invoice-test-id"
},
"cycleSpecification": {
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"frequency": "yearly",
"name": "Annual billing-testid",
"paymentDueDateOffset": 3
},
"balanceGroup": [
{
"limit": [
{
"unit": "USD",
"creditLimit": 10000
}
],
"isDefault": true
},
{
"limit": [
{
"unit": "USD",
"creditLimit": 1000
},
{
"unit": "YES",
"creditLimit": 10000
},
{
"unit": "CAD",
"creditLimit": 1000,
"dynamicCreditFloor": false,
"creditFloor": -500
}
]
}
]
},
"contact": [
{
"contactType": "primary",
"contactName": "child-billunit",
"contactMedium": [
{
"@type": "GeographicAddressContactMedium",
"mediumType": "PostalAddress",
"country": "France",
"city": "France",
"postCode": "75014",
"street1": "Rue des Canards",
"street2": "test2 blr",
"company": "IN",
"stateOrProvince": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"mediumType": "Email",
"emailAddress": "test@oracle.com"
},
{
"@type": "PhoneContactMedium",
"mediumType": "Phone",
"phoneNumber": "28412"
},
{
"@type": "FaxContactMedium",
"mediumType": "Fax",
"faxNumber": "141231112"
}
]
}
],
"accountRelationship": [
{
"relationshipType": "Parent",
"billStructure": {
"name": "BI_NAME405"
},
"account": {
"id": "0.0.0.1+-account+248452",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660"
}
}
},
{
"relationshipType": "AR",
"billStructure": {
"name": "BI_NAME405"
},
"account": {
"id": "0.0.0.1+-account+248452",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660"
}
}
}
],
"relatedParty": [
{
"role": "service provider",
"partyOrPartyRole": {
"name": "Related Party Name",
"partyId": "PartyId101",
"partyName": "PartyName101"
}
},
{
"role": "service provider2",
"partyOrPartyRole": {
"name": "Related Party Name2"
}
}
]
}
Response Body
If successful, the response code 201 is returned with the following response body.
{
"vatCertificate": "",
"name": "Home Account",
"@type": "BillingAccount",
"billStructure": {
"id": "0.0.0.1+-bill_structure+247492",
"name": "BI_NAME405",
"businessProfileId": "0.0.0.0++0",
"actgType": "balance_forward",
"billingSegment": "0",
"@type": "BillStructure",
"format": {
"id": "0.0.0.1+-config-bill_format+245956",
"href": "https://host:port/brm/accountManagement/v5/billFormat/0.0.0.1+-config-bill_format+245956",
"name": "Summary Invoice-test-id",
"@type": "BillFormat"
},
"acctSuppressed": false,
"cycleSpecification": {
"id": "0.0.0.1+-config-bill_cycle_specification+246404",
"href": "https://host:port/brm/accountManagement/v5/billingCycleSpecification/0.0.0.1+-config-bill_cycle_specification+246404",
"name": "Annual billing OOTB",
"@type": "BillingCycleSpecification",
"billingDateShift": 3,
"paymentDueDateOffset": 3,
"frequency": "yearly"
},
"balanceGroup": [
{
"id": "0.0.0.1+-balance_group+246212",
"name": "",
"rules": [
{
"unit": "USD",
"consumptionRule": null
}
],
"isDefault": true,
"limit": [
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0,
"creditThreshold": 0,
"creditLimit": 10000
}
]
},
{
"id": "0.0.0.1+-balance_group+248260",
"name": "",
"rules": [
{
"unit": "CAD",
"consumptionRule": null
},
{
"unit": "USD",
"consumptionRule": null
},
{
"unit": "YES",
"consumptionRule": null
}
],
"limit": [
{
"unit": "CAD",
"dynamicCreditFloor": false,
"creditFloor": -500,
"overrideCreditLimit": 0,
"creditThreshold": 0,
"creditLimit": 1000
},
{
"unit": "USD",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0,
"creditThreshold": 0,
"creditLimit": 1000
},
{
"unit": "YES",
"dynamicCreditFloor": false,
"creditFloor": null,
"overrideCreditLimit": 0,
"creditThreshold": 0,
"creditLimit": 10000
}
]
}
],
"presentationMedia": [
{
"id": "0.0.0.1+-config-bill_presentation_media+9229",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+9229",
"name": "Post Mail",
"@type": "BillPresentationMedia"
},
{
"id": "0.0.0.1+-config-bill_presentation_media+9102",
"href": "https://host:port/brm/accountManagement/v5/billPresentationMedia/0.0.0.1+-config-bill_presentation_media+9102",
"name": "Electronic",
"@type": "BillPresentationMedia"
}
]
},
"accountRelationship": [
{
"@type": "AccountRelationship",
"billStructure": {
"name": "BI_NAME405"
},
"relationshipType": "AR",
"account": {
"id": "0.0.0.1+-account+248452",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660",
"name": "Billing Account"
}
}
},
{
"@type": "AccountRelationship",
"billStructure": {
"name": "BI_NAME405"
},
"relationshipType": "Parent",
"account": {
"id": "0.0.0.1+-account+248452",
"billStructure": {
"id": "0.0.0.1+-bill_structure+246660",
"name": "Billing Account"
}
}
}
],
"glSegment": ".",
"description": "This billing account represents the main household billing structure",
"accountType": "consumer",
"state": "active",
"relatedParty": [
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+248772",
"name": "Related Party Name",
"partyName": "PartyName101",
"@type": "PartyRefOrPartyRoleRef",
"partyId": "PartyId101"
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider"
},
{
"partyOrPartyRole": {
"id": "0.0.0.1+-profile-related_party+247748",
"name": "Related Party Name2",
"partyName": "",
"@type": "PartyRefOrPartyRoleRef",
"partyId": ""
},
"@type": "RelatedPartyRefOrPartyRoleRef",
"role": "service provider2"
}
],
"id": "0.0.0.1+-account+248004",
"href": "https://host:port/brm/accountManagement/v5/billingAccount/0.0.0.1+-account+248004",
"brmAccountType": "standard",
"currencySecondary": "",
"accountNum": "0.0.0.1-248004",
"contact": [
{
"contactMedium": [
{
"stateOrProvince": "IN",
"@type": "GeographicAddressContactMedium",
"country": "France",
"mediumType": "PostalAddress",
"city": "France",
"street1": "Rue des Canards test2 blr",
"postCode": "75014",
"company": "IN",
"geoCode": "IN"
},
{
"@type": "EmailContactMedium",
"emailAddress": "test@oracle.com",
"mediumType": "Email"
},
{
"phoneType": null,
"@type": "PhoneContactMedium",
"phoneNumber": "28412",
"mediumType": "Phone"
},
{
"phoneType": "fax",
"@type": "FaxContactMedium",
"faxNumber": "141231112",
"mediumType": "Fax"
}
],
"@type": "Contact",
"contactType": "primary",
"contactName": "child-billunit",
"salutation": ""
}
],
"customerSegmentList": "",
"locale": "en_US",
"creditLimit": {
"unit": "USD",
"value": 10000
},
"currency": "USD"
}