SG onboarding
This page contains details about the different Singapore Know Your Customer (KYC) flows. See the following links for other pages related to onboarding:
Page name | Description |
---|---|
SG required parameters | This page lists the required API fields for onboarding an individual customer. |
SG required documents | This page contains tables listing the required documents for verification of an individual customer. |
SG request examples | This page contains API request examples for onboarding an individual customer in the SG regulatory region. |
SG PSA Compliance for wallet-based programs | This page details the SG Payment Services Act (PSA) Compliance on wallet-based programs. |
eKYC – Singapore (SG)
When using the Unified Add Customer API to add a customer in Singapore, eKYC verification is performed.
In Singapore, the add customer eKYC process is as follows:
- Your new customer signs up for verification.
- send a
GET
request to the Terms and Conditions API. - Nium returns the Terms and Conditions description.
- Display the Terms and Conditions to your customer to agree and accept. You collect all customer information for onboarding.
- Send a
POST
request to the Unified Add Customer API as per the SG required parameters. - Nium returns the redirectURL which you inform your customer.
- Direct your customer for completing the verification with the vendor.
- After the verification process completes, your customer is redirected back to the eKYC redirect URL that is configured during the client setup.
- Nium sends a CUSTOMER_COMPLIANCE_STATUS webhook with
complianceStatus
. - Send a response with the HTTPS status code
200
. - Customer onboarding can be reinitiated if the compliance status is
IN_PROGRESS
,REJECT
, orERROR
.
eDoc Verification - Non-SG
When onboarding residents outside of Singapore, use E_DOC_VERIFY
as the KYC mode.
The eDoc Verify flow is similar to the eKYC flow, with the primary difference being the URL returned by Nium originates from our address verification vendor - Onfido.
Customers outside of Singapore will need to upload a selfie and a valid identity document during onboarding. After completing these steps, they will be redirected to your callback URL.
Proof of Address Verification
If proof of address verification is required, the eDoc Verify flow changes based on the customer's country.
The onboarding flow changes based on the billingAddress.country
since our address verification vendor, Onfido, doesn't support all countries.
To ensure the correct templates are set for your account, include a list of countries where you plan to onboard customers during your onboarding with Nium.
Based on the country the customer is located in, the eDoc verification flows available include:
Supported Countries
If the customer's country appears in the Singapore - eDoc verification - Supported Countries list, pass `kycMode`` as E_DOC_VERIFY. The customer's flow remains the same as the default eDoc verification flow.
- The redirect link returned will include an additional step for collecting the address verification document.
- The Onfido link will prompt the customer to upload their address verification document.
See the following for a full list of countries supported by our address verification vendor:
Singapore - eDoc Verification - Supported Countries
Country | Country Code |
---|---|
Andorra | AD |
Algeria | DZ |
Argentina | AR |
Australia | AU |
Austria | AT |
Belgium | BE |
Bermuda | BM |
Brazil | BR |
British Virgin Islands | VG |
Bulgaria | BG |
Canada | CA |
Cayman Islands | KY |
Chile | CL |
Colombia | CO |
Costa Rica | CR |
Croatia | HR |
Czech Republic | CZ |
Denmark | DK |
Dominican Republic | DO |
Ecuador | EC |
Estonia | EE |
Ethiopia | ET |
Finland | FI |
France | FR |
Germany | DE |
Ghana | GH |
Gibraltar | GI |
Guatemala | GT |
Hong Kong | HK |
Hungary | HU |
Iceland | IS |
Indonesia | ID |
Ireland | IE |
Isle of Man | IM |
Italy | IT |
Ivory Coast | CI |
Jamaica | JM |
Jersey | JE |
Kenya | KE |
Kuwait | KW |
Latvia | LV |
Liechtenstein | LI |
Lithuania | LT |
Luxembourg | LU |
Malaysia | MY |
Malta | MT |
Mexico | MX |
Monaco | MC |
Netherlands | NL |
New Zealand | NZ |
Nigeria | NG |
Norway | NO |
Panama | PA |
Peru | PE |
Philippines | PH |
Poland | PL |
Portugal | PT |
Romania | RO |
San Marino | SM |
Saudi Arabia | SA |
Senegal | SN |
Serbia | RS |
Singapore | SG |
Slovakia | SK |
Slovenia | SI |
South Africa | ZA |
South Korea | KR |
Spain | ES |
Sweden | SE |
Switzerland | CH |
Taiwan | TW |
Tanzania | TZ |
Turkey | TR |
Uganda | UG |
Ukraine | UA |
United Arab Emirates | AE |
United Kingdom | GB |
United States of America | US |
Vietnam | VN |
Unsupported Countries
For countries not supported by our vendor, collect the address verification documents manually. Pass kycMode as E_DOC_VERIFY - the URL returned by Nium will ask the customer to perform selfie and ID verification, but not address verification.
Upload the address document using the identificationDoc
object in the Unified Add Customer, or the Upload Document request.
The application status will remain in_progress until the document is submitted. Our compliance team will manually verify the document once it is submitted.
Please note, Auto-approval of the customer is not possible for customers in unsupported countries.
Manual KYC – Singapore (SG)
When using the Unified Add Customer API with compliance option as MANUAL_KYC
to add a customer in Singapore, the following verification process is performed.
Exception Handling
As a response to the Unified Add Customer API with KYC Mode E_KYC
, Nium returns a redirect URL. You need to redirect the customer to the redirect URL. After the customer completes the KYC verification, they are redirected back to your eKYC redirect URL that was configured with Nium.
The following parameters will be returned as part of the eKYC redirect URL to help you to understand the status of the customer’s verification in the vendor’s UI.
errorCode
errorMessage
isSuccess
– This field indicates whether the customer completed the required steps in the vendor’s UI. It doesn't mean KYC is successful.
This information helps you to design and implement the next steps in your application. For example, you may decide to show the success or error message to the customer as per the scenarios listed below.
Scenario | Expected action | Query parameters in the redirection |
---|---|---|
The customer completes the required steps in the vendor’s UI. | You receive a callback from Nium. | errorCode : N/AerrorMessage : N/AisSuccess : true |
The customer has provided incorrect data in the vendor's UI and has not clicked Accept in the vendor's page. | Ask customer to submit correct data in the vendors page. | errorCode : I400 errorMessage : vendorValidationError isSuccess : false |
Any unexpected error from the vendor. | Try after some time or reach out to Nium's support. | errorCode : I500 errorMessage : unexpectedError isSuccess : false |
Updated 5 months ago