Skip to content
This repository has been archived by the owner on Oct 29, 2024. It is now read-only.

✨ [open-formulieren/open-forms#4380] Add paymentId to plugin #3

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ jobs:
with:
repository: open-formulieren/open-forms
path: open-forms
# TODO remove after this is merged
ref: feature/4380-ogone-payment-id

- name: Checkout StUF-ZDS payments extension
uses: actions/checkout@v4
Expand Down
8 changes: 7 additions & 1 deletion stuf_zds_payments/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ def default_payment_status_update_mapping() -> list[dict[str, str]]:
"form_variable": "payment_public_order_ids",
"stuf_name": "payment_public_order_ids",
},
{"form_variable": "provider_payment_ids", "stuf_name": "provider_payment_ids"},
]


Expand Down Expand Up @@ -97,7 +98,12 @@ def get_extra_payment_variables(
variables_registry=variables_registry,
)
if variable.key
in ["payment_completed", "payment_amount", "payment_public_order_ids"]
in [
"payment_completed",
"payment_amount",
"payment_public_order_ids",
"provider_payment_ids",
]
and variable.key in key_mapping
}

Expand Down
17 changes: 17 additions & 0 deletions stuf_zds_payments/registration_variables.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

from django.utils.translation import gettext_lazy as _

from openforms.payments.constants import PaymentStatus
from openforms.plugins.registry import BaseRegistry
from openforms.variables.base import BaseStaticVariable
from openforms.variables.constants import FormVariableDataTypes
Expand Down Expand Up @@ -57,3 +58,19 @@ def get_initial_value(self, submission: Submission | None = None):
if submission is None:
return None
return submission.payments.get_completed_public_order_ids()


@register("provider_payment_ids")
class ProviderPaymentIds(BaseStaticVariable):
name = _("Provider payment IDs")
data_type = FormVariableDataTypes.array

def get_initial_value(self, submission: Submission | None = None):
if submission is None:
return None

