Update a Customer Bill
/customerBill/{id}
Request
-
id(required): string
The bill number or ID of the customer bill to update.
- application/json;charset=utf-8
objectCustomer Bill Update-
@baseType: string
Title:
Base TypeThe object's superclass. -
@schemaLocation: string
(uri)
Title:
Schema LocationA URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
state: string
Title:
State ValueAllowed Values:[ "new", "partiallyPaid", "settled", "onHold", "inProgress" ]The possible values for a bill's state: new, partiallyPaid, settled, onHold, and inProgress.
Response
- application/json;charset=utf-8
200 Response
objectCustomer Bill-
@baseType: string
Title:
Base TypeThe object's superclass. -
@schemaLocation: string
(uri)
Title:
Schema LocationA URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
amountDue(required): object
Money
The base / value business entity used to represent money.
-
appliedPayment: array
appliedPayment
The payments applied to the bill.
-
billDate(required): string
(date-time)
Title:
Bill DateThe date the bill was generated. -
billDocument: array
billDocument
A document attached to the bill.
-
billingAccount: object
Billing Account Ref
Title:
Billing Account RefA billing account is a detailed description of a bill structure. -
billingPeriod: object
TimePeriod
The period of time, either as a deadline (endDateTime only) a startDateTime only, or both.
-
billNo: string
Title:
Bill NumberThe bill's number. -
category: string
Title:
Bill CategoryThe bill's category. For example: normal, duplicate, interim, or last. -
financialAccount: object
Financial Account Ref
Title:
Financial Account RefA financial account reference. -
href(required): string
Title:
Bill HrefThe bill's href. -
id(required): string
Title:
Bill IDThe bill ID, or the bill number. -
lastUpdate: string
(date-time)
Title:
Bill Last Updated DateThe date that the bill was last updated. -
nextBillDate: string
(date-time)
Title:
Next Bill DateThe date the next bill will be generated. -
paymentDueDate(required): string
(date-time)
Title:
Payment Due DateThe bill's due date. -
paymentMethod: object
PaymentMethodRef
The PaymentMethod reference. A payment method defines a specific means of payment, such as direct debit.
- relatedParty: array relatedParty
-
remainingAmount: object
Money
The base / value business entity used to represent money.
-
runType: string
Title:
Bill Run TypeThe way the bill was generated, either onCycle (a regular billing cycle run) or offCycle (an on-demand request. For example: if requested by the customer or if the account closes.) -
state(required): string
Title:
State ValueAllowed Values:[ "new", "partiallyPaid", "settled", "onHold", "inProgress" ]The possible values for a bill's state: new, partiallyPaid, settled, onHold, and inProgress. -
taxExcludedAmount: object
Money
The base / value business entity used to represent money.
-
taxIncludedAmount: object
Money
The base / value business entity used to represent money.
-
taxItem: array
taxItem
The taxes on the bill.
object-
unit: string
The currency (ISO4217 norm uses 3 letters to define the currency).
-
value: number
(float)
The signed floating point number, the meaning of the sign is according to the context of the API that uses this Data type
array-
Array of:
object Applied Payment
Title:
Applied PaymentA payment that can be assigned to a bill.
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "Attachment":"#/components/schemas/Attachment", "AttachmentRef":"#/components/schemas/AttachmentRef" } }The polymorphic attributes @type, @schemaLocation, and @referredType are related to the Attachment entity and not the AttachmentRefOrValue class itself.
objectBilling Account Ref-
@baseType: string
The super-class when sub-classing.
-
@referredType: string
The actual type of the target instance when needed for disambiguation.
-
@schemaLocation: string
(uri)
A URI to a JSON-schema file that defines additional attributes and relationships.
-
@type: string
The sub-class entity name when sub-classing.
-
accountNumber: string
The account number.
-
href: string
A reference for the billing account.
-
id: string
The billing account ID or billing account number.
-
name: string
The name of the billing account.
object-
endDateTime: string
(date-time)
The end of the time period, using IETC-RFC-3339 format.Example:
1985-04-12T23:20:50.52Z -
startDateTime: string
(date-time)
The start of the time period, using IETC-RFC-3339 format.Example:
1985-04-12T23:20:50.52Z
objectFinancial Account Ref-
@baseType: string
Title:
Base TypeThe object's superclass. -
@referredType: string
Title:
Referred TypeThe object's type in the target system. If baseType and type, need further disambiguation. -
@schemaLocation: string
(uri)
Title:
Schema LocationA URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
accountBalance: array
accountBalance
The account's balances.
-
href: string
Title:
Financial Account HrefThe account's href. -
id(required): string
Title:
Financial Account IDThe account's ID. -
name: string
Title:
Financial Account NameThe account's name.
objectarray-
Array of:
object State Values
Title:
State ValuesA tax item.
objectApplied Payment-
@baseType: string
Title:
Base TypeThe object's superclass. -
@schemaLocation: string
(uri)
Title:
Schema LocationThe URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
appliedAmount: object
Money
The base / value business entity used to represent money.
-
payment: object
PaymentRef
A payment received at order time.
object-
@baseType: string
The object's superclass.
-
@referredType: string
The object's type in the target system, if baseType and type need further disambiguation.
-
@schemaLocation: string
(uri)
A URI to a JSON schema file that defines additional attributes and relationships.
-
@type: string
The object's subclass.
-
href: string
(uri)
The payment's href.
-
id(required): string
The payment's ID.
-
name: string
The payment's name.
objectDiscriminator Values
-
object
allOf
Entity
The Base entity schema for use in TMForum Open-APIs Property.
-
object
Attachment-allOf[1]
The complementary description of an element (for instance a product) through video, pictures, etc.
-
allOf
EntityRef
-
object
AttachmentRef-allOf[1]
The attachment reference. An attachment complements the description of an element (for instance a product) through video, pictures.
object-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Addressable
The base schema for adressable entities.
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
href: string
The hyperlink reference.
-
id: string
The unique identifier.
object-
attachmentType: string
The business characterization of the purpose of the attachment, for example, the logo, instructionManual, contractCopy.
-
content: string
(base64)
The actual contents of the attachment object, if embedded, encoded as base64.
-
description: string
The narrative text describing the content of the attachment.Example:
Photograph of the Product -
mimeType: string
The technical characterization of the attachment content format using IETF Mime Types.
-
name: string
The name of the attachment.
-
size: object
Quantity
The amount in a given unit.
-
url: string
The Uniform Resource Locator is a web page address (a subset of URI).Example:
http://host/Content/4aafacbd-11ff-4dc8-b445-305f2215715f -
validFor: object
TimePeriod
The period of time, either as a deadline (endDateTime only) a startDateTime only, or both.
object-
amount: number
(float)
Default Value:
1The numeric value in a given unit. -
units: string
The unit.
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Addressable
The base schema for adressable entities.
-
object
EntityRef-allOf[2]
The entity reference schema to be use for all entityRef class.
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 name of the referred entity.
object-
description: string
The narrative text describing the content of the attachment.
-
url: string
The link to the attachment media/content.
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
AccountBalance-allOf[1]
The balances linked to the account.
object-
amount: object
Money
The base / value business entity used to represent money.
-
balanceType: string
The type of the balance, for example, deposit balance, disputed balance, loyalty balance, receivable balance.
-
delayedBal: string
The delayed balance.
-
grantedBal: string
The granted balance.
-
id: string
The identifier of the balance within the list of balances.
-
nextBal: string
The next balance.
-
validFor: object
TimePeriod
The period of time, either as a deadline (endDateTime only) a startDateTime only, or both.
objectRelated Party Ref-
@baseType: string
Title:
Base TypeThe object's superclass. -
@referredType: string
Title:
Referred TypeThe object's type in the target system. If baseType and type, need further disambiguation. -
@schemaLocation: string
(uri)
Title:
Schema LocationThe URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
href: string
Title:
Related Party HrefThe related party's href. -
id(required): string
Title:
Related Party IDThe related party's ID. -
name: string
Title:
Related Party NameThe related party's name. -
role: string
Title:
Related Party RoleThe related party's role.
objectState Values-
@baseType: string
Title:
Base TypeThe object's superclass. -
@schemaLocation: string
(uri)
Title:
Schema LocationThe URI to a JSON schema file that defines additional attributes and relationships. -
@type: string
Title:
TypeThe object's subclass. -
taxAmount: object
Money
The base / value business entity used to represent money.
-
taxCategory: string
Title:
Tax CategoryThe tax item's category. -
taxRate: number
(float)
Title:
Tax RateThe tax item's applied rate.
400 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
401 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
403 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
404 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
405 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
409 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
500 Response
-
object
Extensible
The Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
-
object
Error-allOf[1]
object-
@baseType: string
The defines the super-class when sub-classing.
-
@schemaLocation: string
The URI to a JSON-Schema file that defines additional attributes and relationships
-
@type(required): string
The definition of the sub-class extensible name, when sub-classing.
object-
code(required): string
The application relevant detail, defined in the API or a common list.
-
message: string
The details and corrective actions related to the error which can be shown to a client user.
-
reason(required): string
The explanation of the reason for the error which can be shown to a client user.
-
referenceError: string
The URI of documentation describing the error.
-
status: string
The HTTP Error code extension
Examples
Example 1: Update a Customer Bill by Billing POID
The following example shows how to update the state of a customer bill by submitting a PATCH request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the file to attach as the request body.
curl -X PATCH 'http://host:port/brm/customerBillManagement/version/customerBill/0.0.0.1+-bill+106861' -d @billUpdate.json
Example of Request Body
The following is an example of the contents of the billUpdate.json file sent as the request body. You can only use the PATCH method to update the bill state from InProgress to OnHold, or from OnHold to InProgress.
{
"state": "OnHold",
"@baseType": "CustomerBill",
"@schemaLocation": null,
"@type": "CustomerBill"
}
Example of Response Body
The following is an example of the response body in JSON format.
{
"id": "0.0.0.1+-bill+106861",
"href": "http://host:port/brm/customerBillManagement/version/customerBill/0.0.0.1+-bill+106861",
"billDate": null,
"billNo": "bill in progress",
"category": "0",
"lastUpdate": "2025-05-02T01:14:13-07:00",
"nextBillDate": "2025-06-13T00:00:00-07:00",
"paymentDueDate": "2025-08-01T01:05:29-07:00",
"runType": "onCycle",
"amountDue": {
"unit": "EUR",
"value": 90.0
},
"appliedPayment": null,
"billDocument": null,
"billingAccount": {
"id": "0.0.0.1+-account+107117",
"href": null,
"name": "Tanya Levy",
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": "billingAccount"
},
"billingPeriod": {
"endDateTime": null,
"startDateTime": "2024-05-02T00:00:00-07:00"
},
"financialAccount": {
"id": "0.0.0.1+-account+107117",
"href": null,
"name": "Tanya Levy",
"accountBalance": null,
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": "financialAccount"
},
"paymentMethod": {
"id": "0.0.0.1+-payinfo-invoice+109165",
"href": null,
"name": "4243324",
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": null
},
"relatedParty": null,
"remainingAmount": {
"unit": "EUR",
"value": 90.0
},
"state": "OnHold",
"taxExcludedAmount": {
"unit": "EUR",
"value": 86.0
},
"taxIncludedAmount": {
"unit": "EUR",
"value": 90.0
},
"taxItem": null,
"@baseType": "CustomerBill",
"@schemaLocation": null,
"@type": "CustomerBill"
}
Example 2: Update a Customer Bill by Bill Number
The following example shows how to update the state of a customer bill by submitting a PATCH request on the REST resource using cURL. For more information about cURL, see Use cURL.
The -d option specifies the file to attach as the request body.
curl -X PATCH 'http://host:port/brm/customerBillManagement/version/customerBill/Bill-123' -d @billUpdate.json
Example of Request Body
The following is an example of the contents of the billUpdate.json file sent as the request body. You can only use the PATCH method to update the bill state from InProgress to OnHold, and from OnHold to InProgress.
{
"state": "InProgress",
"@baseType": "CustomerBill",
"@schemaLocation": null,
"@type": "CustomerBill"
}
Example of Response Body
The following is an example of the response body in JSON format.
{
"id": "Bill-123",
"href": "http://host:port/brm/customerBillManagement/version/customerBill/Bill-123",
"billDate": null,
"billNo": "Bill-123",
"category": "0",
"lastUpdate": "2025-05-02T01:14:13-07:00",
"nextBillDate": "2025-06-13T00:00:00-07:00",
"paymentDueDate": "2025-08-01T01:05:29-07:00",
"runType": "onCycle",
"amountDue": {
"unit": "USD",
"value": 146.0
},
"appliedPayment": null,
"billDocument": null,
"billingAccount": {
"id": "0.0.0.1+-account+107117",
"href": null,
"name": "Mary Carter",
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": "billingAccount"
},
"billingPeriod": {
"endDateTime": null,
"startDateTime": "2024-05-02T00:00:00-07:00"
},
"financialAccount": {
"id": "0.0.0.1+-account+107117",
"href": null,
"name": "Mary Carter",
"accountBalance": null,
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": "financialAccount"
},
"paymentMethod": {
"id": "0.0.0.1+-payinfo-invoice+109165",
"href": null,
"name": "4243324",
"@baseType": null,
"@schemaLocation": null,
"@type": null,
"@referredType": null
},
"relatedParty": null,
"remainingAmount": {
"unit": "USD",
"value": 50.0
},
"state": "InProgress",
"taxExcludedAmount": {
"unit": "USD",
"value": 15.0
},
"taxIncludedAmount": {
"unit": "USD",
"value": 12.0
},
"taxItem": null,
"@baseType": "CustomerBill",
"@schemaLocation": null,
"@type": "CustomerBill"
}