Skip to main content
POST
/
api
/
v2
/
entity
Create entity
curl --request POST \
  --url https://demo.api.loopcrypto.xyz/api/v2/entity \
  --header 'Content-Type: application/json' \
  --data '{
  "code": "123456",
  "entityName": "Loop Inc.",
  "email": "info@loopcrypto.com",
  "logoUrl": "https://loopcrypto.xyz/logo.png",
  "paymentTypes": [
    {
      "networkId": 1,
      "settlementType": "crypto",
      "payoutDestinations": [
        "0x1B3181390bfCb83A98369f660d11c6d73345f60d"
      ],
      "tokens": [
        {
          "tokenSymbol": "USDC",
          "tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
          "isDefault": true
        }
      ]
    }
  ],
  "fiatSettlementSettings": {
    "customerType": "Individual",
    "firstName": "John",
    "lastName": "Smith",
    "email": "john.smith@loopcrypto.xyz"
  }
}'
{
  "entityId": "1234567890abcdef",
  "entityName": "Loop Inc.",
  "email": "info@loop.com",
  "contracts": [
    {
      "networkId": 1,
      "contractAddress": "0xdAC17F958D2ee523a2206206994597C13D831ec7"
    }
  ],
  "payoutDestinations": [
    {
      "networkId": 1,
      "walletAddress": "0x1234567890abcdef",
      "isDefault": true,
      "payoutDestinationId": "1234567890abcdef",
      "settlementType": "Crypto"
    }
  ],
  "fiatSettlementAccount": {
    "provider": "Fern",
    "kycStatus": "pending",
    "kycLink": "https://www.google.com",
    "bankAccountStatus": "Pending",
    "bankAccountFormLink": "https://www.google.com"
  },
  "paymentTypes": [
    {
      "symbol": "USDC",
      "networkId": 1,
      "tokenId": "d9e1f2a3-b4c5-6d7e-8f9g-0h1i2j3k4l5m",
      "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "decimals": 6,
      "isDefault": true
    }
  ]
}

Body

application/json
entityName
string
required

The name that identifies the organization

Example:

"Loop Inc."

email
string
required

The email address that will be used to create an administrator account, granting full access to manage the company's settings and configurations through the web portal

Example:

"info@loopcrypto.com"

paymentTypes
object[]
required

Configuration specifying which payment networks (e.g. Ethereum, Polygon) and tokens (e.g. USDC) the entity will accept payments in. Each payment type includes a destination wallet address where the funds will be sent when a payment is received

code
string

A one-time authentication code that authorizes entity creation. This code is required when creating an entity in the production environment, but is optional when creating an entity in the demo environment.

Example:

"123456"

logoUrl
string

(Optional) The URL of the logo to use for the organization

Example:

"https://loopcrypto.xyz/logo.png"

fiatSettlementSettings
object

(Optional) The configuration settings specifically for fiat settlement. This includes settings like the customer type (individual or business) and contact email address.

Note: Only required if 1 or more of the payment types have a settlement type of fiat

Response

Ok

entityId
string
required

The unique identifier for the entity

Example:

"1234567890abcdef"

entityName
string
required

The name that identifies the organization

Example:

"Loop Inc."

email
string
required

The primary contact email address used for entity communications and notifications

Example:

"info@loop.com"

contracts
object[]
required

A list of contract addresses deployed across different networks for this entity

payoutDestinations
object[]
required

The payout destinations supported by the organization

fiatSettlementAccount
object
required

The fiat settlement configuration for the entity when fiat settlement is enabled for any payout destination

paymentTypes
object[]
required

The payment types supported by the organization

I