Settlements

Trip completion

Once the trip has entered a completed state we use the fare object and its breakdown object from the trip updates endpoint to charge our passengers.

One notable aspect about the fare format in the API spec is the requirement of currency in the ISO 4217 format and price values in whole positive integers in the smallest unit the currency supports (pence, cents, etc). For example: 2330 for $23.3 or 100 for ¥100 which is a non-decimal currency.

"fare": {
        "currency": "USD",
        "total": 1013,
        "breakdown": [
          { 
            "name":"BASE_RATE",
            "value":1013,
            "vat_percent":10,
            "vat_decimal_places":0
          }
        ]
},

You can also specify quote type:

  • "FIXED" - The fare was quoted at a fixed price.
  • "METERED" - The fare was quoted as metered.

Fare.breakdown is an array of FareComponent objects which basically mean the price breakdown. The breakdown components should sum to the total.

Breakdown consists of the name which we use to map DMS components to our internal components, value of the component (a positive integer in the smallest unit the currency supports).

If tax is applicable you can use vat_percent and vat_decimal_places fields. For example, if you have a 10% tax use vat_percent = 10 and vat_decimal_places = 0.

If your tax is not an integer value then consider this example: if you have 8.875% tax, then vat_percent = 8875 and vat_decimal_places = 3 (meaning it has a decimal point 3 digits from right to left).

If your component tax is static (meaning that it does not change from trip to trip) for a component we can also map it on our side, so you don’t need to send these percent values and we map it ourselves.

Reference

ServiceAPI referenceErrors reference
Update TripUpdate TripIntegration Errors

Troubleshooting

Some potential errors you might encounter are:

ErrorSolution

What’s Next