---
title: "Create account"
method: POST
path: "/accounts"
tags: ["Account"]
---

# Create account

`POST /accounts`

Registers a new merchant account and its associated manager.

## Request body

- object
  - `name` string, required — Unique business name.
  - `slug` string, required — Unique slugged name derived from `name` (e.g. "My Account" → "my_account").
  - `country_code` string, required — ISO 3166-1 alpha-2 country code.
  - `email` string, email, required
  - `password` string, required — Strong password (lower + upper case + symbol + number).
  - `image` string — Base64-encoded image or URL for the account logo.
  - `locale` string — Notifications will be sent in this language (e.g. `es`, `en`).
  - `business_url` string — URL of the business.
  - `product_description` string — Description of the product or service.
  - `fee_percent` number — Fee applied to orders (including platform's fee).
  - `fee_amount` number — Fixed fee applied to orders (including platform's fee).
  - `fee_platform_percent` number — Platform fee percentage applied to orders.
  - `fee_platform_amount` number — Fixed platform fee applied to orders.
  - `fee_credit` number — Credit fee applied to orders (including platform's fee).
  - `fee_shipping_1` number — Shipping fee for small-sized packages.
  - `fee_shipping_2` number — Shipping fee for medium-sized packages.
  - `fee_shipping_3` number — Shipping fee for large-sized packages.
  - `default_parcel_size` string — Default parcel size.
  - `default_fee` number — Default fee.
  - `default_gateway` 'ADDON' | 'ADDON_V2' | 'ADDON_ICE' | 'ADDON_HPP' | 'ADDON_APPLE_PAY' | 'AZUPAY' | 'BANKWIRE' | 'WALLET' | 'DCP' | 'EPX' | 'REDSYS_V2' | 'REDSYS_APPLE_PAY' | 'REDSYS_AUTH' | 'STRIPE' | 'DOCOMO' | 'SIBS_MBWAY' | 'SIBS_MULTIBANCO' | 'SEQURA' | 'UNNAX' | 'PAYPAL' | 'BIZUM' | 'INESPAY' — Default payment gateway.
  - `allowed_gateways` string[] — List of allowed gateways besides the default gateway.
  - `template_folder` string — Template folder for the Checkout.
  - `custom_domain` string — Custom domain URL.
  - `allow_insurance` 0 | 1 — Allow orders to have an insurance option.
  - `allow_shipping` 0 | 1 — Allow orders to have a shipping option.
  - `allow_select_parcel` 0 | 1 — Allow the seller to select the parcel size.
  - `allow_receipt` 0 | 1 — Allow sending a receipt when a payment is performed.
  - `allow_receipt_self` 0 | 1 — Allow receiving a receipt in the account email when a payment is performed.
  - `billing_address` string — Company's billing address.
  - `billing_address_line_2` string — Company's billing address line 2.
  - `billing_city` string
  - `billing_state` string
  - `billing_zip` string
  - `billing_country` string
  - `vat_id` string — Company's VAT identification number.
  - `extra_billing_information` string — Extra billing information.
  - `legal_address` string — Company's legal address.
  - `legal_address_line_2` string
  - `legal_city` string
  - `legal_state` string
  - `legal_zip` string
  - `legal_country` string
  - `representative_name` string — Name of the company's representative.
  - `representative_phone` string — Phone of the company's representative.
  - `representative_email` string, email — Email of the company's representative.
  - `twitter_token` string — Twitter credentials to share orders.
  - `twitter_secret` string — Twitter credentials to share orders.
  - `facebook_id` string — Facebook credentials to share orders.
  - `facebook_token` string — Facebook credentials to share orders.
  - `parent_id` integer — Parent account ID. Only for subaccounts.
  - `addon_key` string — Payment gateway credential.
  - `addon_secret` string — Payment gateway credential.
  - `addon_account` string — Payment gateway credential.
  - `addon_rebate` string — Payment gateway credential.
  - `psd2_enabled` 0 | 1 — Whether the account is PSD2 enabled.
  - `receipt_subject` string — Subject of the email sent to the customer (selected pricing plans only).
  - `receipt_message` string — Message of the email sent to the customer (selected pricing plans only).
  - `payment_success_message` string — Message shown to customers on successful payment (selected pricing plans only).

## Response `200`

Account created

- Account
  - `self` string
  - `merchant_id` string — Unique merchant identifier (addon_key).
  - `name` string
  - `email` string, email
  - `currency` string
  - `country_code` string
  - `business_url` string, nullable
  - `business_phone` string, nullable
  - `business_description` string, nullable
  - `image_url` string, nullable
  - `public_key` string
  - `secret_key` string — Secret API key. Only visible to the account owner.
  - `allow_shipping` 0 | 1
  - `value_shipping` number
  - `is_active` boolean
  - `psd2_enabled` 0 | 1
  - `allowed_gateways` string[]
  - `gateways` object[], nullable — List of configured payment gateway objects for the account.
  - `default_gateway` string, nullable
  - `created_at` string, date-time, nullable

## Other responses

- `422` — Validation error

## Changes

- **2026-03-11** `ff825f6602c8` — 1 breaking, 1 warning, 53 info
  - added the new required request property `slug`
  - the `country_code` request property's maxLength was set to `2`
  - added the new optional request property `addon_account`
  - added the new optional request property `addon_key`
  - …51 more

[Change history](https://skmtc.dev/truust-io/apis/truust-api/changes/accounts/post.md)

---

[API](https://skmtc.dev/truust-io/apis/truust-api.md) · [All operations](https://skmtc.dev/truust-io/apis/truust-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/truust-io/truust-api/revisions/cc81e28726b9/schema)
