Skip to main content

Preparation before integration testing

  • RD needs to provide:
    • clientIdMerchant identity authenticationclientSecret
    • RD public key certificate
    • Test environment IP
    • APP for RD test environment
    • SDK
  • Customers need to provide:
    • Test environment IP (IP used to call the API, network environment IP for running the test APP)
    • Callback address
    • Merchant public key certificate

Quick Access Guide (SDK)

Business process diagram

Create a Sub-wallet Deposit whitelist process Deposit process Request Payment process Sub-wallet Aggregation Process  Payout process

Java SDK Integration Guide

Importing Dependencies
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>group.rd.digitalasset</groupId>
    <artifactId>digitalasset-toolkit-example</artifactId>
    <version>0.1.0</version>
    <packaging>jar</packaging>
    <name>Digitalasset :: Toolkit :: Example</name>
    <url>https://developer.rd.group</url>
    <properties>
        <project.build.encoding>UTF-8</project.build.encoding>
    </properties>
    <dependencies>
        <dependency>
          <groupId>group.rd.digitalasset</groupId>
          <artifactId>digitalasset-toolkit</artifactId>
          <version>0.1.25</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.4.12</version>
        </dependency>
    </dependencies>
</project>
Configuring environment variables Please set RD_MODE to UAT|PRO in the environment variable Configure the location of the business party private key and RD public key file Refer to the following sample code. The business party needs to pgpPathstore the following content in the specified directory:
  1. The private key currently used by the business party:/clientFingerprint/private.key
  2. The RD public key currently used by the business party:/serverFingerprint/public.key
Integration Example
package group.rd.digitalasset.example;
import group.rd.digitalasset.toolkit.Profile;
import group.rd.digitalasset.toolkit.RDToolkit;
import group.rd.digitalasset.toolkit.api.v1.*;
import org.junit.jupiter.api.Test;
import java.io.FileInputStream;
import java.io.IOException;
public class Demo {
    private final static Logger log = LoggerFactory.getLogger(Demo.class);
    public static void main(String[] args) {
        String appId = "rdClient";
        String clientId = "01JGB38S8Y5MZTSGDF9Q12123C";
        String clientSecret = "XvuJ2ruKpzy8jiL2PRHvholxrvUYdH54";
        String clientFingerprint = "468defed2a1c5e571c181fdb878990b54c24ccdb0da";
        String serverFingerprint = "ee5ec5bf94af5f8sdsdad61355e1e397ce0536";
        String privateKeyPwd = "test_password";
        String path = this.getClass().getClassLoader().getResource("").getPath() + "pgp";
        path = path.replaceFirst("/", "");
        System.out.println("  path:" + path);
        //Configure the global certificate root path
        Profile profile = Profile.of(appId, clientFingerprint, serverFingerprint);
        RDToolkit rdToolkit = RDToolkit.of(path, profile)
                .addAuthority(clientId, clientSecret)
                .addSecret(clientFingerprint, privateKeyPwd);
        WalletListResp walletListResp = rdToolkit.walletList();
    }
}