- Home
- Chinese Welcome
- Quick Links
- Access Worldpay
- Checkout SDK
- React Native SDK
注释:该 SDK 仅用于预览用途并会随时更改。
React Native SDK
利用我们的 React Native SDK 接受支付,同时仍然符合作为最低 PCI 合规级别的 SAQ-A 的资质。
将我们的 SDK 集成到您的本地应用程序中,以此创建您自己独特的样式和品牌的结账表。
请在
注释:让自己熟悉我们的
它如何工作?
我们通过生成会话来保护您的客户支付详情。您然后可以利用银行卡资料来
什么是 session
?
session
是由 SDK 生成的客户支付详情的独特识别码。
前提条件
React Native SDK 与以下版本兼容:
react-native
版本 >=0.61.5
react
版本 >=16.9.0
- 对于 iOS 依赖项,仅支持
Cocoapods
。
获得我们的 SDK
运行以下命令安装我们的 SDK。
Copied!npm install @worldpay/access-worldpay-checkout-react-native-sdk
npm install @worldpay/access-worldpay-checkout-react-native-sdkyarn add @worldpay/access-worldpay-checkout-react-native-sdk
yarn add @worldpay/access-worldpay-checkout-react-native-sdk在应用程序的 Android 部分向 Android Bridge 添加依赖项。
在
android/build.gradle
文件中为 SDK 附带的 Android Bridge 定义本地专家 Repo。Copied!maven { url("$rootDir/../node_modules/@worldpay/access-worldpay-checkout-react-native-sdk/android/") }
maven { url("$rootDir/../node_modules/@worldpay/access-worldpay-checkout-react-native-sdk/android/") }在 Gradle 配置中添加 Android Bridge 依赖项。
Copied!dependencies { ... implementation "com.worldpay.access:access-checkout-react-native-sdk-android-bridge:+" ... }
dependencies { ... implementation "com.worldpay.access:access-checkout-react-native-sdk-android-bridge:+" ... }将内含 Android Bridge 的
AccessCheckoutReactPackage
添加到您的ReactApplication
披露的ReactPackage
列表中。Copied!... import com.worldpay.access.checkout.reactnative.AccessCheckoutReactPackage; public class MainActivity extends ReactActivity { ... public static class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { ... } @Override protected List<ReactPackage> getPackages() { List<ReactPackage> packages = new PackageList(this).getPackages(); ... packages.add(new AccessCheckoutReactPackage()); return packages; } @Override protected String getJSMainModuleName() { ... } }; @Override public ReactNativeHost getReactNativeHost() { return mReactNativeHost; } @Override public void onCreate() { ... } } }
... import com.worldpay.access.checkout.reactnative.AccessCheckoutReactPackage; public class MainActivity extends ReactActivity { ... public static class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { ... } @Override protected List<ReactPackage> getPackages() { List<ReactPackage> packages = new PackageList(this).getPackages(); ... packages.add(new AccessCheckoutReactPackage()); return packages; } @Override protected String getJSMainModuleName() { ... } }; @Override public ReactNativeHost getReactNativeHost() { return mReactNativeHost; } @Override public void onCreate() { ... } } }... import com.worldpay.access.checkout.reactnative.AccessCheckoutReactPackage class MainActivity : ReactActivity() { ... class MainApplication : Application(), ReactApplication { private val mReactNativeHost: ReactNativeHost = object : ReactNativeHost(this) { @get:Override val useDeveloperSupport: Boolean get() = ... @get:Override protected val packages: List<Any> protected get() { val packages: List<ReactPackage> = PackageList(this).getPackages() ... packages.add(AccessCheckoutReactPackage()) return packages } @get:Override protected val jSMainModuleName: String protected get() = ... } @get:Override val reactNativeHost: ReactNativeHost get() = mReactNativeHost @Override fun onCreate() { super.onCreate() ... } } }
... import com.worldpay.access.checkout.reactnative.AccessCheckoutReactPackage class MainActivity : ReactActivity() { ... class MainApplication : Application(), ReactApplication { private val mReactNativeHost: ReactNativeHost = object : ReactNativeHost(this) { @get:Override val useDeveloperSupport: Boolean get() = ... @get:Override protected val packages: List<Any> protected get() { val packages: List<ReactPackage> = PackageList(this).getPackages() ... packages.add(AccessCheckoutReactPackage()) return packages } @get:Override protected val jSMainModuleName: String protected get() = ... } @get:Override val reactNativeHost: ReactNativeHost get() = mReactNativeHost @Override fun onCreate() { super.onCreate() ... } } }
在应用程序的 iOS 部分向 iOS Bridge 添加依赖项。
若要将 iOS 依赖项添加到应用程序中,请在 Podfile 中定义依赖项。
Copied!target 'my-app' do ... pod 'AccessCheckoutReactNativeSDKiOSBridge', :path => '../node_modules/@worldpay/access-worldpay-checkout-react-native-sdk/ios/' end
target 'my-app' do ... pod 'AccessCheckoutReactNativeSDKiOSBridge', :path => '../node_modules/@worldpay/access-worldpay-checkout-react-native-sdk/ios/' end
后续步骤
查看我们有关如何创建您可以用来接受支付的会话的指南:
注释:对于一次性付款,您将需要在接受支付后
提交卡详情以创建会话 - 创建
已验证 Token - 利用该 Token
接受支付
提交卡详情和 CVC 以创建两个单独的会话 - 利用您的 CARD 创建一个
已验证 Token session
- 在我们的
card/checkout
支付工具中使用您的 CVCsession
和已验证 Token,以便利用以下端点之一接受支付:
提交 CVC 以创建会话 - 在我们的
card/checkout
支付工具中使用您的 CVCsession
和存储的已验证 Token,以便利用以下端点之一接受支付: