Skip to content
  • Auto
  • Light
  • Dark
Get started
View as Markdown
Copy Markdown

Open in Claude
Open in ChatGPT

Delete a customer

client.customers.delete(stringid, CustomerDeleteParams { correlationID, idempotencyKey, requestID, straddleAccountID } params?, RequestOptionsoptions?): CustomerV1 { data, meta, response_type }
delete/v1/customers/{id}

Permanently removes a customer record from Straddle. This action cannot be undone and should only be used to satisfy regulatory requirements or for privacy compliance.

ParametersExpand Collapse
id: string
params: CustomerDeleteParams { correlationID, idempotencyKey, requestID, straddleAccountID }
correlationID?: string

Optional client generated identifier to trace and debug a series of requests.

idempotencyKey?: string

Optional client generated value to use for idempotent requests.

maxLength40
minLength10
requestID?: string

Optional client generated identifier to trace and debug a request.

straddleAccountID?: string

For use by platforms to specify an account id and set scope of a request.

formatuuid
ReturnsExpand Collapse
CustomerV1 { data, meta, response_type }
data: Data { id, created_at, email, 11 more }
id: string

Unique identifier for the customer.

formatuuid
created_at: string

Timestamp of when the customer record was created.

formatdate-time
email: string

The customer's email address.

formatemail
name: string

Full name of the individual or business name.

phone: string

The customer's phone number in E.164 format.

status: "pending" | "review" | "verified" | 2 more
Accepts one of the following:
"pending"
"review"
"verified"
"inactive"
"rejected"
type: "individual" | "business"
Accepts one of the following:
"individual"
"business"
updated_at: string

Timestamp of the most recent update to the customer record.

formatdate-time
address?: CustomerAddressV1 { address1, city, state, 2 more } | null

An object containing the customer's address. This is optional, but if provided, all required fields must be present.

address1: string

Primary address line (e.g., street, PO Box).

maxLength100
city: string

City, district, suburb, town, or village.

maxLength100
state: string

Two-letter state code.

zip: string

Zip or postal code.

address2?: string | null

Secondary address line (e.g., apartment, suite, unit, or building).

maxLength100
compliance_profile?: IndividualComplianceProfile { dob, ssn } | BusinessComplianceProfile { ein, legal_business_name, representatives, website } | null

PII required to trigger Patriot Act compliant KYC verification.

Accepts one of the following:
IndividualComplianceProfile { dob, ssn }

PII required to trigger Patriot Act compliant KYC verification.

dob: string | null

Masked date of birth in ****-- format.

formatdate
ssn: string | null

Masked Social Security Number in the format --***.

BusinessComplianceProfile { ein, legal_business_name, representatives, website }

Business registration data required to trigger Patriot Act compliant KYB verification.

ein: string | null

Masked Employer Identification Number in the format -*****

The official registered name of the business. This name should be correlated with the ein value.

representatives?: Array<Representative> | null

A list of people related to the company. Only valid where customer type is 'business'.

name: string
email?: string | null
phone?: string | null
website?: string | null

Official business website URL. Optional but recommended for enhanced KYB.

formaturi
config?: Config { processing_method, sandbox_outcome }
processing_method?: "inline" | "background" | "skip"
Accepts one of the following:
"inline"
"background"
"skip"
sandbox_outcome?: "standard" | "verified" | "rejected" | "review"
Accepts one of the following:
"standard"
"verified"
"rejected"
"review"
device?: Device { ip_address }
ip_address: string

The customer's IP address at the time of profile creation. Use 0.0.0.0 to represent an offline customer registration.

minLength1
formatipv4
external_id?: string | null

Unique identifier for the customer in your database, used for cross-referencing between Straddle and your systems.

metadata?: Record<string, string> | null

Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the customer in a structured format.

meta: ResponseMetadata { api_request_id, api_request_timestamp }

Metadata about the API request, including an identifier and timestamp.

api_request_id: string

Unique identifier for this API request, useful for troubleshooting.

formatuuid
api_request_timestamp: string

Timestamp for this API request, useful for troubleshooting.

formatdate-time
response_type: "object" | "array" | "error" | "none"

Indicates the structure of the returned content.

  • "object" means the data field contains a single JSON object.
  • "array" means the data field contains an array of objects.
  • "error" means the data field contains an error object with details of the issue.
  • "none" means no data is returned.
Accepts one of the following:
"object"
"array"
"error"
"none"
Delete a customer
import Straddle from '@straddlecom/straddle';

const client = new Straddle({
  apiKey: 'My API Key',
});

const customerV1 = await client.customers.delete('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(customerV1.data);
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "email": "ron.swanson@pawnee.com",
    "name": "Ron Swanson",
    "phone": "+12128675309",
    "status": "pending",
    "type": "individual",
    "updated_at": "2019-12-27T18:11:19.117Z",
    "address": {
      "address1": "123 Main St",
      "city": "Anytown",
      "state": "CA",
      "zip": "12345",
      "address2": "Apt 1"
    },
    "compliance_profile": {
      "dob": "2019-12-27",
      "ssn": "***-**-****"
    },
    "config": {
      "processing_method": "inline",
      "sandbox_outcome": "standard"
    },
    "device": {
      "ip_address": "192.168.1.1"
    },
    "external_id": "external_id",
    "metadata": {
      "foo": "string"
    }
  },
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z"
  },
  "response_type": "object"
}
Returns Examples
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "email": "ron.swanson@pawnee.com",
    "name": "Ron Swanson",
    "phone": "+12128675309",
    "status": "pending",
    "type": "individual",
    "updated_at": "2019-12-27T18:11:19.117Z",
    "address": {
      "address1": "123 Main St",
      "city": "Anytown",
      "state": "CA",
      "zip": "12345",
      "address2": "Apt 1"
    },
    "compliance_profile": {
      "dob": "2019-12-27",
      "ssn": "***-**-****"
    },
    "config": {
      "processing_method": "inline",
      "sandbox_outcome": "standard"
    },
    "device": {
      "ip_address": "192.168.1.1"
    },
    "external_id": "external_id",
    "metadata": {
      "foo": "string"
    }
  },
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z"
  },
  "response_type": "object"
}