Skip to content

Enroll a customer

Request

Records a Net Terms Agreement acceptance captured by you and enrolls an approved customer. Both happen in one transaction — if enrollment fails, the acceptance is not recorded.

The signed agreement PDF is generated asynchronously, so it is not available in the response. It records the signer details and IP address supplied here.

Security
bearerAuth or basicAuth
Path
customer_idstringrequired

ID of the customer to enroll

Bodyapplication/jsonrequired

The Net Terms Agreement acceptance captured from the signer.

Unknown fields are rejected with 400. The acceptance timestamp is set by Resolve — accepted_at is not an accepted field.

agreement_typestring

The agreement the signer accepted. net_terms_agreement is the only accepted value.

Default:"net_terms_agreement"
Value:"net_terms_agreement"
Example:"net_terms_agreement"
signer_namestring, <= 255 charactersrequired

Full name of the person who accepted the agreement.

Example:"Dana Whitfield"
signer_emailstring, (email), <= 255 charactersrequired

Email address of the person who accepted the agreement.

Example:"dana.whitfield@buyer-example.com"
signer_titlestring or null, <= 255 characters

Job title of the person who accepted the agreement.

Example:"Controller"
authorization_attestationbooleanrequired

Confirms the signer is authorized to accept the agreement on behalf of the customer. Must be true — any other value is rejected with 400.

Value:true
Example:true
external_userinfoobjectrequired

Evidence captured from the signer's browser at the moment of acceptance. No properties other than ip and user_agent are accepted.

notify_buyerboolean

When true, Resolve emails the customer to confirm enrollment.

Default:false
Example:false
platform_user_idstring, <= 255 characters

Your own identifier for the user who accepted, stored alongside the acceptance record.

Example:"plat_user_8842"
platform_session_idstring, <= 255 characters

Your own identifier for the session the acceptance was captured in, stored alongside the acceptance record.

Example:"plat_sess_c31f9a"
curl -i -X POST \
  'https://docs.resolvepay.com/_mock/partners-api/openapi/customers/{customer_id}/net-terms-acceptance' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "signer_name": "Dana Whitfield",
    "signer_email": "dana.whitfield@buyer-example.com",
    "signer_title": "Controller",
    "authorization_attestation": true,
    "external_userinfo": {
      "ip": "203.0.113.42",
      "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36"
    },
    "platform_user_id": "plat_user_8842",
    "platform_session_id": "plat_sess_c31f9a"
  }'

Responses

An object representing the enrolled customer, with net_terms_status set to enrolled.

The response carries no acceptance identifier.

Bodyapplication/json
idstring
Example:"PMMlaE5wbg0"
merchant_idstring

ID of the sub-merchant this customer belongs to. Only present for single-merchant partners.

Example:"MER456789"
external_idstring or null

Optional customer identifier from your system. This value is not required to be unique and can be used with the external_id list filter.

Example:"CUS-123456"
created_atstring, (date-time)

Date the customer was created.

Example:"2020-01-01T00:00:00.750Z"
updated_atstring, (date-time)

Date the customer was last updated.

Example:"2020-01-01T00:00:00.750Z"
sourcestring
Enum:"QUICKBOOKS""MERCHANT_USER""ADMIN_USER""APPLICATION""CUSTOMER_USER""API"
Example:"MERCHANT_USER"
business_addressstring

Street address of the business' primary location.

Example:"111 Main Street"
business_citystring

City of the business' primary location.

Example:"San Francisco"
business_statestring

State or province of the business' primary location.

Example:"CA"
business_zipstring

US zip code of the business' primary location.

Example:"94104"
business_countrystring

Country of the business' primary location according to the ISO 3166-1 alpha 2 standard.

Example:"US"
business_age_rangestring

String indicating age of the business in years.

Enum:"0-2""2-5""5-10""10+"
Example:"5-10"
business_ap_emailstring

Email address of the business' accounts payable person or department.

Example:"ap@example.com"
business_ap_phonestring

Phone number of the business' accounts payable person or department.

Example:"(202) 456-1414"
business_ap_phone_extensionstring

Phone number extension of the business' accounts payable person or department.

Example:"123"
business_namestring

Full legal name of the business being applied for.

