RahalCorporate
OrdersReference

Payment Providers

Complete reference for supported payment providers and their configurations

Payment Providers Reference

All payment providers supported by the Rahal booking system.

Provider Values

ProviderCodeDescription
Super Qi AppSUPER_QI_APPMobile wallet (Iraq)
Checkout.comCHECKOUT_COMCard payments
Buy Now Pay LaterBNPLInstallment payments
SandboxSANDBOXTesting only
Corporate DirectCORPORATE_DIRECTCompany billing
QI Services AppQI_SERVICES_APPLegacy mobile wallet

Provider Details

SUPER_QI_APP

Primary consumer payment method for the Iraqi market.

PropertyValue
CodeSUPER_QI_APP
TypeMobile wallet
RegionIraq
VerificationAPI callback
FeesNone to user

Payment Flow:

  1. Redirect to Super Qi app
  2. User approves in wallet
  3. Webhook confirms payment
  4. Order processing continues

Order Fields:

{
  "provider": "SUPER_QI_APP",
  "paymentId": "superqi_payment_123"
}

CHECKOUT_COM

International card payment processing.

PropertyValue
CodeCHECKOUT_COM
TypeCard payment
NetworksVisa, Mastercard, etc.
Security3D Secure
VerificationWebhook

Payment Flow:

  1. Hosted payment form
  2. Card details entered
  3. 3DS if required
  4. Webhook confirms payment

Order Fields:

{
  "provider": "CHECKOUT_COM",
  "paymentId": "checkout_pay_abc123"
}

BNPL

Buy Now, Pay Later installment payments.

PropertyValue
CodeBNPL
TypeInstallments
FeePercentage of amount
VerificationProvider callback

Payment Flow:

  1. Eligibility check
  2. Installment plan selection
  3. First payment processed
  4. Remaining installments scheduled

Order Fields:

{
  "provider": "BNPL",
  "paymentId": "bnpl_payment_123",
  "bnplFeeAmount": 50000,
  "bnplFeePercentage": 5
}

Transaction Fields:

{
  "instalmentId": "inst_abc123",
  "isPaid": false
}

BNPL transactions show isPaid: false until all installments are confirmed. This affects reporting and reconciliation.

SANDBOX

Test payment provider for development.

PropertyValue
CodeSANDBOX
TypeTest/mock
VerificationAlways success
AvailabilityDev/staging only

Payment Flow:

  1. Order created
  2. Payment automatically verified
  3. Processing continues normally

Order Fields:

{
  "provider": "SANDBOX",
  "paymentId": "order_id" // Same as order ID
}

SANDBOX should NEVER be available in production. It bypasses all payment verification.

CORPORATE_DIRECT

Company billing for corporate travel.

PropertyValue
CodeCORPORATE_DIRECT
TypeCompany billing
PaymentNone (invoiced)
PolicyIntegrated
BudgetIntegrated

Payment Flow:

  1. Policy evaluation
  2. Budget evaluation
  3. Order created (no payment)
  4. Budget reserved
  5. Reservations created
  6. Budget confirmed

Order Fields:

{
  "provider": "CORPORATE_DIRECT",
  "paymentId": "order_id", // Same as order ID
  "companyId": "company_abc",
  "policyId": "policy_xyz"
}

QI_SERVICES_APP

Legacy mobile wallet provider.

PropertyValue
CodeQI_SERVICES_APP
TypeMobile wallet (legacy)
StatusDeprecated

Note: This provider is retained for historical orders. New bookings should use SUPER_QI_APP.

Provider Comparison

FeatureSUPER_QICHECKOUTBNPLSANDBOXCORP_DIRECT
Real paymentYesYesYesNoNo
InstantYesYesFirst onlyYesYes
Fees to userNoNoYesNoNo
Card requiredNoYesNoNoNo
Policy checkNoNoNoNoYes
Budget trackNoNoNoNoYes

Provider Selection

Providers are available based on context:

ContextAvailable Providers
Consumer App (Iraq)SUPER_QI_APP, BNPL
Consumer WebSUPER_QI_APP, CHECKOUT_COM
Corporate AppCORPORATE_DIRECT
DevelopmentSANDBOX, all others

Filtering by Provider

In the dashboard:

  1. Go to Orders
  2. Select provider from dropdown filter
  3. List shows only orders for that provider

API query:

GET /admin/orders?provider=SUPER_QI_APP
GET /admin/orders?provider=CORPORATE_DIRECT

Provider-Specific Fields

Standard Fields (all providers)

FieldDescription
providerProvider code
paymentIdExternal payment reference
paymentAmountTotal amount

BNPL-Specific Fields

FieldDescription
bnplFeeAmountFee amount in sub-units
bnplFeePercentageFee percentage

Corporate-Specific Fields

FieldDescription
companyIdCompany reference
policyIdApplied policy reference

Error Handling by Provider

ProviderCommon ErrorsResolution
SUPER_QI_APPInsufficient balanceUser adds funds
CHECKOUT_COMCard declined, 3DS failedUser retries
BNPLNot eligibleUse different payment
CORPORATE_DIRECTPolicy/budget blockRequest approval or modify booking

On this page