You can use your own custom carrier endpoint with Zapiet - Pickup + Delivery. We will POST the body of Shopify's normal Carrier Service API request to your endpoint.
{ "rate": { "origin": { "country": "CA", "postal_code": "K2P1L4", "province": "ON", "city": "Ottawa", "name": null, "address1": "150 Elgin St.", "address2": "", "address3": null, "phone": "16135551212", "fax": null, "email": null, "address_type": null, "company_name": "Jamie D's Emporium" }, "destination": { "country": "CA", "postal_code": "K1M1M4", "province": "ON", "city": "Ottawa", "name": "Bob Norman", "address1": "24 Sussex Dr.", "address2": "", "address3": null, "phone": null, "fax": null, "email": null, "address_type": null, "company_name": null }, "items": [{ "name": "Short Sleeve T-Shirt", "sku": "", "quantity": 1, "grams": 1000, "price": 1999, "vendor": "Jamie D's Emporium", "requires_shipping": true, "taxable": true, "fulfillment_service": "manual", "properties": null, "product_id": 48447225880, "variant_id": 258644705304 }], "currency": "USD", "locale": "en" } }
You then just need to return a response in the format shown below:
{ "rates": [{ "service_name": "My Awesomely Price Rate", "service_code": "MYRATES", "total_price": "1295", "currency": "USD" }] }
Authentication
If an API key is provided we will pass it through in the rates request as a Bearer token for example:
Authorization: Basic e151f842-06f7-4d5f-9804-1d833a5180ea