Satispay G Business API

The G Business API from Satispay — 13 operation(s) for g business.

Operations 14

GET /g_business/v1/consumers/{phone_number} Get consumer #
GET /g_business/v1/daily_closure/{daily_closure_date} Retrieve daily closure #
GET /g_business/v1/profile/me Retrieve shop profile #
POST /g_business/v1/pre_authorized_payment_tokens Create authorization #
GET /g_business/v1/pre_authorized_payment_tokens/{id} Get authorization #
PUT /g_business/v1/pre_authorized_payment_tokens/id Update authorization #
POST /g_business/v1/mqtt_certificates Create mqtt certificates #
POST /g_business/v1/sessions Open session #
POST /g_business/v1/sessions/{id}/events Create session event #
GET /g_business/v1/sessions/{id} Get session details #
PATCH /g_business/v1/sessions/{id} Update session #
GET /g_business/v1/vendors/{vendor}/products/{product}/os/{os_version}/software/{software} Get software version details #
GET /g_business/v1/reports Get list of reports #
GET /g_business/v1/reports/{report_id} Retrieve a Report #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/satispay-g-business-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

satispay-g-business-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: production G Business API
  version: 1.7.1
servers:
- url: https://authservices.satispay.com
security:
- {}
tags:
- name: G Business
paths:
  /g_business/v1/consumers/{phone_number}:
    get:
      summary: Get consumer
      description: API to retrieve a customer uid from the phone number
      operationId: retrive-consumer
      parameters:
      - name: phone_number
        in: path
        description: The phone number formatted with its prefix (eg. +390000000000)
        schema:
          type: string
        required: true
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"id\": \"889ab18d-b319-490c-8899-c350c076a901\"\n}"
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: 889ab18d-b319-490c-8899-c350c076a901
        '403':
          description: '403'
          content:
            text/plain:
              examples:
                Result:
                  value: Authorization header not present or invalid
      deprecated: false
      security: []
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request GET \\\n  --url 'https://authservices.satispay.com/g_business/v1/consumers/+390000000000' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\""
        - language: php
          code: '\SatispayGBusiness\Api::setPublicKey("yourPublicKey");

            \SatispayGBusiness\Api::setPrivateKey("yourPrivateKey");

            \SatispayGBusiness\Api::setKeyId("yourKeyId");


            $payment = \SatispayGBusiness\Consumer::get("+390000000000");'
        samples-languages:
        - curl
        - php
      tags:
      - G Business
  /g_business/v1/daily_closure/{daily_closure_date}:
    get:
      summary: Retrieve daily closure
      description: API to retrieve shop daily closure
      operationId: retrieve-daily-closure
      parameters:
      - name: daily_closure_date
        in: path
        description: The day on which retrieve the daily closure (format yyyyMMdd)
        schema:
          type: string
        required: true
      - name: generate_pdf
        in: query
        description: Generate the pdf with the daily closure amounts
        schema:
          type: boolean
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"shop_daily_closure\":\n  {\n    \"id\": \"20190617__e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n    \"type\": \"SHOP\",\n    \"customer_uid\": \"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n    \"amount_unit\": 3500,\n    \"currency\": \"EUR\"\n  },\n  \"pdf\":\n  {\n    \"url\": \"<presigned_url>\",\n    \"http_method\": \"GET\",\n    \"expires_in_sec\": 3600,\n    \"expiration\":\"<date>\",\n    \"key\":\"<key>\",\n    \"bucket\":\"<bucket>\"\n  } \n}"
              schema:
                type: object
                properties:
                  shop_daily_closure:
                    type: object
                    properties:
                      id:
                        type: string
                        example: 20190617__e7ddb175-474a-4f5b-8820-cf96f0418c41
                      type:
                        type: string
                        example: SHOP
                      customer_uid:
                        type: string
                        example: e7ddb175-474a-4f5b-8820-cf96f0418c41
                      amount_unit:
                        type: integer
                        example: 3500
                        default: 0
                      currency:
                        type: string
                        example: EUR
                  pdf:
                    type: object
                    properties:
                      url:
                        type: string
                        example: <presigned_url>
                      http_method:
                        type: string
                        example: GET
                      expires_in_sec:
                        type: integer
                        example: 3600
                        default: 0
                      expiration:
                        type: string
                        example: <date>
                      key:
                        type: string
                        example: <key>
                      bucket:
                        type: string
                        example: <bucket>
        '400':
          description: '400'
          content:
            text/plain:
              examples:
                Result:
                  value: Bad daily closure date format
        '403':
          description: '403'
          content:
            text/plain:
              examples:
                Result:
                  value: Forbidden or invalid authorization header
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request GET \\\n  --url 'https://authservices.satispay.com/g_business/v1/daily_closure/20190617?generate_pdf=true' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"'"
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/profile/me:
    get:
      summary: Retrieve shop profile
      description: API to retrieve shop details
      operationId: retrieve-shop-profile
      parameters:
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"id\": \"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n  \"merchant_uid\": \"2bfae1c2-837b-46ef-90d6-c2cd196fb6c2\",\n  \"name\": \"Satispay shop\",\n  \"address\": {\n    \"city\": \"Milano\",\n    \"zip_code\": \"20159\",\n    \"address\": \"Via Luigi Porro Lambertenghi\",\n    \"st_number\": \"7\",\n    \"country\": \"IT\"\n  },\n  \"geolocation\": {\n    \"lat\": 45.4896119,\n    \"lon\": 9.1846259\n  },\n  \"images\": [...],\n  \"localization\": \"STATIC\",\n  \"acceptance\": \"ACCEPTANCE\",\n  \"model\": \"BRICK_AND_MORTAR\",\n  \"qr_code_identifier\": \"S6Y-SHP--E7DDB175-474A-4F5B-8820-CF96F0418C41\"\n}"
        '403':
          description: '403'
          content:
            application/json:
              examples:
                Result:
                  value: Forbidden or invalid authorization header
        '404':
          description: '404'
          content:
            application/json:
              examples:
                Result:
                  value: Resource not found
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request GET \\\n  --url 'https://authservices.satispay.com/g_business/v1/profile/me' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"\n\n"
          name: cURL
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/pre_authorized_payment_tokens:
    post:
      summary: Create authorization
      description: API to request a new pre-authorized token
      operationId: create-authorization
      parameters:
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      - name: Idempotency-Key
        in: header
        description: The idempotent token of the request
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                reason:
                  type: string
                  description: The reason why the token is being request
                callback_url:
                  type: string
                  description: The url that will be called with an http GET request if the pre-authorization status changes. Note that {uuid} will be replaced with the authorization token
                redirect_url:
                  type: string
                  description: The url to redirect the user after the authorization flow is completed
                metadata:
                  type: object
                  description: Generic field that can be used to store generic info. The field `phone_number` can be used to pre-fill the mobile number.
                  properties: {}
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"id\":\"9b89c251-6151-4561-93cc-c027f4d7f034\",\n  \"code_identifier\":\"S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034\",\n  \"shop_uid\":\"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n  \"status\":\"PENDING\",\n  \"reason\":\"Monthly payment\",\n  \"callback_url\":\"https://myServer.com/myCallbackUrl/{uuid}\",\n  \"metadata\": {},\n\t\"redirect_url\": \"https://online.satispay.com/authorize/9b89c251-6151-4561-93cc-c027f4d7f034?redirect_url=https%3A%2F%2FmyServer.com%2FmyRedirectUrl\"\n}"
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: 9b89c251-6151-4561-93cc-c027f4d7f034
                  code_identifier:
                    type: string
                    example: S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034
                  shop_uid:
                    type: string
                    example: e7ddb175-474a-4f5b-8820-cf96f0418c41
                  status:
                    type: string
                    example: PENDING
                  reason:
                    type: string
                    example: Monthly payment
                  callback_url:
                    type: string
                    example: https://myServer.com/myCallbackUrl/{uuid}
                  metadata:
                    type: object
                    properties: {}
                  redirect_url:
                    type: string
                    example: https://online.satispay.com/authorize/9b89c251-6151-4561-93cc-c027f4d7f034?redirect_url=https%3A%2F%2FmyServer.com%2FmyRedirectUrl
        '400':
          description: '400'
          content:
            text/plain:
              examples:
                Result:
                  value: Bad request
        '401':
          description: '401'
          content:
            text/plain:
              examples:
                Result:
                  value: Unauthorized
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request POST \\\n  --url https://authservices.satispay.com/g_business/v1/pre_authorized_payment_tokens \\\n  --header 'Content-Type: application/json' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"' \\\n  --data '{\n  \"reason\": \"Monthly payment\",\n  \"callback_url\": \"https://myServer.com/myCallbackUrl?payment_id={uuid}\",\n  \"redirect_url\": \"https://myServer.com/myRedirectUrl\"\n}'"
        - language: php
          code: "\\SatispayGBusiness\\Api::setPublicKey(\"yourPublicKey\");\n\\SatispayGBusiness\\Api::setPrivateKey(\"yourPrivateKey\");\n\\SatispayGBusiness\\Api::setKeyId(\"yourKeyId\");\n\npreAuthorizedPaymentToken = \\SatispayGBusiness\\PreAuthorizedPaymentToken::create([\n  \"reason\" => \"Monthly Payments\",\n  \"callback_url\" => \"https://myServer.com/myCallbackUrl?payment_id={uuid}\",\n  \"redirect_url\" => \"https://myServer.com/myRedirectUrl\"\n]);"
          name: PHP
        samples-languages:
        - curl
        - php
      tags:
      - G Business
  /g_business/v1/pre_authorized_payment_tokens/{id}:
    get:
      summary: Get authorization
      description: API to get details about pre-authorized token
      operationId: get-authorization
      parameters:
      - name: id
        in: path
        description: Pre-Authorized Payment Token
        schema:
          type: string
        required: true
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"id\": \"9b89c251-6151-4561-93cc-c027f4d7f034\",\n  \"code_identifier\": \"S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034\",\n  \"consumer_uid\": \"75d5c151-7b11-4bff-9149-d320dfa66461\",\n  \"shop_uid\": \"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n  \"status\": \"ACCEPTED\",\n  \"reason\": \"Monthly payment\",\n  \"callback_url\": \"https://myServer.com/myCallbackUrl/{uuid}\",\n  \"metadata\": {}\n}"
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: 9b89c251-6151-4561-93cc-c027f4d7f034
                  code_identifier:
                    type: string
                    example: S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034
                  consumer_uid:
                    type: string
                    example: 75d5c151-7b11-4bff-9149-d320dfa66461
                  shop_uid:
                    type: string
                    example: e7ddb175-474a-4f5b-8820-cf96f0418c41
                  status:
                    type: string
                    example: ACCEPTED
                  reason:
                    type: string
                    example: Monthly payment
                  callback_url:
                    type: string
                    example: https://myServer.com/myCallbackUrl/{uuid}
                  metadata:
                    type: object
                    properties: {}
        '401':
          description: '401'
          content:
            text/plain:
              examples:
                Unauthorized:
                  value: Unauthorized
        '404':
          description: '404'
          content:
            text/plain:
              examples:
                Result:
                  value: Resource not found
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request GET \\\n  --url https://authservices.satispay.com/g_business/v1/pre_authorized_payment_tokens/9b89c251-6151-4561-93cc-c027f4d7f034 \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"'"
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/pre_authorized_payment_tokens/id:
    put:
      summary: Update authorization
      description: API to cancel/revoke a pre-authorized token or to associate an existing pre-authorized token in PENDING state with a consumer
      operationId: update-authorization
      parameters:
      - name: id
        in: path
        description: Pre-Authorized Payment Token
        schema:
          type: string
        required: true
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: string
                  description: The update status to perform (CANCELED).
                consumer_uid:
                  type: string
                  description: Unique ID of the consumer used to bind the token.
                metadata:
                  type: string
                  description: Generic field that can be used to store additional data.
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                OK - CANCEL/REVOKE:
                  value: "{\n  \"id\": \"9b89c251-6151-4561-93cc-c027f4d7f034\",\n  \"code_identifier\": \"S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034\",\n  \"consumer_uid\": \"75d5c151-7b11-4bff-9149-d320dfa66461\",\n  \"shop_uid\": \"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n  \"status\": \"CANCELED\",\n  \"reason\": \"Monthly payment\",\n  \"callback_url\": \"https://myServer.com/myCallbackUrl/{uuid}\",\n  \"metadata\": {}\n}"
                OK - ASSOCIATE CONSUMER:
                  value: "{\n  \"id\": \"9b89c251-6151-4561-93cc-c027f4d7f034\",\n  \"code_identifier\": \"S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034\",\n  \"consumer_uid\": \"75d5c151-7b11-4bff-9149-d320dfa66461\",\n  \"shop_uid\": \"e7ddb175-474a-4f5b-8820-cf96f0418c41\",\n  \"status\": \"PENDING\",\n  \"reason\": \"Monthly payment\",\n  \"callback_url\": \"https://myServer.com/myCallbackUrl/{uuid}\",\n  \"metadata\": {}\n}"
              schema:
                oneOf:
                - title: OK - CANCEL/REVOKE
                  type: object
                  properties:
                    id:
                      type: string
                      example: 9b89c251-6151-4561-93cc-c027f4d7f034
                    code_identifier:
                      type: string
                      example: S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034
                    consumer_uid:
                      type: string
                      example: 75d5c151-7b11-4bff-9149-d320dfa66461
                    shop_uid:
                      type: string
                      example: e7ddb175-474a-4f5b-8820-cf96f0418c41
                    status:
                      type: string
                      example: CANCELED
                    reason:
                      type: string
                      example: Monthly payment
                    callback_url:
                      type: string
                      example: https://myServer.com/myCallbackUrl/{uuid}
                    metadata:
                      type: object
                      properties: {}
                - title: OK - ASSOCIATE CONSUMER
                  type: object
                  properties:
                    id:
                      type: string
                      example: 9b89c251-6151-4561-93cc-c027f4d7f034
                    code_identifier:
                      type: string
                      example: S6Y-PPT--9B89C251-6151-4561-93CC-C027F4D7F034
                    consumer_uid:
                      type: string
                      example: 75d5c151-7b11-4bff-9149-d320dfa66461
                    shop_uid:
                      type: string
                      example: e7ddb175-474a-4f5b-8820-cf96f0418c41
                    status:
                      type: string
                      example: PENDING
                    reason:
                      type: string
                      example: Monthly payment
                    callback_url:
                      type: string
                      example: https://myServer.com/myCallbackUrl/{uuid}
                    metadata:
                      type: object
                      properties: {}
        '400':
          description: '400'
          content:
            text/plain:
              examples:
                Result:
                  value: Bad request
        '403':
          description: '403'
          content:
            text/plain:
              examples:
                Result:
                  value: Forbidden or invalid authorization header
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request PUT \\\n  --url https://authservices.satispay.com/g_business/v1/pre_authorized_payment_tokens/9b89c251-6151-4561-93cc-c027f4d7f034 \\\n  --header 'Content-Type: application/json' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"' \\\n  --data '{\n  \"status\": \"CANCELED\"\n}'"
          name: cURL - CANCEL/REVOKE
        - language: curl
          code: "curl --request PUT \\\n  --url https://authservices.satispay.com/g_business/v1/pre_authorized_payment_tokens/9b89c251-6151-4561-93cc-c027f4d7f034 \\\n  --header 'Content-Type: application/json' \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"' \\\n  --data '{\n  \"consumer_uid\":\"75d5c151-7b11-4bff-9149-d320dfa66461\"\n}'"
          name: cURL - ASSOCIATE CONSUMER
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/mqtt_certificates:
    post:
      summary: Create mqtt certificates
      description: API to create a PEM certificate and the private key for a shop mqtt device.
      operationId: create-mqtt-certificates
      parameters:
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"uid\": \"ba3ddcaa-b19b-4476-9747-d8256131d6c0\",\n  \"shop_uid\": \"866f0500-d2a8-4f11-b118-7d5777ecc7a9\",\n  \"certificate_pem\": \"-----BEGIN CERTIFICATE-----\\nMIIDWjCCAkKgAwIBAgIVAIC7Wnz....\",\n  \"private_key\": \"-----BEGIN RSA PRIVATE KEY-----\\nMIIEpQIBAAKCAQEA6p79gcqNGfZ....\"\n}"
              schema:
                type: object
                properties:
                  uid:
                    type: string
                    example: ba3ddcaa-b19b-4476-9747-d8256131d6c0
                  shop_uid:
                    type: string
                    example: 866f0500-d2a8-4f11-b118-7d5777ecc7a9
                  certificate_pem:
                    type: string
                    example: '-----BEGIN CERTIFICATE-----

                      MIIDWjCCAkKgAwIBAgIVAIC7Wnz....'
                  private_key:
                    type: string
                    example: '-----BEGIN RSA PRIVATE KEY-----

                      MIIEpQIBAAKCAQEA6p79gcqNGfZ....'
        '404':
          description: '404'
          content:
            text/plain:
              examples:
                Result:
                  value: Resource not found
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request POST \\\n  --url https://authservices.satispay.com/g_business/v1/mqtt_certificates \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"' "
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/sessions:
    post:
      summary: Open session
      description: API to open a session from a fund lock
      operationId: open-session
      parameters:
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        required: true
        schema:
          type: string
      - name: Idempotency-Key
        in: header
        description: The idempotent token of the request
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - fund_lock_uid
              properties:
                fund_lock_uid:
                  type: string
                  description: Unique ID of the fund lock
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"id\": \"84ab4ec4-f7bb-407d-b7d9-632c101d4ca7\",\n  \"amount_unit\": 0,\n  \"residual_amount_unit\": 100,\n  \"currency\": \"EUR\",\n  \"status\": \"OPEN\",\n  \"payment_type\": \"TO_BUSINESS_CHARGE\"\n}"
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: 84ab4ec4-f7bb-407d-b7d9-632c101d4ca7
                  amount_unit:
                    type: integer
                    example: 0
                    default: 0
                  residual_amount_unit:
                    type: integer
                    example: 100
                    default: 0
                  currency:
                    type: string
                    example: EUR
                  status:
                    type: string
                    example: OPEN
                  payment_type:
                    type: string
                    example: TO_BUSINESS_CHARGE
        '400':
          description: '400'
          content:
            text/plain:
              examples:
                Result:
                  value: Bad request
        '403':
          description: '403'
          content:
            text/plain:
              examples:
                Result:
                  value: Forbidden or invalid authorization header
      deprecated: false
      x-readme:
        code-samples:
        - language: curl
          code: "curl --request POST \\\n  --url https://authservices.satispay.com/g_business/v1/sessions \\\n  --header 'host: authservices.satispay.com' \\\n  --header 'date: Fri, 28 Aug 2020 09:18:17 GMT' \\\n  --header 'digest: SHA-256=...' \\\n  --header 'Authorization: Signature keyId=\"vefn1p...\", algorithm=\"rsa-sha256\", headers=\"(request-target) host date digest\", signature=\"C5yynRx...\"' \\\n  --header 'content-type: application/json' \\\n  --data '{\n\t\"fund_lock_uid\": \"b6931b5f-ddc9-4384-b91b-e6eb138cd4ca\"\n}'"
        samples-languages:
        - curl
      tags:
      - G Business
  /g_business/v1/sessions/{id}/events:
    post:
      summary: Create session event
      description: API to create an event for an open session
      operationId: create-session-event
      parameters:
      - name: id
        in: path
        description: The ID of the session
        schema:
          type: string
        required: true
      - name: Host
        in: header
        description: The host declared in the signature
        required: true
        schema:
          type: string
      - name: Date
        in: header
        description: The date declared in the signature
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: The digest declared in the signature
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Signature of the request
        requir

# --- truncated at 32 KB (53 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/satispay/refs/heads/main/openapi/satispay-g-business-api-openapi.yml