Quick Start

This section provides step-by-step instructions for building a basic application using the KyckGlobal Platform. The steps describe obtaining an auth token, onboarding a Payer Organization, adding a Payee, and submitting a payment.

Follow the steps below to build a basic application using the KyckGlobal Platform:

1. Send Authentication Request#

Send a POST request to the User Auth endpoint with your Organization's email address and password in the body. Use the URL and JSON shown below and replace the email address and password with your KyckGlobal Sandbox credentials:

URL

https://sandboxapi.kyckglobal.com/apis/userAuth

Headers

  • Content-Type - application/json

Body

{
"email":"Partner_Email@partner.com",
"password":"password"
}

2. Capture the Auth Token#

Capture the token returned by the User Auth resource. The resource returns a token in a JSON object, as shown in the example below:

{
"success": true,
"token": "JWT eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyVHlwZSI6IlBhcnRuZXIiLCJlbWFpbCI6InBhdWxAc2hvYXAuY29tIiwicm9sZSI6IlBhcnRuZXItU3VwZXItQWRtaW4iLCJ1c2VySWQiOiJQYXJ0bmVyMDAyIiwiaWF0IjoxNTU4MzY0ODQ4LCJleHAiOjE1NTg0NTEyNDh9.9RlJ-4L1TbpYeFuqPIm14jbGjAnt7k72-M16kR6aWP8",
"user": {
"role": "Partner-Super-Admin",
"userType": "Partner",
"userId": "Partner002",
"userAccStatus": "active",
"userDisabled": false,
"accountActive": true,
"email": "email@example.com"
}
}
info

If you used Payer Credentials to create the token, skip to step 4 to create a new Payee. You will need you Payer Organization's Payer ID. If you created the token using Partner credentials, continue with step 3.

3. Create a new Payer#

Create a new Payer by sending a POST request to the Create Payer Organization endpoint. Send the token you obtained in the previous step in the request header. The token is linked with your Partner Organization and gives you permission to create a Payer Organization. Use the URL, headers, and body shown below to create your request:

URL

https://sandboxapi.kyckglobal.com/apis/payerOnboarding

Headers

  • Authorization - Token String
  • Content-Type - application/json

Body

{
"email": "example@email.com",
"payerDetails": {
"mailingAddress": {
"mailingAddressLineOne": "123 Main St",
"mailingAddressLineTwo": "Suite 224",
"mailingCity": "San Francisco",
"mailingCountry": "USA",
"mailingPostalCode": "89890",
"mailingState": "CA"
},
"legalName": "Payer LLC",
"taxIdType": "EIN",
"taxid": "909090909",
"pNumber": "9999999999",
"salesChannel": "Partner's Legal Name",
"dba": "Partner's DBA Name"
},
"primaryContact": {
"department": "Human Resources",
"mobile": 4445556692,
"firstname": "Jane",
"lastname": "Smith",
"primaryEmail": "jsmith@example.com",
"title": "Manager"
},
"standardMonthlyFee": 12,
"tieredMonthlyFee": 13,
"financialAccounts": {
"accountNumber": "11111111111",
"routingNumber": "999999999",
"accountName": "HR",
"accountType": "Checking"
}
}

The Create Payer Organization operation definition provides details about the parameters in the request body. The Create Payer Organization operation returns a JSON object containing details about the Payer Organization.

4. Obtain Payer ID#

Obtain the Payer Organization's Payer ID by sending a GET request to the Get Payer Organizations by Partner endpoint with your Partner ID at the end of the request. Your KyckGlobal account representative will provide you with a Partner ID when you create your account. Use the URL and headers below to submit the request:

URL

https://sandboxapi.kyckglobal.com/apis/fetchPayersByPartnerId/{{PartnerID}}

Headers

  • Authorization - {token}
  • Content-Type - application/json

The operation returns a JSON object that includes values for the "organizationId" property for each Payer Organization that is associated with the Partner. The example below shows the "organizationId" property:

"organizationId": "K123456P"

The Get Payer Organizations by Partner operation definition includes an example of the entire response. Capture the "organizationId" value associated with the Payer that you want to use to create a Payee.

