Skip to content

Latest commit

 

History

History
67 lines (50 loc) · 1.98 KB

README.md

File metadata and controls

67 lines (50 loc) · 1.98 KB

Go-PixGen

pix-utils

Generate and validate payments of Brazil Instant Payment System (Pix), making fast and simple to handle charges and proccess then in your project.

UNDER DEVELOPMENT - Becareful

Example implementation.

opts := []pix.Options{
		pix.OptPixKey("11955555555"),
		pix.OptDescription("Teste"),
		pix.OptMerchantName("Thiago Zilli Sarmento"),
		pix.OptMerchantCity("Ararangua"),
		pix.OptAmount("1.00"),
		pix.OptAditionalInfo("gerado por go-pixgen"),
		pix.OptKind(pix.STATIC),
	}

	p, err := pix.New(opts...)
	if err != nil {
		fmt.Println(err.Error())
                return
	}

	if err := p.Validates(); err != nil {
		fmt.Println(err.Error())
		return
	}

	cpy := p.GenPayload()

	fmt.Printf("Copy and Paste: %s\n", cpy)

	bts, err := p.GenQRCode()
	if err != nil {
		fmt.Println(err.Error())
		return
	}

	fmt.Printf("QRCode: %b\n", bts)

Roadmap

  • Generate payments based on parameters
    • Static
    • Dynamic
  • Parse and validate EMV Codes
  • Export generated/parsed payment to Image
  • Export generated/parsed payment to EMV Code
  • Fetch, parse and validate remote payloads from dynamic payments
    • Verify if has already expired
  • Improve tests
  • Doccumentation with all methods, parameters and some examples
  • Add dynamic payment tests

Contributing

Please contribute using GitHub Flow. Create a branch, add commits, and open a pull request.

Versioning and license

Our version numbers follow the semantic versioning specification. You can see the available versions by checking the tags on this repository. For more details about our license model, please take a look at the LICENSE file.

2022, thiagozs