Skip to main content
POST /v1/payments/pay Initiates a payment. Supports Mini Program cashier flows and agreement-based (recurring) payment scenarios.

Request Parameters

productCode
string
required
Payment product code assigned by Rebell (e.g., 51051000000011).Max length: 32 characters
paymentRequestId
string
required
Merchant-generated unique identifier (idempotency key).Max length: 64 characters
paymentAmount
object
required
Payment amount. See Amount.
paymentAuthCode
string
Authorization code.Max length: 128 characters
paymentExpiryTime
string
Payment expiry time in ISO 8601 format.
paymentNotifyUrl
string
Merchant callback URL for payment result notifications.Max length: 1024 characters
paymentRedirectUrl
string
URL to redirect the user to after payment.Max length: 1024 characters
cashierNotifyUrl
string
Cashier notification URL.Max length: 1024 characters
order
object
Order details including merchant, buyer, and goods information. See Order.
agreedAmount
object
For agreement-based transactions. See Amount.
serviceExpireTime
string
Service expiry date. Format: yyyy-MM-dd
nextPaymentDate
string
Next scheduled payment date. Format: yyyy-MM-dd
extendInfo
string
JSON-formatted extension data. May include channelSource, miniAppId, supportMultiConfirm.Max length: 2048 characters

Response Parameters

result
object
required
Standard result object with resultCode, resultStatus, resultMessage
paymentRequestId
string
Echo of the merchant-provided request identifier.
paymentId
string
Wallet-generated unique payment ID.Max length: 64 characters
paymentTime
string
Payment completion time in ISO 8601 format.
redirectActionForm
object
Redirect instruction containing method and redirectionUrl.

Result Codes

resultStatusresultCodeDescription
SSUCCESSPayment successful
AACCEPTAccepted, further action required
FPARAM_ILLEGALInvalid parameters
FPROCESS_FAILProcessing failed
FACCESS_DENIEDAccess denied
FUSER_NOT_EXISTUser does not exist
FCURRENCY_NOT_SUPPORTCurrency not supported
FPAYMENT_AMOUNT_EXCEED_LIMITPayment amount exceeds limit
FUSER_AMOUNT_EXCEED_LIMITUser amount exceeds limit
FREPEAT_REQ_INCONSISTENTDuplicate request with inconsistent data
FAUTH_CODE_ALREADY_USEDAuth code already used
FPARTNER_STATUS_ABNORMALPartner status abnormal
FUSER_STATUS_ABNORMALUser status abnormal
FPARTNER_NOT_EXISTPartner does not exist
FINVALID_ACCESS_TOKENAccess token is invalid
FRISK_REJECTTransaction rejected by risk engine
UUNKNOWN_EXCEPTIONUnknown error occurred
UORDER_AMOUNT_EXCEED_CONTRACT_LIMITOrder amount exceeds contract limit
UCONTRACT_DEFAULT_PAY_METHOD_INVALIDDefault payment method invalid