API Reference

Payment request initiation method

Request method

This method allows to retrieve the requestId required to run Widget UI via Widget SDK.

🚧

Making Requests

This endpoint must be called from your application's backend. If you plan to make client-to-server requests, use the public endpoint.

📘

Getting a requestId

  • requestId is related to a specific transaction in the Widget. In order to resume an ongoing transaction, your application needs to use the same requestId used to initiate that transaction.
  • In order to start a new transaction, a new requestId must be obtained and the Paybis Widget should be launched with it.
  • You can pass the KYC information (see applicantSumsubToken andtrustedKycfields) when creating requestIdto skip KYC for verified users. Read more in Trusted KYC and Shared KYC.
  • Use the Get Payment Methods endpoint to retrieve the list of available methods that can be passed in the paymentMethod field.
  • Request method provides an option to set the Single sign-on flow for customers that have active session on your end.
  • In the flow without quote, you can limit the number of cryptocurrencies available on Paybis Widget exchange form in 2 ways:
  1. pass a single cryptowalletaddress object: the cryptocurrency will be locked on the exchange form and the wallet address entry step is skipped in Widget flow.
  2. pass an array of cryptowalletaddress objects: the client will be able to choose crypto from the list you have provided and the related wallet will be used for payout (wallet entry step is skipped).

{
  // The unique identifier for the user in your system. 
  // This helps link the request to the user's existing account or create a new one
  "partnerUserId": "4bb689aa-fd24-46fb-b793-e44c26d24e7a",

  // The preferred language for the user interface of the widget
  "locale": "en"
}
{
  // The unique identifier for the user in your system. 
  // This helps link the request to the user's existing account or create a new one
  "partnerUserId": "4bb689aa-fd24-46fb-b793-e44c26d24e7a",

  // The preferred language for the user interface of the widget
  "locale": "en"

  // The ID of a previously generated quote.
  "quoteId": "99b51850-87c1-4af0-bcf3-ae8684b076c0",

  // Details about the cryptocurrency wallet where the purchased cryptocurrency should be sent
  "cryptoWalletAddress": 
  {
    // The actual address of the cryptocurrency wallet
    "address": "1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2",

    // The cryptocurrency code associated with the wallet address. 
    "currencyCode": "BTC-TESTNET" 
  }
}
{
  // The unique identifier for the user in your (the partner's) system. 
  // This helps link the request to the user's existing account or create a new one if needed
  "partnerUserId": "4bb689aa-fd24-46fb-b793-e44c26d24e7a",
  
  // The ID of a previously generated quote.
  // This pre-fills the amount and cryptocurrency selection in widget
  "quoteId": "99b51850-87c1-4af0-bcf3-ae8684b076c0",

  // The user's email address. This might be used for communication or identification purposes.
  "email": "[email protected]", 

  // The preferred language for the user interface (UI) of the widget
  "locale": "en", 

  // Details about the cryptocurrency wallet where the purchased cryptocurrency should be sent
  "cryptoWalletAddress": 
  {
    // The actual address of the cryptocurrency wallet
    "address": "1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2",

    // The cryptocurrency code associated with the wallet address. 
    // In this case, it's Bitcoin on the testnet
    "currencyCode": "BTC-TESTNET" 
  },

  // The payment method has chosen to use for the transaction
  "paymentMethod": "credit-card", 

  // Indicates that the user has already completed the KYC process from Partner's end. 
  "trustedKyc": true,

  // Enables a passwordless authentication flow for the user
  "passwordless": true
}
{
  // The unique identifier for the user in your system. 
  // This helps link the request to the user's existing account or create a new one
  "partnerUserId": "4bb689aa-fd24-46fb-b793-e44c26d24e7a",

  // The preferred language for the user interface of the widget
  "locale": "en"

  // Indicates that the user has already completed the KYC process from Partner's end. 
  "trustedKyc": true,

  // Provides KYC information that has already been verified by your platform, 
  "trustedKycInfo": {
    "firstName": "John",       // User's first name
    "lastName": "Doe",         // User's last name
    "dateOfBirth": "1990-01-15", // User's date of birth (YYYY-MM-DD format)
    "country": "US",            // User's country of residence
    "state": "CA",              // User's state of residence (if applicable)
    "address": "123 Main St",    // User's street address (optional)
    "city": "Anytown",          // User's city of residence (optional)
    "zip_code": "12345",        // User's ZIP or postal code (optional)
    "phone": "+15555551212",     // User's phone number (optional)
    "documentType": "passport", // Type of identification document used for KYC (optional)
    "documentNumber": "AB123456"  // ID number of the identification document (optional)
  }
}
Language
Authorization
URL
Click Try It! to start a request and see the response here!