POST /v2/payments/linkPayCreate
Creates a payment order that returns redirect URLs for app-to-app or browser-to-app payment flows. The user is redirected to the Rebell SuperApp to authorize the payment.
Use Case
Ideal for mobile apps, web checkout, and hybrid experiences where you want to redirect users to the Rebell app to complete payment.
Create Payment
Call linkPayCreate to create a payment order
Receive URLs
Get redirect URL and platform-specific app links
Redirect User
Redirect user to Rebell using the appropriate link
User Confirms
User authorizes payment in the Rebell app
Receive Webhook
Merchant receives payment status via webhook
Request Parameters
Payment product code assigned by Rebell. Max length : 32 characters
Merchant-generated unique identifier (idempotency key). Max length : 64 characters
Payment amount details. ISO-4217 currency code (e.g., EUR)
Amount in minor units (e.g., 499 for €4.99)
Order details. Description shown to the customer
Merchant and store information
Settlement configuration. Settlement currency (e.g., EUR)
Webhook URL for payment notifications.
URL to redirect user after payment completion.
Response Parameters
Deep link to open Rebell SuperApp directly
Platform-specific app link metadata Android-specific data: applicationId, targetPath, shortUrl
iOS-specific data: bundleId, targetPath, shortUrl
Payment identifier for tracking and reconciliation
Example Request
{
"productCode" : "5105010010000100040" ,
"paymentRequestId" : "checkout-20240110-987" ,
"paymentAmount" : {
"currency" : "EUR" ,
"value" : "499"
},
"order" : {
"orderDescription" : "Monthly subscription - Premium plan" ,
"merchant" : {
"store" : {
"externalStoreId" : "STORE-77"
}
}
},
"settlementStrategy" : {
"settlementCurrency" : "EUR"
},
"paymentNotifyUrl" : "https://merchant.example.com/webhooks/payment"
}
Example Response
{
"result" : {
"resultCode" : "SUCCESS" ,
"resultStatus" : "S" ,
"resultMessage" : "success"
},
"redirectUrl" : "rebell://pay?orderToken=abcedf123..." ,
"appLinks" : {
"android" : {
"applicationId" : "com.rebell.superapp" ,
"targetPath" : "pay" ,
"shortUrl" : "https://app.rebellapp.com/p/abc123"
},
"ios" : {
"bundleId" : "com.rebell.superapp" ,
"targetPath" : "pay" ,
"shortUrl" : "https://app.rebellapp.com/p/abc123"
}
},
"paymentId" : "2024011000123456"
}
Redirect Implementation
Mobile App
Mobile Web
Desktop
import { Linking , Platform } from 'react-native' ;
async function redirectToRebell ( response ) {
const url = Platform . select ({
ios: response . appLinks . ios . shortUrl ,
android: response . appLinks . android . shortUrl ,
default: response . redirectUrl
});
const canOpen = await Linking . canOpenURL ( url );
if ( canOpen ) {
await Linking . openURL ( url );
}
}
function redirectToRebell ( response , platform ) {
const shortUrl = platform === 'ios'
? response . appLinks . ios . shortUrl
: response . appLinks . android . shortUrl ;
// shortUrl handles app-not-installed fallback
window . location . href = shortUrl || response . redirectUrl ;
}
import QRCode from 'qrcode' ;
async function showDesktopCheckout ( response ) {
const shortUrl = response . appLinks . android . shortUrl ;
// Render QR code for mobile scanning
const canvas = document . getElementById ( 'qr-canvas' );
await QRCode . toCanvas ( canvas , shortUrl , { width: 300 });
}
Result Codes
resultStatus resultCode Description Action SSUCCESSOrder created Redirect user to payment FPARAM_ILLEGALInvalid parameters Check request FORDER_STATUS_INVALIDOrder in invalid state Create new order FPAYMENT_IN_PROCESSPayment already processing Wait for result UUNKNOWN_EXCEPTIONUnknown error Retry request
Inquiry Payment Check payment status
Link Pay Guide Complete integration guide