dxp-ux

(0 reviews)

Retrieve Customer Details(TMF-629)

/customer/{id}

[GET]

This operation retrieves a customer details entity used by accountNumber (Consumer Account Number) or MSISDN from Salesforce.

URL

https://[localhost]:[port]/dxp-ux/v1/{businessId}/customer/{id}

URL PARAMS

nametypedescriptionrequired
businessIdstring2 letter ISO 3166 country code (TT, BB, JM, PA, PR etc.) identifying the business unit.
Expected one is "PR"-Puerto Rico
Y
idstringaccountNumber (Consumer Account Number) or MSISDNY
namevaluedescriptionrequired
client_idstringThe client_id identifying the channel.Y
client_secretstringPassword associated with the client_id.Y
X-Correlation-IDstringAn identifier for the current call chain that can be used to tie together log entries on multiple layers (e.g. client, server, mainframe). This identifier must be designed to be unique across all applications.
Note - Mule default behavior creates a sample x-correlation-id field if value is not passed from client, API will use this value in case value is not passed in API request
N
channelIdstringExpected value APPY

Query Parameters

namevaluedescriptionrequired
typestringExpected values are 'msisdn' or 'customerAccountNumber'Y
characteristics.namestringExpected value is sourceSystemY
characteristics.valuestringExpected value is DigitalY
[ 200 ] PREPAID

OK - list request processed successfully, response body contains an entity corresponding to the requested resource.

{
    "id": "0016300001MwDHaAAN",
    "href": "https://cwc--propeac01.sandbox.my.salesforce.com/0016300001MwDHaAAN",
    "state": "Active",
    "account": [
        {
            "id": "31515070-31513558",
            "name": "Connection Fee Prepaid",
            "@type": "BillingAccount",
            "autopayFlag": "N"
        }
    ],
    "characteristic": [
        {
            "value": "Customer",
            "name": "accountType"
        },
        {
            "value": "Prepaid",
            "name": "paymentType"
        },
        {
            "value": "Connection Fee",
            "name": "firstName"
        },
        {
            "value": "Prepaid",
            "name": "lastName"
        },
        {
            "value": "B2C",
            "name": "consumerSegment"
        },
        {
            "value": "PR",
            "name": "billingEntity"
        },
        {
            "value": "EN",
            "name": "language"
        },
        {
            "value": "1234",
            "name": "ConsumerPINNumber"
        },
        {
            "value": "Phone",
            "name": "customerContactNotificationPreference"
        },
        {
            "value": "false",
            "name": "hasFraud"
        },
        {
            "value": "SOHO/Small",
            "name": "consumerSubType"
        }
    ],
    "contactMedium": [
        {
            "mediumType": "Address",
            "preferred": true,
            "characteristic": {
                "phoneNumber": "3765786457",
                "emailAddress": "mobileconnectionfee@gmail.com",
                "contactType": "Primary"
            },
            "@referredType": "ContactAddress"
        }
    ],
    "creditProfile": [
        {
            "creditRiskRating": "PRE"
        }
    ],
    "relatedParty": [
        {
            "id": "0016300001MwDHbAAN",
            "@type": "SalesforceBillingAccountRef"
        }
    ]
}
Definitions

Each of the request parameters is detailed.

