{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "Amount",
    "description": "PayPal amount json schema",
    "type": "object",
    "properties": {
        "currency": {
            "description": "3-letter currency code. PayPal does not support all currencies.",
            "type": "string",
            "minLength": 3,
            "maxLength": 3
        },
        "total": {
            "description": "Total amount charged from the payer to the payee. In case of a refund, this is the refunded amount to the original payer from the payee. 10 characters max with support for 2 decimal places.",
            "type": "string",
            "maxLength": 10
        },
        "details": {
            "type": "object",
            "properties": {
                "shipping": {
                    "type": "string",
                    "maxLength": 10
                },
                "subtotal": {
                    "type": "string",
                    "maxLength": 10
                },
                "tax": {
                    "type": "string",
                    "maxLength": 10
                },
                "handling_fee": {
                    "type": "string"
                },
                "insurance": {
                    "type": "string"
                },
                "shipping_discount": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        }
    },
    "required": [
        "currency",
        "total"
    ]
}