Introduction

Flykk® combines payment, banking and eMoney services, which also leverage our Paydentity™ KYC service.

As such the integration for the Flykk service is very similar to the Paydentity product as we perform the same identity verification and payment instrument validation (PIV) before provisioning the Flykk user with an IBAN based account in which to store their eMoney.

KYC data is collected to instantiate KYC however in the case where insufficient quality or quantity of KYC data is parsed, Paydentity™ will request to collect the KYC data in different methods listed below.

 

– Card Scheme Address Verification Data (US, UK, CA)

– Electronic Verification Sources (UK, US, Australia, Germany, Canada and others)

– BankID (Nordics)

– Government Document Verification Sources (Australia, China)

– Proof of Address Document upload

– Proof of Living Document upload

– Payment Instrument Verification (PIV)

– Other Electronic Sources

 

 

For a smoother user experience, it is encouraged that KYC data known should be passed into the API body request by the merchant in the initial call which Paydentity™ will conduct its verification process.

Our patented Payment Instrument Verification (PIV) could be required in certain cases where further assurance on identity is needed or if the card is will be used for payouts.

Once the customer’s identity has been verified, iSignthis in accordance with European Union and Australian Anti-money laundering requirements, Paydentity™ will screen for Politically Exposed Person (PEP), Sanctions (UK, US, CA, AU, EU, UN), Law Enforcement, Criminal Court Judgments and Adverse Media.

The steps involved during the process are: 

1. Create API Request

2. Receive API Request Response

3. iSignthis Transaction page

4. Receive notifications

5. Result page

 

1. Create API Request

The request API consists the below four steps: Method, URL, Header and Body

Request Method: POST.

The API is accessed from the Request URL. This is a combination of our URL and the addition of the following text at the end of the URL: “/v1/authorization/”

URL For Production Environment:

https://gateway.isignthis.com/v1/authorization/

Fill in the appropriate header information. The API Header information is provided by the iSignthis Merchant Support team.

Field Name Field Value
From Api client name
Authorization Bearer API token
Content_type application/json
Example:
Field Name Field Value
From Test_APIClient
Authorization Bearer TEXnkvZCtFucXebHYwrYLIGbkhjygvBTbxWELCCnCQJTKsx6bYNh5fOjEE
Content_type application/json

In order to generate the “Transaction API call” the following API Objects are required. Each object has a number of specific attributes in order to be successful.

Below you can view each object name, description and whether is required or not. Also, the glossary column has a link that directs you to detailed information about each object, including examples.

Object name Description Required Glossary
merchant Information of the merchant Yes Merchant object
transaction Information of the transaction Yes Transaction object
client Information of the client Yes Client Object
account Information of the account Yes Account object

In the API body request you need to modify with the ones provided by merchant support. 

Test_Merchant” text should be replaced with the “merchant_id” provided by iSignthis Merchant support team.

“id”:“Test_Merchant”

The API call consists of required fields to proceed with the payment:

– first_name

– last_name

– dob

– gender

– email

– mobile

– billing_address_street

– billing_address_street_number

– billing_address_city

– billing_address_postal_code

– billing_address_country

– residential_address_street

– residential_address_street_number 

– residential_address_city

– residential_address_postal_code

– residential_address_subdivision (US,AU,CA)

– residential_address_country

– citizen_country

 

 

 Sample JSON body for Paydentity:

{
    
"workflow": "FLYKK",
    "merchant":  { 
           "id": "Test_Merchant"
        },
    "transaction": {
        "id": "Test_ID",
        "amount": "100",
        "currency": "AUD",
        "reference": "Test_Ref"
    },
    "client": {
        "first_name": "Shana",
        "last_name": "Barrows",
        "email":"shana.barrows@isignthis.com",
        "mobile": "+61434444444",
        "residential_address_street": "Arthur Street",
        "residential_address_secondary": "PO Box 24",
        "residential_address_street_number": "42",
        "residential_address_city": "Ashfield",
        "residential_address_postal_code": "2131",
        "residential_address_subdivision": "NSW",
        "residential_address_country": "AU",
        "billing_address_street": "Arthur Street",
        "billing_address_secondary": "PO Box 24",
        "billing_address_street_number": "42",
        "billing_address_city": "Ashfield",
        "billing_address_postal_code": "2131",
        "billing_address_subdivision": "NSW",
        "billing_address_country": "AU"

    },
    "account": {
        "identifier": "Test_ID"
    }
}

 

NOTE: In the “account” object –  identifier is the customer ID that you assigned to your customer. Each “identifier” must be unique and paired with the customer for future transactions.

2. API Request Response

Once the POST is sent, a message will be received as a response. 

This response is important as it provides a redirect_url that is used to redirect the customer to in order to complete the transaction.

This URL is for “redirect mode”, a different approach can be taken if you would like to use “embedded mode” in order to keep the user in your own website, more on this in Section 3.

 

Field Type Description
uid “String” Unique response identification code. ( “id” is a legacy field)  
secret “String” The transaction secret code that can be used to validate ISX notifications.  
mode “String” The transaction mode detected by iSignthis.  
original_message Object Information about your transaction request.  
state “String” Information about the state of the transaction  
compound_state “String” The ISX meaningful state of the transaction  
redirect_url “String” The redirect URL  

 

If successful it will have the following format:

Sample JSON Payment Response:

{
    
"id": "e6988b4a-ed1c-4104-9caf-af6bb8769756",
    "uid": "e6988b4a-ed1c-4104-9caf-af6bb8769756",
    "secret": "159173ee-6309-4806-b499-d2598a2ed21e",
    "context_uid": "e6988b4a-ed1c-4104-9caf-af6bb8769756",
    "mode": "registration",
   
    "original_message": {
        "merchant_id": "Test_Merchant",
        "transaction_id": "Test_ID",
        "reference": "Test_Ref"
    },
    "transactions": "[]",
    "state": "PENDING",
    "compound_state": "PENDING.VALIDATED_TRANSACTION",
    "redirect_url": "https://stage-verify.isignthis.com/vanilla/landing/e6988b4a-ed1c-4104-9caf-af6bb8769756"

}

Opening the redirect_url will display the transaction page

NOTEIf the API request response is unsuccessful an error will be shown.

3. iSignthis Transaction page

 

Flykk Online may run through our Paydentity KYC process with enhanced KYC functionality to streamline the user experience.

As such we support this in our Embedded User Interface

Once the iSignthis transaction page is opened by the user via Eembedded Mode the customer may be  prompted to insert additional information, if any is required to proceed with the transaction.

For each meaningful event or state change the customer makes, an appropriate event notification will be provided to your web hook.

Please check Notifications and Transaction events section for more information.

4. Returning to a Transaction

Returning to a transaction is an important factor when conducting a Paydentity workflow. A customer might not have on hand the documents which are required to complete a KYC process and therefore return later to the transaction when all documents have been gathered.

For a customer to be able to return to a transaction and complete the KYC process in Flykk Instant eMoney, the redirect UID from the API Request Response must be stored by the merchant and be accessible by the customer later on, via a parameter on your signup or payment pages.

The customer should be able to return to their transaction as long as none of the final events has been send to your webhook.

To implement a cancel transaction button please follow the example in the Actions section

5. Results Page

Depending on which page  you have decided to show, iSignthis results page or your own page will be displayed, to the customer with the according message.

Check Transaction events and Transaction states for more information.

If you have any issues don’t hesitate to contact our Merchant support team we will be happy to help.