Checkout Implementation
MoneyNS Checkout represents a way for your platform users to trade crypto in a fast and secure way, powered by our API. In order to gain access, you will need to have a valid platform enrolled in MoneyNS.
Once you accomplish that, you will receive the following:
Platform ID
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Platform Code
xxxxxxxx
JWT Private
-----BEGIN RSA PRIVATE KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-----END RSA PRIVATE KEY-----
JWT Public
-----BEGIN PUBLIC KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-----END PUBLIC KEY-----
For best security, JWT RSA Keys are encoded in 2048 bit.
Checkout Base URL
Checkout Query Params
Parameter | Values | Required | Info |
---|---|---|---|
platform | xxxxxxxx | ✓ | Your platform code. |
token | xxxxxxxxxxxxxxxxxxxxxxxx | ✓ | JWT RS512 encoded with provided keys.¹ |
- | - | - | - |
lang | {ro|en|de} | - | Select the language for the checkout. Default: en. |
display | {light|dark} | - | Select the theme for the checkout. Default:light |
landing | {true|false} | - | Select if you want to skip the checkout landing page. Default:false |
- Encryption algorithm can be change from your Partner dashboard. We support: RS512, RS384, RS256, HS512, HS384 and HS256.
Checkout URL Example
Token Payload Checkout Example (JWT RS512 encoded)
{
"link": {
"id": "1",
"username": "username",
"email": "email@domain.com"
},
"user": {
"email": "email@domain.com",
"phone": "40730000000",
"ref": "66de494e-6791-4290-996c-32f42041fbf4",
"type": "personal",
"wallet": "0xfFf75cb3916570824CcEFFe589193c2452383C17",
"network": "ETH"
},
"payment": {
"operation": "buy_with_fiat",
"symbol": "ETH",
"amount": "10",
"secondSymbol": "EUR",
"method": "card",
"second_order_type": "withdraw",
"attempts": "3"
},
"request_id": "1",
"redirect_url": "https://www.google.com",
"ping_url": "https://www.google.com/ping",
"ip": "86.123.31.5",
"expire": 1571848640
}
Token Payload Checkout Details
Property | Validations | Required | Info |
---|---|---|---|
link.id | string|max:191 | ✓ | User identification on your platform. |
link.username | alpha_dash|max:191 | - | User username on your platform. |
link.email | - | User email on your platform. | |
- | - | - | - |
user.email | ✓ | User email. | |
user.ref | uuid | - | User ref UID. |
user.type | in:personal|corporate | - | User type. |
user.wallet | alpha_num|max:191 | - | User wallet address.¹ |
user.network | alpha_num|max:191 | - | User network code. |
user.phone | numeric|digits_between:7,17 | - | User phone. |
user.first_name | alpha_dash|max:191 | - | User first name. |
user.last_name | alpha_dash|max:191 | - | User last name. |
user.dob | date_format:Y-m-d | - | User date of birth.² |
user.country | countryISOcode | - | User country ISO code.³ |
user.city | alpha_dash|max:191 | - | User city. |
user.zip | alpha_num|between:4,10 | - | User ZIP code. |
user.street | string|max:191 | - | User street details. |
- | - | - | - |
payment.operation | in:buy_with_fiat,sell_to_fiat,buy_with_crypto,sell_to_crypto,deposit,withdraw,payment,borrow | ✓ | Transaction operation. |
payment.symbol | in:ETH,BTC,etc | ✓ | Transaction crypto main symbol. |
payment.amount | numeric | ✓ | Transaction crypto amount. |
payment.secondSymbol | in:EUR,USDT,etc | ✓ | Transaction second symbol. |
payment.method | in:card,bank | ✓ | Transaction payment method when operation is buy_with_fiat. |
payment.second_order_type | in:withdraw|withdrawIco | - | Transaction second operation after “buy”.¹ |
payment.service | uuid|in:services | - | Transaction service required when operation is payment or borrow. |
payment.serviceBeneficiary | uuid|in:staffs | - | Transaction service beneficiary required when operation is payment. |
payment.attempts | integer|max:5 | - | Transaction max quote attempts. |
- | - | - | - |
request_id | unique|max:191 | ✓ | Transaction request ID. |
redirect_url | url | ✓ | Web location to redirect after checkout is finalized. |
ping_url | url | - | Web location where platform will send notification events.⁴ |
ip | ip | - | Restrict checkout access by IP address. |
expire | integer|digits:10 | ✓ | Represents checkout request expiration date.⁵ |
- If wallet is not provided, the funds will remain in user MoneyNS balance. If is provided, a “payment.second_order_type” operation must be set as “withdraw”, and after "buy" order is Approved, a second Withdraw order will be automatically triggered.
- User must have at least 18 years.
- To get a list with all supported countries, interrogate API /countries endpoint.
- If ping_url is different than your Platform IEN URL, we will send data to this address as well as on Platform IEN URL.
- If this date is passed, checkout request will no longer be available.
Token Payload Checkout Details Extra
- Payment.symbol - Available values depends on your platform settings in MoneyNS platform.
- Payment.amount - If user has no other order in our MoneyNS platform, limitation may be applied to the maximum amount available for first order.
- Payment.secondSymbol - Available values depends on your platform settings in MoneyNS platform.
- Payment.method - Available values depends on your platform settings in MoneyNS platform.
If this do not answer your questions, please do not hesitate to contact us at contact@cryptocoin.pro.