B BNPL Integration Lab

MANAGEMENT IMPLEMENTATION BRIEF

How the integration works—and where every requirement comes from.

A source-backed view of the customer journey, provider state machines, team responsibilities, and the boundary between what we can build independently and what each provider must enable.

Tabby Tamara

01 · SOURCE-BACKED ARCHITECTURE

One internal payment model, two provider adapters

Each numbered badge opens the exact official document used to define that step.

1

Show eligible method

Run pre-check / pre-scoring and respect merchant min-max configuration.

2

Create checkout

Map the internal order to the provider request and persist its external ID.

3

Hosted customer flow

Redirect for provider-managed verification, approval, and return URLs.

4

Receive webhook

Acknowledge fast, authenticate, deduplicate, then queue processing.

5

Verify & fulfill

Retrieve the authoritative provider state before changing the internal order.

POST-ORDER CONTROL PLANEInternal OMS / service
Authorizewhen required
Captureon fulfillment
Cancelbefore capture
Refundafter capture
Reconcilepull + events

Security rule: the browser return URL is navigation only. The backend verifies provider state before fulfillment. Tabby states this explicitly; Tamara’s checklist requires merchant and provider states to remain synchronized. T2 M5

02 · PROVIDER STATE MACHINES

The statuses our internal adapter must normalize

The exact provider words remain in the audit trail; normalized states drive shared business logic.

TabbyPayment states [T3]
CREATEDAUTHORIZEDCLOSED

Capture: adds a capture while the payment remains authorized, then payment closes when processing completes. Exit paths: rejected, expired, close before capture, refund after capture.

TamaraOrder states [M3]
newapprovedauthorisedcaptured

Capture: signals that shipped / fulfilled value enters settlement. Exit paths: declined, expired, canceled before capture, partially or fully refunded after capture.

Provider statusAdapter mappingInternal status pending · approved · authorized · captured · cancelled · refunded · rejected · expired

03 · RESPONSIBILITY BOUNDARY

Who owns each part

This distinction prevents “we can build it” from being confused with “we can activate a merchant account ourselves.”

OUR TECHNICAL TEAM

Build and operate

  • Shared payment model + provider adapters
  • Eligibility, payload and order mapping
  • Redirect and callback routes
  • Authenticated, idempotent webhook intake
  • Status normalization and reconciliation
  • Capture, cancellation and refund triggers
  • Logs, monitoring and support runbook

PROVIDER-HOSTED

Customer decision flow

  • Hosted checkout experience
  • OTP and customer authentication
  • Eligibility / risk decision
  • KYC or identity checks where applicable
  • Consumer installment relationship

PROVIDER / BUSINESS OWNER

Enable and approve

  • Sandbox and live credentials
  • Merchant codes, min/max and product setup
  • Optional features and account configuration
  • Official QA / go-live acceptance
  • Production activation and settlement setup

04 · WHAT THE SANDBOX PROVES

Evidence, not a slide-only proposal

Open working integration lab →
01

Unified contract

Tabby and Tamara are isolated behind the same internal create, capture, cancel, refund and retrieve operations.

02

Full lifecycle

The lab demonstrates checkout, return handling, webhooks, provider actions and a payment ledger.

03

Operational controls

Webhook audit records, duplicate detection and reconciliation are visible to reviewers.

04

Safe provider switch

Mock mode proves behavior now; credentials switch each adapter to the real sandbox without changing internal business logic.

What this does not claim

A working internal sandbox does not replace provider-issued credentials, merchant-specific settings, contractual onboarding, certification, or production approval. Those remain required even when no clarification call is needed.

05 · TAMARA MEETING COVERAGE

Every technical-team concern is now represented

“Runnable” means the mock lab exercises the behavior. “Provisioned” identifies dependencies Tamara must supply.

Runnable

Widgets + Public Key

Product/checkout placement preview and account-specific Public Key dependency.

M7 · Widgets
Runnable

Eligibility pre-check

Eligible, ineligible, and 200ms timeout-fallback branches before checkout creation.

M8 · Eligibility
Runnable

OTP + Nafath

Existing-customer OTP and new KSA customer’s one-time provider-hosted identity step.

M9 · KSA Testing
Runnable

Complete payload

Items, consumer, address, redirects, channel, locale, risk assessment and additional data.

M10 · Create Checkout
Runnable

Thirty-minute expiry

Visible countdown, manual accelerated test, EXPIRED status, failure return and webhook audit.

M3 · Status Flow
Runnable

Account automation

Manual, auto-authorize, and auto-authorize + auto-capture account configurations.

M3 · Status Flow
Runnable

All terminal webhooks

Approved, authorised, captured, canceled, refunded, expired and declined registrations.

M4 · Webhooks
Runnable

Pull + redirect + events

Return handling, Get Order reconciliation and persisted webhook confirmation.

M5 · Checklist
Runnable

Refunds

Full and partial refund operations with normalized statuses and audit history.

M5 · Checklist
Runnable

Retail payment link

POS creates an in-store session; SMS is primary and customer email is the documented delivery backup.

M11 · In-store Session
Runnable

Retail status control

15-minute expiry, automatic full capture, 5–10 second polling, webhooks, void and refunds.