5. Add a new Payee#

Add a new Payee record by sending a POST request to the Onboard Single Payee endpoint. Use the URL, headers, and body shown below to create your request:

URL

https://sandboxapi.kyckglobal.com/apis/singlePayeeCreatingAPI

Headers

  • Authorization - {token}
  • Content-Type - application/json

Body

{
"email": "example_payee@email.com",
"payeeDetails":{
"payeeFirstName": "Joe",
"payeeLastName": "Smith",
"PayeeDateofBirth": "02/04/1995",
"PayeeGender": "male",
"pNumber": "5554443321",
"ptaxIdType": "SSN",
"ptaxid": "333333333",
"pctaxId": "333333333",
"pAddress": "555 Rose Ave.",
"mAddress": "1234 Hollywood Blvd",
"pcity": "Las Angeles",
"pstate": "CA",
"pcountry": "USA",
"ppostalCode": "90310",
"mcity": "Clairmont",
"mstate": "CA",
"mcountry": "USA",
"mpostalCode": "90030",
"pemail": "name@mail.com"
},
"payerId":"Payer0017",
"organizationId": "K132456P",
"payerLegalName": "James Smith",
"userDisabled": false,
"payeeStatus": "Onboarded",
"payeeFinancialAccounts": {
"routingNumber": "021000021",
"accountNumber": "3333333333355",
"accountName": "Home",
"accountType": "Checking",
"accountApproved": true,
"allocation": 100,
"primaryAccount": true,
"accountStatus": "active"
}
}

Set the "organizationId" value to the value you captured in the previous step. The operation returns a JSON object that indicates that the Payee was successfully created.

6. Obtain Payee ID#

Obtain the Payee ID for the Payee that you just created by sending a GET request to the Get All Payees by Payer endpoint with the Payer ID at the end of the URL. Use the URL and headers below to submit the request:

URL

https://sandboxapi.kyckglobal.com/apis/fetchPayeesOfPayer/{{organizationId}}

Headers

  • Authorization - {token}
  • Content-Type - application/json

The operation returns a JSON object that includes values for the "payeeId" property for each Payee that is associated with the Payer. The example below shows the "payeeId" property:

"payeeId": "Payee0007"

The Get All Payees by Payer operation definition includes an example of the entire response. Capture the "payeeId" value, which you will use to create a payment.

7. Submit a Payment#

Submit a payment for processing by sending a POST request to the Create Bulk Payment endpoint. Send Payee and payment information, including the payeeID you captured in the previous step, in the body of the request. Use the URL, headers, and body in the example shown below to submit a sample payment:

URL

https://sandboxapi.kyckglobal.com/apis/bulkPaymentByJSON

Headers

  • Authorization - {token}
  • Content-Type - application/json

Body

[ {
"payeeDetails":
{ "payeeId": "Payee001",
"email": "email@domain.com",
"payeeName": "Jane Seymore" },
"paymentReason": "Contract Payment",
"TID":"947777777",
"paymentData":
{
"effectivePaymentDate": "03/10/2019",
"amount": 1250.55 }
} ]

Response

{
"success": true,
"fileId": "Payer00171560179888573",
"accept": [
{
"payeeDetails": {
"payeeId": "Payee1705",
"email": "example_payee@email.com",
"payeeName": "Joe Smith"
},
"paymentReason": "Contract Payment",
"TID": "333333333",
"paymentData": {
"effectivePaymentDate": "06/14/2019",
"amount": 105.27
},
"payerId": "Payer0017",
"organizationId": "K132456",
"result": true,
"matchPath": [],
"payerTXId": "444444445",
"payerEmail": "example@email.com",
"payerName": "Payer LLC",
"createdBy": "example@email.com",
"createdByUserType": "Payer-Super-Admin",
"payerMailingAddress": {
"mailingPostalCode": "90080",
"mailingState": "CA",
"mailingCity": "San Francisco",
"mailingAddressLineOne": "123 Main St.",
"mailingCountry": "USA"
},
"achType": "regular"
}
],
"reject": []
}
Congratulations

You have completed the Quick Start and have a basic KyckGlobal API Client.