With BlueSnap Relay™, you can quickly onboard your customers and begin processing transactions on their behalf. On your platform, you can collect Know Your Customer (KYC) information, and using a simple API call, you can send that data to BlueSnap for automated underwriting and approval. This lets you begin processing transactions quickly and BlueSnap will never be visible to your merchants.

Here's the simple 4-step process:

  1. Collect your customer's information
  2. Create the merchant account
  3. BlueSnap reviews the account
  4. Create credentials for your merchant

Before you Begin

  • You must work with a BlueSnap Implementation Engineer to register your platform with us.
  • You must be set up to receive IPNs. To enable IPNs, you must set up a server and URL on your side and then configure IPNs in your BlueSnap account. Refer to Setting up IPNs for more information.

📘

Testing

After you have read the following steps, you can test the approval workflow.
Read through the steps below and then proceed to the testing instructions.


Step 1: Collect your customer's information

You can begin the process by leveraging BlueSnap's Secure Customer Data Fields or by capturing customer data in plain text.

Secure Customer Data Fields

BlueSnap's Secure Customer Data Fields capture and tokenize your customer's sensitive information, without this data ever touching your server. Secure Customer Data Fields are discrete input fields that give you complete control over the look and feel of your data collection form while giving customers the seamless experience of staying on your website. Find step-by-step implementation instructions here.

Capturing customer data in plain text

If you prefer to capture and store the customer's data yourself, you will need to build the form that captures and validates all the required information.


Step 2: Create the merchant account

When you have collected all your customer's information, use the server-to-server Create Merchant API request to send it to BlueSnap for review. If you're using the Secure Customer Data Fields, send your token within pfToken in the request. If you're capturing the customer's data yourself, you will send all the data in plaintext to BlueSnap in the request.

For instructions on using the Create Merchant API, refer to the page corresponding to your customer's country:


Step 3: BlueSnap reviews the merchant account

You will receive an IPN based on the outcome of the review.

📘

Note

As updates occur, this IPN (Webhook) may be sent multiple times during the merchant review process. You will receive a notification when the account is received, and when accounts are approved for processing and payout. To structure your workflows around this notification, please review the details below.

The IPN can contain the following:

  • Merchant Name (merchantName)
  • Merchant Email (merchantEmail)
  • Merchant ID (merchantId) [The presence of this depends on the review outcome.]
  • Sandbox ID (sandboxId)
  • Processing (accountCanProcess) = Y, N, or Pending
  • Payout (payoutStatus) = Y, N, or Pending

Use the IPN details to determine what to do next.

Merchant ID Processing Payout Next Step
Y Y You can create the merchant credentials and begin processing.
Y Pending You can create the merchant credentials to begin processing.
You will receive a second IPN when the merchant is approved for payout. This scenario represents Conditional Approval.
Pending Pending You cannot create merchant credentials to begin processing.
You will receive a second IPN when the merchant is approved.
N N The merchant has been declined; no further updates will be sent.

For more information on how to manage Underwriting and Approval Workflows, be sure to review Bluesnap’s Partner Portal instructions.


Step 4: Create credentials for your merchant

Use the Merchant ID (merchantId) from the IPN (Step 3) to create the merchant's credentials using the Get Merchant Credentials API request. These credentials are used to send transactions to BlueSnap on behalf of the merchant.

If your request is successful, you will receive a 200 OK response from BlueSnap with the merchant's credentials.

New Get Merchant API Credentials request

https://platform.bluesnap.com/services/2/merchants/api-credentials

Get Merchant API Credentials Parameters

Parameter Required Details Description
approvalTesting No boolean Default=false. If you include this parameter and set it to true, you are testing the feature.
merchantId Yes numeric The merchant ID assigned to the merchant and included in the IPN.
username No string The username for the merchant account. If you don't include it, the response will provide the username.
password No string The password for the merchant account. Minimum 12 characters and maximum 128 characters. Find all password rules here. If you don't include a password, the response will provide it.
dataProtectionKey No string The Data Protection Key for the merchant account.
If you don't include it, the response will provide it.

The Data Protection Key is required to perform certain functions.

Get Merchant API Credentials Request examples

curl -v -X POST https://platform.bluesnap.com/services/2/merchants/api-credentials \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
  "merchantId":857345
}
curl -v -X POST https://platform.bluesnap.com/services/2/merchants/api-credentials \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
  "merchantId":857345,
  "username":"MerchantUsername",
  "password":"kjhdA@3aA423",
  "dataProtectionKey": "Kru5Y50p"
}
curl -v -X POST https://platform.bluesnap.com/services/2/merchants/api-credentials \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
  "approvalTesting": true,
  "merchantId": 857345,
  "username": "MerchantUsername",
  "password": "kjhdA@3aA423",
  "dataProtectionKey": "Kru5Y50p"
}

Get Merchant API Credentials Response examples

{
    "merchantId": 857345,
    "username": "MerchantUsername",
    "password": "kjhdA@3aA423",
    "dataProtectionKey": "Kru5Y50p"
}

Test the merchant approval process

Before you actually create a merchant account, you can test the approval workflow.

  1. Follow the instructions in Step 2 above. However, at the beginning of the API call, include the approvalTesting parameter using the following details:

    • If you include this parameter, you are testing the customer-onboarding workflow; the customer account is NOT created but you will receive an IPN and an email as you would in an actual onboarding.
    • Type: string
    • Valid values:
      • APPROVED
      • RECOMMEND_APPROVE
      • RECOMMEND_DECLINE
      • DECLINE
  2. The API call bypasses the BlueSnap review process explained above and you receive the response that corresponds to the approvalTesting parameter value you sent. (Refer to the partial code sample below for details.)

  3. You receive the IPN and the log-in email right away.

    Notes:

    • To receive an IPN, you must have configured IPNs on your system.
    • The Merchant ID you receive in the IPN and the API credentials are only valid for the sandbox account.
  4. Use the Merchant ID (merchantId) from the IPN to create the merchant's credentials using Step 4 above and include a valid approvalTesting value.

curl -v -X POST https://platform.bluesnap.com/services/2/merchants/application \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{ 
  "approvalTesting": "APPROVED", 
  "businessInfo": {
    "businessName": "My Business",
    "legalName": "Business Affiliates, LLC",
  ....

Start processing transactions!

You can begin processing transactions.