Before testing Pay by Bank flows that require the Straddle-Account-Id header, you’ll need to create an organization and at least one related account. In the sandbox environment, this process is streamlined - you can create accounts instantly without completing onboarding or requesting capabilities.

If this doesn’t quite make sense yet, check out our Embedded Account guide before proceeding.

Setup Process

We provide a Postman collection and sample data to help you get started quickly. Click the button below to import our collection or read along for direct links to the relevant API endpoints.

The sample data below is fully functional and can be used exactly as shown. Just save both the organization_id and account_id from the responses - you’ll need them for future API calls in the sandbox environment.

Step 1: Create an Organization

First, create an organization that will contain your test accounts. You can use either:

  • Our Create Organization Postman request, or

  • Direct API call using this ready-to-use sample data (you can copy and paste this exactly as-is):

curl https://sandbox.straddle.io/v1/organizations \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "name": "Prestige Worldwide",
  "metadata": {
    "industry": "Shipping",
    "size": "Enterprise", 
    "headquarters": "San Francisco"
  },
  "external_id": "org_12345"
}'

The API will return an organization_id (a UUID) that you’ll need for the next step.

Organizations allow you to manage multiple related business accounts under a single umbrella. Each account represents a business that will use Straddle’s services. For sandbox testing, one organization is likely all you need, but you do you.

Step 2: Create a Test Account

Create a business account within your organization using either:

  • Our Create Account Postman request, or

  • Direct API call using this complete sample payload (just replace {uuid} with the organization_id from step 1):

{
  "organization_id": "{uuid}",
  "account_type": "business",
  "business_profile": {
    "name": "Prestige Worldwide",
    "website": "https://strddl.co",
    "legal_name": "Prestige Worldwide LLC INC LTD",
    "description": "Leading provider of cruise entertainment",
    "use_case": "Collecting fees for boat trips",
    "tax_id": "12-3456789",
    "phone": "+15555555555",
    "address": {
      "line1": "123 Innovation Drive",
      "line2": "Suite 200",
      "city": "San Francisco",
      "state": "CA",
      "postal_code": "94105",
      "country": "US"
    },
    "industry": {
      "mcc": "4457",
      "sector": "Transportation and Facilities",
      "category": "Boat Rentals and Leases"
    },
    "support_channels": {
      "email": "support@donotemail.com",
      "phone": "+15559876543",
      "url": "https://strddl.co/support"
    }
  },
  "access_level": "standard",
  "metadata": {
    "contract_renewal": "october",
    "account_manager": "bob@yourcompany.com"
  },
  "external_id": "biz_12345"
}

In the sandbox environment:

  • Accounts are created instantly

  • All capabilities are automatically enabled

  • No verification or onboarding is required

  • You can start testing payment flows immediately

Using Your Test Account

Once you receive the account_id in the response, include it in the Straddle-Account-Id header for subsequent API calls:

curl --request POST \
  --url https://sandbox.straddle.io/v1/charges \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --header 'Straddle-Account-Id: YOUR_ACCOUNT_ID' \
  --header 'Content-Type: application/json'

Next Steps

With your sandbox organization and account created, you can immediately begin:

  • Testing payment flows

  • Creating webhooks

  • Simulating different scenarios

Remember that sandbox credentials and accounts cannot be used in production. When you’re ready to go live, you’ll need to create production organizations and accounts, which will require full onboarding and verification.