Customer Management
Introduction
In Paysafe Embedded Wallets, there are three main types of wallet owners:
- Merchant is the legal entity that provides services or goods to its customers and manages the Wallet as a Service solution. The merchant has one or more wallets in the Paysafe Embedded Wallets platform.
- Customer is a physical person associated with a wallet and is the legal owner of the e-money stored in the accounts' ledger.
The merchant wallets are created during the initial embedded wallets system setup. Onboarding new customers requires a new wallet creation.
Customer Onboarding
For information on creating a new wallet for a customer, see Create a wallet.
Onboarding without Nationality
The nationality field inside the Customer object can be mandatory or optional based on partner agreement.
If onboarding without nationality is permitted, the customer is restricted on all of his outgoing transaction upon successful onboarding until nationality is provided via the update endpoint.
PATCH https://api.paysafe.com/digitalwallets/v2/customer-persons/{customerId}
{
"nationality": "GB"
}
Update Customer Details
Customer details updates must be reflected on the Paysafe side, for regulatory purposes.
Customer profile information can be updated using the following endpoint.
**PATCH** https://api.paysafe.com/digitalwallets/v2/customer-persons/{customerId}
The following fields cannot be updated. Any attempt to do so will result in an error:
type
- Must bePERSON
.404 Not Found
error is returned if it does not match the requirements.email
restrictions
The following fields are disregarded during the update so do not pass it:
registrationIp
id
externalId
Updating the following customer details might result in customer restriction and require new KYC Verification:
firstName
,lastName
- Re-trigger KYC verification.address1
,address2
- Re-trigger address verification of KYC process.
To update the following details, the customer must be non-KYC verified. If the customer is KYC verified, you cannot update these details:
birthDate
Change Of Customer Country
Changing customer country requires moving the customer account from one country jurisdiction to another. It impacts both accounting and compliance handling.
The process of account migration has the following prerequisites.
- Customer accounts must have zero balance.
- Customer must provide address located in the new country.
- Base account currency in the new country must be specified upon migration.
- One account must be provided for the initial migration. Additional accounts might be added using the Accounts API.
- The customer accounts in the old country would be deactivated.
- KYC address verification information must be passed for the new address. If not passed the account might be restricted, until the address verification is performed.
Customer transaction history and verified instruments remain after the account migration.
For changing the customer country, you should use customer-persons
PATCH request and pass all the required parameters for complying with the requirements above.
PATCH https://api.paysafe.com/digitalwallets/v2/customer-persons/{customerId}
{
"address1": "23 Four Str",
"city": "London",
"zip": "E17 033",
"countryCode": "GB",
"kyc": {
"status": "COMPLETED",
"addressVerification": {
"status": "COMPLETED",
"date": "2021-07-15T17:54:12Z",
"documentUrls": [
"https://documents-repository.com/images/doc3"
]
}
},
"accounts": [
{
"currencyCode": "GBP",
"hasIban": true
}
]
}
Update KYC
Except EDD.date
all properties are optional. EDD.date
would be mandatory if EDD.status
is "COMPLETED"
.
Providing kyc.status
would change values of idVerification.status
, addressVerification.status
and faceMatch.status
unless they are provided.
Example:
{
"kyc": {
"status": "NOT_COMPLETED",
"idVerification": {
"status": "COMPLETED"
}
}
}
In the above example addressVerification.status
and faceMatch.status
would change to "NOT_COMPLETED"
and
idVerification.status
to "COMPLETED"
.
Customer Accounts
Account information can be retrieved with the following APIs:
- Add new account for a customer - Create wallet account.
- Get a list of all accounts for a customer - Get wallet accounts.
- Get details and current balance for an account - Get single wallet account.
Direct update and delete accounts are not supported via API.