Skip to content

Fix fields for pix payout#5428

Merged
IMB11 merged 1 commit intomodrinth:mainfrom
creeperkatze:fix-pix-fields
Feb 25, 2026
Merged

Fix fields for pix payout#5428
IMB11 merged 1 commit intomodrinth:mainfrom
creeperkatze:fix-pix-fields

Conversation

@creeperkatze
Copy link
Contributor

Fixes #5425

@IMB11
Copy link
Member

IMB11 commented Feb 25, 2026

Thank you!

@IMB11 IMB11 enabled auto-merge February 25, 2026 21:16
@IMB11 IMB11 added this pull request to the merge queue Feb 25, 2026
Merged via the queue into modrinth:main with commit 45387e5 Feb 25, 2026
6 checks passed
@alikindsys
Copy link

alikindsys commented Mar 3, 2026

So, this fixes the frontend aspect of it, but as the backend still expects all fields you can't withdraw using this method.
I've removed the disabled attribute on the button to send these requests, and it is only when filling all of the payment options that the request goes through.

image

Edit: We did some digging and it seems like you're using MuralPay to handle those PIX-based transactions, seen that they support it. And as per their API bank branch code is only required for wire transfers, which are a separate thing, this is confusing and should be renamed to "random key" (Chave aleatória) and include a blank uuid as a placeholder since that's what the api actually expects (we've actually put the bank branch code there by mistake as it still is a requirement on the backend).

Due to what i presume to be KYC, CPF/CNPJ is always required on all requests, so that field should always be visibile. The blocking point is the deserialization errors, which should be fixed with adding Option to the fields of the rust struct that handles that on the backend (or making it an enum, making them optional would be the easiest option).

Other then that the transaction went smoothly, there are just some ux improvements, as this PR partially fixes the issue.

@creeperkatze
Copy link
Contributor Author

So, this fixes the frontend aspect of it, but as the backend still expects all fields you can't withdraw using this method. I've removed the disabled attribute on the button to send these requests, and it is only when filling all of the payment options that the request goes through.

image Edit: We did some digging and it seems like you're using MuralPay to handle those PIX-based transactions, seen that they support it. And as per [their API](https://developers.muralpay.com/docs/validations#brl-pix-bank-account) bank branch code is only required for wire transfers, which are a separate thing, this is confusing and should be renamed to "random key" (Chave aleatória) and include a blank uuid as a placeholder since that's what the api actually expects (we've actually put the bank branch code there by mistake as it still is a requirement on the backend).

Due to what i presume to be KYC, CPF/CNPJ is always required on all requests, so that field should always be visibile. The blocking point is the deserialization errors, which should be fixed with adding Option to the fields of the rust struct that handles that on the backend (or making it an enum, making them optional would be the easiest option).

Other then that the transaction went smoothly, there are just some ux improvements, as this PR partially fixes the issue.

Would this be correct now? (Not on the website yet)

image

@alikindsys
Copy link

alikindsys commented Mar 4, 2026

Would this be correct now? (Not on the website yet)

This is certainly more correct, if the intended flow is to use the "bank account" key type.

To put it more more strictly:

  • Selecting "CPF/CNPJ" would only show one field: CPF/CNPJ
  • Selecting any other key type would show two input fields: CPF/CNPJ and the respective field thats required for that option.

A minor nitpick is that "bank account" is unintuitive, so it could be renamed to random key to match the required field. I never saw it being referenced as a "bank account key type".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Pix transfer (Brazil) form

3 participants