For every single of operation on the entities use the following templates and provide sample REST requests and responses.
Remember that the following Uniform Contract rules must be used :

Operation on Entities

Uniform API Operation

Description

Query Entities

GET Resource

GET must be used to retrieve a representation of a resource.

Create Entity

POST Resource

POST must be used to create a new resource

Partial Update of an Entity

PATCH Resource

PATCH must be used to partially update a resource

Complete Update of an Entity

PUT Resource

PUT must be used to completely update a resource identified by its resource URI

Remove an Entity

DELETE Resource

DELETE must be used to remove a resource

Execute an Action on an Entity

POST on TASK Resource

POST must be used to execute Task Resources

Other Request Methods

POST on TASK Resource

GET and POST must not be used to tunnel other request methods.


Filtering and attribute selection rules are described in the TMF REST Design Guidelines.
Notifications are also described in a subsequent section.

GET /customerManagement/customer/{ID}

Note that collections can be retrieved via GET /customerManagement/customer without ID. In that case an array of customers is returned.
Description:

Behavior:

Behavior:

The below query pattern can be used to modify all the data for a single customer, if an attribute is not provided, the value of the attribute is deleted:

REQUEST

PUT /customerManagement/customer/{ID}
Content-type: application/json
{
"id": "c1234",
"href": "http://serverlocation:port/customerManagement/customer/c1234",
"name": "DisplayName",
"status": "Active",
"description": "Description string",
"validFor": {
"startDateTime": "2013-06-19T04:00:00.0Z",
"endDateTime": "2013-04-19T20:42:23.0Z"
},
"customerRank": "3",
"relatedParty": {
"id": "1",
"href": "http://serverlocation:port/partyManagement/individual/1",
"role": "customer",
"name": "John Doe"
},
"characteristic": [
{
"name": "characteristicname1",
"value": "characteristicvalue1"
},
{
"name": "characteristicname2",
"value": "characteristicvalue2"
}
],
"contactMedium": [
{
"type": "Email",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"emailAddress": "[email protected]"
}
},
{
"type": "PostalAddress",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"city": "Wien",
"country": "Austria",
"postcode": "1020",
"stateOrProvince": "Quebec",
"street1": "Lassallestrasse7",
"street2": ""
}
},
{
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "mobile",
"number": "+436641234567"
}
},
{
"preferred": true,
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "business",
"number": "+436641234567"
}
}
],
"customerAccount": [
{
"id": "1",
"href": "http://serverlocation:port/customerManagement/customerAccount/1",
"name": "CustomerAccount1",
"description": "CustomerAccountDesc1",
"accountStatus": "Active"
},
{
"id": "2",
"href": "http://serverlocation:port/customerManagement/customerAccount/2",
"name": "CustomerAccount2",
"description": "CustomerAccountDesc2",
"accountStatus": "Active"
}
],
"customerCreditProfile": [
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
},
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
}
],
"paymentMean": [
{
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"name": "my favourite payment mean"
},
{
"id": "64",
"href": "http://serverlocation:port/customerManagement/paymentMean/64",
"name": "my credit card payment mean"
}
]
}

RESPONSE

Status: 200
Content-Type: application/json

PATCH API/customerManagement/customer/{ID}

This Uniform Contract operation is used to partially update the representation of a managed entity or a task.
Description:

Behavior:

Patchable attributes:

Attribute name

Patchable

Rule

id

N

 

name

Y

 

status

Y

 

description

Y

 

validFor

Y

 

customerRank

Y

 

relatedParty

Y

 

characteristic

Y

 

contactMedium

Y

 

customerAccount

Y

 

customerCreditProfile

Y

 

paymentMean

Y

 


Rules:

Rule name

Rule/Pre Condition/Side Effects/Post Conditions

party

id is mandatory

characteristic

name and value are mandatory

contactMedium

type and medium are mandatory

customerAccount

id, name and accountStatus are mandatory

customerCreditProfile

creditProfileDate and validFor are mandatory

paymentMean

Id, href are mandatory


Update of single attributes. In the following the name and the customerRank are updated. The request just consists of the two attributes with its new values. The response includes all attributes.

REQUEST

PATCH /customerManagement/customer/c1234
Content-type: application/json
{
"name": "New Name to display",
"customerRank": 780
}

RESPONSE

Status: 200
Content-Type: application/json
{
"id": "c1234",
"href": "http://serverlocation:port/customerManagement/customer/c1234",
"name": "New Name to display",
"status": "Active",
"description": "Description string",
"validFor": {
"startDateTime": "2013-06-19T04:00:00.0Z",
"endDateTime": "2013-04-19T20:42:23.0Z"
},
"customerRank": "780",
"relatedParty": {
"id": "1",
"href": "http://serverlocation:port/partyManagement/individual/1",
"role": "customer",
"name": "John Doe"
},
"characteristic": [
{
"name": "characteristicname1",
"value": "characteristicvalue1"
},
{
"name": "characteristicname2",
"value": "characteristicvalue2"
}
],
"contactMedium": [
{
"type": "Email",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"emailAddress": "[email protected]"
}
},
{
"type": "PostalAddress",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"city": "Wien",
"country": "Austria",
"postcode": "1020",
"stateOrProvince": "Quebec",
"street1": "Lassallestrasse7",
"street2": ""
}
},
{
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "mobile",
"number": "+436641234567"
}
},
{
"preferred": true,
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "business",
"number": "+436641234567"
}
}
],
"customerAccount": [
{
"id": "1",
"href": "http://serverlocation:port/customerManagement/customerAccount/1",
"name": "CustomerAccount1",
"description": "CustomerAccountDesc1",
"accountStatus": "Active"
},
{
"id": "2",
"href": "http://serverlocation:port/customerManagement/customerAccount/2",
"name": "CustomerAccount2",
"description": "CustomerAccountDesc2",
"accountStatus": "Active"
}
],
"customerCreditProfile": [
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
},
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
}
],
"paymentMean": [
{
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"name": "my favourite payment mean"
},
{
"id": "64",
"href": "http://serverlocation:port/customerManagement/paymentMean/64",
"name": "my credit card payment mean"
}
]
}


PATCH update for an array

REQUEST

PATCH /customerManagement/customer/c1234
Content-type: application/json-patch+json
{
"op": "add",
"path": "/customer/contactMedium",
"value": {
"contactMedium": [
{
"type": "PostalAddress",
"medium": {
"street1": "Lassallestrasse7",
"street2": "",
"postcode": "1020",
"stateOrProvince": "Quebec",
"city": "Wien",
"country": "Austria"
}
}
]
}
}

RESPONSE

Status: 200
Content-Type: application/json
{
"id": "c1234",
"href": "http://serverlocation:port/customerManagement/customer/c1234",
"name": "DisplayName",
"status": "Active",
"description": "Description string",
"validFor": {
"startDateTime": "2013-06-19T04:00:00.0Z",
"endDateTime": "2013-04-19T20:42:23.0Z"
},
"customerRank": "3",
"relatedParty": {
"id": "1",
"href": "http://serverlocation:port/partyManagement/individual/1",
"role": "customer",
"name": "John Doe"
},
"characteristic": [
{
"name": "characteristicname1",
"value": "characteristicvalue1"
},
{
"name": "characteristicname2",
"value": "characteristicvalue2"
}
],
"contactMedium": [
{
"type": "Email",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"emailAddress": "[email protected]"
}
},
{
"type": "PostalAddress",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"city": "Wien",
"country": "Austria",
"postcode": "1020",
"stateOrProvince": "Quebec",
"street1": "Lassallestrasse7",
"street2": ""
}
},
{
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "mobile",
"number": "+436641234567"
}
},
{
"preferred": true,
"type": "TelephoneNumber",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z"
},
"medium": {
"type": "business",
"number": "+436641234567"
}
}
],
"customerAccount": [
{
"id": "1",
"href": "http://serverlocation:port/customerManagement/customerAccount/1",
"name": "CustomerAccount1",
"description": "CustomerAccountDesc1",
"accountStatus": "Active"
},
{
"id": "2",
"href": "http://serverlocation:port/customerManagement/customerAccount/2",
"name": "CustomerAccount2",
"description": "CustomerAccountDesc2",
"accountStatus": "Active"
}
],
"customerCreditProfile": [
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
},
{
"creditProfileDate": "2013-04-19T20:42:23.0Z",
"validFor": {
"startDateTime": "2013-04-19T20:42:23.0Z",
"endDateTime": "2013-06-19T04:00:00.0Z"
},
"creditRiskRating": 1,
"creditScore": 1
}
],
"paymentMean": [
{
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"name": "my favourite payment mean"
},
{
"id": "64",
"href": "http://serverlocation:port/customerManagement/paymentMean/64",
"name": "my credit card payment mean"
}
]
}