nametypedescriptionrequired
idstringConsumer Account Number generated and used in Billing Account NumberN
hrefstringreference the customerN
statestringStatus of the account: Active, Suspend, Disconnected N
accountarrayBilling Account Number (BAN-CAN)N
account.idstringname of the billing accountN
account.namestringaccount typeN
account.@typestringaccount typeN
account.autopayFlagstringindicator of the Auto Pay enabled, Possible values are Y or NN
contactMedium.mediumTypestringtype of contact, Eg: AddressN
contactMedium.preferredbooleanpreferredN
contactMedium.characteristic.phoneNumberstringphone number of the contactN
contactMedium.characteristic.emailAddressstringemail address of the contactN
contactMedium.characteristic.contactTypestringindicates Primary or Secondary contact for the Customer accountN
contactMedium.@referredTypestringreferred type of contactMediumN
creditProfilearrayA list of credit profilesN
creditProfile.creditRiskRatingstringcustomer credit ratingN
relatedPartyarrayA related partyN
relatedParty.idstringSalesforce reference Id of the billing accountN
relatedParty@typestringRelated party typeN
characteristicarraycharacteristic values, refer below table for more detailsN
characteristic.namestringName of the characteristicN
characteristic.valuestringValue of the characteristicN
Characteristic Values
nametypedescriptionrequired
accountTypestringaccount type of the customerN
paymentTypestringpayment type of the customer and the options are: Possible values are Prepaid & PostpaidN
firstNamestringFirst name of the customerN
lastNamestringlast name of the customerN
identificationTypestringCustomer Identification typeN
identificationNumberstringCustomer Identification NumberN
consumerSegmentstringDefault to BASICO for CR accountsN
billingEntitystringBusiness unit identifier of the customerN
dateOfBirthstringDate of Birth of the person accountN
languagestringpreferred language by the customer for communicationN
ConsumerPINNumberstringconsumer PIN for Customer validationN
customerContactNotificationPreferencestringcommunicated channel customer would like to be contacted: Possible values are email & phoneN
hasFraudstringflag that indicated the fraud customer, possible values are true or falseN
consumerSubTypestringExpected values for B2B, possible values are SOHO/Small or LE/CE or Government or WholesaleN
[ 200 ] POSTPAID

OK - list request processed successfully, response body contains an entity corresponding to the requested resource.

{
    "id": "0016300001MgqvyAAB",
    "href": "https://cwc--propeac01.sandbox.my.salesforce.com/0016300001MgqvyAAB",
    "state": "New",
    "account": [
        {
            "id": "21003052-21002922",
            "name": "Testing Ariaa - Billing",
            "@type": "BillingAccount",
            "autopayFlag": "Y"
        }
    ],
    "characteristic": [
        {
            "value": "Customer",
            "name": "accountType"
        },
        {
            "value": "Postpaid",
            "name": "paymentType"
        },
        {
            "value": "Testing",
            "name": "firstName"
        },
        {
            "value": "Ariaa",
            "name": "lastName"
        },
        {
            "value": "B2C",
            "name": "consumerSegment"
        },
        {
            "value": "PR",
            "name": "billingEntity"
        },
        {
            "value": "2001-11-15",
            "name": "dateOfBirth"
        },
        {
            "value": "EN",
            "name": "language"
        },
        {
            "value": "4444",
            "name": "ConsumerPINNumber"
        },
        {
            "value": "Phone",
            "name": "customerContactNotificationPreference"
        },
        {
            "value": "false",
            "name": "hasFraud"
        },
        {
            "value": "SOHO/Small",
            "name": "consumerSubType"
        }
    ],
    "contactMedium": [
        {
            "mediumType": "Address",
            "preferred": true,
            "characteristic": {
                "phoneNumber": "6777777777",
                "emailAddress": "tyui@gmail.com",
                "contactType": "Primary"
            },
            "@referredType": "ContactAddress"
        }
    ],
    "creditProfile": [
        {
            "creditRiskRating": "A"
        }
    ],
    "relatedParty": [
        {
            "id": "0016300001MgqvzAAB",
            "@type": "SalesforceBillingAccountRef"
        }
    ]
}

Possible Error Scenarios:

IF WE ARE PASSING INVALID (characteristic.name) IN QUERYPARAMS
{
    "errors": [
        {
            "code": 400,
            "message": "SF:INVALID_CUSTOMER",
            "description": "Customer Account Details not found for input MSISDN: 17874031275"
        }
    ]
}
IF WE ARE PASSING INVALID LOB
{
    "errors": [
        {
            "code": 501,
            "message": "LLA:NOT_IMPLEMENTED",
            "description": "Provide valid lob"
        }
    ]
}
IF WE ARE PASSING INVALID (id) IN URIPARAMS
{
    "errors": [
        {
            "code": 400,
            "message": "SF:GET_Customer_BY_ID",
            "description": "MSISDN provided is not valid"
        }
    ]
}
IF WE ARE PASSING INVALID (type) IN queryParams

{
    "errors": [
        {
            "code": 400,
            "message": "SF:GET_Customer_BY_ID",
            "description": "accountNumber provided is not available"
        }
    ]
}



Reviews