OpenSylo Marketplace API
  1. Data Ingestion
OpenSylo Marketplace API
  • Introduction
  • Getting Started
  • OAuth 2.0 Flow
  • Webhook Integration
  • Sandbox Testing
  • Error Reference
  • Marketplace Dashboard
    • Login to the marketplace dashboard
      POST
    • View OAuth credentials
      GET
    • Regenerate client secret
      POST
  • OAuth 2.0
    • Start OAuth authorization
      GET
    • Exchange code or refresh token
      POST
    • Revoke a token
      POST
    • OAuth discovery / client metadata
      GET
  • Data Ingestion
    • Submit single merchant data
      POST
    • Submit bulk merchant data
      POST
    • Get merchant credit score
      GET
    • Integration health check
      GET
  • Loan API
    • Get active loans for a merchant
      GET
    • Get loan status
      GET
    • Validate deduction amounts
      POST
    • Bulk loan status check
      POST
  • Inbound Webhooks
    • Send repayment webhook
      POST
    • Send settlement webhook
      POST
  • Sandbox
    • Sandbox environment info
      GET
    • Get sandbox test credentials
      GET
    • Get sandbox test merchants
      GET
  • Schemas
    • DashboardLoginRequest
    • DashboardLoginResponse
    • CredentialsResponse
    • RegenerateSecretResponse
    • TokenRequest
    • TokenResponse
    • RevokeRequest
    • ClientMetadataResponse
    • MerchantIdentity
    • SalesPerformance
    • RevenueConsistency
    • FulfillmentMetrics
    • PayoutCashFlow
    • PlatformDependency
    • HistoricalCredit
    • BehavioralRisk
    • MerchantDataRequest
    • ScoreBreakdown
    • CreditScore
    • MerchantDataResponse
    • BulkMerchantDataRequest
    • BulkMerchantDataResponse
    • CreditScoreResponse
    • HealthResponse
    • ActiveLoansResponse
    • LoanStatusResponse
    • ValidateDeductionsRequest
    • ValidateDeductionsResponse
    • BulkLoanStatusRequest
    • BulkLoanStatusResponse
    • RepaymentWebhookRequest
    • SettlementWebhookRequest
    • WebhookAckResponse
    • SandboxInfoResponse
    • SandboxCredentialsResponse
    • SandboxMerchantsResponse
    • OAuthError
    • ApiError
  1. Data Ingestion

Submit bulk merchant data

POST
/marketplace/data/merchants/bulk
Submit data for multiple merchants in a single request. Maximum 1000 merchants per batch. For single-merchant OAuth tokens, the endpoint filters to only include data for the consented merchant.
Required scope: data.share.sales

Request

Authorization
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
Bulk data processed
Body

🟠400
🟠401
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.opensylo.com/marketplace/data/merchants/bulk' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "merchants": [
        {
            "merchantIdentity": {
                "merchantId": "merchant_001",
                "businessName": "Yakoyo Foods Ltd",
                "businessType": "REGISTERED_BUSINESS",
                "marketplaceOnboardingDate": "2023-06-15T00:00:00.000Z",
                "verificationStatus": true,
                "location": "Lagos, Nigeria",
                "country": "Nigeria",
                "category": "food_beverages"
            },
            "salesPerformance": {
                "gmv30Days": 2500000,
                "gmv90Days": 8200000,
                "gmv180Days": 18500000,
                "avgMonthlySales": 3100000,
                "orderCount": 456,
                "avgOrderValue": 6800,
                "salesGrowthRate": 15.5
            },
            "revenueConsistency": {
                "monthlySalesVariance": 12.5,
                "zeroSalesMonths": 0,
                "longestSalesStreak": 18,
                "revenueConcentration": 35.2
            },
            "fulfillmentMetrics": {
                "fulfillmentRate": 97.8,
                "cancellationRate": 2.1,
                "refundRate": 1.5,
                "refundAmount": 45000,
                "disputeRate": 0.8,
                "lateDeliveryRate": 3.2
            },
            "payoutCashFlow": {
                "payoutFrequency": "WEEKLY",
                "avgPayoutValue": 775000,
                "failedPayouts": 0,
                "walletBalanceUsage": 125000,
                "settlementDelays": 0
            },
            "platformDependency": {
                "topProductGmvPercentage": 28.5,
                "topCustomerPercentage": 12.3
            },
            "behavioralRisk": {
                "accountSuspensions": 0,
                "policyViolationsSeverity": null,
                "hasFraudFlags": false,
                "hasSuddenGmvSpikes": false,
                "hasLinkedAccounts": false
            }
        }
    ],
    "marketplaceId": "your_marketplace_id",
    "batchTimestamp": "2026-01-29T08:00:00.000Z",
    "batchId": "batch_001"
}'
Response Response Example
200 - Success
{
    "success": true,
    "message": "Bulk data processed",
    "totalProcessed": 50,
    "successfullyProcessed": 48,
    "failed": 2,
    "errors": [
        {
            "field": "salesPerformance.gmv30Days",
            "error": "Must be a non-negative number",
            "merchantId": "merchant_42"
        }
    ],
    "processedMerchantIds": [
        "merchant_1",
        "merchant_2"
    ],
    "processedAt": "2026-01-29T08:15:30.000Z"
}
Modified at 2026-01-29 23:19:05
Previous
Submit single merchant data
Next
Get merchant credit score
Built with