POST /customerManagement/customer

This Uniform Contract operation is used to create a customer.
Description:

Behavior:

Behavior:

 

REQUEST

DELETE /customerManagement/customer/c1234
Content-type: application/json

RESPONSE

Status:204

GET customerManagement/customerAccount/{ID}

Note that collections can be retrieved via GET /customerManagement /customerAccount with no {ID}
Description :

Behavior :

Examples: Get request with one customer including all attributes in the response. Filtering and attribute selection is described in the examples following.

REQUEST

GET /customerManagement/customerAccount/{ID}/?{fields=attributes}&{filtering expression}
Accept: application/json

RESPONSE

{
"id": "ca1234",
"href": "http://serverlocation:port/customerManagement/customerAccount/ca1234",
"lastModified": "2014-09-24T18:27:37.059899Z",
"name": "sampleaccount",
"accountType": "Residential",
"status": "Active",
"description": "Description string",
"creditLimit": 1212121,
"pin": "pin0",
"receivableBalance": 52.3,
"customerAccountTaxExemption": [
{
"issuingJurisdiction": "SampleJurisdiction",
"certificateNumber": "CATaxExemption1",
"reason": "Reason",
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
}
},
{
"issuingJurisdiction": "SampleJurisdiction",
"certificateNumber": "CATaxExemption1",
"reason": "Reason",
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
}
}
],
"customerAccountRelationship": [
{
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"customerAccount": [
{
"id": "1",
"href": "http://serverlocation:port/customerManagement/customerAccount/1",
"name": "CustomerAccount1",
"description": "CustomerAccountDesc1"
}
]
}
],
"contact": [
{
"contactType": "primary",
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"contactName": "DisplayName",
"partyRoleType": "CustomerAccountRepresentative",
"contactMedium": [
{
"type": "Email",
"medium": {
"emailAddress": "[email protected]"
}
},
{
"type": "PostalAddress",
"medium": {
"city": "Wien",
"country": "Austria",
"postcode": "1020",
"stateOrProvince": "Quebec",
"street1": "Lassallestrasse7"
}
},
{
"type": "TelephoneNumber",
"medium": {
"type": "mobile",
"number": "+436641234567"
}
},
{
"preferred": true,
"type": "TelephoneNumber",
"medium": {
"type": "business",
"number": "+436641234567"
}
}
],
"relatedParty": {
"id": "1",
"href": "http://serverlocation:port/partyManagement/individual/1",
"role": "customer"
}
}
],
"customer": {
"id": "1",
"href": "http://serverlocation:port/customerManagement/customer/1",
"name": "Customer1",
"description": "CustomerDesc1"
},
"customerAccountBalance": [
{
"type": "ReceivableBalance",
"amount": 52.3,
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"status": "Due"
},
{
"type": "DepositBalance",
"amount": 52.3,
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"status": "Paid"
}
],
"paymentPlan": [
{
"status": "Effective",
"type": "Type1",
"priority": 1,
"amount": 15.3,
"paymentFrequency": "monthly",
"numberOfPayments": 4,
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"paymentMean": {
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"description": "My favourite payment mean"
}
},
{
"status": "Ineffective",
"type": "Type2",
"priority": 2,
"amount": 20,
"paymentFrequency": "monthly",
"numberOfPayments": 2,
"validFor": {
"startDateTime": "2013-04-19T16:42:23.0Z",
"endDateTime": "2013-06-19T00:00:00.0Z"
},
"paymentMean": {
"id": "70",
"href": "http://serverlocation:port/customerManagement/paymentMean/70",
"name": "my credit card payment mean"
}
}
]
}


