We do not sell, rent, or trade merchant or customer personal information to data brokers or third-party advertising networks.
Merchant records are scoped per store (tenantId), and third-party courier/Shopify credentials and 2FA secrets are encrypted at rest.
The Android app uses the camera for barcode scanning and product/profile photos, local OS biometrics for device unlock, and push tokens for order alerts.
Storefront analytics events expire automatically after 90 days, OTP records after 24 hours, and users can delete their account via app, web, or support.
Introduction and Scope
Welcome to AsanShipping (“AsanShipping,” “Asan Shipping,” “we,” “us,” or “our”). We provide an e-commerce logistics, Cash-on-Delivery (COD) order verification, multi-courier routing, reverse-logistics, and online storefront platform designed for merchants operating in Pakistan.
This Privacy Policy applies to personal and business data processed across the following AsanShipping services (collectively, the “Services”):
- Public Website & Developer Hub:
https://asanshipping.com, including public articles, calculators, and API documentation. - Merchant Web Portal:
https://web.asanshipping.com(and associated application subdomains) used by merchants and their staff to manage orders, inventory, couriers, finance, and store settings. - Centralized Authentication Service:
https://login-auth.asanshipping.com, which handles single sign-on (SSO), PKCE session handoffs, Google Sign-In, email OTP verification, and two-step verification (2FA). - Android Mobile Application: the Asan Shipping mobile app distributed via Google Play (package identifier
com.asanshipping.mobile). - Hosted Online Storefronts & Shopify Extensions: merchant storefronts hosted on
<store>.asanshipping.comor connected custom domains, and our Shopify embedded app / checkout address and delivery-availability widgets.
Each merchant using AsanShipping (whether via Shopify or an AsanShipping-hosted online store) is an independent business that determines its own product offerings, pricing, customer service, and store-level policies. This Privacy Policy describes how AsanShipping collects and processes data across our platform infrastructure; it does not govern how an individual merchant independently uses customer data outside AsanShipping or what separate privacy promises a merchant makes on its own website.
Information We Collect
Depending on whether you are a merchant account holder, a staff member, a shopper placing an order with a merchant, or a visitor to our website, we collect and process the following four categories of information:
2.1 Information Provided Directly by Merchants & Staff Users
- Account & Profile Details: First name, last name, email address, phone number, optional profile photo, account role (
Admin,Manager, orTeam_Member), and assigned screen permissions. - Authentication & Security Credentials: Passwords (stored as
bcrypthashes, never in plaintext in production), Google Sign-In profile identifiers (verified email, name, and profile image URL when you choose “Continue with Google”), HMAC-hashed email OTP verification and password-reset codes, and AES-256-GCM encrypted authenticator-app (TOTP) 2FA secrets and hashed backup codes. - Store & Business Configuration: Store/brand name, store logo, customer helpline phone number, store contact email, pickup/warehouse street address, city, province, postal code, country, storefront subdomain or custom domain, and order confirmation rules.
- Wallet, Billing & Top-Up Submissions: Subscription plan selections, wallet top-up request amounts, selected manual payment method (such as bank transfer, Easypaisa, or JazzCash), payment transaction reference numbers, optional uploaded payment proof screenshots, and billing notes. AsanShipping does not directly collect or store raw payment card numbers (PAN/CVV).
2.2 Business, Order, Recipient & Catalog Data Submitted by Merchants
- Order & Consignee (Buyer) Details: Recipient full name, phone number (normalized for courier and WhatsApp routing), optional email address, shipping street address, city, sub-area, delivery landmark, ordered line items (SKU, product title, quantity, unit price), Cash-on-Delivery (COD) amount, discount codes applied, order status timeline, and WhatsApp notification consent status.
- Customer Delivery History & Risk Screening Records: Per-store customer profiles, past consignment outcomes (delivered, returned-to-origin/RTO, cancelled), historical RTO rates, and return-risk or blacklist flags used to hold or review high-risk COD orders before dispatch.
- Inventory, Warehouse & Financial Records: Product catalog details (titles, descriptions, SKUs, weights, prices, cost prices, stock quantities, product images), supplier purchase records, packaging material usage, RTO return barcode scan results, damaged/scrap item logs, operational expenses, and courier COD settlement statements.
- Hosted Storefront Shopper Submissions: When a shopper places an order or submits a product review on an AsanShipping-hosted storefront, we collect the checkout shipping/contact fields, coupon redemptions, and product review content (reviewer name, star rating, comment text, and optional uploaded product review images).
2.3 Technical, Device, Mobile App & Usage Data Collected Automatically
- Session, Security & Audit Logs: IP address, session identifier (
sid), client type (web,mobile,sso), device label (e.g.,Android · AsanShipping app), last-seen timestamps, hashed browser device tokens (up to 20 recent devices per user to send new-device sign-in alerts), failed login attempt counters, and administrative audit logs. - Android Mobile App Permissions & Device Data (
com.asanshipping.mobile):- Push Notifications (
expo-notifications): If you grant notification permission after signing in, the app registers an Expo push token (ExpoPushToken[...]), platform (android/ios), and device label with our server so your phone receives real-time new-order and store alerts. - Camera (
android.permission.CAMERAviaexpo-camera): Accessed only when you actively open the barcode scanner (to scan shipping labels or returned RTO parcels) or take a photo for a product, store logo, or profile avatar. Note: the underlyingexpo-cameralibrary includesandroid.permission.RECORD_AUDIOin the Android manifest, but AsanShipping only captures still images and barcode scans and does not record audio or video. - Biometric Authentication (
USE_BIOMETRIC/USE_FINGERPRINTviaexpo-local-authentication): Processed strictly by the Android operating system on your device. AsanShipping never accesses, reads, or transmits fingerprint or facial biometric data. - On-Device Storage (
expo-secure-store&AsyncStorage): Stores your session token, cached user and store profile, active store ID, push token, order filter preferences, and light/dark theme setting on your phone.
- Push Notifications (
- Hosted Storefront Visitor Analytics (
StorefrontEvent): On merchant storefronts hosted by AsanShipping, a first-party script records a random visitor ID inlocalStorage(asan_vid_<store>), a 30-minute session ID insessionStorage, shopping funnel events (session_start,page_view,product_view,add_to_cart,checkout_started,purchase,heartbeat), device category (mobile,tablet,desktop), referrer host, and Core Web Vitals speed metrics (LCP, INP, CLS, TTFB, load time). The visitor's IP address is used only in memory (`geoip-lite`) to derive country, city, and coordinates rounded to 0.1° (~10 km); raw IP addresses, names, phone numbers, and emails are not stored in the storefront analytics collection.
2.4 Information Received from Connected Platforms & Integrations
- Shopify Stores: When a merchant connects a Shopify store, we receive HMAC-verified webhooks (
orders-create,orders-updated,orders-cancelled,products-update) and sync order, customer, and product catalog records using the merchant's encrypted Shopify access token. - Courier Partner APIs: When a merchant configures courier integrations (Trax, PostEx, Leopards Courier, TCS Envio, or M&P Express), we receive consignment tracking numbers (CNs), shipment status events, city serviceability lists, tariff quotes, and COD settlement statuses.
- WhatsApp & Voice IVR Providers: When automated order confirmation is active, we receive message delivery statuses and customer button replies (
Confirm/Cancel) from the Meta WhatsApp Cloud API, and keypad DTMF inputs (1to confirm,2to cancel), call duration, and call attempt statuses from Convex Interactive IVR.
How We Use Information
We use the collected information strictly to operate, secure, and improve the AsanShipping platform and fulfill services requested by our merchants:
- Account Provisioning, Authentication & Role Enforcement: Creating merchant stores and staff accounts, verifying identity via email OTP or Google Sign-In, enforcing two-step verification (2FA), managing per-device sessions, and restricting screen/API access based on assigned roles (
Admin,Manager,Team_Member). - Order Validation & Return-Risk Screening: Parsing shipping addresses, mapping destination cities to courier networks, holding duplicate or bulk orders for manual review, and screening incoming COD orders against customer delivery history and risk flags.
- Automated Customer Confirmation (WhatsApp & Voice IVR): Sending interactive WhatsApp confirmation messages and/or placing automated voice confirmation calls within configured Pakistan calling windows so buyers can confirm or cancel COD orders before courier dispatch.
- Multi-Courier Booking, Label Printing & Shipment Tracking: Booking parcels with the merchant's selected or routed courier (Trax, PostEx, Leopards, TCS Envio, M&P), generating barcode shipping labels, polling/receiving tracking updates, and flagging stalled shipments.
- Inventory, Reverse Logistics & Financial Reconciliation: Reserving stock on order creation, releasing stock on cancellation, scanning returned RTO parcels at the warehouse, recording damaged scrap, and reconciling courier COD payouts and overdue remittances.
- Real-Time Notifications: Delivering live order stream updates and mobile push notifications to signed-in merchant devices.
- Storefront Hosting & First-Party Analytics: Rendering hosted online stores, processing storefront checkouts and discount coupons, and providing merchants with aggregated conversion funnels, live city activity, and Core Web Vitals speed metrics.
- Billing, Wallet Metering & Platform Security: Metering WhatsApp message and IVR call credit consumption, processing manual wallet top-up requests, enforcing API rate limits, detecting automated scanner traffic, and maintaining security audit logs.
When and With Whom Data Is Shared
We do not sell personal data to third parties or share merchant/customer data with third-party advertising networks. We share data only with the service providers, logistics carriers, and merchant-connected platforms necessary to run the Services, as detailed below:
| Recipient Category | Providers / Integrations | Data Shared | Purpose |
|---|---|---|---|
| Courier & Fulfillment Partners | Trax, PostEx, Leopards Courier, TCS Envio, M&P Express | Consignee name, phone number, delivery address, city, parcel weight, item summary, and COD amount (only for couriers enabled and configured by the merchant) | Booking shipments, generating airway bills (CNs), tracking parcel status, and reconciling COD settlements |
| E-Commerce Store Integration | Shopify | Store domain, OAuth/API tokens, synced product/variant SKUs, order statuses, and cancellation tags (when connected by the merchant) | Ingesting store orders via HMAC-verified webhooks, syncing inventory, and updating order status in Shopify |
| Customer Order Confirmation | Meta WhatsApp Cloud API, Convex Interactive (Voice IVR) | Customer phone number, recipient name, merchant store name, order reference, COD total, and interactive button or keypad (DTMF) responses | Sending automated WhatsApp order confirmation messages and placing automated voice IVR confirmation calls according to merchant settings |
| Transactional Email Delivery | Brevo SMTP Relay | Merchant/staff email address, first name, 6-digit verification/password-reset codes, and sign-in security alerts | Delivering account verification OTPs, password reset codes, and new-device login notifications from asanshipping.com |
| Identity & Mobile Push Delivery | Google Identity Services (OAuth 2.0), Expo Push Service | Google ID token (when signing in with Google); Expo push token, platform (Android/iOS), and order/store alert payload | Verifying Google sign-in identity and delivering real-time order and operational push notifications to signed-in mobile devices |
| Cloud Storage, Hosting & Infrastructure | MongoDB, Redis, Backblaze B2, Cloudinary, Vercel | Application database records, background job queues, uploaded product/store/profile images, payment receipt screenshots, and web traffic | Hosting the web and authentication portals, storing encrypted and tenant-scoped operational records, and serving media assets over HTTPS |
| Public Website Support Widget | Zanderio AI Chat Widget (cdn.zanderio.ai) | Messages and inquiries voluntarily entered into the chat widget on the public marketing website (asanshipping.com) | Providing interactive product information and visitor support on the public marketing website |
Merchant Developer Webhooks: If a merchant configures custom outbound developer webhooks (/api/v1 / Developer Access), order and fulfillment event payloads for that merchant's store are sent to the HTTPS endpoint URL configured by that merchant.
Legal Compliance & Protection: We may disclose information if required to do so by applicable law, regulation, court order, or valid governmental request, or when necessary to investigate fraud, enforce our Terms of Service, or protect the safety, rights, or property of AsanShipping, our merchants, or the public.
Merchant and Customer Responsibilities & Roles
Because AsanShipping powers multi-tenant e-commerce operations, our relationship to personal data depends on whose data is being processed:
- Merchant & Staff Account Data: For merchant owners, administrators, managers, and team members who register and sign into AsanShipping (via web or the Android app), AsanShipping determines how account, authentication, billing, and security records are managed to provide the platform.
- End-Customer (Consignee / Shopper) Order Data: When a merchant syncs orders from Shopify, imports orders via CSV/API, creates manual orders, or receives orders through a hosted storefront, AsanShipping processes the buyer's name, phone number, address, and order details on behalf of that merchant to execute order confirmation, risk screening, courier dispatch, and delivery tracking.
- Merchant Obligations: Merchants are responsible for ensuring that they have provided appropriate privacy notices to their shoppers and obtained any required consents under applicable law before submitting customer phone numbers and addresses to AsanShipping for automated WhatsApp messaging, IVR confirmation calls, and courier fulfillment.
- Shopper Inquiries: If you are an end customer who placed an order with a merchant store and have questions about your order, refund, or a merchant's own store policies, you should contact the merchant directly using the store helpline or email shown on your order confirmation. You may also contact AsanShipping at support@asanshipping.com regarding platform-level privacy inquiries.
Data Security Controls
We implement technical and organizational safeguards designed to protect merchant and customer information against unauthorized access, alteration, or loss:
- Encryption of Integration Credentials & 2FA Secrets: Merchant third-party API credentials (Shopify access/refresh tokens and courier API keys, passwords, and tokens) and user TOTP 2FA secrets are encrypted at rest using AES-256-GCM (with legacy AES-256-CBC decryption support) before being written to the database, and are masked when returned to client interfaces.
- Password Hashing & Breached-Password Screening: User passwords are hashed with
bcrypt. New and reset passwords must meet complexity requirements and are checked against known compromised password lists using k-anonymity (Have I Been Pwned range queries). - PKCE Handoff, Lockouts & Session Revocation: Sign-ins through
login-auth.asanshipping.comuse PKCE and 60-second single-use authorization codes. Accounts are temporarily locked after repeated failed password or 2FA attempts, and every session carries a revocable session ID (sid) and token version counter so password changes immediately invalidate prior sessions. - Multi-Tenant Scoping & Role-Based Access Control: Tenant operational records are indexed and filtered by
tenantIdderived from the authenticated session, and backend routes enforce role and screen permissions (read/write). - Transport Security & Webhook Verification: Traffic across public web, authentication, API, and storefront domains is served over HTTPS/TLS. Inbound Shopify and Meta WhatsApp webhooks are verified using cryptographic HMAC signatures.
While we work continuously to secure our systems and address identified software issues, no method of transmission over the internet or electronic storage can be guaranteed to be completely infallible. We strongly encourage all merchants and staff users to use strong, unique passwords and enable two-step verification (2FA).
Data Retention Schedule
We retain personal and operational data only for as long as necessary to provide the Services, comply with legal and accounting obligations, or resolve disputes. Specific code-enforced retention periods and deletion triggers include:
| Record Category | Retention Period / Trigger | Implementation Details |
|---|---|---|
| Storefront Visitor Analytics (StorefrontEvent) | 90 days (automatic TTL purge) | Anonymous session, funnel, Core Web Vitals, and city-level visit events expire automatically 90 days after creation or immediately upon store deletion. |
| Email OTP & Password Reset Tokens (OtpToken) | 24 hours (automatic TTL purge) | One-time codes expire within minutes; the hashed throttling record is automatically purged by MongoDB TTL after 24 hours. |
| Authentication Sessions & Handoff Codes (AuthSession, MobileAuthCode) | 60 seconds (handoff code) / Until session expiry or sign-out | Single-use PKCE handoff codes expire in 60 seconds. Active session records are removed upon sign-out or automatically when the token expires. |
| Developer API Idempotency Records (IdempotencyRecord) | 24 hours | Retained briefly to prevent duplicate order creation or double mutations during network retries. |
| Mobile Push Tokens (DevicePushToken) | Until sign-out, account deletion, or token invalidation | Removed when you sign out of the Android app, delete your account, or when Expo reports the device token is no longer registered. |
| Merchant Account, Store & Operational Data (User, Tenant, Order, Customer, Product, Settlement) | Active account duration (until deleted by user or store admin) | Retained while your account and store remain active. Deleting the sole/last user of a store triggers cascade deletion across tenant operational collections. |
| Billing, Wallet & Security Audit Records (WalletTransaction, PaymentRequest, SubscriptionBillingRecord, AuditLog) | Retained as needed for accounting, fraud prevention & audit integrity | Financial ledger entries, payment verification records, and administrative security logs may be preserved beyond operational store cleanup where required for accounting, dispute resolution, or security auditing. |
Shopify Uninstall & Redact Webhooks: When a merchant uninstalls the AsanShipping Shopify app (app-uninstalled) or when Shopify sends a shop/redact webhook, our server immediately clears the stored Shopify access token for that store so no further Shopify API calls occur. Merchants or customers requesting full erasure of historical order records may use the self-service deletion tools or contact support as described below.
Access, Correction, Export, Withdrawal & Deletion Requests
You have practical controls over your personal and store information both directly inside the product and through our support team:
- Viewing & Updating Account Information: You can view and update your first name, last name, phone number, profile photo, and password at any time in Settings → Your Account on both the Merchant Web Portal and the Asan Shipping Android app. Store Administrators can update business name, store logo, helpline, email, and warehouse address in Settings → Store Details.
- Exporting Operational Data: Merchants can export orders, customer lists, finance settlements, and operational reports from the Merchant Web Portal.
- Withdrawing Device & Notification Permissions: On Android, you can revoke Camera or Notification permissions at any time in your device's system settings. Signing out of the Android app automatically unregisters your phone's Expo push token from our server.
- Managing Customer Communication Modes: Store Administrators can switch order confirmation modes between
WHATSAPP_ONLY,IVR_ONLY,IVR_WHATSAPP, andMANUAL, or disable WhatsApp notifications in store settings. - Submitting Privacy Requests: To request access to, correction of, or deletion of personal data that you cannot update directly in the product, email support@asanshipping.com. To protect account and store security, we verify the requester's identity (for example, by confirming control of the registered email address or store admin credentials) before fulfilling sensitive requests.
Account and Store Deletion
Users can permanently delete their AsanShipping account either directly inside the application or from the web without needing the mobile app installed:
Open the Asan Shipping Android app → tap Settings (gear tab) → Your account → tap Delete my account, enter your password to confirm, and submit.
Without the mobile app installed, sign in at web.asanshipping.com/settings → Account tab → Delete Account, type yes delete my account, enter your password, and confirm.
Visit our dedicated Account Deletion page or email support@asanshipping.com from your registered email address if you cannot sign in.
- User Account Removal: Your
Userprofile record is permanently deleted from our database. - Multi-Member Store Protection: If you are the sole
Adminof a store that still has other active team members (ManagerorTeam_Member), the system prevents accidental store lockouts by requiring you to assign another Admin or remove the other team members before deleting your account. - Full Store Cascade Deletion (Last Remaining Member): When the last remaining user of a store deletes their account, our backend (
cascadeDeleteTenant) automatically deletes theTenantstore record and purges tenant-scoped operational collections — including orders, customer records, risk histories, products, categories, coupons, reviews, uploaded media asset records, inventory purchases, packaging records, reverse logistics, scrap logs, courier API credentials, communication logs, WhatsApp messages/templates/ledgers, settlements, developer webhooks/logs, and storefront themes, domains, designs, and analytics events. - Records Retained for Accounting, Fraud Prevention & Security: Platform-level billing and wallet records (
Wallet,WalletTransaction,PaymentRequest,SubscriptionBillingRecord) and security audit logs (AuditLog) are not part of the operational cascade and may be retained where necessary for financial accounting, payment dispute resolution, fraud prevention, and security auditing. Short-lived session and OTP records expire automatically via their MongoDB TTL indexes.
International Service Providers and Cross-Border Processing
AsanShipping is built primarily for e-commerce merchants and domestic courier networks operating in Pakistan (including Trax, PostEx, Leopards Courier, TCS Envio, and M&P Express). However, several of the cloud infrastructure and communication providers we rely on — such as MongoDB Atlas, Vercel, Meta Platforms (WhatsApp Cloud API), Google (OAuth Sign-In), Brevo (SMTP email relay), Expo (push notification delivery), Backblaze B2, and Cloudinary — operate globally distributed servers located outside Pakistan.
By using the Services, you understand that account, store, order, and communication data may be transmitted to and processed on cloud infrastructure located outside your country of residence, subject to the security controls described in Section 7 of this Privacy Policy.
Intended Audience and Children's Privacy
AsanShipping and the Asan Shipping mobile application are business-to-business (B2B) commercial tools designed for e-commerce store owners, warehouse operators, and authorized business personnel. Our Services are not directed to children, and we do not knowingly solicit or collect personal information directly from children.
If you believe that a child has created an account on AsanShipping or submitted personal information to us without appropriate authorization, please contact us at support@asanshipping.com so we can promptly investigate and remove the information.
Changes to This Privacy Policy
We may update this Privacy Policy from time to time to reflect new platform features, courier or communication integrations, security improvements, or applicable legal requirements. When we make changes, we will publish the updated policy at https://asanshipping.com/privacy-policy and update the “Effective & Last Updated” date at the top of this page. For material changes that affect registered merchants, we may also provide notice through the Merchant Web Portal, the Android application, or email.
Contact Us & Privacy Inquiries
If you have questions, concerns, or requests regarding this Privacy Policy, our data handling practices, or account and data deletion, please contact us through our official support channel:
com.asanshipping.mobile) · Website: https://asanshipping.com