Skip to content

Multiple buyers #352

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
duncandewhurst opened this issue Jul 20, 2016 · 8 comments
Closed

Multiple buyers #352

duncandewhurst opened this issue Jul 20, 2016 · 8 comments
Assignees
Labels
Focus - Extensions Relating to new or proposed extensions, or the governance and maintenance of extensions
Milestone

Comments

@duncandewhurst
Copy link
Contributor

duncandewhurst commented Jul 20, 2016

At present the buyer property of a release is a single object rather than an array of objects.

This means each contracting process has a single buyer associated with it.

Some publishers run single contracting processes with multiple buyers. This gives rise the following scenarios:

Scenario 1
The budget for the process may be split between multiple buyers.

Scenario 2
The process may result in multiple contracts with each contract signed by a different buyer

Scenario 3
The process may result in an single contract with individual line items for each buyer

Converting buyer into an array would be a fundamental change to the standard which would not be backward compatible.

A possible solution is to use buyer to capture the primary buyer (i.e. the buyer managing the process) and to extend the top level release with an additionalBuyers array of organizations to capture the other buyers.

The scenarios above could then be addressed as follows:

Scenario 1

  • Use budget/amount to capture the aggregate budget across all buyers
  • Extend planning with an additionalBudgets array of budgets.
  • Extend budget with an additional property buyerID to capture the buyer the budget relates to.

Scenario 2
Extend contract with an additional property buyerID to capture the buyer the contract relates to.

Scenario 3
Extend item with an additional property buyerID to capture the buyer the item relates to.

@duncandewhurst duncandewhurst added the Focus - Extensions Relating to new or proposed extensions, or the governance and maintenance of extensions label Jul 20, 2016
@duncandewhurst duncandewhurst self-assigned this Jul 20, 2016
@gabelula
Copy link
Contributor

I really like this approach! I will talk with CDMX about it. Thanks

@duncandewhurst
Copy link
Contributor Author

@timgdavies are you happy with this approach?

@AlCollier
Copy link

Worth thinking about the different types of 'buyer'? If it's a framework, for example, there may be buyers who are entitled to use the framework but not committed to doing so.