In order to address a specific query a list of customer, with only a subset of the attributes in the response, the query pattern would look like the following:

REQUEST

GET /customerManagement/customerAccount/?fields=name,id,accountType,status, creditLimit,pin&accountType="residential"
Accept: application/json

RESPONSE for Customer Account

Status:200
Content-Type: application/json
[
{
"id": "ca1234",
"name": "sampleaccount",
"accountType": "Residential",
"status": "Active",
"creditLimit": 1212121,
"pin": "pin0"
}, {
"id": "badasf1234",
"name": "sampleaccount 2",
"accountType": "Residential",
"status": "Active",
"creditLimit": 1212121,
"pin": "pin0"
}
]


In order to address a specific query against the Primary customer account (having an id) of an hierarchical account structure and also to reflect the hierarchy, the query pattern in this case would be as follows:

REQUEST

GET /customerManagement/customerAccount/ca1234?fields=name,id,accountType, accountStatus,creditLimit,pin,customerAccountRelationship

RESPONSE for Customer Account

{
"id": "ca1234",
"name": "sampleaccount",
"accountType": "Residential",
"status": "Active",
"creditLimit": 1212121,
"pin": "pin0",
"customerAccountRelationship": [
{
"relationshipType": "linked",
"validFor": {
"startDateTime": "2013-04-19T16:42:23-04:00",
"endDateTime": ""
},
"customerAccount": {
"id": "ca1235",
"href": "http://serverlocation:port/customerManagement/customerAccount/ca1235",
"name": "sampleaccount2",
"description": "Description sampleaccount2"
}
}
]
}


In order to address a specific query against those customer accounts which have been modified after a certain date time, the query pattern in this case would be as follows:

REQUEST

GET /customerManagement/customerAccount/?fields=name,id,accountType, accountStatus,creditLimit,pin,lastModified&lastModified.gt="2013-08-08"
Accept: application/json

RESPONSE for Customer Account

Status:200
Content-Type: application/json
[
{
"id": "ca1234",
"name": "sampleaccount",
"accountType": "Residential",
"status": "Active",
"creditLimit": 1212121,
"pin": "pin0",
"lastModified": "2014-04-19T16:42:23-04:00"
}, {
"id": "ca123345",
"name": "sampleaccount3",
"accountType": "Residential",
"status": "Active",
"creditLimit": 757,
"pin": "pin0",
"lastModified": "2013-04-19T16:42:23-04:00"
}
]

 

PUT customerManagement/customerAccount/{ID}

PUT is not supported for customerAccount as any modification can be handled through PATCH API.

PATCH customerManagement/customerAccount/{ID}

Description :


Behavior :

Note: -The requester cannot update the id. The lastModified attributes is updated automatically in the back-end.

Attribute name

Patchable

Rule

id

N

Cannot be updated from outside

lastModified

N

Is updated automatically

name

Y

 

accountType

Y

 

status

Y

 

description

Y

 

creditLimit

Y

 

pin

Y

 

receivableBalance

Y

 

customerAccountTaxExemption

Y

 

customerAccountRelationship

Y

 

contact

Y

 

customer

Y

 

customerAccountBalance

Y

 

paymentPlan

Y

 

paymentMean

Y

 

Rule name

Rule/Pre Condition/Side Effects/Post Conditions

customerAccountTaxExemption

issuingJurisdiction and validFor are mandatory

customerAccountRelationship

relationshipType and validFor are mandatory

contact

contactType and validFor are mandatory

customer

id and name are mandatory

customerAccountBalance

id, type, amount, validFor and status are mandatory

paymentPlan

id, status, amount, paymentFrequency and validFor as well as paymentMean are mandatory

paymentMean

Id, href are mandatory


Eg: PATCH for adding a new customerAccountTaxExemption to customer account.

REQUEST

PATCH /customerManagement/customerAccount/{ID}
Content-type: application/json-patch+json
{
"op": "add",
"path": "/customerAccount/customerAccountTaxExemption",
"value": {
"issuingJurisdiction": "Sample Jurisdiction",
"certificateNumber": "CA Tax Exemption 3",
"reason": "Reason",
"validFor": {
"startDateTime": "2013-04-19T16:42:23-04:00",
"endDateTime": ""
}
}
}

RESPONSE

Status:200
Content-Type: application/json
{ JSON Resource Representation with every attributes including the added tax exemption }


PATCH of accountType in customerAccount resource

REQUEST

PATCH/customerManagement/customerAccount/ca1234
Content-type: application/json
{
"accountType": "Business"
}

RESPONSE

Status:200
Content-Type: application/json

{ JSON Resource Representation with every attributes including the changed account type }

POST customerManagement/customerAccount/{ID}

Description :

Behavior :

The requester cannot generate the id. The id and lastModified attributes are generated automatically in the back-end.
Required Attributes: Name, AccountType
Read-Only Attributes: id, lastModified, receivableBalance, customerAccountBalance

Attribute name

Mandatory

Default

Rule

id

N

Automatically generated

If not given, the id is generated by the system. It is also possible to add an ID in the POST request, which is then used

lastModified

N

Automatically generated

Cannot be set from outside

name

Y

 

 

accountType

Y

 

 

status

N

 

 

description

N

 

 

creditLimit

N

 

 

pin

N

 

 

receivableBalance

N

 

 

customerAccountTaxExemption

N

 

 

customerAccountRelationship

N

 

 

contact

N

 

 

customer

N

 

 

customerAccountBalance

N

 

 

paymentPlan

N

 

 

paymentMean

N

 

 


Rules:

Rule name

Rule/Pre Condition/Side Effects/Post Conditons

customerAccountTaxExemption

issuingJurisdiction and validFor are mandatory

customerAccountRelationship

relationshipType and validFor are mandatory

contact

contactType and validFor are mandatory

customer

id and name are mandatory

customerAccountBalance

id, type, amount, validFor and status are mandatory

paymentPlan

id, status, amount, paymentFrequency and validFor are mandatory

paymentMean

Id, href are mandatory


Create a customer account only with mandatory attributes:

REQUEST

POST customerManagement/customerAccount/{ID}
Content-type: application/json
{
"name": "sample account number 1",
"accountType": "Residential"
}

RESPONSE

Status:201
Content-Type: application/json
Content-Location: " http://serverlocation:port/customerManagement/customerAccount/ca1234"
{
"id": "ca1234",
"lastModified": "2013-06-19T00:00:00-04:00",
"name": "sample account number 1",
"accountType": "Residential",
"status": "Active"
}

DELETE customerManagement/customerAccount/{ID}

Note customer account will be deleted via DELETE /customerAccount/{ID} and will not allow deletion of customers if no id is provided.
Description:

Behavior :

The following example shows deletion of customer account with filtration criteria based on id.

REQUEST

DELETE /customerManagement/customerAccount/ca1234
Accept: application/json

RESPONSE

Status:204

GET customerManagement/paymentMean/{ID}