return list(
submission.payments.filter(
status__in=(PaymentStatus.registered, PaymentStatus.completed)
).values_list("provider_payment_id", flat=True)
)
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ interactions:
\ xmlns:BG=\"http://www.egem.nl/StUF/sector/bg/0310\"\n xmlns:GML=\"http://www.opengis.net/gml\"\n>\n
\ <ZKN:stuurgegevens>\n <StUF:berichtcode>Lk01</StUF:berichtcode>\n
\ <StUF:zender>\n <StUF:organisatie>zender_organisatie-0</StUF:organisatie>\n<StUF:applicatie>zender_applicatie-0</StUF:applicatie>\n<StUF:administratie>zender_administratie-0</StUF:administratie>\n<StUF:gebruiker>zender_gebruiker-0</StUF:gebruiker>\n\n</StUF:zender>\n<StUF:ontvanger>\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>58f3d63c-37ab-4b65-844d-fdb9da043b17</StUF:referentienummer>\n<StUF:tijdstipBericht>20240805124256</StUF:tijdstipBericht>\n\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>0c9e9f06-43cc-43a5-af3f-f9d131a2573e</StUF:referentienummer>\n<StUF:tijdstipBericht>20240806073116</StUF:tijdstipBericht>\n\n
\ <StUF:entiteittype>ZAK</StUF:entiteittype>\n </ZKN:stuurgegevens>\n
\ <ZKN:parameters>\n <StUF:mutatiesoort>T</StUF:mutatiesoort>\n <StUF:indicatorOvername>V</StUF:indicatorOvername>\n
\ </ZKN:parameters>\n <ZKN:object StUF:verwerkingssoort=\"T\" StUF:entiteittype=\"ZAK\">\n
Expand All @@ -16,18 +16,20 @@ interactions:
\ <ZKN:lokatie>\n <GML:Point srsName=\"http://www.opengis.net/def/crs/EPSG/0/4326\">\n
\ <GML:pos>52.36673378967122 4.893164274470299</GML:pos>\n
\ </GML:Point>\n </ZKN:lokatie>\n </ZKN:anderZaakObject>\n
\ \n <ZKN:startdatum>20240805</ZKN:startdatum>\n <ZKN:registratiedatum>20240805</ZKN:registratiedatum>\n
\ \n <ZKN:startdatum>20240806</ZKN:startdatum>\n <ZKN:registratiedatum>20240806</ZKN:registratiedatum>\n
\ <ZKN:betalingsIndicatie>N.v.t.</ZKN:betalingsIndicatie>\n \n\n
\ <ZKN:zaakniveau>1</ZKN:zaakniveau>\n <ZKN:deelzakenIndicatie>N</ZKN:deelzakenIndicatie>\n
\ <StUF:tijdstipRegistratie>20240805124256</StUF:tijdstipRegistratie>\n
\ <StUF:tijdstipRegistratie>20240806073116</StUF:tijdstipRegistratie>\n
\ <StUF:extraElementen>\n\n<StUF:extraElement naam=\"language_code\">en</StUF:extraElement>\n\n<StUF:extraElement
naam=\"extra\">BuzzBazz</StUF:extraElement>\n\n<StUF:extraElement naam=\"payment_completed\">true</StUF:extraElement>\n\n<StUF:extraElement
naam=\"payment_amount\">40.0</StUF:extraElement>\n\n<StUF:extraElement naam=\"payment_public_order_ids.0\">foo</StUF:extraElement>\n\n<StUF:extraElement
naam=\"payment_public_order_ids.1\">bar</StUF:extraElement>\n\n</StUF:extraElementen>\n\n\n
naam=\"payment_public_order_ids.1\">bar</StUF:extraElement>\n\n<StUF:extraElement
naam=\"provider_payment_ids.0\">123456</StUF:extraElement>\n\n<StUF:extraElement
naam=\"provider_payment_ids.1\">654321</StUF:extraElement>\n\n</StUF:extraElementen>\n\n\n
\ <ZKN:isVan StUF:entiteittype=\"ZAKZKT\" StUF:verwerkingssoort=\"T\">\n
\ <ZKN:gerelateerde StUF:verwerkingssoort=\"I\" StUF:entiteittype=\"ZKT\">\n
\ \n <ZKN:omschrijving>bar</ZKN:omschrijving>\n
\ \n <ZKN:code>foo</ZKN:code>\n <ZKN:ingangsdatumObject>20240805</ZKN:ingangsdatumObject>\n
\ \n <ZKN:code>foo</ZKN:code>\n <ZKN:ingangsdatumObject>20240806</ZKN:ingangsdatumObject>\n
\ </ZKN:gerelateerde>\n </ZKN:isVan>\n \n <ZKN:heeftAlsInitiator
StUF:verwerkingssoort=\"T\" StUF:entiteittype=\"ZAKBTRINI\">\n <ZKN:gerelateerde>\n
\ \n \n <ZKN:natuurlijkPersoon
Expand All @@ -39,14 +41,14 @@ interactions:
\ \n <BG:geboortedatum
StUF:indOnvolledigeDatum=\"V\">20001231</BG:geboortedatum>\n\n \n
\ </ZKN:natuurlijkPersoon>\n \n </ZKN:gerelateerde>\n
\ <StUF:tijdstipRegistratie>20240805124256</StUF:tijdstipRegistratie>\n
\ <StUF:tijdstipRegistratie>20240806073116</StUF:tijdstipRegistratie>\n
\ </ZKN:heeftAlsInitiator>\n \n \n \n <ZKN:heeft
StUF:entiteittype=\"ZAKSTT\" StUF:verwerkingssoort=\"T\">\n <ZKN:gerelateerde
StUF:entiteittype=\"STT\" StUF:verwerkingssoort=\"I\">\n \n
\ <ZKN:code>baz</ZKN:code>\n \n \n
\ <ZKN:omschrijving>foo</ZKN:omschrijving>\n \n
\ </ZKN:gerelateerde>\n <ZKN:toelichting>Status
gezet door verzendende applicatie.</ZKN:toelichting>\n <ZKN:datumStatusGezet>20240805</ZKN:datumStatusGezet>\n
gezet door verzendende applicatie.</ZKN:toelichting>\n <ZKN:datumStatusGezet>20240806</ZKN:datumStatusGezet>\n
\ </ZKN:heeft>\n \n </ZKN:object>\n</ZKN:zakLk01>\n </soapenv:Body>\n</soapenv:Envelope>\n"
headers:
Accept:
Expand All @@ -56,7 +58,7 @@ interactions:
Connection:
- keep-alive
Content-Length:
- '5155'
- '5309'
Content-Type:
- application/soap+xml
SOAPAction:
Expand Down Expand Up @@ -89,7 +91,7 @@ interactions:
Content-Type:
- text/xml
Date:
- Mon, 05 Aug 2024 12:42:56 GMT
- Tue, 06 Aug 2024 07:31:16 GMT
Server:
- Werkzeug/3.0.3 Python/3.12.4
status:
Expand All @@ -102,7 +104,7 @@ interactions:
\ \n\n<ZKN:genereerDocumentIdentificatie_Di02 xmlns:ZKN=\"http://www.egem.nl/StUF/sector/zkn/0310\">\n
\ <ZKN:stuurgegevens>\n <StUF:berichtcode>Di02</StUF:berichtcode>\n
\ <StUF:zender>\n <StUF:organisatie>zender_organisatie-0</StUF:organisatie>\n<StUF:applicatie>zender_applicatie-0</StUF:applicatie>\n<StUF:administratie>zender_administratie-0</StUF:administratie>\n<StUF:gebruiker>zender_gebruiker-0</StUF:gebruiker>\n\n</StUF:zender>\n<StUF:ontvanger>\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>e4bcac4d-5fab-4a01-a28a-76d168bd7180</StUF:referentienummer>\n<StUF:tijdstipBericht>20240805124256</StUF:tijdstipBericht>\n\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>e35e443a-41e9-4a2c-8114-ac8ffe599611</StUF:referentienummer>\n<StUF:tijdstipBericht>20240806073116</StUF:tijdstipBericht>\n\n
\ <StUF:functie>genereerDocumentidentificatie</StUF:functie>\n </ZKN:stuurgegevens>\n</ZKN:genereerDocumentIdentificatie_Di02>\n
\ </soapenv:Body>\n</soapenv:Envelope>\n"
headers:
Expand Down Expand Up @@ -136,7 +138,7 @@ interactions:
\ <StUF:functie>genereerDocumentidentificatie</StUF:functie>\n
\ </ZKN:stuurgegevens>\n <ZKN:melding>melding</ZKN:melding>\n
\ <ZKN:document StUF:entiteittype=\"EDC\" StUF:functie=\"entiteit\">\n
\ <ZKN:identificatie>b3c8b5a4d32fb168</ZKN:identificatie>\n
\ <ZKN:identificatie>e6375e10167ae943</ZKN:identificatie>\n
\ </ZKN:document>\n </ZKN:genereerDocumentIdentificatie_Du02>\n
\ </soapenv:Body>\n</soapenv:Envelope>"
headers:
Expand All @@ -147,7 +149,7 @@ interactions:
Content-Type:
- text/xml
Date:
- Mon, 05 Aug 2024 12:42:56 GMT
- Tue, 06 Aug 2024 07:31:16 GMT
Server:
- Werkzeug/3.0.3 Python/3.12.4
status:
Expand All @@ -160,25 +162,25 @@ interactions:
\ \n\n<ZKN:edcLk01 xmlns:ZKN=\"http://www.egem.nl/StUF/sector/zkn/0310\"
xmlns:xmime=\"http://www.w3.org/2005/05/xmlmime\">\n <ZKN:stuurgegevens>\n
\ <StUF:berichtcode>Lk01</StUF:berichtcode>\n <StUF:zender>\n <StUF:organisatie>zender_organisatie-0</StUF:organisatie>\n<StUF:applicatie>zender_applicatie-0</StUF:applicatie>\n<StUF:administratie>zender_administratie-0</StUF:administratie>\n<StUF:gebruiker>zender_gebruiker-0</StUF:gebruiker>\n\n</StUF:zender>\n<StUF:ontvanger>\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>3cac727d-3782-4905-b516-8ecc109a2c6c</StUF:referentienummer>\n<StUF:tijdstipBericht>20240805124256</StUF:tijdstipBericht>\n\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>421ed8d7-873c-4281-9dee-18f9d900d520</StUF:referentienummer>\n<StUF:tijdstipBericht>20240806073116</StUF:tijdstipBericht>\n\n
\ <StUF:entiteittype>EDC</StUF:entiteittype>\n </ZKN:stuurgegevens>\n
\ <ZKN:parameters>\n <StUF:mutatiesoort>T</StUF:mutatiesoort>\n <StUF:indicatorOvername>I</StUF:indicatorOvername>\n
\ </ZKN:parameters>\n <ZKN:object StUF:entiteittype=\"EDC\" StUF:verwerkingssoort=\"T\">\n
\ <ZKN:identificatie>b3c8b5a4d32fb168</ZKN:identificatie>\n <ZKN:dct.omschrijving>foo</ZKN:dct.omschrijving>\n
\ <ZKN:creatiedatum>20240805</ZKN:creatiedatum>\n <ZKN:ontvangstdatum>20240805</ZKN:ontvangstdatum>\n
\ <ZKN:identificatie>e6375e10167ae943</ZKN:identificatie>\n <ZKN:dct.omschrijving>foo</ZKN:dct.omschrijving>\n
\ <ZKN:creatiedatum>20240806</ZKN:creatiedatum>\n <ZKN:ontvangstdatum>20240806</ZKN:ontvangstdatum>\n
\ <ZKN:titel>inzending</ZKN:titel>\n <ZKN:beschrijving>Ingezonden
formulier</ZKN:beschrijving>\n <ZKN:formaat>application/pdf</ZKN:formaat>\n
\ <ZKN:taal>nld</ZKN:taal>\n <ZKN:status>definitief</ZKN:status>\n
\ <ZKN:verzenddatum>20240805</ZKN:verzenddatum>\n <ZKN:vertrouwelijkAanduiding>GEHEIM</ZKN:vertrouwelijkAanduiding>\n
\ <ZKN:verzenddatum>20240806</ZKN:verzenddatum>\n <ZKN:vertrouwelijkAanduiding>GEHEIM</ZKN:vertrouwelijkAanduiding>\n
\ <ZKN:auteur>open-forms</ZKN:auteur>\n <ZKN:inhoud xmime:contentType=\"application/pdf\"
StUF:bestandsnaam=\"open-forms-inzending.pdf\"></ZKN:inhoud>\n <StUF:tijdvakGeldigheid>\n
\ <StUF:beginGeldigheid>20240805</StUF:beginGeldigheid>\n <StUF:eindGeldigheid
\ <StUF:beginGeldigheid>20240806</StUF:beginGeldigheid>\n <StUF:eindGeldigheid
StUF:noValue=\"geenWaarde\" xsi:nil=\"true\"/>\n </StUF:tijdvakGeldigheid>\n
\ <StUF:tijdstipRegistratie>20240805124256</StUF:tijdstipRegistratie>\n
\ <StUF:tijdstipRegistratie>20240806073116</StUF:tijdstipRegistratie>\n
\ <ZKN:isRelevantVoor StUF:entiteittype=\"EDCZAK\" StUF:verwerkingssoort=\"T\">\n
\ <ZKN:gerelateerde StUF:entiteittype=\"ZAK\" StUF:verwerkingssoort=\"I\">\n
\ <ZKN:identificatie>abc123</ZKN:identificatie>\n <ZKN:omschrijving>my-form</ZKN:omschrijving>\n
\ </ZKN:gerelateerde>\n <StUF:tijdstipRegistratie>20240805124256</StUF:tijdstipRegistratie>\n
\ </ZKN:gerelateerde>\n <StUF:tijdstipRegistratie>20240806073116</StUF:tijdstipRegistratie>\n
\ </ZKN:isRelevantVoor>\n </ZKN:object>\n</ZKN:edcLk01>\n </soapenv:Body>\n</soapenv:Envelope>\n"
headers:
Accept:
Expand Down Expand Up @@ -221,7 +223,7 @@ interactions:
Content-Type:
- text/xml
Date:
- Mon, 05 Aug 2024 12:42:56 GMT
- Tue, 06 Aug 2024 07:31:16 GMT
Server:
- Werkzeug/3.0.3 Python/3.12.4
status:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,18 @@ interactions:
\ \n\n<ZKN:zakLk01 xmlns:ZKN=\"http://www.egem.nl/StUF/sector/zkn/0310\">\n
\ <ZKN:stuurgegevens>\n <StUF:berichtcode>Lk01</StUF:berichtcode>\n
\ <StUF:zender>\n <StUF:organisatie>zender_organisatie-0</StUF:organisatie>\n<StUF:applicatie>zender_applicatie-0</StUF:applicatie>\n<StUF:administratie>zender_administratie-0</StUF:administratie>\n<StUF:gebruiker>zender_gebruiker-0</StUF:gebruiker>\n\n</StUF:zender>\n<StUF:ontvanger>\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>a62fad4a-01c0-46ad-98a7-49592c88b21e</StUF:referentienummer>\n<StUF:tijdstipBericht>20240805124256</StUF:tijdstipBericht>\n\n
\ <StUF:organisatie>ontvanger_organisatie-0</StUF:organisatie>\n<StUF:applicatie>ontvanger_applicatie-0</StUF:applicatie>\n<StUF:administratie>ontvanger_administratie-0</StUF:administratie>\n<StUF:gebruiker>ontvanger_gebruiker-0</StUF:gebruiker>\n\n</StUF:ontvanger>\n<StUF:referentienummer>6bde64fb-3026-46f4-9fe7-fbb1430fb3dc</StUF:referentienummer>\n<StUF:tijdstipBericht>20240806073117</StUF:tijdstipBericht>\n\n
\ <StUF:entiteittype>ZAK</StUF:entiteittype>\n </ZKN:stuurgegevens>\n
\ <ZKN:parameters>\n <StUF:mutatiesoort>W</StUF:mutatiesoort>\n <StUF:indicatorOvername>V</StUF:indicatorOvername>\n
\ </ZKN:parameters>\n <ZKN:object StUF:verwerkingssoort=\"W\" StUF:entiteittype=\"ZAK\">\n
\ <ZKN:identificatie>1234</ZKN:identificatie>\n <ZKN:betalingsIndicatie>Geheel</ZKN:betalingsIndicatie>\n
\ <ZKN:laatsteBetaaldatum>20240805</ZKN:laatsteBetaaldatum>\n\n <StUF:extraElementen>\n\n<StUF:extraElement
\ <ZKN:laatsteBetaaldatum>20240806</ZKN:laatsteBetaaldatum>\n\n <StUF:extraElementen>\n\n<StUF:extraElement
naam=\"language_code\">en</StUF:extraElement>\n\n<StUF:extraElement naam=\"extra\">BuzzBazz</StUF:extraElement>\n\n<StUF:extraElement
naam=\"payment_completed\">true</StUF:extraElement>\n\n<StUF:extraElement naam=\"payment_amount\">40.0</StUF:extraElement>\n\n<StUF:extraElement
naam=\"payment_public_order_ids.0\">foo</StUF:extraElement>\n\n<StUF:extraElement
naam=\"payment_public_order_ids.1\">bar</StUF:extraElement>\n\n</StUF:extraElementen>\n\n\n
naam=\"payment_public_order_ids.1\">bar</StUF:extraElement>\n\n<StUF:extraElement
naam=\"provider_payment_ids.0\">123456</StUF:extraElement>\n\n<StUF:extraElement
naam=\"provider_payment_ids.1\">654321</StUF:extraElement>\n\n</StUF:extraElementen>\n\n\n
\ </ZKN:object>\n</ZKN:zakLk01>\n </soapenv:Body>\n</soapenv:Envelope>\n"
headers:
Accept:
Expand All @@ -25,7 +27,7 @@ interactions:
Connection:
- keep-alive
Content-Length:
- '2171'
- '2325'
Content-Type:
- application/soap+xml
SOAPAction:
Expand Down Expand Up @@ -58,7 +60,7 @@ interactions:
Content-Type:
- text/xml
Date:
- Mon, 05 Aug 2024 12:42:56 GMT
- Tue, 06 Aug 2024 07:31:17 GMT
Server:
- Werkzeug/3.0.3 Python/3.12.4
status:
Expand Down
Loading
Loading