-----Original Message-----
From: "Duncan Dewhurst" [email protected]
Sent: ‎21/‎07/‎2016 15:48
To: "open-contracting/standard" [email protected]
Subject: Re: [open-contracting/standard] Multiple buyers (#352)

@timgdavies are you happy with this approach?

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@timgdavies
Copy link
Contributor

@duncandewhurst Could you mock up an example of this to look at - as that would help give it another check-over. It would be useful to think about how this would flatten out as well.

@gabelula
Copy link
Contributor

This could be an example. This one specific is only one award and different contracts for the same award. One contract per buyer. I'm not sure how we add the organizations if we add aditionalBudgets. It makes sense that the additionalbudgets elements have the same structure as budget.

{
  "uri": "http://innovacion.finanzas.df.gob.mx/OCDS/OCDS-87SD3T-SEFIN/AD/SF/DRM/001/2015.json",
  "publishedDate": "2015-11-04T00:00:00.-06:00",
  "publisher": {
    "scheme": "http://innovacion.finanzas.df.gob.mx/ocds/ArchivoJSONDep/Dependencias.json",
    "name": "CDMX-SEFIN",
    "uri": "http://www.finanzas.df.gob.mx/",
    "uid": "901"
  },
  "releases": [
    {
      "ocid": "OCDS-87SD3T-SEFIN/AD/SF/DRM/001/2015",
      "id": "1",
      "date": "2015-11-04T00:00:00.-06:00",
      "tag": [
          "tender"
      ],
      "initiationType": "tender",
      "planning": {
          "budget": {
              "amount": {
                  "amount": 429000,
                  "currency": "MXN"
              },
              "project": "AUTORIZACIÓN PRESUPUESTAL SPP/454/2015",
              "buyerid": 1
          },
          "additionalBudgets": [
            {
                "amount": {
                    "amount": 429000,
                    "currency": "MXN"
                },
                "project": "AUTORIZACIÓN PRESUPUESTAL SPP/454/2015",
                "buyerid": 2
            },
            {
                "amount": {
                    "amount": 429000,
                    "currency": "MXN"
                },
                "project": "AUTORIZACIÓN PRESUPUESTAL SPP/454/2015",
                "buyerid": 3
            }
          ],
          "documents": []
      },
      "buyer": {
          "identifier": {
              "id": "0901",
              "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONDep/Dependencias.json"
          },
          "name": "SECRETARÍA DE FINANZAS",
          "address": {
              "streetAddress": "DR. LAVISTA",
              "locality": "MÉXICO D. F.",
              "region": "DF",
              "postalCode": "06720",
              "countryName": "MX"
          },
          "contactPoint": {
              "name": "MIGUEL ÁNGEL VIDAL FRANCO",
              "email": "[email protected]",
              "telephone": "51342500",
              "faxNumber": "51342500",
              "url": "WWW.FINANZAS.DF.GOB.MX"
          }
      },
      "tender": {
          "id": "OCDS-87SD3T-SEFIN/AD/SF/DRM/001/2015",
          "title": "MANTENIMIENTO EXTINTORES",
          "description": "MANTO RECARGA EXTINTORES INMUEBLES DE SEFIN",
          "status": "complete",
          "items": [
              {
                  "id": "1",
                  "description": "MANTENIMIENTO Y RECARGA EXTINTORES",
                  "quantity": 1,
                  "unit": {
                      "name": "SER"
                  }
              }
          ],
          "value": {
              "amount": 429000,
              "currency": "MXN"
          },
          "procurementMethod": "limited",
          "awardCriteria": "bestValueToGovernment",
          "submissionMethod": [
              "written"
          ],
          "tenderPeriod": {
              "startDate": "2015-11-04T00:00:00.-06:00",
              "endDate": "2015-11-09T00:00:00.-06:00"
          },
          "enquiryPeriod": {
              "startDate": "2015-11-04T00:00:00.-06:00",
              "endDate": "2015-11-09T00:00:00.-06:00"
          },
          "hasEnquiries": true,
          "eligibilityCriteria": " Servicio,Condiciones,Precio,Otro&ANEXO TECNICO",
          "awardPeriod": {
              "startDate": "2015-11-09T00:00:00.-06:00",
              "endDate": "2015-11-17T00:00:00.-06:00"
          },
          "numberOfTenderers": 3,
          "tenderers": [
              {
                  "identifier": {
                      "id": "DCO990909GBA",
                      "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONProv/Proveedores.json"
                  },
                  "name": "DESARROLLO COMERCIAL ORION,",
                  "address": {
                      "streetAddress": "HERIBERTO FRIAS",
                      "locality": "BENITO JUAREZ",
                      "region": "DF",
                      "postalCode": "03100",
                      "countryName": "MX"
                  },
                  "contactPoint": {
                      "name": "ROGELIO IZKANDER CASABAL PEREZ",
                      "email": "No Capturado",
                      "telephone": "91830540",
                      "faxNumber": "91830540",
                      "url": "No Capturado"
                  }
              },
              {
                  "identifier": {
                      "id": "MEM8704099U1",
                      "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONProv/Proveedores.json"
                  },
                  "name": "MARK EXTINGUISHER DE MEXICO,",
                  "address": {
                      "streetAddress": "OTUMBA",
                      "locality": "TLALNEPANTLA EDO. DE MEXICO",
                      "region": "MEX",
                      "postalCode": "54070",
                      "countryName": "MX"
                  },
                  "contactPoint": {
                      "name": "ARTURO ORTEGA PORCAYO",
                      "email": "No Capturado",
                      "telephone": "53611536",
                      "faxNumber": "53611536",
                      "url": "WWW.MAKSEGURIDAD.COM"
                  }
              },
              {
                  "identifier": {
                      "id": "SIC0306206M8",
                      "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONProv/Proveedores.json"
                  },
                  "name": "SERVICIOS INTEGRALES CONTRA INCENDI",
                  "address": {
                      "streetAddress": "PROF MIGUEL LERDO DE TEJADA",
                      "locality": "SAN MATEO; AZCAPOTZALCO",
                      "region": "DF",
                      "postalCode": "02490",
                      "countryName": "MX"
                  },
                  "contactPoint": {
                      "name": "DIANA IRIS TOUS AMEZCUA",
                      "email": "No Capturado",
                      "telephone": "55614071",
                      "faxNumber": "55614071",
                      "url": "No Capturado"
                  }
              }
          ],
          "procuringEntity": {
              "identifier": {
                  "id": "0901",
                  "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONDep/Dependencias.json"
              },
              "name": "SECRETARÍA DE FINANZAS",
              "address": {
                  "streetAddress": "DR. LAVISTA",
                  "locality": "MÉXICO D. F.",
                  "region": "DF",
                  "postalCode": "06720",
                  "countryName": "MX"
              },
              "contactPoint": {
                  "name": "PEDRO JESÚS LARA LASTRA",
                  "email": "[email protected]",
                  "telephone": "51342500",
                  "faxNumber": "51342500",
                  "url": "WWW.FINANZAS.DF.GOB.MX"
              }
          },
          "documents": []
      },
      "awards": [
          {
              "id": "1",
              "title": "SERVICIOS DE IMPRESIÓN",
              "description": "SERVICIOS DE IMPRESIÓN DE DOCUMENTOS OFICIALES",
              "status": "active",
              "date": "2016-01-07T00:00:00.-06:00",
              "value": {
                  "amount": 1777723.75,
                  "currency": "MXN"
              },
              "suppliers": [
                  {
                      "identifier": {
                          "id": "CMI780808H12",
                          "uri": "http://10.1.65.188/achavez/OCDS/ArchivoJSONProv/Proveedores.json"
                      },
                      "name": "CORPORACION MEXICANA DE IMPRESION",
                      "address": {
                          "streetAddress": "GENERASL VICTORIANO ZEPEDA",
                          "locality": "OBSERVATORIO              MIGUEL HIDALGO",
                          "region": "DF",
                          "postalCode": "11860",
                          "countryName": "MX"
                      },
                      "contactPoint": {
                          "name": "HECTOR ROGELIO GARCIA MORALES",
                          "email": "No Capturado",
                          "telephone": "55168586",
                          "faxNumber": "55168586",
                          "url": "WWW.COMISA.DF.GOB.MX"
                      }
                  }
              ],
              "items": [
                  {
                      "id": "1",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 12931,
                      "unit": {
                          "name": "SER"
                      }
                  },
                  {
                      "id": "2",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 847487,
                      "unit": {
                          "name": "SER"
                      }
                  },
                  {
                      "id": "3",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 672101,
                      "unit": {
                          "name": "SER"
                      }
                  }
              ],
              "documents": []
          }
      ],
      "contracts": [
          {
              "id": "1",
              "awardID": "1",
              "title": "CC-006/2015",
              "description": "SERVICIOS DE IMPRESIÓN DE DOCUMENTOS OFICIALES",
              "status": "active",
              "period": {
                  "startDate": "2015-11-12T00:00:00.-06:00",
                  "endDate": "2015-12-31T00:00:00.-06:00"
              },
              "value": {
                  "amount": 3555447.5,
                  "currency": "MXN"
              },
              "items": [
                  {
                      "id": "1",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 672101,
                      "unit": {
                          "name": "SER"
                      }
                  }
              ],
              "dateSigned": "2015-11-12T00:00:00.-06:00",
              "documents": [],
              "buyerid": 1
          },
          {
              "id": "2",
              "awardID": "1",
              "title": "CC-006/2015",
              "description": "SERVICIOS DE IMPRESIÓN DE DOCUMENTOS OFICIALES",
              "status": "active",
              "period": {
                  "startDate": "2015-11-12T00:00:00.-06:00",
                  "endDate": "2015-12-31T00:00:00.-06:00"
              },
              "value": {
                  "amount": 3555447.5,
                  "currency": "MXN"
              },
              "items": [
                  {
                      "id": "2",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 847487,
                      "unit": {
                          "name": "SER"
                      }
                  }
              ],
              "dateSigned": "2015-11-12T00:00:00.-06:00",
              "documents": [],
              "buyerid": 2
          },
          {
              "id": "3",
              "awardID": "1",
              "title": "CC-006/2015",
              "description": "SERVICIOS DE IMPRESIÓN DE DOCUMENTOS OFICIALES",
              "status": "active",
              "period": {
                  "startDate": "2015-11-12T00:00:00.-06:00",
                  "endDate": "2015-12-31T00:00:00.-06:00"
              },
              "value": {
                  "amount": 3555447.5,
                  "currency": "MXN"
              },
              "items": [
                  {
                      "id": "3",
                      "description": "IMPRESION DE DOCUMENTOS OFICIALES",
                      "quantity": 12931,
                      "unit": {
                          "name": "SER"
                      }
                  }
              ],
              "dateSigned": "2015-11-12T00:00:00.-06:00",
              "documents": [],
              "buyerid": 3
          }
      ],
      "language": "es"
    }
  ]
}

@duncandewhurst
Copy link
Contributor Author

duncandewhurst commented Jul 22, 2016

@gabelula in your example planning/budget/amount and the amounts in each item in the additionalBudgets array are the same. It would be preferable for planning/budget/amount to equal the sum of the amounts in each item in the additionalBudgets array

I drafted some example releases below to illustrate this approach and also to show to how to capture the additional buyers.

This approach reflects some of the thinking we have been doing in the upgrade process around @AlCollier's point and how to represent government parties other than buyer and procuringEntity, which may see us adopt a more general approach and naming convention than additionalBuyers. @timgdavies's post on the upgrade process here captures this theme and links out to some related issues.

Planning
Note that the organizations building block has been extended with a new property id for cross referencing, we recommend this should be the concatentation of identifier/schene and identifier/id

{
    "ocid": "",
    "id": "",
    "date": "",
    "tag": ["planning"],
    "initiationType": "tender",
    "planning": {
        "budget": {
            "source": "string",
            "id": "string",
            "description": "string",
            "amount": {
                "amount": 300000,
                "currency": "GBP"
            },
            "project": "string",
            "projectID": "string",
            "uri": "string"
        },
        "additionalBudgets": [
            {
                "buyerID": "GB-LAC00000000",
                "source": "string",
                "id": "string",
                "description": "string",
                "amount": {
                    "amount": 150000,
                    "currency": "GBP"
                }
            },
            {
                "buyerID": "GB-LAC12345678",
                "source": "string",
                "id": "string",
                "description": "string",
                "amount": {
                    "amount": 100000,
                    "currency": "GBP"
                }
            },  
            {
                "buyerID": "GB-LAC99999999",
                "source": "string",
                "id": "string",
                "description": "string",
                "amount": {
                    "amount": 50000,
                    "currency": "GBP"
                }
            }
        ]
    },
    "buyer": {
        "id": "GB-LAC00000000",
        "identifier": {
            "scheme": "GB-LAC",
            "id": "00000000",
            "legalName": "string",
            "uri": "string"
        },
        "name": "string"
    },
    "additionalBuyers": [
        {
            "id": "GB-LAC12345678",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "12345678",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        },
        {
            "id": "GB-LAC99999999",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "99999999",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        }
    ],
    "language": "string"
}

Contract (multiple contracts)

{
  "uri": "",
  "publishedDate": "",
  "releases": [
{
    "ocid": "",
    "id": "",
    "date": "",
    "tag": ["contract"],
    "initiationType": "tender",
    "buyer": {
        "id": "GB-LAC00000000",
        "identifier": {
            "scheme": "GB-LAC",
            "id": "00000000",
            "legalName": "string",
            "uri": "string"
        },
        "name": "string"
    },
    "additionalBuyers": [
        {
            "id": "GB-LAC12345678",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "12345678",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        },
        {
            "id": "GB-LAC99999999",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "99999999",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        }
    ],
    "contracts": [
        {
            "id": "string",
            "awardID": "string",
            "buyerID": "GB-LAC00000000",
            "title": "string",
            "description": "string",
            "status": "pending",
            "period": {
                "startDate": "string",
                "endDate": "string"
            },
            "value": {
                "amount": "number",
                "currency": "string"
            },
            "items": [
                {
                    "id": "string",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                }
            ],
            "dateSigned": "string"
        },
        {
            "id": "string",
            "awardID": "string",
            "buyerID": "GB-LAC12345678",
            "title": "string",
            "description": "string",
            "status": "pending",
            "period": {
                "startDate": "string",
                "endDate": "string"
            },
            "value": {
                "amount": "number",
                "currency": "string"
            },
            "items": [
                {
                    "id": "string",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                }
            ],
            "dateSigned": "string"
        },
        {
            "id": "string",
            "awardID": "string",
            "buyerID": "GB-LAC99999999",
            "title": "string",
            "description": "string",
            "status": "pending",
            "period": {
                "startDate": "string",
                "endDate": "string"
            },
            "value": {
                "amount": "number",
                "currency": "string"
            },
            "items": [
                {
                    "id": "string",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                }
            ],
            "dateSigned": "string"
        }       
    ],
    "language": "string"
}
],
  "publisher": {
    "name": "",
    "scheme": "",
    "uid": "",
    "uri": ""
  },
  "license": "",
  "publicationPolicy": ""
}

Contract (single contract with line items per buyer)

{
  "uri": "",
  "publishedDate": "",
  "releases": [
{
    "ocid": "",
    "id": "",
    "date": "",
    "tag": ["contract"],
    "initiationType": "tender",
    "buyer": {
        "id": "GB-LAC00000000",
        "identifier": {
            "scheme": "GB-LAC",
            "id": "00000000",
            "legalName": "string",
            "uri": "string"
        },
        "name": "string"
    },
    "additionalBuyers": [
        {
            "id": "GB-LAC12345678",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "12345678",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        },
        {
            "id": "GB-LAC99999999",
            "identifier": {
                "scheme": "GB-LAC",
                "id": "99999999",
                "legalName": "string",
                "uri": "string"
            },
            "name": "string"
        }
    ],
    "contracts": [
        {
            "id": "string",
            "awardID": "string",
            "title": "string",
            "description": "string",
            "status": "pending",
            "period": {
                "startDate": "string",
                "endDate": "string"
            },
            "value": {
                "amount": "number",
                "currency": "string"
            },
            "items": [
                {
                    "id": "string",
                    "buyerID": "GB-LAC00000000",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                },
                {
                    "id": "string",
                    "buyerID": "GB-LAC12345678",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                },
                {
                    "id": "string",
                    "buyerID": "GB-LAC99999999",
                    "description": "string",
                    "classification": {
                        "scheme": "string",
                        "id": "string",
                        "description": "string",
                        "uri": "string"
                    }
                }
            ],
            "dateSigned": "string"
        }
    ],
    "language": "string"
}
],
  "publisher": {
    "name": "",
    "scheme": "",
    "uid": "",
    "uri": ""
  },
  "license": "",
  "publicationPolicy": ""
}

@timgdavies timgdavies added this to the Version 1.1 milestone Jul 25, 2016
@gabelula
Copy link
Contributor

gabelula commented Aug 2, 2016

Great! I just meet with CDMX about this and they also like the approach on additionalBuyers. They are going to go with this solution.

@timgdavies
Copy link
Contributor

Continued in #382

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Focus - Extensions Relating to new or proposed extensions, or the governance and maintenance of extensions
Projects
None yet
Development

No branches or pull requests

4 participants