Note that collections can be retrieved via GET /customerManagement /paymentMean with no {ID}
Description :

Behavior :

Examples: Get request with one payment mean including all attributes in the response. Filtering and attribute selection is described in the examples following.

REQUEST

GET /customerManagement/paymentMean/{ID}/?{fields=attributes}&{filtering expression}
Accept: application/json

RESPONSE

{
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"name": "My favourite payment mean",
"validFor": {
"startDateTime": "2013-04-19T16:42:23-04:00",
"endDateTime": "2014-04-19T16:42:23-04:00"
},
"paymentMeanType": "BankAccountDebit",
"relatedParty": {
"id": "1",
"role": "customer",
"name": "Gustave Flaubert",
"href": "http://serverlocation:port/partyManagement/individual/1"
},
"bankAccount": {
"BIC": "PSSTFRPPPAR",
"domiciliation": "LaBanquePostale–75900ParixCedex15",
"IBAN": "FR4620061009010835927F33098",
"accountHolder": "Mr.GustaveFlaubert"
}
}

PUT customerManagement/paymentMean/{ID}

PUT is not supported for paymentMean as any modification can be handled through PATCH API.

PATCH customerManagement/paymentmean/{ID}

Description :


Behavior :

Behavior :

The requester cannot generate the id. The id is generated automatically in the back-end.

Attribute name

Mandatory

Default

Rule

id

N

Automatically generated

If not given, the id is generated by the system. It is also possible to add an ID in the POST request, which is then used

href

N

Automatically generated

Cannot be set from outside

name

Y

 

 

paymentMeanType

Y

 

 

relatedParty

Y

 

 

bankAccount

N

 

 

creditCard

N

 

 


Rules:

Rule name

Rule/Pre Condition/Side Effects/Post Conditions

bankAccount

Mandatory if paymentMeanType is different from Credit card

creditCard

Mandatory is paymentMeanType is equal to Credit card


Create a customer account only with mandatory attributes:

REQUEST

POST customerManagement/paymentMean/{ID}
Content-type: application/json
{
"name": "My favourite payment mean",
"validFor": {
"startDateTime": "2013-04-19T16:42:23-04:00",
"endDateTime": "2014-04-19T16:42:23-04:00"
},
"paymentMeanType": "BankAccountDebit",
"relatedParty": {
"id": "1",
"role": "customer",
"name": "Gustave Flaubert",
"href": "http://serverlocation:port/partyManagement/individual/1"
},
"bankAccount": {
"BIC": "PSSTFRPPPAR",
"domiciliation": "LaBanquePostale–75900ParixCedex15",
"IBAN": "FR4620061009010835927F33098",
"accountHolder": "Mr.GustaveFlaubert"
}
}

RESPONSE

Status:201
Content-Type: application/json
{
"id": "45",
"href": "http://serverlocation:port/customerManagement/paymentMean/45",
"name": "My favourite payment mean",
"validFor": {
"startDateTime": "2013-04-19T16:42:23-04:00",
"endDateTime": "2014-04-19T16:42:23-04:00"
},
"paymentMeanType": "BankAccountDebit",
"relatedParty": {
"id": "1",
"role": "customer",
"name": "Gustave Flaubert",
"href": "http://serverlocation:port/partyManagement/individual/1"
},
"bankAccount": {
"BIC": "PSSTFRPPPAR",
"domiciliation": "LaBanquePostale–75900ParixCedex15",
"IBAN": "FR4620061009010835927F33098",
"accountHolder": "Mr.GustaveFlaubert"
}
}

 

DELETE customerManagement/paymentMean/{ID}

Note payment mean will be deleted via DELETE /paymentMean/{ID} and will not allow deletion of paymentMean if no id is provided.
Description:

Behavior :

The following example shows deletion of paymentMean with filtration criteria based on id.

REQUEST

DELETE /customerManagement/customerAccount/45
Accept: application/json

RESPONSE

Status:204