How can I add multiple shipping methods in my app's checkout page?

Topic summary

A developer is building a Shopify app and encountering an error when attempting to add multiple shipping methods (Standard and Fast) to the checkout page.

The Problem:

  • When pushing two carrier services to the /admin/api/2024-04/carrier_services.json endpoint, an error occurs: "Standard is already configured"
  • The error suggests the “Standard” shipping method name conflicts with an existing configuration

Technical Context:

  • The developer is using Shopify’s CarrierService REST API resource
  • Code attempts to create two separate carrier service instances with different names and callback URLs
  • Both services are set to active status before saving

Current Status:
The issue remains unresolved with no responses yet. The developer needs guidance on either:

  • How to properly configure multiple distinct carrier services
  • Whether the naming conflict indicates a limitation or requires a different implementation approach
  • Potential workarounds for adding multiple shipping options through the Shopify API
Summarized with AI on November 10. AI used: claude-sonnet-4-5-20250929.

Hi evryone, I develop new app, and trying to add two shipping method on checkout page(standard and fast), but when I tring to push two methods for /admin/api/2024-04/carrier_services.json I got an error: body: {source: '{“errors”:{“base”:[“Standard is already configured”]}}} . Add my code below:

export const action = async ({ request }) => {
  try {
   const { admin, session } = await authenticate.admin(request);

    const carrier_service_courier = new admin.rest.resources.CarrierService({ session: session });
    carrier_service_courier.name = "Standard";
    carrier_service_courier.callback_url = "https://mystore/carrier";
    carrier_service_courier.active = true;
    await carrier_service_courier.save();

    const carrier_service = new admin.rest.resources.CarrierService({ session: session });
    carrier_service.name = "Fast";
    carrier_service.callback_url = "https://mystore/carrierFast";
    carrier_service.active = true;
    await carrier_service.save();

    return json({status: 'success'});
  } catch (error) {
    console.error('Error adding carrier services:', error);
    return json({ error: 'Failed to add carrier services' }, 500);
  }
};