{
  "resourceType": "StructureDefinition",
  "id": "PaymentTransaction",
  "url": "http://fhir.synapxe.sg/StructureDefinition/PaymentTransaction",
  "version": "0.1",
  "name": "PaymentTransaction",
  "status": "draft",
  "publisher": "Synapxe",
  "description": "PaymentTransaction structure definition specified for Synapxe.",
  "copyright": "Copyright (C) 2024 Synapxe",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "PaymentTransaction",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/DomainResource",
  "derivation": "specialization",
  "differential": {
    "element": [
      {
        "id": "PaymentTransaction",
        "path": "PaymentTransaction",
        "short": "Custom Inventory Resource",
        "definition": "Custom Inventory resource that includes inventory specific data."
      },
      {
        "id": "PaymentTransaction.extension",
        "path": "PaymentTransaction.extension",
        "min": 1
      },
      {
        "id": "PaymentTransaction.extension:requesterId",
        "path": "PaymentTransaction.extension",
        "sliceName": "requesterId",
        "min": 1,
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://ihis.sg/ccdp/extension/requesterId"
            ]
          }
        ]
      },
      {
        "id": "PaymentTransaction.totalAmount",
        "path": "PaymentTransaction.totalAmount",
        "short": "Total amount",
        "definition": "Total amount for the inventory item",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "decimal"
          }
        ]
      },
      {
        "id": "PaymentTransaction.organizationGroup",
        "path": "PaymentTransaction.organizationGroup",
        "short": "Organization group",
        "definition": "Organization group of the inventory item",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo",
        "path": "PaymentTransaction.payorInfo",
        "short": "Payor information",
        "definition": "Information about the payor",
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.name",
        "path": "PaymentTransaction.payorInfo.name",
        "short": "Payor name",
        "definition": "Name of the payor",
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.name.text",
        "path": "PaymentTransaction.payorInfo.name.text",
        "short": "Plain text representation of the payor name",
        "definition": "Plain text representation of the payor name",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.contact",
        "path": "PaymentTransaction.payorInfo.contact",
        "short": "Contact information",
        "definition": "Contact details for the payor",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.contact.system",
        "path": "PaymentTransaction.payorInfo.contact.system",
        "short": "Contact system type",
        "definition": "The type of contact system (phone, email, etc.)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.contact.value",
        "path": "PaymentTransaction.payorInfo.contact.value",
        "short": "Contact value",
        "definition": "The contact value (phone number, email address, etc.)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.payorInfo.contact.use",
        "path": "PaymentTransaction.payorInfo.contact.use",
        "short": "Contact use type",
        "definition": "The purpose of the contact (mobile, home, etc.)",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.category",
        "path": "PaymentTransaction.category",
        "short": "Product category",
        "definition": "Product category of the inventory item",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.referenceNumber",
        "path": "PaymentTransaction.referenceNumber",
        "short": "Product referenceNumber",
        "definition": "Product referenceNumber of the inventory item",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment",
        "path": "PaymentTransaction.billPayment",
        "short": "Bill payment information",
        "definition": "Information about the bill payment",
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.paymentMethod",
        "path": "PaymentTransaction.billPayment.paymentMethod",
        "short": "Payment method",
        "definition": "Method of payment (e.g., credit-card, cash, etc.)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail",
        "path": "PaymentTransaction.billPayment.billPaymentDetail",
        "short": "Bill payment details",
        "definition": "Detailed information about the bill payment",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.amount",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.amount",
        "short": "Payment amount",
        "definition": "Amount of the payment",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "decimal"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.organization",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.organization",
        "short": "Organization reference",
        "definition": "Reference to the organization",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Organization"
            ]
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.invoiceNumber",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.invoiceNumber",
        "short": "Invoice number",
        "definition": "Reference number of the invoice",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.invoiceNumber.value",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.invoiceNumber.value",
        "short": "Invoice number value",
        "definition": "The actual invoice number",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.invoiceStatus",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.invoiceStatus",
        "short": "Invoice status",
        "definition": "Status of the invoice (e.g., issued, paid, etc.)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.subject",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.subject",
        "short": "Subject reference",
        "definition": "Reference to the patient subject",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Patient"
            ]
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.visitDate",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.visitDate",
        "short": "Visit date",
        "definition": "Date of the visit",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ]
      },
      {
        "id": "PaymentTransaction.billPayment.billPaymentDetail.billType",
        "path": "PaymentTransaction.billPayment.billPaymentDetail.billType",
        "short": "Bill type",
        "definition": "Type of the bill (e.g., web-service)",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      }
    ]
  }
}