Customer Characteristics
Summary
Customer Characteristics are designed to give you information about your customers that we can infer from their transactional data. This information can be leveraged for marketing campaigns when considering how best and who to target for various financial products that you may offer.
These characteristics are calculated in the background each time a customer connects a new account, performs a refresh of their data, or new transactions are ingested via the first party ingester.
Retrieve Customer Characteristics
You can retrieve a list of all characteristics of a given customer by hitting the GET characteristics/v1/customer
endpoint. We currently have four characteristics live with eight more to follow.
Characteristic | Description |
---|---|
credit_card | The customer has made credit card repayments |
loan | The customer has made loan repayments (excluding credit cards) |
overdraft | The customer has paid overdraft fees |
saver | The customer has savings transactions |
Please note, new characteristics will be released and added to this list without a breaking change notice to the API. Your integration with this endpoint should be able to handle this safely.
An example of a successful 200
response can be seen below.
{
"operation_id": "characteristics_v1_customer_get",
"data": [
{
"type": "credit_card",
"link": "characteristics/v1/customer/credit_card"
},
{
"type": "loan",
"link": "characteristics/v1/customer/loan"
},
{
"type": "overdraft",
"link": "characteristics/v1/customer/overdraft"
},
{
"type": "saver",
"link": "characteristics/v1/customer/saver"
}
]
}
curl --request GET \
--url https://api-sandbox.thisisbud.com/characteristics/v1/customer \
--header 'X-Client-Id: <client_id>' \
--header 'X-Customer-Id: <customer_id>' \
--header 'accept: application/json'
The response contains all applicable characteristics for the given customer along with a link to a separate details endpoint for each one.
If you would like to review the transactions that we're taking into consideration when assigning a characteristic to a customer you can follow one of the links to the details endpoints. It's not intended that you need to subsequently hit the details endpoint each time you generate customer characteristics but rather it can be used if you would like to show the associated transactions to characteristics or for testing purposes during your integration with Bud.
An example of the response of the details endpoints can be seen below.
{
"operation_id": "characteristics_v1_customer_credit_card_get",
"data": {
"credit_card_transactions": [
{
"transaction_id": "864a3efc-6104-4dde-99a0-c3d91a8bcecf",
"account_id": "ad7d5904-39ab-4736-b726-5792c7a2146e",
"description": "CREDIT CARD PAYMENT",
"provider": "BankOfBud",
"status": "booked",
"amount": {
"value": "1234.56",
"currency": "USD"
},
"date_time": "2023-07-03T10:00:00Z",
"enrichments": {
"categories": {
"l1": {
"slug": "borrowing_and_loans",
"confidence": "0.99"
},
"l2": {
"slug": "credit_cards",
"confidence": "0.99"
}
}
}
}
],
"credit_card_transaction_totals": [
{
"amount": {
"value": "1234.56",
"currency": "USD"
},
"credit_debit_indicator": "debit"
}
]
}
}
curl --request GET \
--url https://api-sandbox.thisisbud.com/characteristics/v1/customer/credit-card \
--header 'X-Client-Id: <client_id>' \
--header 'X-Customer-Id: <customer_id>' \
--header 'accept: application/json'
The details response contains a list of all transactions
that have been used to determine the characteristic in addition to a <characteristic>_transaction_totals
object with a summed amount of all the transactions along with a credit_debit_indicator
.
If you receive an error please consult the error responses guide.
Thresholds
By default, there are no thresholds set against any of the characteristics however you can configure thresholds on a per-characteristic basis for the number_of_transactions
and the value_of_transactions
.
For example, if you have set a threshold for credit_card
of value_of_transactions
exceeds $100, this characteristic will not trigger until the total value of credit card transactions exceeds $100. If thresholds are set for both number_of_transactions
and the value_of_transactions
then both thresholds will need to be exceeded for the characteristic to trigger.
If you would like to configure these thresholds you can do so by logging a support request.
If you have any questions, please contact us via the chatbot (bottom-right of screen 👉) or via a support request or check our FAQs.
Updated 8 months ago