Create a LIVE Merchant

Channel Partners can create new merchants underneath their account. The channel partner can create a new merchants via API requests or via our Prahsys Dashboard. Creating a live merchant allows the channel partners to truly transfer funds from the customer to the merchant.

  1. Submit the merchant application via API or Prahsys Dashboard
  2. Present the signing document to the merchant
  3. Prahsys underwriting team verifies the business
  4. Listen for the webhook to know when the merchant is ready for processing

Let’s now break down step by step how to create a new merchant.

Request Body

Get the full API Specification for the request body here.

{
  "legal": {
    "name": "string",
    "dba": "string",
    "locationName": "string",
    "taxId": "string",
    "address": {
      "street1": "string",
      "city": "string",
      "state": "string",
      "zipCode": "string"
    },
    "ownershipType": "string",
    "category": "string",
    "productsSold": "string",
    "phone": "string",
    "email": "string",
    "dateOfIncorporation": "string",
    "website": "string",
    "averageTicketPrice": "number",
    "highTicketPrice": "number",
    "averageMonthlyVolume": "number",
    "b2bTransactionPercentage": "number",
    "b2cTransactionPercentage": "number"
  },
  "owners": [
    {
      "title": "string",
      "firstName": "string",
      "lastName": "string",
      "percentage": "number",
      "ssn": "string",
      "dob": "string",
      "address": {
        "street1": "string",
        "city": "string",
        "state": "string",
        "zipCode": "string"
      },
      "phone": "string",
      "email": "string",
      "isControllingProng": "boolean",
      "isPrimaryContact": "boolean",
      "isPciContact": "boolean"
    }
  ],
  "bankAccount": {
    "name": "string",
    "routingNumber": "string",
    "confirmRoutingNumber": "string",
    "accountNumber": "string",
    "confirmAccountNumber": "string"
  }
}

Create the Merchant

You will submit the merchant application via an API request. We will return back a body containing the necessary information for you to start accepting payments when the merchant has been approved.

To create live merchants, you must use your live API Key.

Via API

curl -X POST 'https://api.prahsys.com/merchant/n1/merchant' \
--header 'Authorization: Bearer sk_live_123test1' \
--data-raw '[ABOVE JSON BODY]'
{
  "success": true,
  "message": "Merchant created and application submitted to underwriting team.",
  "data": {
    "merchant": {
      "id": "1234567890",
      "name": "Merchant Name",
      "slug": "merchant-name",
      "type": "LIVE",
      "enabledDirectPay": false,
      "readyForProcessing": false,
      "signed": false,
      "applicationId": 1234567890,
      "createdAt": "2023-01-01T00:00:00Z"
    },
    "merchantApplicationId": 1234567890,
    "signingUrl": "https://dashboard.prahsys.com/[merchant_slug]/application"
  }
}

Via Prahsys Dashboard

  1. Send the merchant to the Prahsys Dashboard
  2. The user will sign up with Prahsys via on our boarding flow.
  3. The user will need to fill out the necessary onboarding information by going to https://dashboard.prahsys.com/[CHANNEL_PARTNER_SLUG]/register

Signing Agreement Document

In order for the underwriting process to take place, the merchant must sign the necessary agreements. You can do this by sending them to the signing URL that we provide in the response body. The signing URL will be in the format of https://dashboard.prahsys.com/[merchant_slug]/application.

Underwriting Process

The underwriting process is the process of verifying the merchant’s business and ensuring that they are compliant with our policies. We have algorithms that will automatically verify the merchant’s business and approve them if they are compliant. If the merchant is not compliant, or we need to double-check some material, we will directly reach out to the merchant.

Listen for Webhook

After setting up your webhook endpoint in the Prahsys Dashboard, you can listen for requests for when the merchant is ready for processing. When the merchant is ready for processing, we will send a webhook to your endpoint with the following body:

{
  "merchantId": "some string",
  "message": "some string",
  "readyForProcessing": true
}