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:
- Collect your customer's information
- Create the merchant account
- BlueSnap reviews the account
- 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:
- US Customer
- Australian Customer
- Canadian Customer
- Create an EU or UK Customer
- Customers anywhere in the rest of the world
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
, orPending
- Payout (
payoutStatus
) =Y
,N
, orPending
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.
-
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
-
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.) -
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.
-
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.