Example:"Example, Inc."
business_trade_namestring

Trade name of the business, if different than business_name.

Example:"Example Trading Company"
business_phonestring

Phone number of the business' primary location.

Example:"(202) 456-1414"
business_typestring

String indicating the business' type of legal entity.

Enum:"sole_prop_or_partnership""llc""corporation""nonprofit""government"
Example:"corporation"
emailstring, (email)

Email of the customer applying for terms.

Example:"user@example.com"
personal_name_firststring

First name of the person applying on behalf of the business.

Example:"James"
personal_name_laststring

Last name of the person applying on behalf of the business.

Example:"Bond"
personal_phonestring

Personal phone number of the customer representative applying for terms.

Example:"(202) 456-1414"
amount_approvedinteger, (int64)

Total amount of the credit approved.

Example:10000
amount_authorizedinteger, (int64)

Amount of the credit line reserved for authorized charges.

Example:10000
amount_availableinteger, (int64)

Current amount of the credit line available for purchases.

Example:10000
amount_balanceinteger, (int64)

Current balance on the customer's credit line.

Example:2000
amount_unapplied_paymentsinteger, (int64)

Current amount of a customer's unapplied payments.

Example:1000
default_termsstring or null

Set default terms that will apply to this customer's invoices. Can be overridden when requesting an advance.

Enum:"net7""net10""net10th""net15""net20""net30""net45""net60""net75""net90"
advance_ratenumber or null, (double), [ 0 .. 1 ]

The advance rate that will be used to determine the amount advanced for this customer's invoices.

Example:0.75
credit_statusstring or null

Current credit status of this customer. See #request-a-credit-check for more details.

Enum:"approved""hold""declined""pending""deactivated"null
net_terms_statusstring or null

Current net terms enrollment status of this customer. See #fetchCustomer for more details.

Enum:"enrolled""pending_enrollment""enrollment_expired"null
net_terms_enrollment_urlstring or null

The URL for a customer to complete enrollment requirements when net_terms_status is pending_enrollment. See #fetchCustomer for more details.

Example:"www.app.resolvepay.com/merchant-id/activate/123456"
net_terms_enrollment_expires_atstring or null, (date-time)

The date by which the customer must be enrolled in this net terms offer, not null when net_terms_status is pending_enrollment.

Example:"2020-01-01T00:00:00.750Z"
credit_check_requested_atstring or null, (date-time)

The date a credit check was requested.

Example:"2020-01-01T00:00:00.750Z"
archivedboolean

Boolean indicating if customer is archived.

Example:false
duns_numberstring or null

Dun & Bradstreet unique nine-digit identifier for businesses that is associated with a business's Live Business Identity

Example:"00-123-4567"
credit_decisionsArray of objects

Array of credit decisions made for this customer.

Response
{ "id": "PMMlaE5wbg0", "merchant_id": "MER456789", "external_id": "CUS-123456", "created_at": "2020-01-01T00:00:00.750Z", "updated_at": "2020-01-01T00:00:00.750Z", "source": "MERCHANT_USER", "business_address": "111 Main Street", "business_city": "San Francisco", "business_state": "CA", "business_zip": "94104", "business_country": "US", "business_age_range": "5-10", "business_ap_email": "ap@example.com", "business_ap_phone": "(202) 456-1414", "business_ap_phone_extension": "123", "business_name": "Example, Inc.", "business_trade_name": "Example Trading Company", "business_phone": "(202) 456-1414", "business_type": "corporation", "email": "user@example.com", "personal_name_first": "James", "personal_name_last": "Bond", "personal_phone": "(202) 456-1414", "amount_approved": 10000, "amount_authorized": 10000, "amount_available": 10000, "amount_balance": 2000, "amount_unapplied_payments": 1000, "default_terms": "net7", "advance_rate": 0.75, "credit_status": "approved", "net_terms_status": "enrolled", "net_terms_enrollment_url": "www.app.resolvepay.com/merchant-id/activate/123456", "net_terms_enrollment_expires_at": "2020-01-01T00:00:00.750Z", "credit_check_requested_at": "2020-01-01T00:00:00.750Z", "archived": false, "duns_number": "00-123-4567", "credit_decisions": [ {} ] }