Skip to main content
Glama

complete_checkout

Generate a Yoco card or Ozow instant-EFT payment link; this does NOT complete payment. Rejects cancelled checkouts and rechecks stock and totals first. An atomic claim prevents competing gateway calls. Returns payment_url or null plus status and message; cloud callers may be held. Retain a successful URL: repeat calls return payment_pending with no URL. Gateway failures raise an error, send no payment-link email and require team review rather than an automatic retry. Poll get_order with customer_email for payment status.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
checkout_idYes
payment_methodNoOverrides any value set in create_checkout/update_checkout

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
ap2No
itemsNo
statusYes
messageYes
currencyNo
customerNo
next_stepNo
total_zarNo
created_atNo
item_countNo
checkout_idYes
payment_urlYes
payment_methodNo
payment_statusNo
provider_referenceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "allOf": [
      +    {
      +      "if": {
      +        "properties": {
      +          "payment_url": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "payment_url"
      +        ]
      +      },
      +      "then": {
      +        "required": [
      +          "total_zar",
      +          "currency",
      +          "payment_method"
      +        ]
      +      }
      +    }
      +  ],
      +  "properties": {
      +    "ap2": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "merchant_authorization": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "merchant_authorization"
      +      ],
      +      "type": "object"
      +    },
      +    "checkout_id": {
      +      "type": "string"
      +    },
      +    "created_at": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "currency": {
      +      "const": "ZAR",
      +      "type": "string"
      +    },
      +    "customer": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "address": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "city": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "email": {
      +          "type": "string"
      +        },
      +        "name": {
      +          "type": "string"
      +        },
      +        "phone": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [],
      +      "type": "object"
      +    },
      +    "item_count": {
      +      "type": "number"
      +    },
      +    "items": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "additionalProperties": true,
      +            "properties": {
      +              "colour": {
      +                "type": "string"
      +              },
      +              "finish": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "height": {
      +                "type": "number"
      +              },
      +              "mountType": {
      +                "type": "string"
      +              },
      +              "price": {
      +                "type": "number"
      +              },
      +              "productId": {
      +                "type": "string"
      +              },
      +              "productName": {
      +                "type": "string"
      +              },
      +              "quantity": {
      +                "type": "number"
      +              },
      +              "total": {
      +                "type": "number"
      +              },
      +              "width": {
      +                "type": "number"
      +              }
      +            },
      +            "required": [],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "next_step": {
      +      "type": "string"
      +    },
      +    "payment_method": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "payment_status": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "payment_url": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "provider_reference": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "status": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "total_zar": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "checkout_id",
      +    "status",
      +    "payment_url",
      +    "message"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources