Create Merchant
curl --request POST \
--url https://api.example.com/merchants \
--header 'Content-Type: application/json' \
--data '
{
"data.type": "<string>",
"data.attributes": {},
"data.attributes.AVS": "<string>",
"data.attributes.accountType": "<string>",
"data.attributes.accountName": "<string>",
"data.attributes.miscData": "<string>",
"data.attributes.personalInfo": {
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"dayPhone": "<string>",
"eveningPhone": "<string>",
"birthDate": "<string>",
"socialSecurity": "<string>"
},
"data.attributes.personalAddress": {
"line1": "<string>",
"line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>"
},
"data.attributes.businessInfo": {
"businessName": "<string>",
"ein": "<string>",
"phone": "<string>",
"email": "<string>",
"url": "<string>"
},
"data.attributes.businessAddress": {},
"data.attributes.bankInfo": {
"bankName": "<string>",
"accountOwnership": "<string>",
"accountType": "<string>",
"accountName": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>"
},
"data.attributes.verificationData": {
"ipAddress": "<string>",
"emailVerified": true,
"emailVerifiedTimestamp": "<string>",
"signature": "<string>",
"signatureTimestamp": "<string>",
"termsAccepted": true
},
"data.attributes.threatMetrixPolicy": "<string>",
"data.attributes.threatMetrixSessionId": "<string>"
}
'import requests
url = "https://api.example.com/merchants"
payload = {
"data.type": "<string>",
"data.attributes": {},
"data.attributes.AVS": "<string>",
"data.attributes.accountType": "<string>",
"data.attributes.accountName": "<string>",
"data.attributes.miscData": "<string>",
"data.attributes.personalInfo": {
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"dayPhone": "<string>",
"eveningPhone": "<string>",
"birthDate": "<string>",
"socialSecurity": "<string>"
},
"data.attributes.personalAddress": {
"line1": "<string>",
"line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>"
},
"data.attributes.businessInfo": {
"businessName": "<string>",
"ein": "<string>",
"phone": "<string>",
"email": "<string>",
"url": "<string>"
},
"data.attributes.businessAddress": {},
"data.attributes.bankInfo": {
"bankName": "<string>",
"accountOwnership": "<string>",
"accountType": "<string>",
"accountName": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>"
},
"data.attributes.verificationData": {
"ipAddress": "<string>",
"emailVerified": True,
"emailVerifiedTimestamp": "<string>",
"signature": "<string>",
"signatureTimestamp": "<string>",
"termsAccepted": True
},
"data.attributes.threatMetrixPolicy": "<string>",
"data.attributes.threatMetrixSessionId": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
'data.type': '<string>',
'data.attributes': {},
'data.attributes.AVS': '<string>',
'data.attributes.accountType': '<string>',
'data.attributes.accountName': '<string>',
'data.attributes.miscData': '<string>',
'data.attributes.personalInfo': {
firstName: '<string>',
lastName: '<string>',
email: '<string>',
dayPhone: '<string>',
eveningPhone: '<string>',
birthDate: '<string>',
socialSecurity: '<string>'
},
'data.attributes.personalAddress': {
line1: '<string>',
line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>'
},
'data.attributes.businessInfo': {
businessName: '<string>',
ein: '<string>',
phone: '<string>',
email: '<string>',
url: '<string>'
},
'data.attributes.businessAddress': {},
'data.attributes.bankInfo': {
bankName: '<string>',
accountOwnership: '<string>',
accountType: '<string>',
accountName: '<string>',
accountNumber: '<string>',
routingNumber: '<string>'
},
'data.attributes.verificationData': {
ipAddress: '<string>',
emailVerified: true,
emailVerifiedTimestamp: '<string>',
signature: '<string>',
signatureTimestamp: '<string>',
termsAccepted: true
},
'data.attributes.threatMetrixPolicy': '<string>',
'data.attributes.threatMetrixSessionId': '<string>'
})
};
fetch('https://api.example.com/merchants', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/merchants",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data.type' => '<string>',
'data.attributes' => [
],
'data.attributes.AVS' => '<string>',
'data.attributes.accountType' => '<string>',
'data.attributes.accountName' => '<string>',
'data.attributes.miscData' => '<string>',
'data.attributes.personalInfo' => [
'firstName' => '<string>',
'lastName' => '<string>',
'email' => '<string>',
'dayPhone' => '<string>',
'eveningPhone' => '<string>',
'birthDate' => '<string>',
'socialSecurity' => '<string>'
],
'data.attributes.personalAddress' => [
'line1' => '<string>',
'line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>'
],
'data.attributes.businessInfo' => [
'businessName' => '<string>',
'ein' => '<string>',
'phone' => '<string>',
'email' => '<string>',
'url' => '<string>'
],
'data.attributes.businessAddress' => [
],
'data.attributes.bankInfo' => [
'bankName' => '<string>',
'accountOwnership' => '<string>',
'accountType' => '<string>',
'accountName' => '<string>',
'accountNumber' => '<string>',
'routingNumber' => '<string>'
],
'data.attributes.verificationData' => [
'ipAddress' => '<string>',
'emailVerified' => true,
'emailVerifiedTimestamp' => '<string>',
'signature' => '<string>',
'signatureTimestamp' => '<string>',
'termsAccepted' => true
],
'data.attributes.threatMetrixPolicy' => '<string>',
'data.attributes.threatMetrixSessionId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/merchants"
payload := strings.NewReader("{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/merchants")
.header("Content-Type", "application/json")
.body("{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/merchants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data.id": "<string>"
}Merchants
Create Merchant
Create a new merchant account with full onboarding information
POST
/
merchants
Create Merchant
curl --request POST \
--url https://api.example.com/merchants \
--header 'Content-Type: application/json' \
--data '
{
"data.type": "<string>",
"data.attributes": {},
"data.attributes.AVS": "<string>",
"data.attributes.accountType": "<string>",
"data.attributes.accountName": "<string>",
"data.attributes.miscData": "<string>",
"data.attributes.personalInfo": {
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"dayPhone": "<string>",
"eveningPhone": "<string>",
"birthDate": "<string>",
"socialSecurity": "<string>"
},
"data.attributes.personalAddress": {
"line1": "<string>",
"line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>"
},
"data.attributes.businessInfo": {
"businessName": "<string>",
"ein": "<string>",
"phone": "<string>",
"email": "<string>",
"url": "<string>"
},
"data.attributes.businessAddress": {},
"data.attributes.bankInfo": {
"bankName": "<string>",
"accountOwnership": "<string>",
"accountType": "<string>",
"accountName": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>"
},
"data.attributes.verificationData": {
"ipAddress": "<string>",
"emailVerified": true,
"emailVerifiedTimestamp": "<string>",
"signature": "<string>",
"signatureTimestamp": "<string>",
"termsAccepted": true
},
"data.attributes.threatMetrixPolicy": "<string>",
"data.attributes.threatMetrixSessionId": "<string>"
}
'import requests
url = "https://api.example.com/merchants"
payload = {
"data.type": "<string>",
"data.attributes": {},
"data.attributes.AVS": "<string>",
"data.attributes.accountType": "<string>",
"data.attributes.accountName": "<string>",
"data.attributes.miscData": "<string>",
"data.attributes.personalInfo": {
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"dayPhone": "<string>",
"eveningPhone": "<string>",
"birthDate": "<string>",
"socialSecurity": "<string>"
},
"data.attributes.personalAddress": {
"line1": "<string>",
"line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>"
},
"data.attributes.businessInfo": {
"businessName": "<string>",
"ein": "<string>",
"phone": "<string>",
"email": "<string>",
"url": "<string>"
},
"data.attributes.businessAddress": {},
"data.attributes.bankInfo": {
"bankName": "<string>",
"accountOwnership": "<string>",
"accountType": "<string>",
"accountName": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>"
},
"data.attributes.verificationData": {
"ipAddress": "<string>",
"emailVerified": True,
"emailVerifiedTimestamp": "<string>",
"signature": "<string>",
"signatureTimestamp": "<string>",
"termsAccepted": True
},
"data.attributes.threatMetrixPolicy": "<string>",
"data.attributes.threatMetrixSessionId": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
'data.type': '<string>',
'data.attributes': {},
'data.attributes.AVS': '<string>',
'data.attributes.accountType': '<string>',
'data.attributes.accountName': '<string>',
'data.attributes.miscData': '<string>',
'data.attributes.personalInfo': {
firstName: '<string>',
lastName: '<string>',
email: '<string>',
dayPhone: '<string>',
eveningPhone: '<string>',
birthDate: '<string>',
socialSecurity: '<string>'
},
'data.attributes.personalAddress': {
line1: '<string>',
line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>'
},
'data.attributes.businessInfo': {
businessName: '<string>',
ein: '<string>',
phone: '<string>',
email: '<string>',
url: '<string>'
},
'data.attributes.businessAddress': {},
'data.attributes.bankInfo': {
bankName: '<string>',
accountOwnership: '<string>',
accountType: '<string>',
accountName: '<string>',
accountNumber: '<string>',
routingNumber: '<string>'
},
'data.attributes.verificationData': {
ipAddress: '<string>',
emailVerified: true,
emailVerifiedTimestamp: '<string>',
signature: '<string>',
signatureTimestamp: '<string>',
termsAccepted: true
},
'data.attributes.threatMetrixPolicy': '<string>',
'data.attributes.threatMetrixSessionId': '<string>'
})
};
fetch('https://api.example.com/merchants', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/merchants",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data.type' => '<string>',
'data.attributes' => [
],
'data.attributes.AVS' => '<string>',
'data.attributes.accountType' => '<string>',
'data.attributes.accountName' => '<string>',
'data.attributes.miscData' => '<string>',
'data.attributes.personalInfo' => [
'firstName' => '<string>',
'lastName' => '<string>',
'email' => '<string>',
'dayPhone' => '<string>',
'eveningPhone' => '<string>',
'birthDate' => '<string>',
'socialSecurity' => '<string>'
],
'data.attributes.personalAddress' => [
'line1' => '<string>',
'line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>'
],
'data.attributes.businessInfo' => [
'businessName' => '<string>',
'ein' => '<string>',
'phone' => '<string>',
'email' => '<string>',
'url' => '<string>'
],
'data.attributes.businessAddress' => [
],
'data.attributes.bankInfo' => [
'bankName' => '<string>',
'accountOwnership' => '<string>',
'accountType' => '<string>',
'accountName' => '<string>',
'accountNumber' => '<string>',
'routingNumber' => '<string>'
],
'data.attributes.verificationData' => [
'ipAddress' => '<string>',
'emailVerified' => true,
'emailVerifiedTimestamp' => '<string>',
'signature' => '<string>',
'signatureTimestamp' => '<string>',
'termsAccepted' => true
],
'data.attributes.threatMetrixPolicy' => '<string>',
'data.attributes.threatMetrixSessionId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/merchants"
payload := strings.NewReader("{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/merchants")
.header("Content-Type", "application/json")
.body("{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/merchants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"data.type\": \"<string>\",\n \"data.attributes\": {},\n \"data.attributes.AVS\": \"<string>\",\n \"data.attributes.accountType\": \"<string>\",\n \"data.attributes.accountName\": \"<string>\",\n \"data.attributes.miscData\": \"<string>\",\n \"data.attributes.personalInfo\": {\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"email\": \"<string>\",\n \"dayPhone\": \"<string>\",\n \"eveningPhone\": \"<string>\",\n \"birthDate\": \"<string>\",\n \"socialSecurity\": \"<string>\"\n },\n \"data.attributes.personalAddress\": {\n \"line1\": \"<string>\",\n \"line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"data.attributes.businessInfo\": {\n \"businessName\": \"<string>\",\n \"ein\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"<string>\",\n \"url\": \"<string>\"\n },\n \"data.attributes.businessAddress\": {},\n \"data.attributes.bankInfo\": {\n \"bankName\": \"<string>\",\n \"accountOwnership\": \"<string>\",\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"routingNumber\": \"<string>\"\n },\n \"data.attributes.verificationData\": {\n \"ipAddress\": \"<string>\",\n \"emailVerified\": true,\n \"emailVerifiedTimestamp\": \"<string>\",\n \"signature\": \"<string>\",\n \"signatureTimestamp\": \"<string>\",\n \"termsAccepted\": true\n },\n \"data.attributes.threatMetrixPolicy\": \"<string>\",\n \"data.attributes.threatMetrixSessionId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data.id": "<string>"
}Endpoint
POST https://api.digitzs.com/merchants
Overview
Use this endpoint to create a new merchant account. This comprehensive onboarding process collects personal, business, and banking information required for payment processing.Merchant accounts are created in real-time and can begin processing payments immediately upon approval.
Authentication
| Header | Value | Required |
|---|---|---|
x-api-key | Your API key | Yes |
Authorization | Bearer {appToken} | Yes |
appId | Your application ID | Yes |
Content-Type | application/json | Yes |
Request Body
Must be
"merchants"Merchant account attributes
AVS mode:
"Standard", "Strict", or "Disabled"Account type:
"personal" or "business"Name for the merchant account
Optional additional metadata
Personal information for account holder
Show Personal info properties
Show Personal info properties
Business address (required for business accounts)
Bank account information for deposits
Show Bank info properties
Show Bank info properties
Verification and compliance data
Show Verification properties
Show Verification properties
IP address of account holder during signup
Whether email has been verified
ISO 8601 timestamp of email verification
Account holder’s signature
ISO 8601 timestamp of signature
Must be
true - indicates terms acceptanceFraud detection policy:
"Default", "Strict", or "Disabled"ThreatMetrix session identifier for fraud screening
Example Request
{
"data": {
"type": "merchants",
"attributes": {
"AVS": "Standard",
"accountType": "business",
"accountName": "Acme Corporation",
"personalInfo": {
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"dayPhone": "4155551234",
"eveningPhone": "4155551234",
"birthDate": "01-15-1980",
"socialSecurity": "123456789"
},
"personalAddress": {
"line1": "123 Main Street",
"line2": "Suite 100",
"city": "San Francisco",
"state": "CA",
"zip": "94102",
"country": "USA"
},
"businessInfo": {
"businessName": "Acme Corporation",
"ein": "987654321",
"phone": "4155555000",
"email": "info@acme.com",
"url": "https://acme.com"
},
"businessAddress": {
"line1": "456 Market Street",
"city": "San Francisco",
"state": "CA",
"zip": "94102",
"country": "USA"
},
"bankInfo": {
"bankName": "Bank of America",
"accountOwnership": "business",
"accountType": "checking",
"accountName": "Acme Corporation",
"accountNumber": "1234567890",
"routingNumber": "026009593"
},
"verificationData": {
"ipAddress": "192.168.1.1",
"emailVerified": true,
"emailVerifiedTimestamp": "2024-01-15T10:00:00Z",
"signature": "John Doe",
"signatureTimestamp": "2024-01-15T10:05:00Z",
"termsAccepted": true
},
"threatMetrixPolicy": "Default",
"threatMetrixSessionId": "abc123session456"
}
}
}
Response
Success Response (201 Created)
{
"links": {
"self": "https://api.digitzs.com/merchants"
},
"data": {
"type": "merchants",
"id": "merchant_abc123xyz"
}
}
Unique merchant account identifier. Use this ID for all payment processing.
Code Examples
curl -X POST https://api.digitzs.com/merchants \
-H "x-api-key: your-api-key" \
-H "Authorization: Bearer your-app-token" \
-H "appId: your-app-id" \
-H "Content-Type: application/json" \
-d '{
"data": {
"type": "merchants",
"attributes": {
"AVS": "Standard",
"accountType": "business",
"accountName": "Acme Corporation",
"personalInfo": { ... },
"personalAddress": { ... },
"businessInfo": { ... },
"businessAddress": { ... },
"bankInfo": { ... },
"verificationData": { ... }
}
}
}'
const axios = require('axios');
async function createMerchant(merchantData) {
const response = await axios.post(
'https://api.digitzs.com/merchants',
{
data: {
type: 'merchants',
attributes: merchantData
}
},
{
headers: {
'x-api-key': 'your-api-key',
'Authorization': 'Bearer your-app-token',
'appId': 'your-app-id',
'Content-Type': 'application/json'
}
}
);
const merchantId = response.data.data.id;
console.log('New Merchant ID:', merchantId);
return merchantId;
}
import requests
def create_merchant(merchant_data):
url = "https://api.digitzs.com/merchants"
headers = {
"x-api-key": "your-api-key",
"Authorization": "Bearer your-app-token",
"appId": "your-app-id",
"Content-Type": "application/json"
}
payload = {
"data": {
"type": "merchants",
"attributes": merchant_data
}
}
response = requests.post(url, headers=headers, json=payload)
response.raise_for_status()
merchant_id = response.json()["data"]["id"]
print(f"New Merchant ID: {merchant_id}")
return merchant_id
<?php
function createMerchant($merchantData) {
$url = "https://api.digitzs.com/merchants";
$payload = json_encode([
"data" => [
"type" => "merchants",
"attributes" => $merchantData
]
]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"x-api-key: your-api-key",
"Authorization: Bearer your-app-token",
"appId: your-app-id",
"Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);
return $data["data"]["id"];
}
?>
require 'net/http'
require 'json'
def create_merchant(merchant_data)
uri = URI('https://api.digitzs.com/merchants')
request = Net::HTTP::Post.new(uri)
request['x-api-key'] = 'your-api-key'
request['Authorization'] = 'Bearer your-app-token'
request['appId'] = 'your-app-id'
request['Content-Type'] = 'application/json'
request.body = {
data: {
type: 'merchants',
attributes: merchant_data
}
}.to_json
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
data = JSON.parse(response.body)
data['data']['id']
end
AVS Modes
| Mode | Description |
|---|---|
Standard | Requires ZIP code match for card payments |
Strict | Requires full address match for card payments |
Disabled | No AVS verification required |
Important Notes
Sensitive Data: This endpoint handles sensitive personal and financial information. Ensure your application uses HTTPS and follows security best practices.
Real-Time Creation: Merchant accounts are created instantly and can process payments immediately after successful creation.
Fraud Prevention: Use ThreatMetrix integration for enhanced fraud detection during merchant onboarding.
Best Practices
- Validate Data: Validate all fields before submission to prevent errors
- Secure Collection: Use secure forms to collect sensitive information
- Email Verification: Verify email addresses before creating accounts
- Terms Acceptance: Ensure users explicitly accept terms and conditions
- IP Logging: Record accurate IP addresses for compliance
- Test Mode: Test thoroughly in sandbox before production deployment
Next Steps
Get Merchant Details
Retrieve merchant account information
Update Bank Info
Update merchant bank account details
⌘I