M12 · POS Flow
Tamara-provisioned

Separate accounts

Online and existing POS credential profiles with separate token/Public Key readiness.

M6 · API Setup
Coverage resultAll meeting concerns are demonstrable or explicitly assigned to Tamara provisioning. No concern is left as an undocumented assumption.Run the scenarios →

06 · TABBY EQUIVALENT COVERAGE

The same integration concerns, mapped to Tabby’s flow

Shared capabilities use the same internal controls; provider-owned customer steps retain Tabby’s documented behavior.

Runnable

Promo + checkout snippets

Product, cart and checkout placement with Public Key and merchant-code dependencies.

T7 · On-Site Messaging
Runnable

Background pre-scoring

Minimal Checkout API request with created, rejected and fail-safe branches.

T2 · Checkout Flow
Runnable

OTP + card linking

OTP on every transaction and provider-hosted card/Apple Pay linking for new customers.

T2 · Checkout Flow
Runnable

Complete payload

Buyer, items, shipping, buyer history, order history, metadata, language and URLs.

T2 · Checkout Flow
Runnable

Thirty-minute expiry

Visible countdown with cancel, reject and automatic-expiry terminal handling.

T3 · Processing
Runnable

Authorize then capture

Backend verifies AUTHORIZED, performs full or partial capture, then supports refunds.

T3 · Processing
Runnable

Redirect + pull + webhook

All three returns remain navigation signals; Get Payment and events are authoritative.

T4 · Webhooks
Runnable

Retail payment link

POS creates a checkout session, triggers send_hpp_link, and the customer receives the hosted page by SMS or push.

T8 · Custom Payment Links
Runnable

Retail status control

20-minute default expiry, five-second polling or webhooks, session cancellation, success, rejection and expiry.

T8 · Custom Payment Links
Tabby-provisioned

Credentials + merchant code

Public/secret keys, merchant code, webhook authentication and optional expire event.

T6 · Integration FAQ
Coverage resultTabby and Tamara now share the same demonstration depth while preserving their different customer and payment-state models.Run Tabby scenarios →

07 · MANAGER EVIDENCE MATRIX

Requirement → implementation → source

Use this table for review, sign-off, or vendor conversations.

CapabilityWhat we implementTabby evidenceTamara evidence
EligibilityBackground check before displaying the methodT2 · Checkout FlowM5 · Go-Live Checklist
CheckoutCreate session, persist ID, redirect to hosted pageT1 · Quick StartM1 · Quick Start
Retail payment linkCreate POS session, deliver hosted link, verify terminal statusT8 · Custom Payment LinksM12 · POS Flow
Return securityTreat redirect as UI signal; verify on backendT2 · Checkout FlowM5 · State sync / pull
Async updatesAuthenticated, deduplicated webhook processorT4 · WebhooksM4 · Webhooks
Order lifecycleAuthorize, capture, cancel, refund, retrieveT3 · ProcessingM3 · Status Flow
Production gateRun official cases and submit for activationT5 · Testing ChecklistM5 · Go-Live Checklist

08 · OFFICIAL REFERENCE LIBRARY

Primary documentation used for this screen

Official provider documentation only. Links open the original source in a new tab.

TabbyOfficial docs
T1Custom Integration · Quick StartOverview, eligibility, hosted checkout, authorization and capture. T2Checkout FlowPre-scoring, session creation, redirects and backend verification. T3Payment ProcessingStatuses, retrieve, capture, close, refund and idempotency. T4Payment WebhooksRegistration, authentication, retry, ordering and deduplication. T5Full Testing ChecklistOfficial implementation coverage and QA / go-live gate. T6Integration FAQCredentials, testing, common questions and production process. T7On-Site MessagingPromo and checkout snippets, Public Key, merchant code and responsive placement. T8Custom Payment Links IntegrationCheckout session, send_hpp_link, SMS/push delivery, status polling, webhooks, cancellation and testing. T9POS QR IntegrationAlternative offline flow using the returned QR-code or web URL on the POS terminal.
TamaraOfficial docs
M1Direct Quick Start GuideDirect integration setup and checkout sequence. M2Direct Online CheckoutCheckout payload, hosted customer flow and redirects. M3Online Order Status FlowNew, approved, authorised, captured, canceled and refunded states. M4Webhook SubscriptionWebhook registration, events and notification handling. M5Online Go-Live Testing ChecklistPre-check, checkout, KYC, state sync, capture, cancel, refund and webhooks. M6API Reference IntroductionSandbox access, authentication and production credential process. M7Widgets · Promotional MessagingProduct and checkout widgets, Public Keys and approved placement. M8Pre-Checkout EligibilityEligibility request, visibility decision and 200ms timeout fallback. M9KSA Testing GuideOTP, new-customer ID verification and Nafath sandbox behavior. M10Create Checkout SessionComplete payload, risk assessment, expiry, additional data and checkout URL. M11Create In-store SMS Payment Link SessionPOS payload, required phone and items, email backup, store code, 15-minute expiry and checkout deeplink. M12Payment Link · POS IntegrationSMS delivery, customer phone journey, polling/webhook status confirmation, void and refunds.

Source review date: 18 August 2026. Provider documentation can change; the official go-live checklists should be re-run immediately before production approval.