For the complete documentation index, see llms.txt. This page is also available as Markdown.

Payment Methods

Register CVV for a card payment

post

Register an encrypted CVV token for a specific card and invoice

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

card_idstringRequired

Card ID

Body

CVV registration information

cvv_secretstringOptional
product_idstringOptional
product_typestring · enumOptionalPossible values:
providerstring · enumOptionalPossible values:
Responses
201

Created

application/json

Create card CVV response

successbooleanOptional
post/customers/{id}/payment-methods/{card_id}/cvv
POST /customers/{id}/payment-methods/{card_id}/cvv HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 89

{
  "cvv_secret": "text",
  "product_id": "text",
  "product_type": "invoice",
  "provider": "evervault"
}
{
  "success": true
}

Calculate card payment fees

post

Calculate payment fees for a specific card payment method

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

card_idstringRequired

Card ID

Body

Request body for calculating card payment fees

amountstringOptionalExample: 100.00
currencystring · enumOptionalExample: USDPossible values:
Responses
200

OK

application/json

Response containing calculated payment fees for card payments

fee_percentage_for_customerstringOptionalExample: 2.50
fee_percentage_for_partnerstringOptionalExample: 1.50
fixed_fee_amount_customerstringOptionalExample: 0.50
fixed_fee_amount_partnerstringOptionalExample: 0.25
relative_fee_amount_customerstringOptionalExample: 2.50
relative_fee_amount_partnerstringOptionalExample: 1.50
post/customers/{id}/payment-methods/{card_id}/fees
POST /customers/{id}/payment-methods/{card_id}/fees HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 36

{
  "amount": "100.00",
  "currency": "USD"
}
{
  "fee_percentage_for_customer": "2.50",
  "fee_percentage_for_partner": "1.50",
  "fixed_fee_amount_customer": "0.50",
  "fixed_fee_amount_partner": "0.25",
  "relative_fee_amount_customer": "2.50",
  "relative_fee_amount_partner": "1.50"
}

Delete a customer's payment method

delete

Delete this payment method

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

method_idstringRequired

Payment Method ID

Responses
201

Created

application/json

Delete a payment method

responsestringOptional
delete/customers/{id}/payment-methods/{method_id}
DELETE /customers/{id}/payment-methods/{method_id} HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
  "response": "text"
}

Change a customer's default payment method

patch

Change the customer's default payment method to this one

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

method_idstringRequired

Payment Method ID

Responses
201

Created

application/json

Change default method response

responsestringOptional
patch/customers/{id}/payment-methods/{method_id}/default
PATCH /customers/{id}/payment-methods/{method_id}/default HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
  "response": "text"
}

Create a customer bank account

post

Create a new bank account with the provided information. Only one of USAccountData or CAAccountData must be sent, matching AccountDataType.

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

Body

Bank account information. Only one of USAccountData or CAAccountData must be sent, matching AccountDataType.

account_data_typestring · enumOptionalPossible values:
custom_namestringOptional
institution_namestringOptional
receiver_namestringOptional
subtypestring · enumOptionalPossible values:
typestring · enumOptionalPossible values:
Responses
201

Created

application/json

Create bank account response

idstringOptional
post/customers/{id}/payment-methods/bank
POST /customers/{id}/payment-methods/bank HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 300

{
  "account_data_type": "us",
  "ca_account_data": {
    "account_number": "text",
    "institution_code": "text",
    "transit_number": "text"
  },
  "custom_name": "text",
  "institution_name": "text",
  "receiver_name": "text",
  "subtype": "checkings",
  "type": "depository",
  "us_account_data": {
    "account_number": "text",
    "routing_number": "text"
  }
}
{
  "id": "text"
}

Create a customer card

post

Create a new card with the provided tokenized information

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2clientCredentialsRequired
Token URL:
Path parameters
idstringRequired

Customer ID

Body

Tokenized card information

card_provider_tokenstringOptional
custom_namestringOptional
providerstring · enumOptionalPossible values:
Responses
201

Created

application/json

Create card response

idstringOptional
post/customers/{id}/payment-methods/card
POST /customers/{id}/payment-methods/card HTTP/1.1
Host: public-api.alternativepayments.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 239

{
  "address": {
    "city": "text",
    "country": "text",
    "country_code": "text",
    "postal_code": "text",
    "state": "text",
    "state_code": "text",
    "street_address": "text",
    "subpremise": "text"
  },
  "card_provider_token": "text",
  "custom_name": "text",
  "provider": "evervault"
}
{
  "id": "text"
}

Last updated

Was this helpful?