POST /customers
Note: This operation optionally supports 3DS verification flow. To achieve the same, create the Payment Intent and pass it as input parameter to this API.
Creates a customer. You can create a customer and then create subscriptions for the customer when required. When creating a customer, you can pass along the billing address, card details, and any custom attributes.
Passing raw card data via API involves PCI liability at your end due to the sensitivity of the data. Instead, you can use one of the following integration options as applicable:
Here's some resources you can use to collect card information within your checkout form based on the payment gateway you use:
- Stripe.js for Stripe users.
- Braintree.js for Braintree users.
- Accept.js, if you use Authorize.Net.
- If you are using the Adyen gateway, you will have to use the Adyen's Client-Side Encryption to encrypt sensitive cardholder data. Once the cardholder data is encrypted, pass the value in
adyen.encrypted.data
as temp token in this API. - You can also use our Hosted Pages based integration.
When billing address is not passed (say, for customers making offline payments), you can always provide it later using the Update billing info for a customer API.
**Note:**When an invoice is generated for a customer, the billing address provided for the customer is stored with the invoice. If the First Name, Last Name, and Company fields of the billing address do not contain any information, they're picked up from the customer details.
Servers
- {protocol}://{site}.{environment}:{port}/api/v2
- {protocol}://{site}-test.{environment}:{port}/api/v2
Request headers
Name | Type | Required | Description |
---|---|---|---|
chargebee-request-origin-device |
String | No |
The device from which the customer has made the request |
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/x-www-form-urlencoded" |
chargebee-event-webhook |
String | No |
skip only webhooks Possible values:
|
chargebee-business-entity-id |
String | No |
If the site has multiple business entities, you can use this custom HTTP header to specify the business entity for which Chargebee should perform the operation. |
chargebee-event-actions |
String | No |
skip all actions to be done on the events Possible values:
|
chargebee-request-origin-user |
String | No |
The email address of your customer/user. Use this when the email address has only ASCII characters. |
chargebee-request-origin-ip |
String | No |
The IP address of the customer where the request originated |
chargebee-request-origin-user-encoded |
String | No |
The Base64-encoded email address of your customer/user. Use this if the email address has UTF-8 characters. When this header is provided, the header |
chargebee-event-email |
String | No |
skip only emails Possible values:
|
Request body fields
Name | Type | Required | Description |
---|---|---|---|
first_name |
String | No |
First name of the customer. |
business_entity_id |
String | No |
The unique ID of the business entity this customer should be linked to. Applicable only when multiple business entities have been created for the site. When not provided, the customer is linked to the default business entity defined for the site. An alternative way of passing this parameter is by means of a custom HTTP header. . |
entity_identifiers |
Object | No |
Parameters for entity_identifiers |
entity_identifiers.id[] |
Array | No |
The unique id for the |
entity_identifiers.value[] |
Array | No |
The value of the If there is only one entity identifier for the customer and the value is the same as |
entity_identifiers.scheme[] |
Array | No |
The Peppol BIS scheme associated with the vat_number of the customer. This helps identify the specific type of customer entity. For example, If there is only one entity identifier for the customer and the value is the same as |
entity_identifiers.standard[] |
Array | No |
The standard used for specifying the If there is only one entity identifier for the customer and the value is the same as |
customer_type |
String | No |
Indicates the type of the customer. This is applicable only if you use Chargebee's AvaTax for Communications integration. * industrial - When the purchase is made by an industrial business * residential - When the purchase is made by a customer for home use * senior_citizen - When the purchase is made by a customer who meets the jurisdiction requirements to be considered a senior citizen and qualifies for senior citizen tax breaks * business - When the purchase is made at a place of business Possible values:
|
invoice_notes |
String | No |
A customer-facing note added to all invoices associated with this API resource. This note becomes one among all the notes displayed on the invoice PDF. |
payment_method |
Object | No |
Parameters for payment_method |
payment_method.gateway_account_id |
String | No |
The gateway account in which this payment source is stored. |
payment_method.type |
String | No |
The type of payment method. For more details refer Update payment method for a customer API under Customer resource. * google_pay - Payments made via Google Pay. * sofort - Payments made via Sofort. * netbanking_emandates - Netbanking (eMandates) Payments. * apple_pay - Payments made via Apple Pay. * unionpay - Payments made via UnionPay. * giropay - Payments made via giropay. * direct_debit - Represents bank account for which the direct debit or ACH agreement/mandate is created. * bancontact - Payments made via Bancontact Card. * upi - UPI Payments. * alipay - Payments made via Alipay. Possible values:
|
payment_method.tmp_token |
String | No |
Single-use tokens created by payment gateways. In Stripe, a single-use token is created for Apple Pay Wallet, card details or direct debit. In Braintree, a nonce is created for Apple Pay Wallet, PayPal, or card details. In Authorize.Net, a nonce is created for card details. In Adyen, an encrypted data is created from the card details. |
payment_method.issuing_country |
String | No |
ISO 3166 alpha-2 country code. Note : If you enter an invalid country code, the system will return an error. If you have enabled EU VAT in 2021 or have manually
enabled the Brexit configuration, then |
payment_method.additional_information |
Object | No |
* `checkout_com`: While adding a new payment method using [permanent token](./payment_sources?#create_using_permanent_token) or passing raw card details to Checkout.com, `document` ID and `country_of_residence` are required to support payments through [dLocal](https://www.checkout.com/docs/previous/payments/payment-methods/cards/dlocal). * `payer`: User related information. * `country_of_residence`: This is required since the billing country associated with the user's payment method may not be the same as their country of residence. Hence the user's country of residence needs to be specified. The country code should be a [two-character ISO code](https://docs.checkout.com/resources/codes/country-codes). * `document`: Document ID is the user's [identification number](https://docs.dlocal.com/api-documentation/payins-api-reference/country-reference#documents) based on their country. * `bluesnap`: While passing raw card details to BlueSnap, if `fraud_session_id` is added, [additional validation](https://developers.bluesnap.com/docs/fraud-prevention) is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your [BlueSnap fraud session ID](https://developers.bluesnap.com/docs/fraud-prevention#section-implementing-device-data-collector) required to perform anti-fraud validation. * `braintree`: While passing raw card details to Braintree, your `fraud_merchant_id` and the user's `device_session_id` can be added to perform [additional validation](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `fraud_merchant_id`: Your [merchant ID](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) for fraud detection. * `chargebee_payments`: While passing raw card details to Chargebee Payments, if `fraud_session_id` is added, additional validation is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your Chargebee Payments fraud session ID required to perform anti-fraud validation. * `bank_of_america`: While passing raw card details to Bank of America, your user's `device_session_id` can be added to perform additional validation and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `ecentric`: This parameter is used to verify and process payment method details in Ecentric. If the `merchant_id` parameter is included, Chargebee will vault it / perform a lookup and verification against this `merchant_id`, overriding the one configured in Chargebee. If tokens and processing occur in the same Merchant GUID, you can just skip this part. * `merchant_id`: Merchant GUID where the card is vaulted or need to be vaulted. * `ebanx`: While passing raw card details to EBANX, the user's `document` is required for some countries and `device_session_id` can be added to perform [additional validation](https://developer.ebanx.com/docs/payments/guides/features/device-fingerprint#device-fingerprint) and avoid fraudulent transactions. * `payer`: User related information. * `document`: Document is the user's identification number based on their country. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device |
payment_method.reference_id |
String | No |
The reference id. In the case of Amazon and PayPal this will be the billing agreement id . For GoCardless direct debit this will be 'mandate id'. In the case of card this will be the identifier provided by the gateway/card vault for the specific payment method resource. Note: This is not the one-time temporary token provided by gateways like Stripe. |
entity_identifier_scheme |
String | No |
The Peppol BIS scheme associated with the vat_number of the customer. This helps identify the specific type of customer entity. For example, If there are additional entity identifiers for the customer not associated with the |
vat_number |
String | No |
The VAT/tax registration number for the customer. For customers with billing_address |
id |
String | No |
Id for the new customer. If not given, this will be auto-generated. |
email |
String | No |
Email of the customer. Configured email notifications will be sent to this email. |
net_term_days |
Integer | No |
The number of days within which the customer has to make payment for the invoice. . Default value: 0 |
company |
String | No |
Company name of the customer. |
tax_providers_fields |
Object | No |
Parameters for tax_providers_fields |
tax_providers_fields.field_value[] |
Array | No |
The value of the related tax field |
tax_providers_fields.field_id[] |
Array | No |
Field id of the attribute which tax vendor has provided while getting onboarded with Chargebee. |
tax_providers_fields.provider_name[] |
Array | No |
Name of the tax provider. |
auto_collection |
String | No |
Whether payments needs to be collected automatically for this customer. * on - Whenever an invoice is created, an automatic attempt to charge the customer's payment method is made. * off - Automatic collection of charges will not be made. All payments must be recorded offline. Possible values:
Default value: "on" |
locale |
String | No |
Determines which region-specific language Chargebee uses to communicate with the customer. In the absence of the locale attribute, Chargebee will use your site's default language for customer communication. |
preferred_currency_code |
String | No |
The currency code (ISO 4217 format) of the customer. Applicable if Multicurrency is enabled. |
taxjar_exemption_category |
String | No |
Indicates the exemption type of the customer. This is applicable only if you use Chargebee's TaxJar integration. * other - Other * government - Government * wholesale - Whole-sale Possible values:
|
is_einvoice_enabled |
Boolean | No |
Determines whether the customer is e-invoiced. When set to It is possible to set a value for this flag even when E-Invoicing is disabled. However, it comes into effect only when E-Invoicing is enabled. . |
billing_address |
Object | No |
Parameters for billing_address |
billing_address.first_name |
String | No |
The first name of the billing contact. |
billing_address.state |
String | No |
The state/province name. Is set by Chargebee automatically for US, Canada and India If |
billing_address.city |
String | No |
The name of the city. |
billing_address.validation_status |
String | No |
The address verification status. * valid - Address was validated successfully. * partially_valid - The address is valid for taxability but has not been validated for shipping. * invalid - Address is invalid. * not_validated - Address is not yet validated. Possible values:
Default value: "not_validated" |
billing_address.line2 |
String | No |
Address line 2 |
billing_address.line1 |
String | No |
Address line 1 |
billing_address.email |
String | No |
The email address. |
billing_address.last_name |
String | No |
The last name of the billing contact. |
billing_address.company |
String | No |
The company name. |
billing_address.line3 |
String | No |
Address line 3 |
billing_address.state_code |
String | No |
The ISO 3166-2 state/province code without the country prefix. Currently supported for USA, Canada and India. For instance, for Arizona (USA), set |
billing_address.zip |
String | No |
Zip or postal code. The number of characters is validated according to the rules specified here. |
billing_address.phone |
String | No |
The phone number. |
billing_address.country |
String | No |
The billing address country of the customer. Must be one of ISO 3166 alpha-2 country code. If you have enabled EU VAT in 2021 or later, or have manually enable the Brexit configuration, then |
taxability |
String | No |
Specifies if the customer is liable for tax. * taxable - Computes tax for the customer based on the site configuration. In some cases, depending on the region, shipping_address is needed. If not provided, then billing_address is used to compute tax. If that's not available either, the tax is taken as zero. * exempt -
Possible values:
Default value: "taxable" |
consolidated_invoicing |
Boolean | No |
Indicates whether invoices raised on the same day for the Any invoices raised when a subscription activates from |
entity_code |
String | No |
The exemption category of the customer, for USA and Canada. Applicable if you use Chargebee's AvaTax for Sales integration. * l - Other or custom * m - Educational organization * n - Local government * h - Commercial agricultural production * i - Industrial production/manufacturer * j - Direct pay permit * k - Direct mail * p - Commercial aquaculture * q - Commercial Fishery * r - Non-resident * d - Foreign diplomat * e - Charitable or benevolent organization * f - Religious organization * g - Resale * a - Federal government * b - State government * c - Tribe/Status Indian/Indian Band * med2 - US Medical Device Excise Tax with taxable sales tax * med1 - US Medical Device Excise Tax with exempt sales tax Possible values:
|
token_id |
String | No |
The Chargebee payment token generated by Chargebee JS. |
meta_data |
Object | No |
A collection of key-value pairs that provides extra information about the customer. **Note:** There's a character limit of 65,535. [Learn more](advanced-features?prod_cat_ver=2#metadata). |
payment_intent |
Object | No |
Parameters for payment_intent |
payment_intent.id |
String | No |
Identifier for PaymentIntent generated by Chargebee.js. Applicable only when you are using Chargebee.js for completing the 3DS flow. The PaymentIntent should be in 'authorized' state while passing it here. You need not pass other PaymentIntent parameters if this is passed. |
payment_intent.gateway_account_id |
String | No |
The gateway account used for performing the 3DS flow. |
payment_intent.payment_method_type |
String | No |
The list of payment method types (For example, card, ideal, sofort, bancontact, etc.) this Payment Intent is allowed to use. If payment method type is empty, Card is taken as the default type for all gateways except Razorpay. * card - card * dotpay - dotpay * faster_payments - Faster Payments * upi - upi * google_pay - google_pay * paypal_express_checkout - paypal_express_checkout * klarna_pay_now - Klarna Pay Now * ideal - ideal * boleto - boleto * direct_debit - direct_debit * sepa_instant_transfer - Sepa Instant Transfer * bancontact - bancontact * venmo - Venmo * pay_to - PayTo * netbanking_emandates - netbanking_emandates * apple_pay - apple_pay * online_banking_poland - Online Banking Poland * giropay - giropay * sofort - sofort * amazon_payments - Amazon Payments Possible values:
|
payment_intent.additional_information |
Object | No |
* `checkout_com`: While adding a new payment method using [permanent token](./payment_sources?#create_using_permanent_token) or passing raw card details to Checkout.com, `document` ID and `country_of_residence` are required to support payments through [dLocal](https://www.checkout.com/docs/previous/payments/payment-methods/cards/dlocal). * `payer`: User related information. * `country_of_residence`: This is required since the billing country associated with the user's payment method may not be the same as their country of residence. Hence the user's country of residence needs to be specified. The country code should be a [two-character ISO code](https://docs.checkout.com/resources/codes/country-codes). * `document`: Document ID is the user's [identification number](https://docs.dlocal.com/api-documentation/payins-api-reference/country-reference#documents) based on their country. * `bluesnap`: While passing raw card details to BlueSnap, if `fraud_session_id` is added, [additional validation](https://developers.bluesnap.com/docs/fraud-prevention) is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your [BlueSnap fraud session ID](https://developers.bluesnap.com/docs/fraud-prevention#section-implementing-device-data-collector) required to perform anti-fraud validation. * `braintree`: While passing raw card details to Braintree, your `fraud_merchant_id` and the user's `device_session_id` can be added to perform [additional validation](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `fraud_merchant_id`: Your [merchant ID](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) for fraud detection. * `chargebee_payments`: While passing raw card details to Chargebee Payments, if `fraud_session_id` is added, additional validation is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your Chargebee Payments fraud session ID required to perform anti-fraud validation. * `bank_of_america`: While passing raw card details to Bank of America, your user's `device_session_id` can be added to perform additional validation and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `ecentric`: This parameter is used to verify and process payment method details in Ecentric. If the `merchant_id` parameter is included, Chargebee will vault it / perform a lookup and verification against this `merchant_id`, overriding the one configured in Chargebee. If tokens and processing occur in the same Merchant GUID, you can just skip this part. * `merchant_id`: Merchant GUID where the card is vaulted or need to be vaulted. * `ebanx`: While passing raw card details to EBANX, the user's `document` is required for some countries and `device_session_id` can be added to perform [additional validation](https://developer.ebanx.com/docs/payments/guides/features/device-fingerprint#device-fingerprint) and avoid fraudulent transactions. * `payer`: User related information. * `document`: Document is the user's identification number based on their country. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device |
payment_intent.gw_token |
String | No |
Identifier for 3DS transaction/verification object at the gateway. Can be passed only after successfully completing the 3DS flow. Refer 3DS implementation in Chargebee to find out the gateway-specific gw_token format. Applicable when you are using gateway APIs directly for completing the 3DS flow. |
payment_intent.reference_id |
String | No |
Identifier for Braintree permanent token. Applicable when you are using Braintree APIs for completing the 3DS flow. |
exempt_number |
String | No |
Any string value that will cause the sale to be exempted. Use this if your finance team manually verifies and tracks exemption certificates. Applicable if you use Chargebee's AvaTax for Sales integration. |
exemption_details[] |
Array | No |
Indicates the exemption information. You can customize customer exemption based on specific Location, Tax level (Federal, State, County and Local), Category of Tax or specific Tax Name. This is applicable only if you use Chargebee's AvaTax for Communications integration. |
bank_account |
Object | No |
Parameters for bank_account |
bank_account.first_name |
String | No |
Account holder's first name as per bank account. If not passed, details from customer details will be considered. |
bank_account.swedish_identity_number |
String | No |
For GoCardless Autogiro users only. The civic/company number (personnummer, samordningsnummer, or organisationsnummer) of the customer. Must be supplied if the customer's bank account is denominated in Swedish krona (SEK). This field cannot be changed once it has been set. |
bank_account.iban |
String | No |
Account holder's International Bank Account Number. For the GoCardless platform, this can be the local bank details |
bank_account.account_number |
String | No |
Account holder's bank account number. |
bank_account.account_type |
String | No |
Represents the account type used to create a payment source. Available for Authorize.net ACH and Razorpay NetBanking users only. If not passed, account type is taken as null. * checking - Checking Account * business_checking - Business Checking Account * savings - Savings Account * current - Current Account Possible values:
|
bank_account.email |
String | No |
Account holder's email address. If not passed, details from customer details will be considered. All Direct Debit compliant emails will be sent to this email address. |
bank_account.last_name |
String | No |
Account holder's last name as per bank account. If not passed, details from customer details will be considered. |
bank_account.bank_code |
String | No |
Indicates the bank code. |
bank_account.company |
String | No |
Account holder's company name as per bank account. If not passed, details from customer details will be considered. |
bank_account.bank_name |
String | No |
Name of account holder's bank. |
bank_account.gateway_account_id |
String | No |
The gateway account in which this payment source is stored. |
bank_account.phone |
String | No |
Phone number of the account holder that is linked to the bank account. |
bank_account.routing_number |
String | No |
Bank account routing number. |
bank_account.issuing_country |
String | No |
two-letter(alpha2) ISO country code. Required when local bank details are provided, and not IBAN. |
bank_account.account_holder_type |
String | No |
For Stripe ACH users only. Indicates the account holder type. * individual - Individual Account. * company - Company Account. Possible values:
|
bank_account.echeck_type |
String | No |
For Authorize.net ACH users only. Indicates the type of eCheck. * ppd - Payment Authorization is prearranged between the customer and the merchant. * ccd - Payment Authorization agreement from the corporate customer is required. Applicable for business_checking account_type. * web - Payment Authorization obtained from the customer via the internet. Possible values:
|
bank_account.billing_address |
Object | No |
The billing address associated with the bank account. The value is a JSON object with the following keys and their values: * `first_name`:(string, max chars=150) The first name of the contact. * `last_name`:(string, max chars=150) The last name of the contact. * `company_name`:(string, max chars=250) The company name for the address. * `line1`:(string, max chars=180) The first line of the address. * `line2`:(string, max chars=180) The second line of the address. * `country`:(string) The name of the country for the address. * `country_code`:(string, max chars=50) The two-letter, [ISO 3166 alpha-2](https://www.iso.org/iso-3166-country-codes.html) country code for the address. * `state`:(string, max chars=50) The name of the state or province for the address. When not provided, this is set automatically for US, Canada, and India. * `state_code`:(string, max chars=50) The [ISO 3166-2 state/province code](https://www.iso.org/obp/ui/#search/code/) without the country prefix. This is supported for USA, Canada, and India. For instance, for Arizona (USA), set state_code as `AZ` (not `US-AZ`). For Tamil Nadu (India), set as `TN` (not `IN-TN`). For British Columbia (Canada), set as `BC` (not `CA-BC)`. * `city`:(string, max chars=50) The city name for the address. * `postal_code`:(string, max chars=20) The postal or ZIP code for the address. * `phone`:(string, max chars=50) The contact phone number for the address. * `email`:(string, max chars=70) The contact email address for the address. |
card |
Object | No |
Parameters for card |
card.billing_addr2 |
String | No |
Address line 2, as available in card billing address. |
card.billing_addr1 |
String | No |
Address line 1, as available in card billing address. |
card.number |
String | No |
The credit card number without any format. If you are using Braintree.js, you can specify the Braintree encrypted card number here. |
card.first_name |
String | No |
Cardholder's first name |
card.expiry_month |
Integer | No |
Card expiry month. |
card.additional_information |
Object | No |
* `checkout_com`: While adding a new payment method using [permanent token](./payment_sources?#create_using_permanent_token) or passing raw card details to Checkout.com, `document` ID and `country_of_residence` are required to support payments through [dLocal](https://www.checkout.com/docs/previous/payments/payment-methods/cards/dlocal). * `payer`: User related information. * `country_of_residence`: This is required since the billing country associated with the user's payment method may not be the same as their country of residence. Hence the user's country of residence needs to be specified. The country code should be a [two-character ISO code](https://docs.checkout.com/resources/codes/country-codes). * `document`: Document ID is the user's [identification number](https://docs.dlocal.com/api-documentation/payins-api-reference/country-reference#documents) based on their country. * `bluesnap`: While passing raw card details to BlueSnap, if `fraud_session_id` is added, [additional validation](https://developers.bluesnap.com/docs/fraud-prevention) is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your [BlueSnap fraud session ID](https://developers.bluesnap.com/docs/fraud-prevention#section-implementing-device-data-collector) required to perform anti-fraud validation. * `braintree`: While passing raw card details to Braintree, your `fraud_merchant_id` and the user's `device_session_id` can be added to perform [additional validation](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `fraud_merchant_id`: Your [merchant ID](https://developers.braintreepayments.com/guides/premium-fraud-management-tools/device-data-collection/javascript/v3#collecting-device-data) for fraud detection. * `chargebee_payments`: While passing raw card details to Chargebee Payments, if `fraud_session_id` is added, additional validation is performed to avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `fraud_session_id`: Your Chargebee Payments fraud session ID required to perform anti-fraud validation. * `bank_of_america`: While passing raw card details to Bank of America, your user's `device_session_id` can be added to perform additional validation and avoid fraudulent transactions. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device. * `ecentric`: This parameter is used to verify and process payment method details in Ecentric. If the `merchant_id` parameter is included, Chargebee will vault it / perform a lookup and verification against this `merchant_id`, overriding the one configured in Chargebee. If tokens and processing occur in the same Merchant GUID, you can just skip this part. * `merchant_id`: Merchant GUID where the card is vaulted or need to be vaulted. * `ebanx`: While passing raw card details to EBANX, the user's `document` is required for some countries and `device_session_id` can be added to perform [additional validation](https://developer.ebanx.com/docs/payments/guides/features/device-fingerprint#device-fingerprint) and avoid fraudulent transactions. * `payer`: User related information. * `document`: Document is the user's identification number based on their country. * `fraud`: Fraud identification related information. * `device_session_id`: Session ID associated with the user's device |
card.last_name |
String | No |
Cardholder's last name |
card.gateway_account_id |
String | No |
The gateway account in which this payment source is stored. |
card.billing_state_code |
String | No |
The ISO 3166-2 state/province code without the country prefix. Currently supported for USA, Canada and India. For instance, for Arizona (USA), set |
card.billing_zip |
String | No |
Postal or Zip code, as available in card billing address. |
card.expiry_year |
Integer | No |
Card expiry year. |
card.cvv |
String | No |
The card verification value (CVV). If you are using Braintree.js, you can specify the Braintree encrypted CVV here. |
card.billing_city |
String | No |
City, as available in card billing address. |
card.billing_state |
String | No |
The state/province name. Is set by Chargebee automatically for US, Canada and India If |
card.preferred_scheme |
String | No |
The customer's preferred card scheme for co-branded cards. Possible values:
|
card.billing_country |
String | No |
The billing address country of the customer. Must be one of ISO 3166 alpha-2 country code. Note : If you enter an invalid country code, the system will return an error. Brexit If you have enabled EU VAT in 2021 or later, or have manually enable the Brexit configuration, then |
auto_close_invoices |
Boolean | No |
Override for this customer, the site-level setting for auto-closing invoices. Only applicable when auto-closing invoices has been enabled for the site. This attribute is also available at the subscription level which takes precedence. |
allow_direct_debit |
Boolean | No |
Whether the customer can pay via Direct Debit. Default value: false |
business_customer_without_vat_number |
Boolean | No |
Confirms that a customer is a valid business without an EU/UK VAT number. |
client_profile_id |
String | No |
Indicates the Client profile id for the customer. This is applicable only if you use Chargebee's AvaTax for Communications integration. |
offline_payment_method |
String | No |
The preferred offline payment method for the customer. * sepa_credit - SEPA Credit * cash - Cash * no_preference - No Preference * bank_transfer - Bank Transfer * check - Check * eu_automated_bank_transfer - EU Automated Bank Transfer * jp_automated_bank_transfer - JP Automated Bank Transfer * uk_automated_bank_transfer - UK Automated Bank Transfer * custom - Custom * boleto - Boleto * mx_automated_bank_transfer - MX Automated Bank Transfer * us_automated_bank_transfer - US Automated Bank Transfer * ach_credit - ACH Credit Possible values:
|
last_name |
String | No |
Last name of the customer. |
vat_number_prefix |
String | No |
An overridden value for the first two characters of the full VAT
number. Only applicable specifically for customers with billing_address When you have enabled EU VAT in 2021 or have manually
enabled the Brexit configuration, you have the option of setting billing_address |
phone |
String | No |
Phone number of the customer. |
entity_identifier_standard |
String | No |
The standard used for specifying the If there are additional entity identifiers for the customer not associated with the Default value: "iso6523-actorid-upis" |
einvoicing_method |
String | No |
Determines whether to send an e-invoice manually or automatic. * automatic - Use this value to send e-invoice every time an invoice or credit note is created. * manual - When manual is selected the automatic e-invoice sending is disabled. Use this value to send e-invoice manually through UI or API. * site_default - The default value of the site which can be overridden at the customer level. Possible values:
|
registered_for_gst |
Boolean | No |
Confirms that a customer is registered under GST. If set to |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.